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/DialogFlow.hs b/gen/Gogol/DialogFlow.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow.hs
@@ -0,0 +1,3628 @@
+{-# 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.DialogFlow
+-- 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)
+--
+-- Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference>
+module Gogol.DialogFlow
+  ( -- * Configuration
+    dialogFlowService,
+
+    -- * OAuth Scopes
+    CloudPlatform'FullControl,
+    Dialogflow'FullControl,
+
+    -- * Resources
+
+    -- ** dialogflow.projects.locations.agents.changelogs.get
+    DialogFlowProjectsLocationsAgentsChangelogsGetResource,
+    DialogFlowProjectsLocationsAgentsChangelogsGet (..),
+    newDialogFlowProjectsLocationsAgentsChangelogsGet,
+
+    -- ** dialogflow.projects.locations.agents.changelogs.list
+    DialogFlowProjectsLocationsAgentsChangelogsListResource,
+    DialogFlowProjectsLocationsAgentsChangelogsList (..),
+    newDialogFlowProjectsLocationsAgentsChangelogsList,
+
+    -- ** dialogflow.projects.locations.agents.create
+    DialogFlowProjectsLocationsAgentsCreateResource,
+    DialogFlowProjectsLocationsAgentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsCreate,
+
+    -- ** dialogflow.projects.locations.agents.delete
+    DialogFlowProjectsLocationsAgentsDeleteResource,
+    DialogFlowProjectsLocationsAgentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsDelete,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.create
+    DialogFlowProjectsLocationsAgentsEntityTypesCreateResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesCreate,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.delete
+    DialogFlowProjectsLocationsAgentsEntityTypesDeleteResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesDelete,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.export
+    DialogFlowProjectsLocationsAgentsEntityTypesExportResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesExport (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesExport,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.get
+    DialogFlowProjectsLocationsAgentsEntityTypesGetResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesGet,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.import
+    DialogFlowProjectsLocationsAgentsEntityTypesImportResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesImport (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesImport,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.list
+    DialogFlowProjectsLocationsAgentsEntityTypesListResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesList,
+
+    -- ** dialogflow.projects.locations.agents.entityTypes.patch
+    DialogFlowProjectsLocationsAgentsEntityTypesPatchResource,
+    DialogFlowProjectsLocationsAgentsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesPatch,
+
+    -- ** dialogflow.projects.locations.agents.environments.continuousTestResults.list
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsListResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList,
+
+    -- ** dialogflow.projects.locations.agents.environments.create
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreateResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsCreate,
+
+    -- ** dialogflow.projects.locations.agents.environments.delete
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeleteResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDelete,
+
+    -- ** dialogflow.projects.locations.agents.environments.deployFlow
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlowResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow,
+
+    -- ** dialogflow.projects.locations.agents.environments.deployments.get
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGetResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet,
+
+    -- ** dialogflow.projects.locations.agents.environments.deployments.list
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsListResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.create
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreateResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.delete
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDeleteResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.get
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGetResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.list
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsListResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.patch
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatchResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.start
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStartResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart,
+
+    -- ** dialogflow.projects.locations.agents.environments.experiments.stop
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStopResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop,
+
+    -- ** dialogflow.projects.locations.agents.environments.get
+    DialogFlowProjectsLocationsAgentsEnvironmentsGetResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsGet,
+
+    -- ** dialogflow.projects.locations.agents.environments.list
+    DialogFlowProjectsLocationsAgentsEnvironmentsListResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsList,
+
+    -- ** dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory,
+
+    -- ** dialogflow.projects.locations.agents.environments.patch
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatchResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsPatch,
+
+    -- ** dialogflow.projects.locations.agents.environments.runContinuousTest
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTestResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.detectIntent
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntentResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.entityTypes.create
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.entityTypes.get
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.entityTypes.list
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.fulfillIntent
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.matchIntent
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntentResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent,
+
+    -- ** dialogflow.projects.locations.agents.environments.sessions.serverStreamingDetectIntent
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntentResource,
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent,
+
+    -- ** dialogflow.projects.locations.agents.export
+    DialogFlowProjectsLocationsAgentsExportResource,
+    DialogFlowProjectsLocationsAgentsExport (..),
+    newDialogFlowProjectsLocationsAgentsExport,
+
+    -- ** dialogflow.projects.locations.agents.flows.create
+    DialogFlowProjectsLocationsAgentsFlowsCreateResource,
+    DialogFlowProjectsLocationsAgentsFlowsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsCreate,
+
+    -- ** dialogflow.projects.locations.agents.flows.delete
+    DialogFlowProjectsLocationsAgentsFlowsDeleteResource,
+    DialogFlowProjectsLocationsAgentsFlowsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsDelete,
+
+    -- ** dialogflow.projects.locations.agents.flows.export
+    DialogFlowProjectsLocationsAgentsFlowsExportResource,
+    DialogFlowProjectsLocationsAgentsFlowsExport (..),
+    newDialogFlowProjectsLocationsAgentsFlowsExport,
+
+    -- ** dialogflow.projects.locations.agents.flows.get
+    DialogFlowProjectsLocationsAgentsFlowsGetResource,
+    DialogFlowProjectsLocationsAgentsFlowsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsGet,
+
+    -- ** dialogflow.projects.locations.agents.flows.getValidationResult
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResultResource,
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResult (..),
+    newDialogFlowProjectsLocationsAgentsFlowsGetValidationResult,
+
+    -- ** dialogflow.projects.locations.agents.flows.import
+    DialogFlowProjectsLocationsAgentsFlowsImportResource,
+    DialogFlowProjectsLocationsAgentsFlowsImport (..),
+    newDialogFlowProjectsLocationsAgentsFlowsImport,
+
+    -- ** dialogflow.projects.locations.agents.flows.list
+    DialogFlowProjectsLocationsAgentsFlowsListResource,
+    DialogFlowProjectsLocationsAgentsFlowsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsList,
+
+    -- ** dialogflow.projects.locations.agents.flows.pages.create
+    DialogFlowProjectsLocationsAgentsFlowsPagesCreateResource,
+    DialogFlowProjectsLocationsAgentsFlowsPagesCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesCreate,
+
+    -- ** dialogflow.projects.locations.agents.flows.pages.delete
+    DialogFlowProjectsLocationsAgentsFlowsPagesDeleteResource,
+    DialogFlowProjectsLocationsAgentsFlowsPagesDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesDelete,
+
+    -- ** dialogflow.projects.locations.agents.flows.pages.get
+    DialogFlowProjectsLocationsAgentsFlowsPagesGetResource,
+    DialogFlowProjectsLocationsAgentsFlowsPagesGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesGet,
+
+    -- ** dialogflow.projects.locations.agents.flows.pages.list
+    DialogFlowProjectsLocationsAgentsFlowsPagesListResource,
+    DialogFlowProjectsLocationsAgentsFlowsPagesList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesList,
+
+    -- ** dialogflow.projects.locations.agents.flows.pages.patch
+    DialogFlowProjectsLocationsAgentsFlowsPagesPatchResource,
+    DialogFlowProjectsLocationsAgentsFlowsPagesPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesPatch,
+
+    -- ** dialogflow.projects.locations.agents.flows.patch
+    DialogFlowProjectsLocationsAgentsFlowsPatchResource,
+    DialogFlowProjectsLocationsAgentsFlowsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPatch,
+
+    -- ** dialogflow.projects.locations.agents.flows.train
+    DialogFlowProjectsLocationsAgentsFlowsTrainResource,
+    DialogFlowProjectsLocationsAgentsFlowsTrain (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTrain,
+
+    -- ** dialogflow.projects.locations.agents.flows.transitionRouteGroups.create
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateResource,
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate,
+
+    -- ** dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteResource,
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete,
+
+    -- ** dialogflow.projects.locations.agents.flows.transitionRouteGroups.get
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGetResource,
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet,
+
+    -- ** dialogflow.projects.locations.agents.flows.transitionRouteGroups.list
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsListResource,
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList,
+
+    -- ** dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchResource,
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch,
+
+    -- ** dialogflow.projects.locations.agents.flows.validate
+    DialogFlowProjectsLocationsAgentsFlowsValidateResource,
+    DialogFlowProjectsLocationsAgentsFlowsValidate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsValidate,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.compareVersions
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersionsResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.create
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreateResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsCreate,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.delete
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDeleteResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsDelete,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.get
+    DialogFlowProjectsLocationsAgentsFlowsVersionsGetResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsGet,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.list
+    DialogFlowProjectsLocationsAgentsFlowsVersionsListResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsList,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.load
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoadResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoad (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsLoad,
+
+    -- ** dialogflow.projects.locations.agents.flows.versions.patch
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatchResource,
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsPatch,
+
+    -- ** dialogflow.projects.locations.agents.generators.create
+    DialogFlowProjectsLocationsAgentsGeneratorsCreateResource,
+    DialogFlowProjectsLocationsAgentsGeneratorsCreate (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsCreate,
+
+    -- ** dialogflow.projects.locations.agents.generators.delete
+    DialogFlowProjectsLocationsAgentsGeneratorsDeleteResource,
+    DialogFlowProjectsLocationsAgentsGeneratorsDelete (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsDelete,
+
+    -- ** dialogflow.projects.locations.agents.generators.get
+    DialogFlowProjectsLocationsAgentsGeneratorsGetResource,
+    DialogFlowProjectsLocationsAgentsGeneratorsGet (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsGet,
+
+    -- ** dialogflow.projects.locations.agents.generators.list
+    DialogFlowProjectsLocationsAgentsGeneratorsListResource,
+    DialogFlowProjectsLocationsAgentsGeneratorsList (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsList,
+
+    -- ** dialogflow.projects.locations.agents.generators.patch
+    DialogFlowProjectsLocationsAgentsGeneratorsPatchResource,
+    DialogFlowProjectsLocationsAgentsGeneratorsPatch (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsPatch,
+
+    -- ** dialogflow.projects.locations.agents.get
+    DialogFlowProjectsLocationsAgentsGetResource,
+    DialogFlowProjectsLocationsAgentsGet (..),
+    newDialogFlowProjectsLocationsAgentsGet,
+
+    -- ** dialogflow.projects.locations.agents.getGenerativeSettings
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettingsResource,
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettings (..),
+    newDialogFlowProjectsLocationsAgentsGetGenerativeSettings,
+
+    -- ** dialogflow.projects.locations.agents.getValidationResult
+    DialogFlowProjectsLocationsAgentsGetValidationResultResource,
+    DialogFlowProjectsLocationsAgentsGetValidationResult (..),
+    newDialogFlowProjectsLocationsAgentsGetValidationResult,
+
+    -- ** dialogflow.projects.locations.agents.intents.create
+    DialogFlowProjectsLocationsAgentsIntentsCreateResource,
+    DialogFlowProjectsLocationsAgentsIntentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsIntentsCreate,
+
+    -- ** dialogflow.projects.locations.agents.intents.delete
+    DialogFlowProjectsLocationsAgentsIntentsDeleteResource,
+    DialogFlowProjectsLocationsAgentsIntentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsIntentsDelete,
+
+    -- ** dialogflow.projects.locations.agents.intents.export
+    DialogFlowProjectsLocationsAgentsIntentsExportResource,
+    DialogFlowProjectsLocationsAgentsIntentsExport (..),
+    newDialogFlowProjectsLocationsAgentsIntentsExport,
+
+    -- ** dialogflow.projects.locations.agents.intents.get
+    DialogFlowProjectsLocationsAgentsIntentsGetResource,
+    DialogFlowProjectsLocationsAgentsIntentsGet (..),
+    newDialogFlowProjectsLocationsAgentsIntentsGet,
+
+    -- ** dialogflow.projects.locations.agents.intents.import
+    DialogFlowProjectsLocationsAgentsIntentsImportResource,
+    DialogFlowProjectsLocationsAgentsIntentsImport (..),
+    newDialogFlowProjectsLocationsAgentsIntentsImport,
+
+    -- ** dialogflow.projects.locations.agents.intents.list
+    DialogFlowProjectsLocationsAgentsIntentsListResource,
+    DialogFlowProjectsLocationsAgentsIntentsList (..),
+    newDialogFlowProjectsLocationsAgentsIntentsList,
+
+    -- ** dialogflow.projects.locations.agents.intents.patch
+    DialogFlowProjectsLocationsAgentsIntentsPatchResource,
+    DialogFlowProjectsLocationsAgentsIntentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsIntentsPatch,
+
+    -- ** dialogflow.projects.locations.agents.list
+    DialogFlowProjectsLocationsAgentsListResource,
+    DialogFlowProjectsLocationsAgentsList (..),
+    newDialogFlowProjectsLocationsAgentsList,
+
+    -- ** dialogflow.projects.locations.agents.patch
+    DialogFlowProjectsLocationsAgentsPatchResource,
+    DialogFlowProjectsLocationsAgentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsPatch,
+
+    -- ** dialogflow.projects.locations.agents.restore
+    DialogFlowProjectsLocationsAgentsRestoreResource,
+    DialogFlowProjectsLocationsAgentsRestore (..),
+    newDialogFlowProjectsLocationsAgentsRestore,
+
+    -- ** dialogflow.projects.locations.agents.sessions.detectIntent
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntentResource,
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsDetectIntent,
+
+    -- ** dialogflow.projects.locations.agents.sessions.entityTypes.create
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreateResource,
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate,
+
+    -- ** dialogflow.projects.locations.agents.sessions.entityTypes.delete
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDeleteResource,
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete,
+
+    -- ** dialogflow.projects.locations.agents.sessions.entityTypes.get
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGetResource,
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesGet,
+
+    -- ** dialogflow.projects.locations.agents.sessions.entityTypes.list
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesListResource,
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesList,
+
+    -- ** dialogflow.projects.locations.agents.sessions.entityTypes.patch
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatchResource,
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch,
+
+    -- ** dialogflow.projects.locations.agents.sessions.fulfillIntent
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntentResource,
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsFulfillIntent,
+
+    -- ** dialogflow.projects.locations.agents.sessions.matchIntent
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntentResource,
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsMatchIntent,
+
+    -- ** dialogflow.projects.locations.agents.sessions.serverStreamingDetectIntent
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntentResource,
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent,
+
+    -- ** dialogflow.projects.locations.agents.sessions.submitAnswerFeedback
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedbackResource,
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback (..),
+    newDialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback,
+
+    -- ** dialogflow.projects.locations.agents.testCases.batchDelete
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDeleteResource,
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDelete (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesBatchDelete,
+
+    -- ** dialogflow.projects.locations.agents.testCases.batchRun
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRunResource,
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRun (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesBatchRun,
+
+    -- ** dialogflow.projects.locations.agents.testCases.calculateCoverage
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverageResource,
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage,
+
+    -- ** dialogflow.projects.locations.agents.testCases.create
+    DialogFlowProjectsLocationsAgentsTestCasesCreateResource,
+    DialogFlowProjectsLocationsAgentsTestCasesCreate (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesCreate,
+
+    -- ** dialogflow.projects.locations.agents.testCases.export
+    DialogFlowProjectsLocationsAgentsTestCasesExportResource,
+    DialogFlowProjectsLocationsAgentsTestCasesExport (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesExport,
+
+    -- ** dialogflow.projects.locations.agents.testCases.get
+    DialogFlowProjectsLocationsAgentsTestCasesGetResource,
+    DialogFlowProjectsLocationsAgentsTestCasesGet (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesGet,
+
+    -- ** dialogflow.projects.locations.agents.testCases.import
+    DialogFlowProjectsLocationsAgentsTestCasesImportResource,
+    DialogFlowProjectsLocationsAgentsTestCasesImport (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesImport,
+
+    -- ** dialogflow.projects.locations.agents.testCases.list
+    DialogFlowProjectsLocationsAgentsTestCasesListResource,
+    DialogFlowProjectsLocationsAgentsTestCasesList (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesList,
+
+    -- ** dialogflow.projects.locations.agents.testCases.patch
+    DialogFlowProjectsLocationsAgentsTestCasesPatchResource,
+    DialogFlowProjectsLocationsAgentsTestCasesPatch (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesPatch,
+
+    -- ** dialogflow.projects.locations.agents.testCases.results.get
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGetResource,
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGet (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesResultsGet,
+
+    -- ** dialogflow.projects.locations.agents.testCases.results.list
+    DialogFlowProjectsLocationsAgentsTestCasesResultsListResource,
+    DialogFlowProjectsLocationsAgentsTestCasesResultsList (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesResultsList,
+
+    -- ** dialogflow.projects.locations.agents.testCases.run
+    DialogFlowProjectsLocationsAgentsTestCasesRunResource,
+    DialogFlowProjectsLocationsAgentsTestCasesRun (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesRun,
+
+    -- ** dialogflow.projects.locations.agents.transitionRouteGroups.create
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreateResource,
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate,
+
+    -- ** dialogflow.projects.locations.agents.transitionRouteGroups.delete
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDeleteResource,
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete,
+
+    -- ** dialogflow.projects.locations.agents.transitionRouteGroups.get
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGetResource,
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet,
+
+    -- ** dialogflow.projects.locations.agents.transitionRouteGroups.list
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsListResource,
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsList,
+
+    -- ** dialogflow.projects.locations.agents.transitionRouteGroups.patch
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatchResource,
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch,
+
+    -- ** dialogflow.projects.locations.agents.updateGenerativeSettings
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettingsResource,
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings (..),
+    newDialogFlowProjectsLocationsAgentsUpdateGenerativeSettings,
+
+    -- ** dialogflow.projects.locations.agents.validate
+    DialogFlowProjectsLocationsAgentsValidateResource,
+    DialogFlowProjectsLocationsAgentsValidate (..),
+    newDialogFlowProjectsLocationsAgentsValidate,
+
+    -- ** dialogflow.projects.locations.agents.webhooks.create
+    DialogFlowProjectsLocationsAgentsWebhooksCreateResource,
+    DialogFlowProjectsLocationsAgentsWebhooksCreate (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksCreate,
+
+    -- ** dialogflow.projects.locations.agents.webhooks.delete
+    DialogFlowProjectsLocationsAgentsWebhooksDeleteResource,
+    DialogFlowProjectsLocationsAgentsWebhooksDelete (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksDelete,
+
+    -- ** dialogflow.projects.locations.agents.webhooks.get
+    DialogFlowProjectsLocationsAgentsWebhooksGetResource,
+    DialogFlowProjectsLocationsAgentsWebhooksGet (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksGet,
+
+    -- ** dialogflow.projects.locations.agents.webhooks.list
+    DialogFlowProjectsLocationsAgentsWebhooksListResource,
+    DialogFlowProjectsLocationsAgentsWebhooksList (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksList,
+
+    -- ** dialogflow.projects.locations.agents.webhooks.patch
+    DialogFlowProjectsLocationsAgentsWebhooksPatchResource,
+    DialogFlowProjectsLocationsAgentsWebhooksPatch (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksPatch,
+
+    -- ** dialogflow.projects.locations.get
+    DialogFlowProjectsLocationsGetResource,
+    DialogFlowProjectsLocationsGet (..),
+    newDialogFlowProjectsLocationsGet,
+
+    -- ** dialogflow.projects.locations.list
+    DialogFlowProjectsLocationsListResource,
+    DialogFlowProjectsLocationsList (..),
+    newDialogFlowProjectsLocationsList,
+
+    -- ** dialogflow.projects.locations.operations.cancel
+    DialogFlowProjectsLocationsOperationsCancelResource,
+    DialogFlowProjectsLocationsOperationsCancel (..),
+    newDialogFlowProjectsLocationsOperationsCancel,
+
+    -- ** dialogflow.projects.locations.operations.get
+    DialogFlowProjectsLocationsOperationsGetResource,
+    DialogFlowProjectsLocationsOperationsGet (..),
+    newDialogFlowProjectsLocationsOperationsGet,
+
+    -- ** dialogflow.projects.locations.operations.list
+    DialogFlowProjectsLocationsOperationsListResource,
+    DialogFlowProjectsLocationsOperationsList (..),
+    newDialogFlowProjectsLocationsOperationsList,
+
+    -- ** dialogflow.projects.locations.securitySettings.create
+    DialogFlowProjectsLocationsSecuritySettingsCreateResource,
+    DialogFlowProjectsLocationsSecuritySettingsCreate (..),
+    newDialogFlowProjectsLocationsSecuritySettingsCreate,
+
+    -- ** dialogflow.projects.locations.securitySettings.delete
+    DialogFlowProjectsLocationsSecuritySettingsDeleteResource,
+    DialogFlowProjectsLocationsSecuritySettingsDelete (..),
+    newDialogFlowProjectsLocationsSecuritySettingsDelete,
+
+    -- ** dialogflow.projects.locations.securitySettings.get
+    DialogFlowProjectsLocationsSecuritySettingsGetResource,
+    DialogFlowProjectsLocationsSecuritySettingsGet (..),
+    newDialogFlowProjectsLocationsSecuritySettingsGet,
+
+    -- ** dialogflow.projects.locations.securitySettings.list
+    DialogFlowProjectsLocationsSecuritySettingsListResource,
+    DialogFlowProjectsLocationsSecuritySettingsList (..),
+    newDialogFlowProjectsLocationsSecuritySettingsList,
+
+    -- ** dialogflow.projects.locations.securitySettings.patch
+    DialogFlowProjectsLocationsSecuritySettingsPatchResource,
+    DialogFlowProjectsLocationsSecuritySettingsPatch (..),
+    newDialogFlowProjectsLocationsSecuritySettingsPatch,
+
+    -- ** dialogflow.projects.operations.cancel
+    DialogFlowProjectsOperationsCancelResource,
+    DialogFlowProjectsOperationsCancel (..),
+    newDialogFlowProjectsOperationsCancel,
+
+    -- ** dialogflow.projects.operations.get
+    DialogFlowProjectsOperationsGetResource,
+    DialogFlowProjectsOperationsGet (..),
+    newDialogFlowProjectsOperationsGet,
+
+    -- ** dialogflow.projects.operations.list
+    DialogFlowProjectsOperationsListResource,
+    DialogFlowProjectsOperationsList (..),
+    newDialogFlowProjectsOperationsList,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettings
+    GoogleCloudDialogflowCxV3AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models,
+
+    -- ** GoogleCloudDialogflowCxV3Agent
+    GoogleCloudDialogflowCxV3Agent (..),
+    newGoogleCloudDialogflowCxV3Agent,
+
+    -- ** GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+    GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings (..),
+    newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+    GoogleCloudDialogflowCxV3AgentClientCertificateSettings (..),
+    newGoogleCloudDialogflowCxV3AgentClientCertificateSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+    GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3AgentValidationResult
+    GoogleCloudDialogflowCxV3AgentValidationResult (..),
+    newGoogleCloudDialogflowCxV3AgentValidationResult,
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedback
+    GoogleCloudDialogflowCxV3AnswerFeedback (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedback,
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+    GoogleCloudDialogflowCxV3AnswerFeedback_Rating (..),
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+    GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason,
+
+    -- ** GoogleCloudDialogflowCxV3AudioInput
+    GoogleCloudDialogflowCxV3AudioInput (..),
+    newGoogleCloudDialogflowCxV3AudioInput,
+
+    -- ** GoogleCloudDialogflowCxV3BargeInConfig
+    GoogleCloudDialogflowCxV3BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3BargeInConfig,
+
+    -- ** GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchRunTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpec
+    GoogleCloudDialogflowCxV3BoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType (..),
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType (..),
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecs
+    GoogleCloudDialogflowCxV3BoostSpecs (..),
+    newGoogleCloudDialogflowCxV3BoostSpecs,
+
+    -- ** GoogleCloudDialogflowCxV3CalculateCoverageResponse
+    GoogleCloudDialogflowCxV3CalculateCoverageResponse (..),
+    newGoogleCloudDialogflowCxV3CalculateCoverageResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Changelog
+    GoogleCloudDialogflowCxV3Changelog (..),
+    newGoogleCloudDialogflowCxV3Changelog,
+
+    -- ** GoogleCloudDialogflowCxV3CompareVersionsRequest
+    GoogleCloudDialogflowCxV3CompareVersionsRequest (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3CompareVersionsResponse
+    GoogleCloudDialogflowCxV3CompareVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ContinuousTestResult
+    GoogleCloudDialogflowCxV3ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3ContinuousTestResult,
+
+    -- ** GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3ContinuousTestResult_Result (..),
+
+    -- ** GoogleCloudDialogflowCxV3ConversationSignals
+    GoogleCloudDialogflowCxV3ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3ConversationSignals,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurn
+    GoogleCloudDialogflowCxV3ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3ConversationTurn,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- ** GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection
+    GoogleCloudDialogflowCxV3DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnection,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowMetadata
+    GoogleCloudDialogflowCxV3DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3DeployFlowMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowRequest
+    GoogleCloudDialogflowCxV3DeployFlowRequest (..),
+    newGoogleCloudDialogflowCxV3DeployFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowResponse
+    GoogleCloudDialogflowCxV3DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3DeployFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Deployment
+    GoogleCloudDialogflowCxV3Deployment (..),
+    newGoogleCloudDialogflowCxV3Deployment,
+
+    -- ** GoogleCloudDialogflowCxV3Deployment_State
+    GoogleCloudDialogflowCxV3Deployment_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3DeploymentResult
+    GoogleCloudDialogflowCxV3DeploymentResult (..),
+    newGoogleCloudDialogflowCxV3DeploymentResult,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentRequest
+    GoogleCloudDialogflowCxV3DetectIntentRequest (..),
+    newGoogleCloudDialogflowCxV3DetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentResponse
+    GoogleCloudDialogflowCxV3DetectIntentResponse (..),
+    newGoogleCloudDialogflowCxV3DetectIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+    GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType (..),
+
+    -- ** GoogleCloudDialogflowCxV3DtmfInput
+    GoogleCloudDialogflowCxV3DtmfInput (..),
+    newGoogleCloudDialogflowCxV3DtmfInput,
+
+    -- ** GoogleCloudDialogflowCxV3EntityType
+    GoogleCloudDialogflowCxV3EntityType (..),
+    newGoogleCloudDialogflowCxV3EntityType,
+
+    -- ** GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+    GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3EntityType_Kind
+    GoogleCloudDialogflowCxV3EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowCxV3EntityTypeEntity
+    GoogleCloudDialogflowCxV3EntityTypeEntity (..),
+    newGoogleCloudDialogflowCxV3EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+    GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase (..),
+    newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3Environment
+    GoogleCloudDialogflowCxV3Environment (..),
+    newGoogleCloudDialogflowCxV3Environment,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentVersionConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EventHandler
+    GoogleCloudDialogflowCxV3EventHandler (..),
+    newGoogleCloudDialogflowCxV3EventHandler,
+
+    -- ** GoogleCloudDialogflowCxV3EventInput
+    GoogleCloudDialogflowCxV3EventInput (..),
+    newGoogleCloudDialogflowCxV3EventInput,
+
+    -- ** GoogleCloudDialogflowCxV3Experiment
+    GoogleCloudDialogflowCxV3Experiment (..),
+    newGoogleCloudDialogflowCxV3Experiment,
+
+    -- ** GoogleCloudDialogflowCxV3Experiment_State
+    GoogleCloudDialogflowCxV3Experiment_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentDefinition
+    GoogleCloudDialogflowCxV3ExperimentDefinition (..),
+    newGoogleCloudDialogflowCxV3ExperimentDefinition,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResult
+    GoogleCloudDialogflowCxV3ExperimentResult (..),
+    newGoogleCloudDialogflowCxV3ExperimentResult,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric
+    GoogleCloudDialogflowCxV3ExperimentResultMetric (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultMetric,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+    GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequest
+    GoogleCloudDialogflowCxV3ExportAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentResponse
+    GoogleCloudDialogflowCxV3ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportFlowRequest
+    GoogleCloudDialogflowCxV3ExportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ExportFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportFlowResponse
+    GoogleCloudDialogflowCxV3ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ExportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsRequest
+    GoogleCloudDialogflowCxV3ExportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsResponse
+    GoogleCloudDialogflowCxV3ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesRequest
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3FilterSpecs
+    GoogleCloudDialogflowCxV3FilterSpecs (..),
+    newGoogleCloudDialogflowCxV3FilterSpecs,
+
+    -- ** GoogleCloudDialogflowCxV3Flow
+    GoogleCloudDialogflowCxV3Flow (..),
+    newGoogleCloudDialogflowCxV3Flow,
+
+    -- ** GoogleCloudDialogflowCxV3FlowImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy (..),
+    newGoogleCloudDialogflowCxV3FlowImportStrategy,
+
+    -- ** GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+    GoogleCloudDialogflowCxV3FlowMultiLanguageSettings (..),
+    newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings,
+
+    -- ** GoogleCloudDialogflowCxV3FlowValidationResult
+    GoogleCloudDialogflowCxV3FlowValidationResult (..),
+    newGoogleCloudDialogflowCxV3FlowValidationResult,
+
+    -- ** GoogleCloudDialogflowCxV3Form
+    GoogleCloudDialogflowCxV3Form (..),
+    newGoogleCloudDialogflowCxV3Form,
+
+    -- ** GoogleCloudDialogflowCxV3FormParameter
+    GoogleCloudDialogflowCxV3FormParameter (..),
+    newGoogleCloudDialogflowCxV3FormParameter,
+
+    -- ** GoogleCloudDialogflowCxV3FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3FormParameterFillBehavior,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillIntentRequest
+    GoogleCloudDialogflowCxV3FulfillIntentRequest (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillIntentResponse
+    GoogleCloudDialogflowCxV3FulfillIntentResponse (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Fulfillment
+    GoogleCloudDialogflowCxV3Fulfillment (..),
+    newGoogleCloudDialogflowCxV3Fulfillment,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCases,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction,
+
+    -- ** GoogleCloudDialogflowCxV3GcsDestination
+    GoogleCloudDialogflowCxV3GcsDestination (..),
+    newGoogleCloudDialogflowCxV3GcsDestination,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettings
+    GoogleCloudDialogflowCxV3GenerativeSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettings,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3Generator
+    GoogleCloudDialogflowCxV3Generator (..),
+    newGoogleCloudDialogflowCxV3Generator,
+
+    -- ** GoogleCloudDialogflowCxV3GeneratorModelParameter
+    GoogleCloudDialogflowCxV3GeneratorModelParameter (..),
+    newGoogleCloudDialogflowCxV3GeneratorModelParameter,
+
+    -- ** GoogleCloudDialogflowCxV3GeneratorPlaceholder
+    GoogleCloudDialogflowCxV3GeneratorPlaceholder (..),
+    newGoogleCloudDialogflowCxV3GeneratorPlaceholder,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowRequest
+    GoogleCloudDialogflowCxV3ImportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ImportFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+    GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowResponse
+    GoogleCloudDialogflowCxV3ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ImportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsRequest
+    GoogleCloudDialogflowCxV3ImportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsResponse
+    GoogleCloudDialogflowCxV3ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesRequest
+    GoogleCloudDialogflowCxV3ImportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3InlineDestination
+    GoogleCloudDialogflowCxV3InlineDestination (..),
+    newGoogleCloudDialogflowCxV3InlineDestination,
+
+    -- ** GoogleCloudDialogflowCxV3InlineSource
+    GoogleCloudDialogflowCxV3InlineSource (..),
+    newGoogleCloudDialogflowCxV3InlineSource,
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig
+    GoogleCloudDialogflowCxV3InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3InputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant (..),
+
+    -- ** GoogleCloudDialogflowCxV3Intent
+    GoogleCloudDialogflowCxV3Intent (..),
+    newGoogleCloudDialogflowCxV3Intent,
+
+    -- ** GoogleCloudDialogflowCxV3Intent_Labels
+    GoogleCloudDialogflowCxV3Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3Intent_Labels,
+
+    -- ** GoogleCloudDialogflowCxV3IntentCoverage
+    GoogleCloudDialogflowCxV3IntentCoverage (..),
+    newGoogleCloudDialogflowCxV3IntentCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3IntentCoverageIntent
+    GoogleCloudDialogflowCxV3IntentCoverageIntent (..),
+    newGoogleCloudDialogflowCxV3IntentCoverageIntent,
+
+    -- ** GoogleCloudDialogflowCxV3IntentInput
+    GoogleCloudDialogflowCxV3IntentInput (..),
+    newGoogleCloudDialogflowCxV3IntentInput,
+
+    -- ** GoogleCloudDialogflowCxV3IntentParameter
+    GoogleCloudDialogflowCxV3IntentParameter (..),
+    newGoogleCloudDialogflowCxV3IntentParameter,
+
+    -- ** GoogleCloudDialogflowCxV3IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3LanguageInfo
+    GoogleCloudDialogflowCxV3LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3LanguageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3ListAgentsResponse
+    GoogleCloudDialogflowCxV3ListAgentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListAgentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListChangelogsResponse
+    GoogleCloudDialogflowCxV3ListChangelogsResponse (..),
+    newGoogleCloudDialogflowCxV3ListChangelogsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListDeploymentsResponse
+    GoogleCloudDialogflowCxV3ListDeploymentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListDeploymentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+    GoogleCloudDialogflowCxV3ListEnvironmentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListEnvironmentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListExperimentsResponse
+    GoogleCloudDialogflowCxV3ListExperimentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListExperimentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListFlowsResponse
+    GoogleCloudDialogflowCxV3ListFlowsResponse (..),
+    newGoogleCloudDialogflowCxV3ListFlowsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListGeneratorsResponse
+    GoogleCloudDialogflowCxV3ListGeneratorsResponse (..),
+    newGoogleCloudDialogflowCxV3ListGeneratorsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListIntentsResponse
+    GoogleCloudDialogflowCxV3ListIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListPagesResponse
+    GoogleCloudDialogflowCxV3ListPagesResponse (..),
+    newGoogleCloudDialogflowCxV3ListPagesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+    GoogleCloudDialogflowCxV3ListSecuritySettingsResponse (..),
+    newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+    GoogleCloudDialogflowCxV3ListTestCaseResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTestCasesResponse
+    GoogleCloudDialogflowCxV3ListTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListVersionsResponse
+    GoogleCloudDialogflowCxV3ListVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3ListVersionsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListWebhooksResponse
+    GoogleCloudDialogflowCxV3ListWebhooksResponse (..),
+    newGoogleCloudDialogflowCxV3ListWebhooksResponse,
+
+    -- ** GoogleCloudDialogflowCxV3LoadVersionRequest
+    GoogleCloudDialogflowCxV3LoadVersionRequest (..),
+    newGoogleCloudDialogflowCxV3LoadVersionRequest,
+
+    -- ** GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse (..),
+    newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Match
+    GoogleCloudDialogflowCxV3Match (..),
+    newGoogleCloudDialogflowCxV3Match,
+
+    -- ** GoogleCloudDialogflowCxV3Match_MatchType
+    GoogleCloudDialogflowCxV3Match_MatchType (..),
+
+    -- ** GoogleCloudDialogflowCxV3Match_Parameters
+    GoogleCloudDialogflowCxV3Match_Parameters (..),
+    newGoogleCloudDialogflowCxV3Match_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3MatchIntentRequest
+    GoogleCloudDialogflowCxV3MatchIntentRequest (..),
+    newGoogleCloudDialogflowCxV3MatchIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3MatchIntentResponse
+    GoogleCloudDialogflowCxV3MatchIntentResponse (..),
+    newGoogleCloudDialogflowCxV3MatchIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings
+    GoogleCloudDialogflowCxV3NluSettings (..),
+    newGoogleCloudDialogflowCxV3NluSettings,
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+    GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings_ModelType
+    GoogleCloudDialogflowCxV3NluSettings_ModelType (..),
+
+    -- ** GoogleCloudDialogflowCxV3OutputAudioConfig
+    GoogleCloudDialogflowCxV3OutputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3OutputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3Page
+    GoogleCloudDialogflowCxV3Page (..),
+    newGoogleCloudDialogflowCxV3Page,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfo
+    GoogleCloudDialogflowCxV3PageInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3Phrase
+    GoogleCloudDialogflowCxV3Phrase (..),
+    newGoogleCloudDialogflowCxV3Phrase,
+
+    -- ** GoogleCloudDialogflowCxV3QueryInput
+    GoogleCloudDialogflowCxV3QueryInput (..),
+    newGoogleCloudDialogflowCxV3QueryInput,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters
+    GoogleCloudDialogflowCxV3QueryParameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_Parameters
+    GoogleCloudDialogflowCxV3QueryParameters_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_Payload
+    GoogleCloudDialogflowCxV3QueryParameters_Payload (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult
+    GoogleCloudDialogflowCxV3QueryResult (..),
+    newGoogleCloudDialogflowCxV3QueryResult,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_Parameters
+    GoogleCloudDialogflowCxV3QueryResult_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem (..),
+    newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem,
+
+    -- ** GoogleCloudDialogflowCxV3ResourceName
+    GoogleCloudDialogflowCxV3ResourceName (..),
+    newGoogleCloudDialogflowCxV3ResourceName,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage
+    GoogleCloudDialogflowCxV3ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+    GoogleCloudDialogflowCxV3ResponseMessage_ResponseType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageText
+    GoogleCloudDialogflowCxV3ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequest
+    GoogleCloudDialogflowCxV3RestoreAgentRequest (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+    GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+    GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutConfig
+    GoogleCloudDialogflowCxV3RolloutConfig (..),
+    newGoogleCloudDialogflowCxV3RolloutConfig,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+    GoogleCloudDialogflowCxV3RolloutConfigRolloutStep (..),
+    newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutState
+    GoogleCloudDialogflowCxV3RolloutState (..),
+    newGoogleCloudDialogflowCxV3RolloutState,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestRequest
+    GoogleCloudDialogflowCxV3RunContinuousTestRequest (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestResponse,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseRequest
+    GoogleCloudDialogflowCxV3RunTestCaseRequest (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseResponse
+    GoogleCloudDialogflowCxV3RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseResponse,
+
+    -- ** GoogleCloudDialogflowCxV3SafetySettings
+    GoogleCloudDialogflowCxV3SafetySettings (..),
+    newGoogleCloudDialogflowCxV3SafetySettings,
+
+    -- ** GoogleCloudDialogflowCxV3SafetySettingsPhrase
+    GoogleCloudDialogflowCxV3SafetySettingsPhrase (..),
+    newGoogleCloudDialogflowCxV3SafetySettingsPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3SearchConfig
+    GoogleCloudDialogflowCxV3SearchConfig (..),
+    newGoogleCloudDialogflowCxV3SearchConfig,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings
+    GoogleCloudDialogflowCxV3SecuritySettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettings,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+    GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings,
+
+    -- ** GoogleCloudDialogflowCxV3SentimentAnalysisResult
+    GoogleCloudDialogflowCxV3SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3SessionEntityType
+    GoogleCloudDialogflowCxV3SessionEntityType (..),
+    newGoogleCloudDialogflowCxV3SessionEntityType,
+
+    -- ** GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3SessionInfo
+    GoogleCloudDialogflowCxV3SessionInfo (..),
+    newGoogleCloudDialogflowCxV3SessionInfo,
+
+    -- ** GoogleCloudDialogflowCxV3SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3SessionInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3SpeechToTextSettings
+    GoogleCloudDialogflowCxV3SpeechToTextSettings (..),
+    newGoogleCloudDialogflowCxV3SpeechToTextSettings,
+
+    -- ** GoogleCloudDialogflowCxV3StartExperimentRequest
+    GoogleCloudDialogflowCxV3StartExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StartExperimentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3StopExperimentRequest
+    GoogleCloudDialogflowCxV3StopExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StopExperimentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+    GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest (..),
+    newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest,
+
+    -- ** GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig (..),
+    newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig,
+
+    -- ** GoogleCloudDialogflowCxV3TestCase
+    GoogleCloudDialogflowCxV3TestCase (..),
+    newGoogleCloudDialogflowCxV3TestCase,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseError
+    GoogleCloudDialogflowCxV3TestCaseError (..),
+    newGoogleCloudDialogflowCxV3TestCaseError,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseResult
+    GoogleCloudDialogflowCxV3TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3TestCaseResult,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3TestCaseResult_TestResult (..),
+
+    -- ** GoogleCloudDialogflowCxV3TestConfig
+    GoogleCloudDialogflowCxV3TestConfig (..),
+    newGoogleCloudDialogflowCxV3TestConfig,
+
+    -- ** GoogleCloudDialogflowCxV3TestError
+    GoogleCloudDialogflowCxV3TestError (..),
+    newGoogleCloudDialogflowCxV3TestError,
+
+    -- ** GoogleCloudDialogflowCxV3TestRunDifference
+    GoogleCloudDialogflowCxV3TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3TestRunDifference,
+
+    -- ** GoogleCloudDialogflowCxV3TestRunDifference_Type
+    GoogleCloudDialogflowCxV3TestRunDifference_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3TextInput
+    GoogleCloudDialogflowCxV3TextInput (..),
+    newGoogleCloudDialogflowCxV3TextInput,
+
+    -- ** GoogleCloudDialogflowCxV3TextToSpeechSettings
+    GoogleCloudDialogflowCxV3TextToSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs,
+
+    -- ** GoogleCloudDialogflowCxV3TrainFlowRequest
+    GoogleCloudDialogflowCxV3TrainFlowRequest (..),
+    newGoogleCloudDialogflowCxV3TrainFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverage
+    GoogleCloudDialogflowCxV3TransitionCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransition,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRoute
+    GoogleCloudDialogflowCxV3TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3TransitionRoute,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroup
+    GoogleCloudDialogflowCxV3TransitionRouteGroup (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroup,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition,
+
+    -- ** GoogleCloudDialogflowCxV3TurnSignals
+    GoogleCloudDialogflowCxV3TurnSignals (..),
+    newGoogleCloudDialogflowCxV3TurnSignals,
+
+    -- ** GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3ValidateAgentRequest
+    GoogleCloudDialogflowCxV3ValidateAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ValidateFlowRequest
+    GoogleCloudDialogflowCxV3ValidateFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage
+    GoogleCloudDialogflowCxV3ValidationMessage (..),
+    newGoogleCloudDialogflowCxV3ValidationMessage,
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+    GoogleCloudDialogflowCxV3ValidationMessage_ResourceType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage_Severity
+    GoogleCloudDialogflowCxV3ValidationMessage_Severity (..),
+
+    -- ** GoogleCloudDialogflowCxV3VariantsHistory
+    GoogleCloudDialogflowCxV3VariantsHistory (..),
+    newGoogleCloudDialogflowCxV3VariantsHistory,
+
+    -- ** GoogleCloudDialogflowCxV3Version
+    GoogleCloudDialogflowCxV3Version (..),
+    newGoogleCloudDialogflowCxV3Version,
+
+    -- ** GoogleCloudDialogflowCxV3Version_State
+    GoogleCloudDialogflowCxV3Version_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3VersionVariants
+    GoogleCloudDialogflowCxV3VersionVariants (..),
+    newGoogleCloudDialogflowCxV3VersionVariants,
+
+    -- ** GoogleCloudDialogflowCxV3VersionVariantsVariant
+    GoogleCloudDialogflowCxV3VersionVariantsVariant (..),
+    newGoogleCloudDialogflowCxV3VersionVariantsVariant,
+
+    -- ** GoogleCloudDialogflowCxV3VoiceSelectionParams
+    GoogleCloudDialogflowCxV3VoiceSelectionParams (..),
+    newGoogleCloudDialogflowCxV3VoiceSelectionParams,
+
+    -- ** GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+    GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender (..),
+
+    -- ** GoogleCloudDialogflowCxV3Webhook
+    GoogleCloudDialogflowCxV3Webhook (..),
+    newGoogleCloudDialogflowCxV3Webhook,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService
+    GoogleCloudDialogflowCxV3WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequest
+    GoogleCloudDialogflowCxV3WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponse
+    GoogleCloudDialogflowCxV3WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AudioInput
+    GoogleCloudDialogflowCxV3beta1AudioInput (..),
+    newGoogleCloudDialogflowCxV3beta1AudioInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BargeInConfig
+    GoogleCloudDialogflowCxV3beta1BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3beta1BargeInConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3beta1ContinuousTestResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationSignals
+    GoogleCloudDialogflowCxV3beta1ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationSignals,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurn
+    GoogleCloudDialogflowCxV3beta1ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurn,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3beta1DataStoreConnection,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+    GoogleCloudDialogflowCxV3beta1DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+    GoogleCloudDialogflowCxV3beta1DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DtmfInput
+    GoogleCloudDialogflowCxV3beta1DtmfInput (..),
+    newGoogleCloudDialogflowCxV3beta1DtmfInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Environment
+    GoogleCloudDialogflowCxV3beta1Environment (..),
+    newGoogleCloudDialogflowCxV3beta1Environment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EventHandler
+    GoogleCloudDialogflowCxV3beta1EventHandler (..),
+    newGoogleCloudDialogflowCxV3beta1EventHandler,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EventInput
+    GoogleCloudDialogflowCxV3beta1EventInput (..),
+    newGoogleCloudDialogflowCxV3beta1EventInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+    GoogleCloudDialogflowCxV3beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Form
+    GoogleCloudDialogflowCxV3beta1Form (..),
+    newGoogleCloudDialogflowCxV3beta1Form,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FormParameter
+    GoogleCloudDialogflowCxV3beta1FormParameter (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameter,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Fulfillment
+    GoogleCloudDialogflowCxV3beta1Fulfillment (..),
+    newGoogleCloudDialogflowCxV3beta1Fulfillment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction,
+
+    -- ** GoogleCloudDialogflowCxV3beta1GcsDestination
+    GoogleCloudDialogflowCxV3beta1GcsDestination (..),
+    newGoogleCloudDialogflowCxV3beta1GcsDestination,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InlineDestination
+    GoogleCloudDialogflowCxV3beta1InlineDestination (..),
+    newGoogleCloudDialogflowCxV3beta1InlineDestination,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3beta1InputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1Intent
+    GoogleCloudDialogflowCxV3beta1Intent (..),
+    newGoogleCloudDialogflowCxV3beta1Intent,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Intent_Labels
+    GoogleCloudDialogflowCxV3beta1Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3beta1Intent_Labels,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentInput
+    GoogleCloudDialogflowCxV3beta1IntentInput (..),
+    newGoogleCloudDialogflowCxV3beta1IntentInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentParameter
+    GoogleCloudDialogflowCxV3beta1IntentParameter (..),
+    newGoogleCloudDialogflowCxV3beta1IntentParameter,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1LanguageInfo
+    GoogleCloudDialogflowCxV3beta1LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1LanguageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Page
+    GoogleCloudDialogflowCxV3beta1Page (..),
+    newGoogleCloudDialogflowCxV3beta1Page,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfo
+    GoogleCloudDialogflowCxV3beta1PageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1QueryInput
+    GoogleCloudDialogflowCxV3beta1QueryInput (..),
+    newGoogleCloudDialogflowCxV3beta1QueryInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessage
+    GoogleCloudDialogflowCxV3beta1ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+    GoogleCloudDialogflowCxV3beta1RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1SessionInfo
+    GoogleCloudDialogflowCxV3beta1SessionInfo (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCase
+    GoogleCloudDialogflowCxV3beta1TestCase (..),
+    newGoogleCloudDialogflowCxV3beta1TestCase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseError
+    GoogleCloudDialogflowCxV3beta1TestCaseError (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestConfig
+    GoogleCloudDialogflowCxV3beta1TestConfig (..),
+    newGoogleCloudDialogflowCxV3beta1TestConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestError
+    GoogleCloudDialogflowCxV3beta1TestError (..),
+    newGoogleCloudDialogflowCxV3beta1TestError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestRunDifference
+    GoogleCloudDialogflowCxV3beta1TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3beta1TestRunDifference,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+    GoogleCloudDialogflowCxV3beta1TestRunDifference_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1TextInput
+    GoogleCloudDialogflowCxV3beta1TextInput (..),
+    newGoogleCloudDialogflowCxV3beta1TextInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCall
+    GoogleCloudDialogflowCxV3beta1ToolCall (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResult
+    GoogleCloudDialogflowCxV3beta1ToolCallResult (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResultError
+    GoogleCloudDialogflowCxV3beta1ToolCallResultError (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResultError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TransitionRoute
+    GoogleCloudDialogflowCxV3beta1TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3beta1TransitionRoute,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TurnSignals
+    GoogleCloudDialogflowCxV3beta1TurnSignals (..),
+    newGoogleCloudDialogflowCxV3beta1TurnSignals,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1Webhook
+    GoogleCloudDialogflowCxV3beta1Webhook (..),
+    newGoogleCloudDialogflowCxV3beta1Webhook,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequest
+    GoogleCloudDialogflowCxV3beta1WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig,
+
+    -- ** GoogleCloudDialogflowV2AnnotatedMessagePart
+    GoogleCloudDialogflowV2AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2AnnotatedMessagePart,
+
+    -- ** GoogleCloudDialogflowV2ArticleAnswer
+    GoogleCloudDialogflowV2ArticleAnswer (..),
+    newGoogleCloudDialogflowV2ArticleAnswer,
+
+    -- ** GoogleCloudDialogflowV2ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2ArticleAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata (..),
+    newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata,
+
+    -- ** GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType (..),
+
+    -- ** GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateIntentsResponse,
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2Context
+    GoogleCloudDialogflowV2Context (..),
+    newGoogleCloudDialogflowV2Context,
+
+    -- ** GoogleCloudDialogflowV2Context_Parameters
+    GoogleCloudDialogflowV2Context_Parameters (..),
+    newGoogleCloudDialogflowV2Context_Parameters,
+
+    -- ** GoogleCloudDialogflowV2ConversationEvent
+    GoogleCloudDialogflowV2ConversationEvent (..),
+    newGoogleCloudDialogflowV2ConversationEvent,
+
+    -- ** GoogleCloudDialogflowV2ConversationEvent_Type
+    GoogleCloudDialogflowV2ConversationEvent_Type (..),
+
+    -- ** GoogleCloudDialogflowV2ConversationModel
+    GoogleCloudDialogflowV2ConversationModel (..),
+    newGoogleCloudDialogflowV2ConversationModel,
+
+    -- ** GoogleCloudDialogflowV2ConversationModel_State
+    GoogleCloudDialogflowV2ConversationModel_State (..),
+
+    -- ** GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2EncryptionSpec
+    GoogleCloudDialogflowV2EncryptionSpec (..),
+    newGoogleCloudDialogflowV2EncryptionSpec,
+
+    -- ** GoogleCloudDialogflowV2EntityType
+    GoogleCloudDialogflowV2EntityType (..),
+    newGoogleCloudDialogflowV2EntityType,
+
+    -- ** GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowV2EntityType_Kind
+    GoogleCloudDialogflowV2EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowV2EntityTypeEntity
+    GoogleCloudDialogflowV2EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowV2EventInput
+    GoogleCloudDialogflowV2EventInput (..),
+    newGoogleCloudDialogflowV2EventInput,
+
+    -- ** GoogleCloudDialogflowV2EventInput_Parameters
+    GoogleCloudDialogflowV2EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2EventInput_Parameters,
+
+    -- ** GoogleCloudDialogflowV2ExportAgentResponse
+    GoogleCloudDialogflowV2ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowV2ExportOperationMetadata
+    GoogleCloudDialogflowV2ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2ExportOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2FaqAnswer
+    GoogleCloudDialogflowV2FaqAnswer (..),
+    newGoogleCloudDialogflowV2FaqAnswer,
+
+    -- ** GoogleCloudDialogflowV2FaqAnswer_Metadata
+    GoogleCloudDialogflowV2FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2FaqAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2GcsDestination
+    GoogleCloudDialogflowV2GcsDestination (..),
+    newGoogleCloudDialogflowV2GcsDestination,
+
+    -- ** GoogleCloudDialogflowV2HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2HumanAgentAssistantEvent,
+
+    -- ** GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationResponse,
+
+    -- ** GoogleCloudDialogflowV2ImportDocumentsResponse
+    GoogleCloudDialogflowV2ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2ImportDocumentsResponse,
+
+    -- ** GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata,
+
+    -- ** GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest,
+
+    -- ** GoogleCloudDialogflowV2InputDataset
+    GoogleCloudDialogflowV2InputDataset (..),
+    newGoogleCloudDialogflowV2InputDataset,
+
+    -- ** GoogleCloudDialogflowV2Intent
+    GoogleCloudDialogflowV2Intent (..),
+    newGoogleCloudDialogflowV2Intent,
+
+    -- ** GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem (..),
+
+    -- ** GoogleCloudDialogflowV2Intent_WebhookState
+    GoogleCloudDialogflowV2Intent_WebhookState (..),
+
+    -- ** GoogleCloudDialogflowV2IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2IntentFollowupIntentInfo,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage
+    GoogleCloudDialogflowV2IntentMessage (..),
+    newGoogleCloudDialogflowV2IntentMessage,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage_Payload
+    GoogleCloudDialogflowV2IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2IntentMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage_Platform
+    GoogleCloudDialogflowV2IntentMessage_Platform (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCard
+    GoogleCloudDialogflowV2IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButton,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCard
+    GoogleCloudDialogflowV2IntentMessageCard (..),
+    newGoogleCloudDialogflowV2IntentMessageCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCardButton
+    GoogleCloudDialogflowV2IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageCardButton,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelect,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageColumnProperties
+    GoogleCloudDialogflowV2IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2IntentMessageColumnProperties,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageImage
+    GoogleCloudDialogflowV2IntentMessageImage (..),
+    newGoogleCloudDialogflowV2IntentMessageImage,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageListSelect
+    GoogleCloudDialogflowV2IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelect,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageListSelectItem
+    GoogleCloudDialogflowV2IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelectItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContent
+    GoogleCloudDialogflowV2IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContent,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageQuickReplies
+    GoogleCloudDialogflowV2IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2IntentMessageQuickReplies,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2IntentMessageSelectItemInfo,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponse,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponses,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSuggestion
+    GoogleCloudDialogflowV2IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestion,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSuggestions
+    GoogleCloudDialogflowV2IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestions,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCard
+    GoogleCloudDialogflowV2IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCardCell
+    GoogleCloudDialogflowV2IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardCell,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCardRow
+    GoogleCloudDialogflowV2IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardRow,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageText
+    GoogleCloudDialogflowV2IntentMessageText (..),
+    newGoogleCloudDialogflowV2IntentMessageText,
+
+    -- ** GoogleCloudDialogflowV2IntentParameter
+    GoogleCloudDialogflowV2IntentParameter (..),
+    newGoogleCloudDialogflowV2IntentParameter,
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrase
+    GoogleCloudDialogflowV2IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2IntentTrainingPhrase_Type (..),
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2KnowledgeOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2Message
+    GoogleCloudDialogflowV2Message (..),
+    newGoogleCloudDialogflowV2Message,
+
+    -- ** GoogleCloudDialogflowV2Message_ParticipantRole
+    GoogleCloudDialogflowV2Message_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2MessageAnnotation
+    GoogleCloudDialogflowV2MessageAnnotation (..),
+    newGoogleCloudDialogflowV2MessageAnnotation,
+
+    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload,
+
+    -- ** GoogleCloudDialogflowV2QueryResult
+    GoogleCloudDialogflowV2QueryResult (..),
+    newGoogleCloudDialogflowV2QueryResult,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_Parameters
+    GoogleCloudDialogflowV2QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2QueryResult_WebhookPayload,
+
+    -- ** GoogleCloudDialogflowV2Sentiment
+    GoogleCloudDialogflowV2Sentiment (..),
+    newGoogleCloudDialogflowV2Sentiment,
+
+    -- ** GoogleCloudDialogflowV2SentimentAnalysisResult
+    GoogleCloudDialogflowV2SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowV2SessionEntityType
+    GoogleCloudDialogflowV2SessionEntityType (..),
+    newGoogleCloudDialogflowV2SessionEntityType,
+
+    -- ** GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2SmartReplyAnswer
+    GoogleCloudDialogflowV2SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2SmartReplyAnswer,
+
+    -- ** GoogleCloudDialogflowV2SmartReplyModelMetadata
+    GoogleCloudDialogflowV2SmartReplyModelMetadata (..),
+    newGoogleCloudDialogflowV2SmartReplyModelMetadata,
+
+    -- ** GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType (..),
+
+    -- ** GoogleCloudDialogflowV2SpeechWordInfo
+    GoogleCloudDialogflowV2SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2SpeechWordInfo,
+
+    -- ** GoogleCloudDialogflowV2StreamingRecognitionResult
+    GoogleCloudDialogflowV2StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2StreamingRecognitionResult,
+
+    -- ** GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType (..),
+
+    -- ** GoogleCloudDialogflowV2SuggestArticlesResponse
+    GoogleCloudDialogflowV2SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2SuggestArticlesResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2SuggestFaqAnswersResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2SuggestSmartRepliesResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestionResult
+    GoogleCloudDialogflowV2SuggestionResult (..),
+    newGoogleCloudDialogflowV2SuggestionResult,
+
+    -- ** GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2WebhookRequest
+    GoogleCloudDialogflowV2WebhookRequest (..),
+    newGoogleCloudDialogflowV2WebhookRequest,
+
+    -- ** GoogleCloudDialogflowV2WebhookResponse
+    GoogleCloudDialogflowV2WebhookResponse (..),
+    newGoogleCloudDialogflowV2WebhookResponse,
+
+    -- ** GoogleCloudDialogflowV2WebhookResponse_Payload
+    GoogleCloudDialogflowV2WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+    GoogleCloudDialogflowV2beta1AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2beta1AnnotatedMessagePart,
+
+    -- ** GoogleCloudDialogflowV2beta1ArticleAnswer
+    GoogleCloudDialogflowV2beta1ArticleAnswer (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Context
+    GoogleCloudDialogflowV2beta1Context (..),
+    newGoogleCloudDialogflowV2beta1Context,
+
+    -- ** GoogleCloudDialogflowV2beta1Context_Parameters
+    GoogleCloudDialogflowV2beta1Context_Parameters (..),
+    newGoogleCloudDialogflowV2beta1Context_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1ConversationEvent
+    GoogleCloudDialogflowV2beta1ConversationEvent (..),
+    newGoogleCloudDialogflowV2beta1ConversationEvent,
+
+    -- ** GoogleCloudDialogflowV2beta1ConversationEvent_Type
+    GoogleCloudDialogflowV2beta1ConversationEvent_Type (..),
+
+    -- ** GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+    GoogleCloudDialogflowV2beta1DialogflowAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1EncryptionSpec
+    GoogleCloudDialogflowV2beta1EncryptionSpec (..),
+    newGoogleCloudDialogflowV2beta1EncryptionSpec,
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType
+    GoogleCloudDialogflowV2beta1EntityType (..),
+    newGoogleCloudDialogflowV2beta1EntityType,
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType_Kind
+    GoogleCloudDialogflowV2beta1EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowV2beta1EntityTypeEntity
+    GoogleCloudDialogflowV2beta1EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2beta1EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowV2beta1EventInput
+    GoogleCloudDialogflowV2beta1EventInput (..),
+    newGoogleCloudDialogflowV2beta1EventInput,
+
+    -- ** GoogleCloudDialogflowV2beta1EventInput_Parameters
+    GoogleCloudDialogflowV2beta1EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2beta1EventInput_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1ExportAgentResponse
+    GoogleCloudDialogflowV2beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2beta1ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1ExportOperationMetadata
+    GoogleCloudDialogflowV2beta1ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ExportOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1FaqAnswer
+    GoogleCloudDialogflowV2beta1FaqAnswer (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+    GoogleCloudDialogflowV2beta1FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1GcsDestination
+    GoogleCloudDialogflowV2beta1GcsDestination (..),
+    newGoogleCloudDialogflowV2beta1GcsDestination,
+
+    -- ** GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent,
+
+    -- ** GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+    GoogleCloudDialogflowV2beta1ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2beta1ImportDocumentsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1Intent
+    GoogleCloudDialogflowV2beta1Intent (..),
+    newGoogleCloudDialogflowV2beta1Intent,
+
+    -- ** GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Intent_WebhookState
+    GoogleCloudDialogflowV2beta1Intent_WebhookState (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage
+    GoogleCloudDialogflowV2beta1IntentMessage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage_Payload
+    GoogleCloudDialogflowV2beta1IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage_Platform
+    GoogleCloudDialogflowV2beta1IntentMessage_Platform (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCard
+    GoogleCloudDialogflowV2beta1IntentMessageCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCardButton,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageImage
+    GoogleCloudDialogflowV2beta1IntentMessageImage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageImage,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelect
+    GoogleCloudDialogflowV2beta1IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelect,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContent,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+    GoogleCloudDialogflowV2beta1IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmText
+    GoogleCloudDialogflowV2beta1IntentMessageRbmText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmText,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestions,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCard
+    GoogleCloudDialogflowV2beta1IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageText
+    GoogleCloudDialogflowV2beta1IntentMessageText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageText,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentParameter
+    GoogleCloudDialogflowV2beta1IntentParameter (..),
+    newGoogleCloudDialogflowV2beta1IntentParameter,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentSuggestion
+    GoogleCloudDialogflowV2beta1IntentSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswers
+    GoogleCloudDialogflowV2beta1KnowledgeAnswers (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswers,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel (..),
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Message
+    GoogleCloudDialogflowV2beta1Message (..),
+    newGoogleCloudDialogflowV2beta1Message,
+
+    -- ** GoogleCloudDialogflowV2beta1Message_ParticipantRole
+    GoogleCloudDialogflowV2beta1Message_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1MessageAnnotation
+    GoogleCloudDialogflowV2beta1MessageAnnotation (..),
+    newGoogleCloudDialogflowV2beta1MessageAnnotation,
+
+    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult
+    GoogleCloudDialogflowV2beta1QueryResult (..),
+    newGoogleCloudDialogflowV2beta1QueryResult,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_Parameters
+    GoogleCloudDialogflowV2beta1QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessage
+    GoogleCloudDialogflowV2beta1ResponseMessage (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+    GoogleCloudDialogflowV2beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageText
+    GoogleCloudDialogflowV2beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowV2beta1Sentiment
+    GoogleCloudDialogflowV2beta1Sentiment (..),
+    newGoogleCloudDialogflowV2beta1Sentiment,
+
+    -- ** GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+    GoogleCloudDialogflowV2beta1SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2beta1SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowV2beta1SessionEntityType
+    GoogleCloudDialogflowV2beta1SessionEntityType (..),
+    newGoogleCloudDialogflowV2beta1SessionEntityType,
+
+    -- ** GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SmartReplyAnswer
+    GoogleCloudDialogflowV2beta1SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2beta1SmartReplyAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1SpeechWordInfo
+    GoogleCloudDialogflowV2beta1SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2beta1SpeechWordInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2beta1StreamingRecognitionResult,
+
+    -- ** GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+    GoogleCloudDialogflowV2beta1SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestArticlesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestionResult
+    GoogleCloudDialogflowV2beta1SuggestionResult (..),
+    newGoogleCloudDialogflowV2beta1SuggestionResult,
+
+    -- ** GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents (..),
+    newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents,
+
+    -- ** GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem (..),
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookRequest
+    GoogleCloudDialogflowV2beta1WebhookRequest (..),
+    newGoogleCloudDialogflowV2beta1WebhookRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookResponse
+    GoogleCloudDialogflowV2beta1WebhookResponse (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+    GoogleCloudDialogflowV2beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowV3alpha1ConversationSignals
+    GoogleCloudDialogflowV3alpha1ConversationSignals (..),
+    newGoogleCloudDialogflowV3alpha1ConversationSignals,
+
+    -- ** GoogleCloudDialogflowV3alpha1TurnSignals
+    GoogleCloudDialogflowV3alpha1TurnSignals (..),
+    newGoogleCloudDialogflowV3alpha1TurnSignals,
+
+    -- ** GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudLocationListLocationsResponse
+    GoogleCloudLocationListLocationsResponse (..),
+    newGoogleCloudLocationListLocationsResponse,
+
+    -- ** GoogleCloudLocationLocation
+    GoogleCloudLocationLocation (..),
+    newGoogleCloudLocationLocation,
+
+    -- ** GoogleCloudLocationLocation_Labels
+    GoogleCloudLocationLocation_Labels (..),
+    newGoogleCloudLocationLocation_Labels,
+
+    -- ** GoogleCloudLocationLocation_Metadata
+    GoogleCloudLocationLocation_Metadata (..),
+    newGoogleCloudLocationLocation_Metadata,
+
+    -- ** GoogleLongrunningListOperationsResponse
+    GoogleLongrunningListOperationsResponse (..),
+    newGoogleLongrunningListOperationsResponse,
+
+    -- ** GoogleLongrunningOperation
+    GoogleLongrunningOperation (..),
+    newGoogleLongrunningOperation,
+
+    -- ** GoogleLongrunningOperation_Metadata
+    GoogleLongrunningOperation_Metadata (..),
+    newGoogleLongrunningOperation_Metadata,
+
+    -- ** GoogleLongrunningOperation_Response
+    GoogleLongrunningOperation_Response (..),
+    newGoogleLongrunningOperation_Response,
+
+    -- ** GoogleProtobufEmpty
+    GoogleProtobufEmpty (..),
+    newGoogleProtobufEmpty,
+
+    -- ** GoogleRpcStatus
+    GoogleRpcStatus (..),
+    newGoogleRpcStatus,
+
+    -- ** GoogleRpcStatus_DetailsItem
+    GoogleRpcStatus_DetailsItem (..),
+    newGoogleRpcStatus_DetailsItem,
+
+    -- ** GoogleTypeLatLng
+    GoogleTypeLatLng (..),
+    newGoogleTypeLatLng,
+
+    -- ** ProjectsLocationsAgentsIntentsListIntentView
+    ProjectsLocationsAgentsIntentsListIntentView (..),
+
+    -- ** ProjectsLocationsAgentsTestCasesCalculateCoverageType
+    ProjectsLocationsAgentsTestCasesCalculateCoverageType (..),
+
+    -- ** ProjectsLocationsAgentsTestCasesListView
+    ProjectsLocationsAgentsTestCasesListView (..),
+  )
+where
+
+import Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Export
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Import
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.List
+import Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.ContinuousTestResults.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.DeployFlow
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Start
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Stop
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.LookupEnvironmentHistory
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.RunContinuousTest
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.DetectIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.FulfillIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.MatchIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.ServerStreamingDetectIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Export
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Export
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.GetValidationResult
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Import
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Train
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Validate
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.CompareVersions
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Load
+import Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Generators.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Generators.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Generators.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Generators.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Generators.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.GetGenerativeSettings
+import Gogol.DialogFlow.Projects.Locations.Agents.GetValidationResult
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Export
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Import
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Intents.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Restore
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.DetectIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.FulfillIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.MatchIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.ServerStreamingDetectIntent
+import Gogol.DialogFlow.Projects.Locations.Agents.Sessions.SubmitAnswerFeedback
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchDelete
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchRun
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.CalculateCoverage
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Export
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Import
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.List
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.List
+import Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Run
+import Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.List
+import Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Patch
+import Gogol.DialogFlow.Projects.Locations.Agents.UpdateGenerativeSettings
+import Gogol.DialogFlow.Projects.Locations.Agents.Validate
+import Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Create
+import Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Delete
+import Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Get
+import Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.List
+import Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Patch
+import Gogol.DialogFlow.Projects.Locations.Get
+import Gogol.DialogFlow.Projects.Locations.List
+import Gogol.DialogFlow.Projects.Locations.Operations.Cancel
+import Gogol.DialogFlow.Projects.Locations.Operations.Get
+import Gogol.DialogFlow.Projects.Locations.Operations.List
+import Gogol.DialogFlow.Projects.Locations.SecuritySettings.Create
+import Gogol.DialogFlow.Projects.Locations.SecuritySettings.Delete
+import Gogol.DialogFlow.Projects.Locations.SecuritySettings.Get
+import Gogol.DialogFlow.Projects.Locations.SecuritySettings.List
+import Gogol.DialogFlow.Projects.Locations.SecuritySettings.Patch
+import Gogol.DialogFlow.Projects.Operations.Cancel
+import Gogol.DialogFlow.Projects.Operations.Get
+import Gogol.DialogFlow.Projects.Operations.List
+import Gogol.DialogFlow.Types
diff --git a/gen/Gogol/DialogFlow/Internal/Product.hs b/gen/Gogol/DialogFlow/Internal/Product.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Internal/Product.hs
@@ -0,0 +1,32445 @@
+{-# 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.DialogFlow.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.DialogFlow.Internal.Product
+  ( -- * GoogleCloudDialogflowCxV3AdvancedSettings
+    GoogleCloudDialogflowCxV3AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettings,
+
+    -- * GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings,
+
+    -- * GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings,
+
+    -- * GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings,
+
+    -- * GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models,
+
+    -- * GoogleCloudDialogflowCxV3Agent
+    GoogleCloudDialogflowCxV3Agent (..),
+    newGoogleCloudDialogflowCxV3Agent,
+
+    -- * GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+    GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings (..),
+    newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+    GoogleCloudDialogflowCxV3AgentClientCertificateSettings (..),
+    newGoogleCloudDialogflowCxV3AgentClientCertificateSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+    GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings,
+
+    -- * GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata,
+
+    -- * GoogleCloudDialogflowCxV3AgentValidationResult
+    GoogleCloudDialogflowCxV3AgentValidationResult (..),
+    newGoogleCloudDialogflowCxV3AgentValidationResult,
+
+    -- * GoogleCloudDialogflowCxV3AnswerFeedback
+    GoogleCloudDialogflowCxV3AnswerFeedback (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedback,
+
+    -- * GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+    GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason,
+
+    -- * GoogleCloudDialogflowCxV3AudioInput
+    GoogleCloudDialogflowCxV3AudioInput (..),
+    newGoogleCloudDialogflowCxV3AudioInput,
+
+    -- * GoogleCloudDialogflowCxV3BargeInConfig
+    GoogleCloudDialogflowCxV3BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3BargeInConfig,
+
+    -- * GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest,
+
+    -- * GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchRunTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest,
+
+    -- * GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3BoostSpec
+    GoogleCloudDialogflowCxV3BoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpec,
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec,
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec,
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint,
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecs
+    GoogleCloudDialogflowCxV3BoostSpecs (..),
+    newGoogleCloudDialogflowCxV3BoostSpecs,
+
+    -- * GoogleCloudDialogflowCxV3CalculateCoverageResponse
+    GoogleCloudDialogflowCxV3CalculateCoverageResponse (..),
+    newGoogleCloudDialogflowCxV3CalculateCoverageResponse,
+
+    -- * GoogleCloudDialogflowCxV3Changelog
+    GoogleCloudDialogflowCxV3Changelog (..),
+    newGoogleCloudDialogflowCxV3Changelog,
+
+    -- * GoogleCloudDialogflowCxV3CompareVersionsRequest
+    GoogleCloudDialogflowCxV3CompareVersionsRequest (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsRequest,
+
+    -- * GoogleCloudDialogflowCxV3CompareVersionsResponse
+    GoogleCloudDialogflowCxV3CompareVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ContinuousTestResult
+    GoogleCloudDialogflowCxV3ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3ContinuousTestResult,
+
+    -- * GoogleCloudDialogflowCxV3ConversationSignals
+    GoogleCloudDialogflowCxV3ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3ConversationSignals,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurn
+    GoogleCloudDialogflowCxV3ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3ConversationTurn,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- * GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- * GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnection
+    GoogleCloudDialogflowCxV3DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnection,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignals,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals,
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet,
+
+    -- * GoogleCloudDialogflowCxV3DeployFlowMetadata
+    GoogleCloudDialogflowCxV3DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3DeployFlowMetadata,
+
+    -- * GoogleCloudDialogflowCxV3DeployFlowRequest
+    GoogleCloudDialogflowCxV3DeployFlowRequest (..),
+    newGoogleCloudDialogflowCxV3DeployFlowRequest,
+
+    -- * GoogleCloudDialogflowCxV3DeployFlowResponse
+    GoogleCloudDialogflowCxV3DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3DeployFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3Deployment
+    GoogleCloudDialogflowCxV3Deployment (..),
+    newGoogleCloudDialogflowCxV3Deployment,
+
+    -- * GoogleCloudDialogflowCxV3DeploymentResult
+    GoogleCloudDialogflowCxV3DeploymentResult (..),
+    newGoogleCloudDialogflowCxV3DeploymentResult,
+
+    -- * GoogleCloudDialogflowCxV3DetectIntentRequest
+    GoogleCloudDialogflowCxV3DetectIntentRequest (..),
+    newGoogleCloudDialogflowCxV3DetectIntentRequest,
+
+    -- * GoogleCloudDialogflowCxV3DetectIntentResponse
+    GoogleCloudDialogflowCxV3DetectIntentResponse (..),
+    newGoogleCloudDialogflowCxV3DetectIntentResponse,
+
+    -- * GoogleCloudDialogflowCxV3DtmfInput
+    GoogleCloudDialogflowCxV3DtmfInput (..),
+    newGoogleCloudDialogflowCxV3DtmfInput,
+
+    -- * GoogleCloudDialogflowCxV3EntityType
+    GoogleCloudDialogflowCxV3EntityType (..),
+    newGoogleCloudDialogflowCxV3EntityType,
+
+    -- * GoogleCloudDialogflowCxV3EntityTypeEntity
+    GoogleCloudDialogflowCxV3EntityTypeEntity (..),
+    newGoogleCloudDialogflowCxV3EntityTypeEntity,
+
+    -- * GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+    GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase (..),
+    newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase,
+
+    -- * GoogleCloudDialogflowCxV3Environment
+    GoogleCloudDialogflowCxV3Environment (..),
+    newGoogleCloudDialogflowCxV3Environment,
+
+    -- * GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig,
+
+    -- * GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentVersionConfig,
+
+    -- * GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig,
+
+    -- * GoogleCloudDialogflowCxV3EventHandler
+    GoogleCloudDialogflowCxV3EventHandler (..),
+    newGoogleCloudDialogflowCxV3EventHandler,
+
+    -- * GoogleCloudDialogflowCxV3EventInput
+    GoogleCloudDialogflowCxV3EventInput (..),
+    newGoogleCloudDialogflowCxV3EventInput,
+
+    -- * GoogleCloudDialogflowCxV3Experiment
+    GoogleCloudDialogflowCxV3Experiment (..),
+    newGoogleCloudDialogflowCxV3Experiment,
+
+    -- * GoogleCloudDialogflowCxV3ExperimentDefinition
+    GoogleCloudDialogflowCxV3ExperimentDefinition (..),
+    newGoogleCloudDialogflowCxV3ExperimentDefinition,
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResult
+    GoogleCloudDialogflowCxV3ExperimentResult (..),
+    newGoogleCloudDialogflowCxV3ExperimentResult,
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval,
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResultMetric
+    GoogleCloudDialogflowCxV3ExperimentResultMetric (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultMetric,
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+    GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics,
+
+    -- * GoogleCloudDialogflowCxV3ExportAgentRequest
+    GoogleCloudDialogflowCxV3ExportAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequest,
+
+    -- * GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination,
+
+    -- * GoogleCloudDialogflowCxV3ExportAgentResponse
+    GoogleCloudDialogflowCxV3ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3ExportAgentResponse,
+
+    -- * GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesRequest,
+
+    -- * GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ExportFlowRequest
+    GoogleCloudDialogflowCxV3ExportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ExportFlowRequest,
+
+    -- * GoogleCloudDialogflowCxV3ExportFlowResponse
+    GoogleCloudDialogflowCxV3ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ExportFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ExportIntentsRequest
+    GoogleCloudDialogflowCxV3ExportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsRequest,
+
+    -- * GoogleCloudDialogflowCxV3ExportIntentsResponse
+    GoogleCloudDialogflowCxV3ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ExportTestCasesRequest
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesRequest,
+
+    -- * GoogleCloudDialogflowCxV3ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3FilterSpecs
+    GoogleCloudDialogflowCxV3FilterSpecs (..),
+    newGoogleCloudDialogflowCxV3FilterSpecs,
+
+    -- * GoogleCloudDialogflowCxV3Flow
+    GoogleCloudDialogflowCxV3Flow (..),
+    newGoogleCloudDialogflowCxV3Flow,
+
+    -- * GoogleCloudDialogflowCxV3FlowImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy (..),
+    newGoogleCloudDialogflowCxV3FlowImportStrategy,
+
+    -- * GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+    GoogleCloudDialogflowCxV3FlowMultiLanguageSettings (..),
+    newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings,
+
+    -- * GoogleCloudDialogflowCxV3FlowValidationResult
+    GoogleCloudDialogflowCxV3FlowValidationResult (..),
+    newGoogleCloudDialogflowCxV3FlowValidationResult,
+
+    -- * GoogleCloudDialogflowCxV3Form
+    GoogleCloudDialogflowCxV3Form (..),
+    newGoogleCloudDialogflowCxV3Form,
+
+    -- * GoogleCloudDialogflowCxV3FormParameter
+    GoogleCloudDialogflowCxV3FormParameter (..),
+    newGoogleCloudDialogflowCxV3FormParameter,
+
+    -- * GoogleCloudDialogflowCxV3FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3FormParameterFillBehavior,
+
+    -- * GoogleCloudDialogflowCxV3FulfillIntentRequest
+    GoogleCloudDialogflowCxV3FulfillIntentRequest (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentRequest,
+
+    -- * GoogleCloudDialogflowCxV3FulfillIntentResponse
+    GoogleCloudDialogflowCxV3FulfillIntentResponse (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentResponse,
+
+    -- * GoogleCloudDialogflowCxV3Fulfillment
+    GoogleCloudDialogflowCxV3Fulfillment (..),
+    newGoogleCloudDialogflowCxV3Fulfillment,
+
+    -- * GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCases,
+
+    -- * GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase,
+
+    -- * GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent,
+
+    -- * GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction,
+
+    -- * GoogleCloudDialogflowCxV3GcsDestination
+    GoogleCloudDialogflowCxV3GcsDestination (..),
+    newGoogleCloudDialogflowCxV3GcsDestination,
+
+    -- * GoogleCloudDialogflowCxV3GenerativeSettings
+    GoogleCloudDialogflowCxV3GenerativeSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettings,
+
+    -- * GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings,
+
+    -- * GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate,
+
+    -- * GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings,
+
+    -- * GoogleCloudDialogflowCxV3Generator
+    GoogleCloudDialogflowCxV3Generator (..),
+    newGoogleCloudDialogflowCxV3Generator,
+
+    -- * GoogleCloudDialogflowCxV3GeneratorModelParameter
+    GoogleCloudDialogflowCxV3GeneratorModelParameter (..),
+    newGoogleCloudDialogflowCxV3GeneratorModelParameter,
+
+    -- * GoogleCloudDialogflowCxV3GeneratorPlaceholder
+    GoogleCloudDialogflowCxV3GeneratorPlaceholder (..),
+    newGoogleCloudDialogflowCxV3GeneratorPlaceholder,
+
+    -- * GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesRequest,
+
+    -- * GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources,
+
+    -- * GoogleCloudDialogflowCxV3ImportFlowRequest
+    GoogleCloudDialogflowCxV3ImportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ImportFlowRequest,
+
+    -- * GoogleCloudDialogflowCxV3ImportFlowResponse
+    GoogleCloudDialogflowCxV3ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ImportFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ImportIntentsRequest
+    GoogleCloudDialogflowCxV3ImportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsRequest,
+
+    -- * GoogleCloudDialogflowCxV3ImportIntentsResponse
+    GoogleCloudDialogflowCxV3ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources,
+
+    -- * GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3ImportTestCasesRequest
+    GoogleCloudDialogflowCxV3ImportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesRequest,
+
+    -- * GoogleCloudDialogflowCxV3ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3InlineDestination
+    GoogleCloudDialogflowCxV3InlineDestination (..),
+    newGoogleCloudDialogflowCxV3InlineDestination,
+
+    -- * GoogleCloudDialogflowCxV3InlineSource
+    GoogleCloudDialogflowCxV3InlineSource (..),
+    newGoogleCloudDialogflowCxV3InlineSource,
+
+    -- * GoogleCloudDialogflowCxV3InputAudioConfig
+    GoogleCloudDialogflowCxV3InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3InputAudioConfig,
+
+    -- * GoogleCloudDialogflowCxV3Intent
+    GoogleCloudDialogflowCxV3Intent (..),
+    newGoogleCloudDialogflowCxV3Intent,
+
+    -- * GoogleCloudDialogflowCxV3Intent_Labels
+    GoogleCloudDialogflowCxV3Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3Intent_Labels,
+
+    -- * GoogleCloudDialogflowCxV3IntentCoverage
+    GoogleCloudDialogflowCxV3IntentCoverage (..),
+    newGoogleCloudDialogflowCxV3IntentCoverage,
+
+    -- * GoogleCloudDialogflowCxV3IntentCoverageIntent
+    GoogleCloudDialogflowCxV3IntentCoverageIntent (..),
+    newGoogleCloudDialogflowCxV3IntentCoverageIntent,
+
+    -- * GoogleCloudDialogflowCxV3IntentInput
+    GoogleCloudDialogflowCxV3IntentInput (..),
+    newGoogleCloudDialogflowCxV3IntentInput,
+
+    -- * GoogleCloudDialogflowCxV3IntentParameter
+    GoogleCloudDialogflowCxV3IntentParameter (..),
+    newGoogleCloudDialogflowCxV3IntentParameter,
+
+    -- * GoogleCloudDialogflowCxV3IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrase,
+
+    -- * GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart,
+
+    -- * GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings,
+
+    -- * GoogleCloudDialogflowCxV3LanguageInfo
+    GoogleCloudDialogflowCxV3LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3LanguageInfo,
+
+    -- * GoogleCloudDialogflowCxV3ListAgentsResponse
+    GoogleCloudDialogflowCxV3ListAgentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListAgentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListChangelogsResponse
+    GoogleCloudDialogflowCxV3ListChangelogsResponse (..),
+    newGoogleCloudDialogflowCxV3ListChangelogsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListDeploymentsResponse
+    GoogleCloudDialogflowCxV3ListDeploymentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListDeploymentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+    GoogleCloudDialogflowCxV3ListEnvironmentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListEnvironmentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListExperimentsResponse
+    GoogleCloudDialogflowCxV3ListExperimentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListExperimentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListFlowsResponse
+    GoogleCloudDialogflowCxV3ListFlowsResponse (..),
+    newGoogleCloudDialogflowCxV3ListFlowsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListGeneratorsResponse
+    GoogleCloudDialogflowCxV3ListGeneratorsResponse (..),
+    newGoogleCloudDialogflowCxV3ListGeneratorsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListIntentsResponse
+    GoogleCloudDialogflowCxV3ListIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListIntentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListPagesResponse
+    GoogleCloudDialogflowCxV3ListPagesResponse (..),
+    newGoogleCloudDialogflowCxV3ListPagesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+    GoogleCloudDialogflowCxV3ListSecuritySettingsResponse (..),
+    newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+    GoogleCloudDialogflowCxV3ListTestCaseResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListTestCasesResponse
+    GoogleCloudDialogflowCxV3ListTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListVersionsResponse
+    GoogleCloudDialogflowCxV3ListVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3ListVersionsResponse,
+
+    -- * GoogleCloudDialogflowCxV3ListWebhooksResponse
+    GoogleCloudDialogflowCxV3ListWebhooksResponse (..),
+    newGoogleCloudDialogflowCxV3ListWebhooksResponse,
+
+    -- * GoogleCloudDialogflowCxV3LoadVersionRequest
+    GoogleCloudDialogflowCxV3LoadVersionRequest (..),
+    newGoogleCloudDialogflowCxV3LoadVersionRequest,
+
+    -- * GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse (..),
+    newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse,
+
+    -- * GoogleCloudDialogflowCxV3Match
+    GoogleCloudDialogflowCxV3Match (..),
+    newGoogleCloudDialogflowCxV3Match,
+
+    -- * GoogleCloudDialogflowCxV3Match_Parameters
+    GoogleCloudDialogflowCxV3Match_Parameters (..),
+    newGoogleCloudDialogflowCxV3Match_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3MatchIntentRequest
+    GoogleCloudDialogflowCxV3MatchIntentRequest (..),
+    newGoogleCloudDialogflowCxV3MatchIntentRequest,
+
+    -- * GoogleCloudDialogflowCxV3MatchIntentResponse
+    GoogleCloudDialogflowCxV3MatchIntentResponse (..),
+    newGoogleCloudDialogflowCxV3MatchIntentResponse,
+
+    -- * GoogleCloudDialogflowCxV3NluSettings
+    GoogleCloudDialogflowCxV3NluSettings (..),
+    newGoogleCloudDialogflowCxV3NluSettings,
+
+    -- * GoogleCloudDialogflowCxV3OutputAudioConfig
+    GoogleCloudDialogflowCxV3OutputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3OutputAudioConfig,
+
+    -- * GoogleCloudDialogflowCxV3Page
+    GoogleCloudDialogflowCxV3Page (..),
+    newGoogleCloudDialogflowCxV3Page,
+
+    -- * GoogleCloudDialogflowCxV3PageInfo
+    GoogleCloudDialogflowCxV3PageInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfo,
+
+    -- * GoogleCloudDialogflowCxV3PageInfoFormInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfo,
+
+    -- * GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo,
+
+    -- * GoogleCloudDialogflowCxV3Phrase
+    GoogleCloudDialogflowCxV3Phrase (..),
+    newGoogleCloudDialogflowCxV3Phrase,
+
+    -- * GoogleCloudDialogflowCxV3QueryInput
+    GoogleCloudDialogflowCxV3QueryInput (..),
+    newGoogleCloudDialogflowCxV3QueryInput,
+
+    -- * GoogleCloudDialogflowCxV3QueryParameters
+    GoogleCloudDialogflowCxV3QueryParameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters,
+
+    -- * GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata,
+
+    -- * GoogleCloudDialogflowCxV3QueryParameters_Parameters
+    GoogleCloudDialogflowCxV3QueryParameters_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3QueryParameters_Payload
+    GoogleCloudDialogflowCxV3QueryParameters_Payload (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Payload,
+
+    -- * GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders,
+
+    -- * GoogleCloudDialogflowCxV3QueryResult
+    GoogleCloudDialogflowCxV3QueryResult (..),
+    newGoogleCloudDialogflowCxV3QueryResult,
+
+    -- * GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo,
+
+    -- * GoogleCloudDialogflowCxV3QueryResult_Parameters
+    GoogleCloudDialogflowCxV3QueryResult_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryResult_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem (..),
+    newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem,
+
+    -- * GoogleCloudDialogflowCxV3ResourceName
+    GoogleCloudDialogflowCxV3ResourceName (..),
+    newGoogleCloudDialogflowCxV3ResourceName,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessage
+    GoogleCloudDialogflowCxV3ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage_Payload,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall,
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessageText
+    GoogleCloudDialogflowCxV3ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageText,
+
+    -- * GoogleCloudDialogflowCxV3RestoreAgentRequest
+    GoogleCloudDialogflowCxV3RestoreAgentRequest (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequest,
+
+    -- * GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+    GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource,
+
+    -- * GoogleCloudDialogflowCxV3RolloutConfig
+    GoogleCloudDialogflowCxV3RolloutConfig (..),
+    newGoogleCloudDialogflowCxV3RolloutConfig,
+
+    -- * GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+    GoogleCloudDialogflowCxV3RolloutConfigRolloutStep (..),
+    newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep,
+
+    -- * GoogleCloudDialogflowCxV3RolloutState
+    GoogleCloudDialogflowCxV3RolloutState (..),
+    newGoogleCloudDialogflowCxV3RolloutState,
+
+    -- * GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestMetadata,
+
+    -- * GoogleCloudDialogflowCxV3RunContinuousTestRequest
+    GoogleCloudDialogflowCxV3RunContinuousTestRequest (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestRequest,
+
+    -- * GoogleCloudDialogflowCxV3RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestResponse,
+
+    -- * GoogleCloudDialogflowCxV3RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseMetadata,
+
+    -- * GoogleCloudDialogflowCxV3RunTestCaseRequest
+    GoogleCloudDialogflowCxV3RunTestCaseRequest (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseRequest,
+
+    -- * GoogleCloudDialogflowCxV3RunTestCaseResponse
+    GoogleCloudDialogflowCxV3RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseResponse,
+
+    -- * GoogleCloudDialogflowCxV3SafetySettings
+    GoogleCloudDialogflowCxV3SafetySettings (..),
+    newGoogleCloudDialogflowCxV3SafetySettings,
+
+    -- * GoogleCloudDialogflowCxV3SafetySettingsPhrase
+    GoogleCloudDialogflowCxV3SafetySettingsPhrase (..),
+    newGoogleCloudDialogflowCxV3SafetySettingsPhrase,
+
+    -- * GoogleCloudDialogflowCxV3SearchConfig
+    GoogleCloudDialogflowCxV3SearchConfig (..),
+    newGoogleCloudDialogflowCxV3SearchConfig,
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettings
+    GoogleCloudDialogflowCxV3SecuritySettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettings,
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings,
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings,
+
+    -- * GoogleCloudDialogflowCxV3SentimentAnalysisResult
+    GoogleCloudDialogflowCxV3SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3SentimentAnalysisResult,
+
+    -- * GoogleCloudDialogflowCxV3SessionEntityType
+    GoogleCloudDialogflowCxV3SessionEntityType (..),
+    newGoogleCloudDialogflowCxV3SessionEntityType,
+
+    -- * GoogleCloudDialogflowCxV3SessionInfo
+    GoogleCloudDialogflowCxV3SessionInfo (..),
+    newGoogleCloudDialogflowCxV3SessionInfo,
+
+    -- * GoogleCloudDialogflowCxV3SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3SessionInfo_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3SpeechToTextSettings
+    GoogleCloudDialogflowCxV3SpeechToTextSettings (..),
+    newGoogleCloudDialogflowCxV3SpeechToTextSettings,
+
+    -- * GoogleCloudDialogflowCxV3StartExperimentRequest
+    GoogleCloudDialogflowCxV3StartExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StartExperimentRequest,
+
+    -- * GoogleCloudDialogflowCxV3StopExperimentRequest
+    GoogleCloudDialogflowCxV3StopExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StopExperimentRequest,
+
+    -- * GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+    GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest (..),
+    newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest,
+
+    -- * GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig (..),
+    newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig,
+
+    -- * GoogleCloudDialogflowCxV3TestCase
+    GoogleCloudDialogflowCxV3TestCase (..),
+    newGoogleCloudDialogflowCxV3TestCase,
+
+    -- * GoogleCloudDialogflowCxV3TestCaseError
+    GoogleCloudDialogflowCxV3TestCaseError (..),
+    newGoogleCloudDialogflowCxV3TestCaseError,
+
+    -- * GoogleCloudDialogflowCxV3TestCaseResult
+    GoogleCloudDialogflowCxV3TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3TestCaseResult,
+
+    -- * GoogleCloudDialogflowCxV3TestConfig
+    GoogleCloudDialogflowCxV3TestConfig (..),
+    newGoogleCloudDialogflowCxV3TestConfig,
+
+    -- * GoogleCloudDialogflowCxV3TestError
+    GoogleCloudDialogflowCxV3TestError (..),
+    newGoogleCloudDialogflowCxV3TestError,
+
+    -- * GoogleCloudDialogflowCxV3TestRunDifference
+    GoogleCloudDialogflowCxV3TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3TestRunDifference,
+
+    -- * GoogleCloudDialogflowCxV3TextInput
+    GoogleCloudDialogflowCxV3TextInput (..),
+    newGoogleCloudDialogflowCxV3TextInput,
+
+    -- * GoogleCloudDialogflowCxV3TextToSpeechSettings
+    GoogleCloudDialogflowCxV3TextToSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings,
+
+    -- * GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs,
+
+    -- * GoogleCloudDialogflowCxV3TrainFlowRequest
+    GoogleCloudDialogflowCxV3TrainFlowRequest (..),
+    newGoogleCloudDialogflowCxV3TrainFlowRequest,
+
+    -- * GoogleCloudDialogflowCxV3TransitionCoverage
+    GoogleCloudDialogflowCxV3TransitionCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverage,
+
+    -- * GoogleCloudDialogflowCxV3TransitionCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransition,
+
+    -- * GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode,
+
+    -- * GoogleCloudDialogflowCxV3TransitionRoute
+    GoogleCloudDialogflowCxV3TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3TransitionRoute,
+
+    -- * GoogleCloudDialogflowCxV3TransitionRouteGroup
+    GoogleCloudDialogflowCxV3TransitionRouteGroup (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroup,
+
+    -- * GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage,
+
+    -- * GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage,
+
+    -- * GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition,
+
+    -- * GoogleCloudDialogflowCxV3TurnSignals
+    GoogleCloudDialogflowCxV3TurnSignals (..),
+    newGoogleCloudDialogflowCxV3TurnSignals,
+
+    -- * GoogleCloudDialogflowCxV3ValidateAgentRequest
+    GoogleCloudDialogflowCxV3ValidateAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateAgentRequest,
+
+    -- * GoogleCloudDialogflowCxV3ValidateFlowRequest
+    GoogleCloudDialogflowCxV3ValidateFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateFlowRequest,
+
+    -- * GoogleCloudDialogflowCxV3ValidationMessage
+    GoogleCloudDialogflowCxV3ValidationMessage (..),
+    newGoogleCloudDialogflowCxV3ValidationMessage,
+
+    -- * GoogleCloudDialogflowCxV3VariantsHistory
+    GoogleCloudDialogflowCxV3VariantsHistory (..),
+    newGoogleCloudDialogflowCxV3VariantsHistory,
+
+    -- * GoogleCloudDialogflowCxV3Version
+    GoogleCloudDialogflowCxV3Version (..),
+    newGoogleCloudDialogflowCxV3Version,
+
+    -- * GoogleCloudDialogflowCxV3VersionVariants
+    GoogleCloudDialogflowCxV3VersionVariants (..),
+    newGoogleCloudDialogflowCxV3VersionVariants,
+
+    -- * GoogleCloudDialogflowCxV3VersionVariantsVariant
+    GoogleCloudDialogflowCxV3VersionVariantsVariant (..),
+    newGoogleCloudDialogflowCxV3VersionVariantsVariant,
+
+    -- * GoogleCloudDialogflowCxV3VoiceSelectionParams
+    GoogleCloudDialogflowCxV3VoiceSelectionParams (..),
+    newGoogleCloudDialogflowCxV3VoiceSelectionParams,
+
+    -- * GoogleCloudDialogflowCxV3Webhook
+    GoogleCloudDialogflowCxV3Webhook (..),
+    newGoogleCloudDialogflowCxV3Webhook,
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService
+    GoogleCloudDialogflowCxV3WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService,
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping,
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders,
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequest
+    GoogleCloudDialogflowCxV3WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest_Payload,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue,
+
+    -- * GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult,
+
+    -- * GoogleCloudDialogflowCxV3WebhookResponse
+    GoogleCloudDialogflowCxV3WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse,
+
+    -- * GoogleCloudDialogflowCxV3WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse_Payload,
+
+    -- * GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse,
+
+    -- * GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1AdvancedSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettings,
+
+    -- * GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings,
+
+    -- * GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings,
+
+    -- * GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings,
+
+    -- * GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models,
+
+    -- * GoogleCloudDialogflowCxV3beta1AudioInput
+    GoogleCloudDialogflowCxV3beta1AudioInput (..),
+    newGoogleCloudDialogflowCxV3beta1AudioInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1BargeInConfig
+    GoogleCloudDialogflowCxV3beta1BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3beta1BargeInConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3beta1ContinuousTestResult,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationSignals
+    GoogleCloudDialogflowCxV3beta1ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationSignals,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurn
+    GoogleCloudDialogflowCxV3beta1ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurn,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1DataStoreConnection
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3beta1DataStoreConnection,
+
+    -- * GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+    GoogleCloudDialogflowCxV3beta1DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+    GoogleCloudDialogflowCxV3beta1DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1DtmfInput
+    GoogleCloudDialogflowCxV3beta1DtmfInput (..),
+    newGoogleCloudDialogflowCxV3beta1DtmfInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1Environment
+    GoogleCloudDialogflowCxV3beta1Environment (..),
+    newGoogleCloudDialogflowCxV3beta1Environment,
+
+    -- * GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1EventHandler
+    GoogleCloudDialogflowCxV3beta1EventHandler (..),
+    newGoogleCloudDialogflowCxV3beta1EventHandler,
+
+    -- * GoogleCloudDialogflowCxV3beta1EventInput
+    GoogleCloudDialogflowCxV3beta1EventInput (..),
+    newGoogleCloudDialogflowCxV3beta1EventInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+    GoogleCloudDialogflowCxV3beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportAgentResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1Form
+    GoogleCloudDialogflowCxV3beta1Form (..),
+    newGoogleCloudDialogflowCxV3beta1Form,
+
+    -- * GoogleCloudDialogflowCxV3beta1FormParameter
+    GoogleCloudDialogflowCxV3beta1FormParameter (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameter,
+
+    -- * GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior,
+
+    -- * GoogleCloudDialogflowCxV3beta1Fulfillment
+    GoogleCloudDialogflowCxV3beta1Fulfillment (..),
+    newGoogleCloudDialogflowCxV3beta1Fulfillment,
+
+    -- * GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases,
+
+    -- * GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase,
+
+    -- * GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent,
+
+    -- * GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction,
+
+    -- * GoogleCloudDialogflowCxV3beta1GcsDestination
+    GoogleCloudDialogflowCxV3beta1GcsDestination (..),
+    newGoogleCloudDialogflowCxV3beta1GcsDestination,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportFlowResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1InlineDestination
+    GoogleCloudDialogflowCxV3beta1InlineDestination (..),
+    newGoogleCloudDialogflowCxV3beta1InlineDestination,
+
+    -- * GoogleCloudDialogflowCxV3beta1InputAudioConfig
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3beta1InputAudioConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1Intent
+    GoogleCloudDialogflowCxV3beta1Intent (..),
+    newGoogleCloudDialogflowCxV3beta1Intent,
+
+    -- * GoogleCloudDialogflowCxV3beta1Intent_Labels
+    GoogleCloudDialogflowCxV3beta1Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3beta1Intent_Labels,
+
+    -- * GoogleCloudDialogflowCxV3beta1IntentInput
+    GoogleCloudDialogflowCxV3beta1IntentInput (..),
+    newGoogleCloudDialogflowCxV3beta1IntentInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1IntentParameter
+    GoogleCloudDialogflowCxV3beta1IntentParameter (..),
+    newGoogleCloudDialogflowCxV3beta1IntentParameter,
+
+    -- * GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase,
+
+    -- * GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart,
+
+    -- * GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings,
+
+    -- * GoogleCloudDialogflowCxV3beta1LanguageInfo
+    GoogleCloudDialogflowCxV3beta1LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1LanguageInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1Page
+    GoogleCloudDialogflowCxV3beta1Page (..),
+    newGoogleCloudDialogflowCxV3beta1Page,
+
+    -- * GoogleCloudDialogflowCxV3beta1PageInfo
+    GoogleCloudDialogflowCxV3beta1PageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1QueryInput
+    GoogleCloudDialogflowCxV3beta1QueryInput (..),
+    newGoogleCloudDialogflowCxV3beta1QueryInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessage
+    GoogleCloudDialogflowCxV3beta1ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall,
+
+    -- * GoogleCloudDialogflowCxV3beta1ResponseMessageText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageText,
+
+    -- * GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata,
+
+    -- * GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+    GoogleCloudDialogflowCxV3beta1RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1SessionInfo
+    GoogleCloudDialogflowCxV3beta1SessionInfo (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestCase
+    GoogleCloudDialogflowCxV3beta1TestCase (..),
+    newGoogleCloudDialogflowCxV3beta1TestCase,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestCaseError
+    GoogleCloudDialogflowCxV3beta1TestCaseError (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseError,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestCaseResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseResult,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestConfig
+    GoogleCloudDialogflowCxV3beta1TestConfig (..),
+    newGoogleCloudDialogflowCxV3beta1TestConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestError
+    GoogleCloudDialogflowCxV3beta1TestError (..),
+    newGoogleCloudDialogflowCxV3beta1TestError,
+
+    -- * GoogleCloudDialogflowCxV3beta1TestRunDifference
+    GoogleCloudDialogflowCxV3beta1TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3beta1TestRunDifference,
+
+    -- * GoogleCloudDialogflowCxV3beta1TextInput
+    GoogleCloudDialogflowCxV3beta1TextInput (..),
+    newGoogleCloudDialogflowCxV3beta1TextInput,
+
+    -- * GoogleCloudDialogflowCxV3beta1ToolCall
+    GoogleCloudDialogflowCxV3beta1ToolCall (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall,
+
+    -- * GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1ToolCallResult
+    GoogleCloudDialogflowCxV3beta1ToolCallResult (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult,
+
+    -- * GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1ToolCallResultError
+    GoogleCloudDialogflowCxV3beta1ToolCallResultError (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResultError,
+
+    -- * GoogleCloudDialogflowCxV3beta1TransitionRoute
+    GoogleCloudDialogflowCxV3beta1TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3beta1TransitionRoute,
+
+    -- * GoogleCloudDialogflowCxV3beta1TurnSignals
+    GoogleCloudDialogflowCxV3beta1TurnSignals (..),
+    newGoogleCloudDialogflowCxV3beta1TurnSignals,
+
+    -- * GoogleCloudDialogflowCxV3beta1Webhook
+    GoogleCloudDialogflowCxV3beta1Webhook (..),
+    newGoogleCloudDialogflowCxV3beta1Webhook,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequest
+    GoogleCloudDialogflowCxV3beta1WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse,
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig,
+
+    -- * GoogleCloudDialogflowV2AnnotatedMessagePart
+    GoogleCloudDialogflowV2AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2AnnotatedMessagePart,
+
+    -- * GoogleCloudDialogflowV2ArticleAnswer
+    GoogleCloudDialogflowV2ArticleAnswer (..),
+    newGoogleCloudDialogflowV2ArticleAnswer,
+
+    -- * GoogleCloudDialogflowV2ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2ArticleAnswer_Metadata,
+
+    -- * GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata (..),
+    newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata,
+
+    -- * GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateIntentsResponse,
+
+    -- * GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2Context
+    GoogleCloudDialogflowV2Context (..),
+    newGoogleCloudDialogflowV2Context,
+
+    -- * GoogleCloudDialogflowV2Context_Parameters
+    GoogleCloudDialogflowV2Context_Parameters (..),
+    newGoogleCloudDialogflowV2Context_Parameters,
+
+    -- * GoogleCloudDialogflowV2ConversationEvent
+    GoogleCloudDialogflowV2ConversationEvent (..),
+    newGoogleCloudDialogflowV2ConversationEvent,
+
+    -- * GoogleCloudDialogflowV2ConversationModel
+    GoogleCloudDialogflowV2ConversationModel (..),
+    newGoogleCloudDialogflowV2ConversationModel,
+
+    -- * GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2EncryptionSpec
+    GoogleCloudDialogflowV2EncryptionSpec (..),
+    newGoogleCloudDialogflowV2EncryptionSpec,
+
+    -- * GoogleCloudDialogflowV2EntityType
+    GoogleCloudDialogflowV2EntityType (..),
+    newGoogleCloudDialogflowV2EntityType,
+
+    -- * GoogleCloudDialogflowV2EntityTypeEntity
+    GoogleCloudDialogflowV2EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2EntityTypeEntity,
+
+    -- * GoogleCloudDialogflowV2EventInput
+    GoogleCloudDialogflowV2EventInput (..),
+    newGoogleCloudDialogflowV2EventInput,
+
+    -- * GoogleCloudDialogflowV2EventInput_Parameters
+    GoogleCloudDialogflowV2EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2EventInput_Parameters,
+
+    -- * GoogleCloudDialogflowV2ExportAgentResponse
+    GoogleCloudDialogflowV2ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2ExportAgentResponse,
+
+    -- * GoogleCloudDialogflowV2ExportOperationMetadata
+    GoogleCloudDialogflowV2ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2ExportOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2FaqAnswer
+    GoogleCloudDialogflowV2FaqAnswer (..),
+    newGoogleCloudDialogflowV2FaqAnswer,
+
+    -- * GoogleCloudDialogflowV2FaqAnswer_Metadata
+    GoogleCloudDialogflowV2FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2FaqAnswer_Metadata,
+
+    -- * GoogleCloudDialogflowV2GcsDestination
+    GoogleCloudDialogflowV2GcsDestination (..),
+    newGoogleCloudDialogflowV2GcsDestination,
+
+    -- * GoogleCloudDialogflowV2HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2HumanAgentAssistantEvent,
+
+    -- * GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationResponse,
+
+    -- * GoogleCloudDialogflowV2ImportDocumentsResponse
+    GoogleCloudDialogflowV2ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2ImportDocumentsResponse,
+
+    -- * GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata,
+
+    -- * GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest,
+
+    -- * GoogleCloudDialogflowV2InputDataset
+    GoogleCloudDialogflowV2InputDataset (..),
+    newGoogleCloudDialogflowV2InputDataset,
+
+    -- * GoogleCloudDialogflowV2Intent
+    GoogleCloudDialogflowV2Intent (..),
+    newGoogleCloudDialogflowV2Intent,
+
+    -- * GoogleCloudDialogflowV2IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2IntentFollowupIntentInfo,
+
+    -- * GoogleCloudDialogflowV2IntentMessage
+    GoogleCloudDialogflowV2IntentMessage (..),
+    newGoogleCloudDialogflowV2IntentMessage,
+
+    -- * GoogleCloudDialogflowV2IntentMessage_Payload
+    GoogleCloudDialogflowV2IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2IntentMessage_Payload,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBasicCard
+    GoogleCloudDialogflowV2IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCard,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButton,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- * GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- * GoogleCloudDialogflowV2IntentMessageCard
+    GoogleCloudDialogflowV2IntentMessageCard (..),
+    newGoogleCloudDialogflowV2IntentMessageCard,
+
+    -- * GoogleCloudDialogflowV2IntentMessageCardButton
+    GoogleCloudDialogflowV2IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageCardButton,
+
+    -- * GoogleCloudDialogflowV2IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelect,
+
+    -- * GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem,
+
+    -- * GoogleCloudDialogflowV2IntentMessageColumnProperties
+    GoogleCloudDialogflowV2IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2IntentMessageColumnProperties,
+
+    -- * GoogleCloudDialogflowV2IntentMessageImage
+    GoogleCloudDialogflowV2IntentMessageImage (..),
+    newGoogleCloudDialogflowV2IntentMessageImage,
+
+    -- * GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion,
+
+    -- * GoogleCloudDialogflowV2IntentMessageListSelect
+    GoogleCloudDialogflowV2IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelect,
+
+    -- * GoogleCloudDialogflowV2IntentMessageListSelectItem
+    GoogleCloudDialogflowV2IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelectItem,
+
+    -- * GoogleCloudDialogflowV2IntentMessageMediaContent
+    GoogleCloudDialogflowV2IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContent,
+
+    -- * GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject,
+
+    -- * GoogleCloudDialogflowV2IntentMessageQuickReplies
+    GoogleCloudDialogflowV2IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2IntentMessageQuickReplies,
+
+    -- * GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2IntentMessageSelectItemInfo,
+
+    -- * GoogleCloudDialogflowV2IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponse,
+
+    -- * GoogleCloudDialogflowV2IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponses,
+
+    -- * GoogleCloudDialogflowV2IntentMessageSuggestion
+    GoogleCloudDialogflowV2IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestion,
+
+    -- * GoogleCloudDialogflowV2IntentMessageSuggestions
+    GoogleCloudDialogflowV2IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestions,
+
+    -- * GoogleCloudDialogflowV2IntentMessageTableCard
+    GoogleCloudDialogflowV2IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCard,
+
+    -- * GoogleCloudDialogflowV2IntentMessageTableCardCell
+    GoogleCloudDialogflowV2IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardCell,
+
+    -- * GoogleCloudDialogflowV2IntentMessageTableCardRow
+    GoogleCloudDialogflowV2IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardRow,
+
+    -- * GoogleCloudDialogflowV2IntentMessageText
+    GoogleCloudDialogflowV2IntentMessageText (..),
+    newGoogleCloudDialogflowV2IntentMessageText,
+
+    -- * GoogleCloudDialogflowV2IntentParameter
+    GoogleCloudDialogflowV2IntentParameter (..),
+    newGoogleCloudDialogflowV2IntentParameter,
+
+    -- * GoogleCloudDialogflowV2IntentTrainingPhrase
+    GoogleCloudDialogflowV2IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrase,
+
+    -- * GoogleCloudDialogflowV2IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrasePart,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswer,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- * GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery,
+
+    -- * GoogleCloudDialogflowV2KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2KnowledgeOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2Message
+    GoogleCloudDialogflowV2Message (..),
+    newGoogleCloudDialogflowV2Message,
+
+    -- * GoogleCloudDialogflowV2MessageAnnotation
+    GoogleCloudDialogflowV2MessageAnnotation (..),
+    newGoogleCloudDialogflowV2MessageAnnotation,
+
+    -- * GoogleCloudDialogflowV2OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest,
+
+    -- * GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload,
+
+    -- * GoogleCloudDialogflowV2QueryResult
+    GoogleCloudDialogflowV2QueryResult (..),
+    newGoogleCloudDialogflowV2QueryResult,
+
+    -- * GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo,
+
+    -- * GoogleCloudDialogflowV2QueryResult_Parameters
+    GoogleCloudDialogflowV2QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2QueryResult_Parameters,
+
+    -- * GoogleCloudDialogflowV2QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2QueryResult_WebhookPayload,
+
+    -- * GoogleCloudDialogflowV2Sentiment
+    GoogleCloudDialogflowV2Sentiment (..),
+    newGoogleCloudDialogflowV2Sentiment,
+
+    -- * GoogleCloudDialogflowV2SentimentAnalysisResult
+    GoogleCloudDialogflowV2SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2SentimentAnalysisResult,
+
+    -- * GoogleCloudDialogflowV2SessionEntityType
+    GoogleCloudDialogflowV2SessionEntityType (..),
+    newGoogleCloudDialogflowV2SessionEntityType,
+
+    -- * GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2SmartReplyAnswer
+    GoogleCloudDialogflowV2SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2SmartReplyAnswer,
+
+    -- * GoogleCloudDialogflowV2SmartReplyModelMetadata
+    GoogleCloudDialogflowV2SmartReplyModelMetadata (..),
+    newGoogleCloudDialogflowV2SmartReplyModelMetadata,
+
+    -- * GoogleCloudDialogflowV2SpeechWordInfo
+    GoogleCloudDialogflowV2SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2SpeechWordInfo,
+
+    -- * GoogleCloudDialogflowV2StreamingRecognitionResult
+    GoogleCloudDialogflowV2StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2StreamingRecognitionResult,
+
+    -- * GoogleCloudDialogflowV2SuggestArticlesResponse
+    GoogleCloudDialogflowV2SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2SuggestArticlesResponse,
+
+    -- * GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2SuggestFaqAnswersResponse,
+
+    -- * GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse,
+
+    -- * GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2SuggestSmartRepliesResponse,
+
+    -- * GoogleCloudDialogflowV2SuggestionResult
+    GoogleCloudDialogflowV2SuggestionResult (..),
+    newGoogleCloudDialogflowV2SuggestionResult,
+
+    -- * GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2WebhookRequest
+    GoogleCloudDialogflowV2WebhookRequest (..),
+    newGoogleCloudDialogflowV2WebhookRequest,
+
+    -- * GoogleCloudDialogflowV2WebhookResponse
+    GoogleCloudDialogflowV2WebhookResponse (..),
+    newGoogleCloudDialogflowV2WebhookResponse,
+
+    -- * GoogleCloudDialogflowV2WebhookResponse_Payload
+    GoogleCloudDialogflowV2WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2WebhookResponse_Payload,
+
+    -- * GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+    GoogleCloudDialogflowV2beta1AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2beta1AnnotatedMessagePart,
+
+    -- * GoogleCloudDialogflowV2beta1ArticleAnswer
+    GoogleCloudDialogflowV2beta1ArticleAnswer (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata,
+
+    -- * GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse,
+
+    -- * GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse,
+
+    -- * GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2beta1Context
+    GoogleCloudDialogflowV2beta1Context (..),
+    newGoogleCloudDialogflowV2beta1Context,
+
+    -- * GoogleCloudDialogflowV2beta1Context_Parameters
+    GoogleCloudDialogflowV2beta1Context_Parameters (..),
+    newGoogleCloudDialogflowV2beta1Context_Parameters,
+
+    -- * GoogleCloudDialogflowV2beta1ConversationEvent
+    GoogleCloudDialogflowV2beta1ConversationEvent (..),
+    newGoogleCloudDialogflowV2beta1ConversationEvent,
+
+    -- * GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+    GoogleCloudDialogflowV2beta1DialogflowAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1EncryptionSpec
+    GoogleCloudDialogflowV2beta1EncryptionSpec (..),
+    newGoogleCloudDialogflowV2beta1EncryptionSpec,
+
+    -- * GoogleCloudDialogflowV2beta1EntityType
+    GoogleCloudDialogflowV2beta1EntityType (..),
+    newGoogleCloudDialogflowV2beta1EntityType,
+
+    -- * GoogleCloudDialogflowV2beta1EntityTypeEntity
+    GoogleCloudDialogflowV2beta1EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2beta1EntityTypeEntity,
+
+    -- * GoogleCloudDialogflowV2beta1EventInput
+    GoogleCloudDialogflowV2beta1EventInput (..),
+    newGoogleCloudDialogflowV2beta1EventInput,
+
+    -- * GoogleCloudDialogflowV2beta1EventInput_Parameters
+    GoogleCloudDialogflowV2beta1EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2beta1EventInput_Parameters,
+
+    -- * GoogleCloudDialogflowV2beta1ExportAgentResponse
+    GoogleCloudDialogflowV2beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2beta1ExportAgentResponse,
+
+    -- * GoogleCloudDialogflowV2beta1ExportOperationMetadata
+    GoogleCloudDialogflowV2beta1ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ExportOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2beta1FaqAnswer
+    GoogleCloudDialogflowV2beta1FaqAnswer (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+    GoogleCloudDialogflowV2beta1FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata,
+
+    -- * GoogleCloudDialogflowV2beta1GcsDestination
+    GoogleCloudDialogflowV2beta1GcsDestination (..),
+    newGoogleCloudDialogflowV2beta1GcsDestination,
+
+    -- * GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent,
+
+    -- * GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+    GoogleCloudDialogflowV2beta1ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2beta1ImportDocumentsResponse,
+
+    -- * GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata,
+
+    -- * GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest,
+
+    -- * GoogleCloudDialogflowV2beta1Intent
+    GoogleCloudDialogflowV2beta1Intent (..),
+    newGoogleCloudDialogflowV2beta1Intent,
+
+    -- * GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessage
+    GoogleCloudDialogflowV2beta1IntentMessage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessage_Payload
+    GoogleCloudDialogflowV2beta1IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage_Payload,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageCard
+    GoogleCloudDialogflowV2beta1IntentMessageCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCardButton,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageImage
+    GoogleCloudDialogflowV2beta1IntentMessageImage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageImage,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageListSelect
+    GoogleCloudDialogflowV2beta1IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelect,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContent,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+    GoogleCloudDialogflowV2beta1IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmText
+    GoogleCloudDialogflowV2beta1IntentMessageRbmText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmText,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestion,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestions,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTableCard
+    GoogleCloudDialogflowV2beta1IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCard,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall,
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageText
+    GoogleCloudDialogflowV2beta1IntentMessageText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageText,
+
+    -- * GoogleCloudDialogflowV2beta1IntentParameter
+    GoogleCloudDialogflowV2beta1IntentParameter (..),
+    newGoogleCloudDialogflowV2beta1IntentParameter,
+
+    -- * GoogleCloudDialogflowV2beta1IntentSuggestion
+    GoogleCloudDialogflowV2beta1IntentSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentSuggestion,
+
+    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrase,
+
+    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswers
+    GoogleCloudDialogflowV2beta1KnowledgeAnswers (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswers,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery,
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2beta1Message
+    GoogleCloudDialogflowV2beta1Message (..),
+    newGoogleCloudDialogflowV2beta1Message,
+
+    -- * GoogleCloudDialogflowV2beta1MessageAnnotation
+    GoogleCloudDialogflowV2beta1MessageAnnotation (..),
+    newGoogleCloudDialogflowV2beta1MessageAnnotation,
+
+    -- * GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest,
+
+    -- * GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload,
+
+    -- * GoogleCloudDialogflowV2beta1QueryResult
+    GoogleCloudDialogflowV2beta1QueryResult (..),
+    newGoogleCloudDialogflowV2beta1QueryResult,
+
+    -- * GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo,
+
+    -- * GoogleCloudDialogflowV2beta1QueryResult_Parameters
+    GoogleCloudDialogflowV2beta1QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_Parameters,
+
+    -- * GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessage
+    GoogleCloudDialogflowV2beta1ResponseMessage (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+    GoogleCloudDialogflowV2beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage_Payload,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall,
+
+    -- * GoogleCloudDialogflowV2beta1ResponseMessageText
+    GoogleCloudDialogflowV2beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageText,
+
+    -- * GoogleCloudDialogflowV2beta1Sentiment
+    GoogleCloudDialogflowV2beta1Sentiment (..),
+    newGoogleCloudDialogflowV2beta1Sentiment,
+
+    -- * GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+    GoogleCloudDialogflowV2beta1SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2beta1SentimentAnalysisResult,
+
+    -- * GoogleCloudDialogflowV2beta1SessionEntityType
+    GoogleCloudDialogflowV2beta1SessionEntityType (..),
+    newGoogleCloudDialogflowV2beta1SessionEntityType,
+
+    -- * GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata,
+
+    -- * GoogleCloudDialogflowV2beta1SmartReplyAnswer
+    GoogleCloudDialogflowV2beta1SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2beta1SmartReplyAnswer,
+
+    -- * GoogleCloudDialogflowV2beta1SpeechWordInfo
+    GoogleCloudDialogflowV2beta1SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2beta1SpeechWordInfo,
+
+    -- * GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2beta1StreamingRecognitionResult,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+    GoogleCloudDialogflowV2beta1SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestArticlesResponse,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse,
+
+    -- * GoogleCloudDialogflowV2beta1SuggestionResult
+    GoogleCloudDialogflowV2beta1SuggestionResult (..),
+    newGoogleCloudDialogflowV2beta1SuggestionResult,
+
+    -- * GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents (..),
+    newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents,
+
+    -- * GoogleCloudDialogflowV2beta1WebhookRequest
+    GoogleCloudDialogflowV2beta1WebhookRequest (..),
+    newGoogleCloudDialogflowV2beta1WebhookRequest,
+
+    -- * GoogleCloudDialogflowV2beta1WebhookResponse
+    GoogleCloudDialogflowV2beta1WebhookResponse (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse,
+
+    -- * GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+    GoogleCloudDialogflowV2beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse_Payload,
+
+    -- * GoogleCloudDialogflowV3alpha1ConversationSignals
+    GoogleCloudDialogflowV3alpha1ConversationSignals (..),
+    newGoogleCloudDialogflowV3alpha1ConversationSignals,
+
+    -- * GoogleCloudDialogflowV3alpha1TurnSignals
+    GoogleCloudDialogflowV3alpha1TurnSignals (..),
+    newGoogleCloudDialogflowV3alpha1TurnSignals,
+
+    -- * GoogleCloudLocationListLocationsResponse
+    GoogleCloudLocationListLocationsResponse (..),
+    newGoogleCloudLocationListLocationsResponse,
+
+    -- * GoogleCloudLocationLocation
+    GoogleCloudLocationLocation (..),
+    newGoogleCloudLocationLocation,
+
+    -- * GoogleCloudLocationLocation_Labels
+    GoogleCloudLocationLocation_Labels (..),
+    newGoogleCloudLocationLocation_Labels,
+
+    -- * GoogleCloudLocationLocation_Metadata
+    GoogleCloudLocationLocation_Metadata (..),
+    newGoogleCloudLocationLocation_Metadata,
+
+    -- * GoogleLongrunningListOperationsResponse
+    GoogleLongrunningListOperationsResponse (..),
+    newGoogleLongrunningListOperationsResponse,
+
+    -- * GoogleLongrunningOperation
+    GoogleLongrunningOperation (..),
+    newGoogleLongrunningOperation,
+
+    -- * GoogleLongrunningOperation_Metadata
+    GoogleLongrunningOperation_Metadata (..),
+    newGoogleLongrunningOperation_Metadata,
+
+    -- * GoogleLongrunningOperation_Response
+    GoogleLongrunningOperation_Response (..),
+    newGoogleLongrunningOperation_Response,
+
+    -- * GoogleProtobufEmpty
+    GoogleProtobufEmpty (..),
+    newGoogleProtobufEmpty,
+
+    -- * GoogleRpcStatus
+    GoogleRpcStatus (..),
+    newGoogleRpcStatus,
+
+    -- * GoogleRpcStatus_DetailsItem
+    GoogleRpcStatus_DetailsItem (..),
+    newGoogleRpcStatus_DetailsItem,
+
+    -- * GoogleTypeLatLng
+    GoogleTypeLatLng (..),
+    newGoogleTypeLatLng,
+  )
+where
+
+import Gogol.DialogFlow.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Hierarchical advanced settings for agent\/flow\/page\/fulfillment\/parameter. Settings exposed at lower level overrides the settings exposed at higher level. Overriding occurs at the sub-setting level. For example, the playback/interruption/settings at fulfillment level only overrides the playback/interruption/settings at the agent level, leaving other settings at the agent level unchanged. DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Hierarchy: Agent->Flow->Page->Fulfillment\/Parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AdvancedSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AdvancedSettings = GoogleCloudDialogflowCxV3AdvancedSettings
+  { -- | If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels: - Agent level - Flow level
+    audioExportGcsDestination :: (Core.Maybe GoogleCloudDialogflowCxV3GcsDestination),
+    -- | Settings for DTMF. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level.
+    dtmfSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings),
+    -- | Settings for logging. Settings for Dialogflow History, Contact Center messages, StackDriver logs, and speech logging. Exposed at the following levels: - Agent level.
+    loggingSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+      ),
+    -- | Settings for speech to text detection. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level
+    speechSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AdvancedSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AdvancedSettings ::
+  GoogleCloudDialogflowCxV3AdvancedSettings
+newGoogleCloudDialogflowCxV3AdvancedSettings =
+  GoogleCloudDialogflowCxV3AdvancedSettings
+    { audioExportGcsDestination =
+        Core.Nothing,
+      dtmfSettings = Core.Nothing,
+      loggingSettings = Core.Nothing,
+      speechSettings = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3AdvancedSettings where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AdvancedSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AdvancedSettings
+            Core.<$> (o Core..:? "audioExportGcsDestination")
+            Core.<*> (o Core..:? "dtmfSettings")
+            Core.<*> (o Core..:? "loggingSettings")
+            Core.<*> (o Core..:? "speechSettings")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3AdvancedSettings where
+  toJSON GoogleCloudDialogflowCxV3AdvancedSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioExportGcsDestination" Core..=)
+              Core.<$> audioExportGcsDestination,
+            ("dtmfSettings" Core..=) Core.<$> dtmfSettings,
+            ("loggingSettings" Core..=) Core.<$> loggingSettings,
+            ("speechSettings" Core..=) Core.<$> speechSettings
+          ]
+      )
+
+-- | Define behaviors for DTMF (dual tone multi frequency).
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings = GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+  { -- | If true, incoming audio is processed for DTMF (dual tone multi frequency) events. For example, if the caller presses a button on their telephone keypad and DTMF processing is enabled, Dialogflow will detect the event (e.g. a \"3\" was pressed) in the incoming audio and pass the event to the bot to drive business logic (e.g. when 3 is pressed, return the account balance).
+    enabled :: (Core.Maybe Core.Bool),
+    -- | Endpoint timeout setting for matching dtmf input to regex.
+    endpointingTimeoutDuration :: (Core.Maybe Core.Duration),
+    -- | The digit that terminates a DTMF digit sequence.
+    finishDigit :: (Core.Maybe Core.Text),
+    -- | Interdigit timeout setting for matching dtmf input to regex.
+    interdigitTimeoutDuration :: (Core.Maybe Core.Duration),
+    -- | Max length of DTMF digits.
+    maxDigits :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings ::
+  GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings =
+  GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+    { enabled =
+        Core.Nothing,
+      endpointingTimeoutDuration = Core.Nothing,
+      finishDigit = Core.Nothing,
+      interdigitTimeoutDuration = Core.Nothing,
+      maxDigits = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+            Core.<$> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "endpointingTimeoutDuration")
+            Core.<*> (o Core..:? "finishDigit")
+            Core.<*> (o Core..:? "interdigitTimeoutDuration")
+            Core.<*> (o Core..:? "maxDigits")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enabled" Core..=) Core.<$> enabled,
+            ("endpointingTimeoutDuration" Core..=)
+              Core.<$> endpointingTimeoutDuration,
+            ("finishDigit" Core..=) Core.<$> finishDigit,
+            ("interdigitTimeoutDuration" Core..=)
+              Core.<$> interdigitTimeoutDuration,
+            ("maxDigits" Core..=) Core.<$> maxDigits
+          ]
+      )
+
+-- | Define behaviors on logging.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings = GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+  { -- | Enables consent-based end-user input redaction, if true, a pre-defined session parameter @$session.params.conversation-redaction@ will be used to determine if the utterance should be redacted.
+    enableConsentBasedRedaction :: (Core.Maybe Core.Bool),
+    -- | Enables DF Interaction logging.
+    enableInteractionLogging :: (Core.Maybe Core.Bool),
+    -- | Enables Google Cloud Logging.
+    enableStackdriverLogging :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings ::
+  GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings =
+  GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+    { enableConsentBasedRedaction =
+        Core.Nothing,
+      enableInteractionLogging =
+        Core.Nothing,
+      enableStackdriverLogging =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+            Core.<$> (o Core..:? "enableConsentBasedRedaction")
+            Core.<*> (o Core..:? "enableInteractionLogging")
+            Core.<*> (o Core..:? "enableStackdriverLogging")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableConsentBasedRedaction" Core..=)
+              Core.<$> enableConsentBasedRedaction,
+            ("enableInteractionLogging" Core..=)
+              Core.<$> enableInteractionLogging,
+            ("enableStackdriverLogging" Core..=)
+              Core.<$> enableStackdriverLogging
+          ]
+      )
+
+-- | Define behaviors of speech to text detection.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings = GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+  { -- | Sensitivity of the speech model that detects the end of speech. Scale from 0 to 100.
+    endpointerSensitivity :: (Core.Maybe Core.Int32),
+    -- | Mapping from language to Speech-to-Text model. The mapped Speech-to-Text model will be selected for requests from its corresponding language. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+    models ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+      ),
+    -- | Timeout before detecting no speech.
+    noSpeechTimeout :: (Core.Maybe Core.Duration),
+    -- | Use timeout based endpointing, interpreting endpointer sensitivity as seconds of timeout value.
+    useTimeoutBasedEndpointing :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings ::
+  GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings =
+  GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+    { endpointerSensitivity =
+        Core.Nothing,
+      models = Core.Nothing,
+      noSpeechTimeout = Core.Nothing,
+      useTimeoutBasedEndpointing =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+            Core.<$> (o Core..:? "endpointerSensitivity")
+            Core.<*> (o Core..:? "models")
+            Core.<*> (o Core..:? "noSpeechTimeout")
+            Core.<*> (o Core..:? "useTimeoutBasedEndpointing")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endpointerSensitivity" Core..=) Core.<$> endpointerSensitivity,
+            ("models" Core..=) Core.<$> models,
+            ("noSpeechTimeout" Core..=) Core.<$> noSpeechTimeout,
+            ("useTimeoutBasedEndpointing" Core..=)
+              Core.<$> useTimeoutBasedEndpointing
+          ]
+      )
+
+-- | Mapping from language to Speech-to-Text model. The mapped Speech-to-Text model will be selected for requests from its corresponding language. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models' smart constructor.
+newtype GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models = GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+  additional =
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models {..} =
+      Core.toJSON additional
+
+-- | Agents are best described as Natural Language Understanding (NLU) modules that transform user requests into actionable data. You can include agents in your app, product, or service to determine user intent and respond to the user in a natural way. After you create an agent, you can add Intents, Entity Types, Flows, Fulfillments, Webhooks, TransitionRouteGroups and so on to manage the conversation flows.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Agent' smart constructor.
+data GoogleCloudDialogflowCxV3Agent = GoogleCloudDialogflowCxV3Agent
+  { -- | Hierarchical advanced settings for this agent. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | Optional. Answer feedback collection settings.
+    answerFeedbackSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings),
+    -- | The URI of the agent\'s avatar. Avatars are used throughout the Dialogflow console and in the self-hosted <https://cloud.google.com/dialogflow/docs/integrations/web-demo Web Demo> integration.
+    avatarUri :: (Core.Maybe Core.Text),
+    -- | Optional. Settings for custom client certificates.
+    clientCertificateSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+      ),
+    -- | Required. Immutable. The default language of the agent as a language tag. See <https://cloud.google.com/dialogflow/cx/docs/reference/language Language Support> for a list of the currently supported language codes. This field cannot be set by the Agents.UpdateAgent method.
+    defaultLanguageCode :: (Core.Maybe Core.Text),
+    -- | The description of the agent. The maximum length is 500 characters. If exceeded, the request is rejected.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the agent, unique within the location.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. Enable training multi-lingual models for this agent. These models will be trained on all the languages supported by the agent.
+    enableMultiLanguageTraining :: (Core.Maybe Core.Bool),
+    -- | Indicates if automatic spell correction is enabled in detect intent requests.
+    enableSpellCorrection :: (Core.Maybe Core.Bool),
+    -- | Indicates if stackdriver logging is enabled for the agent. Please use agent.advanced_settings instead.
+    enableStackdriverLogging :: (Core.Maybe Core.Bool),
+    -- | Gen App Builder-related agent-level settings.
+    genAppBuilderSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings),
+    -- | Git integration settings for this agent.
+    gitIntegrationSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AgentGitIntegrationSettings),
+    -- | Indicates whether the agent is locked for changes. If the agent is locked, modifications to the agent will be rejected except for RestoreAgent.
+    locked :: (Core.Maybe Core.Bool),
+    -- | The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: @projects\/\/locations\/\/agents\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. Settings for end user personalization.
+    personalizationSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AgentPersonalizationSettings),
+    -- | Optional. Output only. A read only boolean field reflecting Zone Isolation status of the agent.
+    satisfiesPzi :: (Core.Maybe Core.Bool),
+    -- | Optional. Output only. A read only boolean field reflecting Zone Separation status of the agent.
+    satisfiesPzs :: (Core.Maybe Core.Bool),
+    -- | Name of the SecuritySettings reference for the agent. Format: @projects\/\/locations\/\/securitySettings\/@.
+    securitySettings :: (Core.Maybe Core.Text),
+    -- | Speech recognition related settings.
+    speechToTextSettings :: (Core.Maybe GoogleCloudDialogflowCxV3SpeechToTextSettings),
+    -- | Immutable. Name of the start flow in this agent. A start flow will be automatically created when the agent is created, and can only be deleted by deleting the agent. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    startFlow :: (Core.Maybe Core.Text),
+    -- | The list of all languages supported by the agent (except for the @default_language_code@).
+    supportedLanguageCodes :: (Core.Maybe [Core.Text]),
+    -- | Settings on instructing the speech synthesizer on how to generate the output audio content.
+    textToSpeechSettings :: (Core.Maybe GoogleCloudDialogflowCxV3TextToSpeechSettings),
+    -- | Required. The time zone of the agent from the <https://www.iana.org/time-zones time zone database>, e.g., America\/New_York, Europe\/Paris.
+    timeZone :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Agent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Agent ::
+  GoogleCloudDialogflowCxV3Agent
+newGoogleCloudDialogflowCxV3Agent =
+  GoogleCloudDialogflowCxV3Agent
+    { advancedSettings = Core.Nothing,
+      answerFeedbackSettings = Core.Nothing,
+      avatarUri = Core.Nothing,
+      clientCertificateSettings = Core.Nothing,
+      defaultLanguageCode = Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      enableMultiLanguageTraining = Core.Nothing,
+      enableSpellCorrection = Core.Nothing,
+      enableStackdriverLogging = Core.Nothing,
+      genAppBuilderSettings = Core.Nothing,
+      gitIntegrationSettings = Core.Nothing,
+      locked = Core.Nothing,
+      name = Core.Nothing,
+      personalizationSettings = Core.Nothing,
+      satisfiesPzi = Core.Nothing,
+      satisfiesPzs = Core.Nothing,
+      securitySettings = Core.Nothing,
+      speechToTextSettings = Core.Nothing,
+      startFlow = Core.Nothing,
+      supportedLanguageCodes = Core.Nothing,
+      textToSpeechSettings = Core.Nothing,
+      timeZone = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Agent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Agent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Agent
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "answerFeedbackSettings")
+            Core.<*> (o Core..:? "avatarUri")
+            Core.<*> (o Core..:? "clientCertificateSettings")
+            Core.<*> (o Core..:? "defaultLanguageCode")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "enableMultiLanguageTraining")
+            Core.<*> (o Core..:? "enableSpellCorrection")
+            Core.<*> (o Core..:? "enableStackdriverLogging")
+            Core.<*> (o Core..:? "genAppBuilderSettings")
+            Core.<*> (o Core..:? "gitIntegrationSettings")
+            Core.<*> (o Core..:? "locked")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "personalizationSettings")
+            Core.<*> (o Core..:? "satisfiesPzi")
+            Core.<*> (o Core..:? "satisfiesPzs")
+            Core.<*> (o Core..:? "securitySettings")
+            Core.<*> (o Core..:? "speechToTextSettings")
+            Core.<*> (o Core..:? "startFlow")
+            Core.<*> (o Core..:? "supportedLanguageCodes")
+            Core.<*> (o Core..:? "textToSpeechSettings")
+            Core.<*> (o Core..:? "timeZone")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Agent where
+  toJSON GoogleCloudDialogflowCxV3Agent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("answerFeedbackSettings" Core..=) Core.<$> answerFeedbackSettings,
+            ("avatarUri" Core..=) Core.<$> avatarUri,
+            ("clientCertificateSettings" Core..=)
+              Core.<$> clientCertificateSettings,
+            ("defaultLanguageCode" Core..=) Core.<$> defaultLanguageCode,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("enableMultiLanguageTraining" Core..=)
+              Core.<$> enableMultiLanguageTraining,
+            ("enableSpellCorrection" Core..=) Core.<$> enableSpellCorrection,
+            ("enableStackdriverLogging" Core..=)
+              Core.<$> enableStackdriverLogging,
+            ("genAppBuilderSettings" Core..=) Core.<$> genAppBuilderSettings,
+            ("gitIntegrationSettings" Core..=) Core.<$> gitIntegrationSettings,
+            ("locked" Core..=) Core.<$> locked,
+            ("name" Core..=) Core.<$> name,
+            ("personalizationSettings" Core..=)
+              Core.<$> personalizationSettings,
+            ("satisfiesPzi" Core..=) Core.<$> satisfiesPzi,
+            ("satisfiesPzs" Core..=) Core.<$> satisfiesPzs,
+            ("securitySettings" Core..=) Core.<$> securitySettings,
+            ("speechToTextSettings" Core..=) Core.<$> speechToTextSettings,
+            ("startFlow" Core..=) Core.<$> startFlow,
+            ("supportedLanguageCodes" Core..=) Core.<$> supportedLanguageCodes,
+            ("textToSpeechSettings" Core..=) Core.<$> textToSpeechSettings,
+            ("timeZone" Core..=) Core.<$> timeZone
+          ]
+      )
+
+-- | Settings for answer feedback collection.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings = GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+  { -- | Optional. If enabled, end users will be able to provide answer feedback to Dialogflow responses. Feature works only if interaction logging is enabled in the Dialogflow agent.
+    enableAnswerFeedback :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings ::
+  GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings =
+  GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+    { enableAnswerFeedback =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+            Core.<$> (o Core..:? "enableAnswerFeedback")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [("enableAnswerFeedback" Core..=) Core.<$> enableAnswerFeedback]
+      )
+
+-- | Settings for custom client certificates.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentClientCertificateSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AgentClientCertificateSettings = GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+  { -- | Optional. The name of the SecretManager secret version resource storing the passphrase. \'passphrase\' should be left unset if the private key is not encrypted. Format: @projects\/{project}\/secrets\/{secret}\/versions\/{version}@
+    passphrase :: (Core.Maybe Core.Text),
+    -- | Required. The name of the SecretManager secret version resource storing the private key encoded in PEM format. Format: @projects\/{project}\/secrets\/{secret}\/versions\/{version}@
+    privateKey :: (Core.Maybe Core.Text),
+    -- | Required. The ssl certificate encoded in PEM format. This string must include the begin header and end footer lines.
+    sslCertificate :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentClientCertificateSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentClientCertificateSettings ::
+  GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+newGoogleCloudDialogflowCxV3AgentClientCertificateSettings =
+  GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+    { passphrase =
+        Core.Nothing,
+      privateKey = Core.Nothing,
+      sslCertificate = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentClientCertificateSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+            Core.<$> (o Core..:? "passphrase")
+            Core.<*> (o Core..:? "privateKey")
+            Core.<*> (o Core..:? "sslCertificate")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AgentClientCertificateSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("passphrase" Core..=) Core.<$> passphrase,
+            ("privateKey" Core..=) Core.<$> privateKey,
+            ("sslCertificate" Core..=) Core.<$> sslCertificate
+          ]
+      )
+
+-- | Settings for Gen App Builder.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings = GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+  { -- | Required. The full name of the Gen App Builder engine related to this agent if there is one. Format: @projects\/{Project ID}\/locations\/{Location ID}\/collections\/{Collection ID}\/engines\/{Engine ID}@
+    engine :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings ::
+  GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings =
+  GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+    { engine =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+            Core.<$> (o Core..:? "engine")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings {..} =
+    Core.object (Core.catMaybes [("engine" Core..=) Core.<$> engine])
+
+-- | Settings for connecting to Git repository for an agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3AgentGitIntegrationSettings = GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+  { -- | GitHub settings.
+    githubSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentGitIntegrationSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings ::
+  GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings =
+  GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+    { githubSettings =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentGitIntegrationSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+            Core.<$> (o Core..:? "githubSettings")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AgentGitIntegrationSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [("githubSettings" Core..=) Core.<$> githubSettings]
+      )
+
+-- | Settings of integration with GitHub.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings' smart constructor.
+data GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings = GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+  { -- | The access token used to authenticate the access to the GitHub repository.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | A list of branches configured to be used from Dialogflow.
+    branches :: (Core.Maybe [Core.Text]),
+    -- | The unique repository display name for the GitHub repository.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The GitHub repository URI related to the agent.
+    repositoryUri :: (Core.Maybe Core.Text),
+    -- | The branch of the GitHub repository tracked for this agent.
+    trackingBranch :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings ::
+  GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings =
+  GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+    { accessToken =
+        Core.Nothing,
+      branches = Core.Nothing,
+      displayName = Core.Nothing,
+      repositoryUri = Core.Nothing,
+      trackingBranch =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+            Core.<$> (o Core..:? "accessToken")
+            Core.<*> (o Core..:? "branches")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "repositoryUri")
+            Core.<*> (o Core..:? "trackingBranch")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("accessToken" Core..=) Core.<$> accessToken,
+              ("branches" Core..=) Core.<$> branches,
+              ("displayName" Core..=) Core.<$> displayName,
+              ("repositoryUri" Core..=) Core.<$> repositoryUri,
+              ("trackingBranch" Core..=) Core.<$> trackingBranch
+            ]
+        )
+
+-- | Settings for end user personalization.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentPersonalizationSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3AgentPersonalizationSettings = GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+  { -- | Optional. Default end user metadata, used when processing DetectIntent requests. Recommended to be filled as a template instead of hard-coded value, for example { \"age\": \"$session.params.age\" }. The data will be merged with the QueryParameters.end/user/metadata in DetectIntentRequest.query_params during query processing.
+    defaultEndUserMetadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentPersonalizationSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentPersonalizationSettings ::
+  GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+newGoogleCloudDialogflowCxV3AgentPersonalizationSettings =
+  GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+    { defaultEndUserMetadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentPersonalizationSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+            Core.<$> (o Core..:? "defaultEndUserMetadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3AgentPersonalizationSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("defaultEndUserMetadata" Core..=)
+              Core.<$> defaultEndUserMetadata
+          ]
+      )
+
+-- | Optional. Default end user metadata, used when processing DetectIntent requests. Recommended to be filled as a template instead of hard-coded value, for example { \"age\": \"$session.params.age\" }. The data will be merged with the QueryParameters.end/user/metadata in DetectIntentRequest.query_params during query processing.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata = GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+  additional =
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata {..} =
+      Core.toJSON additional
+
+-- | The response message for Agents.GetAgentValidationResult.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AgentValidationResult' smart constructor.
+data GoogleCloudDialogflowCxV3AgentValidationResult = GoogleCloudDialogflowCxV3AgentValidationResult
+  { -- | Contains all flow validation results.
+    flowValidationResults :: (Core.Maybe [GoogleCloudDialogflowCxV3FlowValidationResult]),
+    -- | The unique identifier of the agent validation result. Format: @projects\/\/locations\/\/agents\/\/validationResult@.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AgentValidationResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AgentValidationResult ::
+  GoogleCloudDialogflowCxV3AgentValidationResult
+newGoogleCloudDialogflowCxV3AgentValidationResult =
+  GoogleCloudDialogflowCxV3AgentValidationResult
+    { flowValidationResults =
+        Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AgentValidationResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AgentValidationResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AgentValidationResult
+            Core.<$> (o Core..:? "flowValidationResults")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3AgentValidationResult where
+  toJSON GoogleCloudDialogflowCxV3AgentValidationResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flowValidationResults" Core..=) Core.<$> flowValidationResults,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Stores information about feedback provided by users about a response.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AnswerFeedback' smart constructor.
+data GoogleCloudDialogflowCxV3AnswerFeedback = GoogleCloudDialogflowCxV3AnswerFeedback
+  { -- | Optional. Custom rating from the user about the provided answer, with maximum length of 1024 characters. For example, client could use a customized JSON object to indicate the rating.
+    customRating :: (Core.Maybe Core.Text),
+    -- | Optional. Rating from user for the specific Dialogflow response.
+    rating :: (Core.Maybe GoogleCloudDialogflowCxV3AnswerFeedback_Rating),
+    -- | Optional. In case of thumbs down rating provided, users can optionally provide context about the rating.
+    ratingReason :: (Core.Maybe GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AnswerFeedback' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AnswerFeedback ::
+  GoogleCloudDialogflowCxV3AnswerFeedback
+newGoogleCloudDialogflowCxV3AnswerFeedback =
+  GoogleCloudDialogflowCxV3AnswerFeedback
+    { customRating =
+        Core.Nothing,
+      rating = Core.Nothing,
+      ratingReason = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3AnswerFeedback where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AnswerFeedback"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AnswerFeedback
+            Core.<$> (o Core..:? "customRating")
+            Core.<*> (o Core..:? "rating")
+            Core.<*> (o Core..:? "ratingReason")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3AnswerFeedback where
+  toJSON GoogleCloudDialogflowCxV3AnswerFeedback {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("customRating" Core..=) Core.<$> customRating,
+            ("rating" Core..=) Core.<$> rating,
+            ("ratingReason" Core..=) Core.<$> ratingReason
+          ]
+      )
+
+-- | Stores extra information about why users provided thumbs down rating.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason' smart constructor.
+data GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason = GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+  { -- | Optional. Additional feedback about the rating. This field can be populated without choosing a predefined @reason@.
+    feedback :: (Core.Maybe Core.Text),
+    -- | Optional. Custom reason labels for thumbs down rating provided by the user. The maximum number of labels allowed is 10 and the maximum length of a single label is 128 characters.
+    reasonLabels :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason ::
+  GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason =
+  GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+    { feedback =
+        Core.Nothing,
+      reasonLabels = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+            Core.<$> (o Core..:? "feedback")
+            Core.<*> (o Core..:? "reasonLabels")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+  where
+  toJSON GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("feedback" Core..=) Core.<$> feedback,
+            ("reasonLabels" Core..=) Core.<$> reasonLabels
+          ]
+      )
+
+-- | Represents the natural speech audio to be processed.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3AudioInput' smart constructor.
+data GoogleCloudDialogflowCxV3AudioInput = GoogleCloudDialogflowCxV3AudioInput
+  { -- | The natural language speech audio to be processed. A single request can contain up to 2 minutes of speech audio data. The transcribed text cannot contain more than 256 bytes. For non-streaming audio detect intent, both @config@ and @audio@ must be provided. For streaming audio detect intent, @config@ must be provided in the first request and @audio@ must be provided in all following requests.
+    audio :: (Core.Maybe Core.Base64),
+    -- | Required. Instructs the speech recognizer how to process the speech audio.
+    config :: (Core.Maybe GoogleCloudDialogflowCxV3InputAudioConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3AudioInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3AudioInput ::
+  GoogleCloudDialogflowCxV3AudioInput
+newGoogleCloudDialogflowCxV3AudioInput =
+  GoogleCloudDialogflowCxV3AudioInput
+    { audio = Core.Nothing,
+      config = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3AudioInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3AudioInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3AudioInput
+            Core.<$> (o Core..:? "audio")
+            Core.<*> (o Core..:? "config")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3AudioInput where
+  toJSON GoogleCloudDialogflowCxV3AudioInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audio" Core..=) Core.<$> audio,
+            ("config" Core..=) Core.<$> config
+          ]
+      )
+
+-- | Configuration of the barge-in behavior. Barge-in instructs the API to return a detected utterance at a proper time while the client is playing back the response audio from a previous request. When the client sees the utterance, it should stop the playback and immediately get ready for receiving the responses for the current request. The barge-in handling requires the client to start streaming audio input as soon as it starts playing back the audio from the previous response. The playback is modeled into two phases: * No barge-in phase: which goes first and during which speech detection should not be carried out. * Barge-in phase: which follows the no barge-in phase and during which the API starts speech detection and may inform the client that an utterance has been detected. Note that no-speech event is not expected in this phase. The client provides this configuration in terms of the durations of those two phases. The durations are measured in terms of the audio length from the start of the input audio.
+-- No-speech event is a response with END/OF/UTTERANCE without any transcript following up.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BargeInConfig' smart constructor.
+data GoogleCloudDialogflowCxV3BargeInConfig = GoogleCloudDialogflowCxV3BargeInConfig
+  { -- | Duration that is not eligible for barge-in at the beginning of the input audio.
+    noBargeInDuration :: (Core.Maybe Core.Duration),
+    -- | Total duration for the playback at the beginning of the input audio.
+    totalDuration :: (Core.Maybe Core.Duration)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BargeInConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BargeInConfig ::
+  GoogleCloudDialogflowCxV3BargeInConfig
+newGoogleCloudDialogflowCxV3BargeInConfig =
+  GoogleCloudDialogflowCxV3BargeInConfig
+    { noBargeInDuration =
+        Core.Nothing,
+      totalDuration = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3BargeInConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BargeInConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BargeInConfig
+            Core.<$> (o Core..:? "noBargeInDuration")
+            Core.<*> (o Core..:? "totalDuration")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3BargeInConfig where
+  toJSON GoogleCloudDialogflowCxV3BargeInConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("noBargeInDuration" Core..=) Core.<$> noBargeInDuration,
+            ("totalDuration" Core..=) Core.<$> totalDuration
+          ]
+      )
+
+-- | The request message for TestCases.BatchDeleteTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest = GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+  { -- | Required. Format of test case names: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    names :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest ::
+  GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest =
+  GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+    { names =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+            Core.<$> (o Core..:? "names")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest {..} =
+    Core.object (Core.catMaybes [("names" Core..=) Core.<$> names])
+
+-- | Metadata returned for the TestCases.BatchRunTestCases long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata = GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+  { -- | The test errors.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata =
+  GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The request message for TestCases.BatchRunTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest' smart constructor.
+data GoogleCloudDialogflowCxV3BatchRunTestCasesRequest = GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+  { -- | Optional. If not set, draft environment is assumed. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    environment :: (Core.Maybe Core.Text),
+    -- | Required. Format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    testCases :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BatchRunTestCasesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest ::
+  GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest =
+  GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+    { environment =
+        Core.Nothing,
+      testCases = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BatchRunTestCasesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+            Core.<$> (o Core..:? "environment")
+            Core.<*> (o Core..:? "testCases")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3BatchRunTestCasesRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("environment" Core..=) Core.<$> environment,
+            ("testCases" Core..=) Core.<$> testCases
+          ]
+      )
+
+-- | The response message for TestCases.BatchRunTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3BatchRunTestCasesResponse = GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+  { -- | The test case results. The detailed conversation turns are empty in this response.
+    results :: (Core.Maybe [GoogleCloudDialogflowCxV3TestCaseResult])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BatchRunTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse ::
+  GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse =
+  GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+    { results =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BatchRunTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+            Core.<$> (o Core..:? "results")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3BatchRunTestCasesResponse {..} =
+    Core.object
+      (Core.catMaybes [("results" Core..=) Core.<$> results])
+
+-- | Boost specification to boost certain documents. A copy of google.cloud.discoveryengine.v1main.BoostSpec, field documentation is available at https:\/\/cloud.google.com\/generative-ai-app-builder\/docs\/reference\/rest\/v1alpha\/BoostSpec
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BoostSpec' smart constructor.
+newtype GoogleCloudDialogflowCxV3BoostSpec = GoogleCloudDialogflowCxV3BoostSpec
+  { -- | Optional. Condition boost specifications. If a document matches multiple conditions in the specifications, boost scores from these specifications are all applied and combined in a non-linear way. Maximum number of specifications is 20.
+    conditionBoostSpecs :: (Core.Maybe [GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BoostSpec' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BoostSpec ::
+  GoogleCloudDialogflowCxV3BoostSpec
+newGoogleCloudDialogflowCxV3BoostSpec =
+  GoogleCloudDialogflowCxV3BoostSpec
+    { conditionBoostSpecs =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3BoostSpec where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BoostSpec"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BoostSpec
+            Core.<$> (o Core..:? "conditionBoostSpecs")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3BoostSpec where
+  toJSON GoogleCloudDialogflowCxV3BoostSpec {..} =
+    Core.object
+      ( Core.catMaybes
+          [("conditionBoostSpecs" Core..=) Core.<$> conditionBoostSpecs]
+      )
+
+-- | Boost applies to documents which match a condition.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec' smart constructor.
+data GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+  { -- | Optional. Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0. Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents. Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely. Setting to 0.0 means no boost applied. The boosting condition is ignored.
+    boost :: (Core.Maybe Core.Double),
+    -- | Optional. Complex specification for custom ranking based on customer defined attribute value.
+    boostControlSpec ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+      ),
+    -- | Optional. An expression which specifies a boost condition. The syntax and supported fields are the same as a filter expression. Examples: * To boost documents with document ID \"doc/1\" or \"doc/2\", and color \"Red\" or \"Blue\": * (id: ANY(\"doc/1\", \"doc/2\")) AND (color: ANY(\"Red\",\"Blue\"))
+    condition :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec ::
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec =
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+    { boost =
+        Core.Nothing,
+      boostControlSpec = Core.Nothing,
+      condition = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+            Core.<$> (o Core..:? "boost")
+            Core.<*> (o Core..:? "boostControlSpec")
+            Core.<*> (o Core..:? "condition")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+  where
+  toJSON GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("boost" Core..=) Core.<$> boost,
+            ("boostControlSpec" Core..=) Core.<$> boostControlSpec,
+            ("condition" Core..=) Core.<$> condition
+          ]
+      )
+
+-- | Specification for custom ranking based on customer specified attribute value. It provides more controls for customized ranking than the simple (condition, boost) combination above.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec' smart constructor.
+data GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+  { -- | Optional. The attribute type to be used to determine the boost amount. The attribute value can be derived from the field value of the specified field/name. In the case of numerical it is straightforward i.e. attribute/value = numerical/field/value. In the case of freshness however, attribute/value = (time.now() - datetime/field_value).
+    attributeType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+      ),
+    -- | Optional. The control points used to define the curve. The monotonic function (defined through the interpolation_type above) passes through the control points listed here.
+    controlPoints ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint]
+      ),
+    -- | Optional. The name of the field whose value will be used to determine the boost amount.
+    fieldName :: (Core.Maybe Core.Text),
+    -- | Optional. The interpolation type to be applied to connect the control points listed below.
+    interpolationType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec ::
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec =
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+    { attributeType =
+        Core.Nothing,
+      controlPoints =
+        Core.Nothing,
+      fieldName = Core.Nothing,
+      interpolationType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+            Core.<$> (o Core..:? "attributeType")
+            Core.<*> (o Core..:? "controlPoints")
+            Core.<*> (o Core..:? "fieldName")
+            Core.<*> (o Core..:? "interpolationType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("attributeType" Core..=) Core.<$> attributeType,
+              ("controlPoints" Core..=) Core.<$> controlPoints,
+              ("fieldName" Core..=) Core.<$> fieldName,
+              ("interpolationType" Core..=) Core.<$> interpolationType
+            ]
+        )
+
+-- | The control points used to define the curve. The curve defined through these control points can only be monotonically increasing or decreasing(constant values are acceptable).
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint' smart constructor.
+data GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+  { -- | Optional. Can be one of: 1. The numerical field value. 2. The duration spec for freshness: The value must be formatted as an XSD @dayTimeDuration@ value (a restricted subset of an ISO 8601 duration value). The pattern for this is: @nDnM]@.
+    attributeValue :: (Core.Maybe Core.Text),
+    -- | Optional. The value between -1 to 1 by which to boost the score if the attribute_value evaluates to the value specified above.
+    boostAmount :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint ::
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint =
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+    { attributeValue =
+        Core.Nothing,
+      boostAmount =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+            Core.<$> (o Core..:? "attributeValue")
+            Core.<*> (o Core..:? "boostAmount")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("attributeValue" Core..=) Core.<$> attributeValue,
+              ("boostAmount" Core..=) Core.<$> boostAmount
+            ]
+        )
+
+-- | Boost specifications for data stores.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3BoostSpecs' smart constructor.
+data GoogleCloudDialogflowCxV3BoostSpecs = GoogleCloudDialogflowCxV3BoostSpecs
+  { -- | Optional. Data Stores where the boosting configuration is applied. The full names of the referenced data stores. Formats: @projects\/{project}\/locations\/{location}\/collections\/{collection}\/dataStores\/{data_store}@ @projects\/{project}\/locations\/{location}\/dataStores\/{data_store}@
+    dataStores :: (Core.Maybe [Core.Text]),
+    -- | Optional. A list of boosting specifications.
+    spec :: (Core.Maybe [GoogleCloudDialogflowCxV3BoostSpec])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3BoostSpecs' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3BoostSpecs ::
+  GoogleCloudDialogflowCxV3BoostSpecs
+newGoogleCloudDialogflowCxV3BoostSpecs =
+  GoogleCloudDialogflowCxV3BoostSpecs
+    { dataStores = Core.Nothing,
+      spec = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3BoostSpecs where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3BoostSpecs"
+      ( \o ->
+          GoogleCloudDialogflowCxV3BoostSpecs
+            Core.<$> (o Core..:? "dataStores")
+            Core.<*> (o Core..:? "spec")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3BoostSpecs where
+  toJSON GoogleCloudDialogflowCxV3BoostSpecs {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStores" Core..=) Core.<$> dataStores,
+            ("spec" Core..=) Core.<$> spec
+          ]
+      )
+
+-- | The response message for TestCases.CalculateCoverage.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3CalculateCoverageResponse' smart constructor.
+data GoogleCloudDialogflowCxV3CalculateCoverageResponse = GoogleCloudDialogflowCxV3CalculateCoverageResponse
+  { -- | The agent to calculate coverage for. Format: @projects\/\/locations\/\/agents\/@.
+    agent :: (Core.Maybe Core.Text),
+    -- | Intent coverage.
+    intentCoverage :: (Core.Maybe GoogleCloudDialogflowCxV3IntentCoverage),
+    -- | Transition route group coverage.
+    routeGroupCoverage :: (Core.Maybe GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage),
+    -- | Transition (excluding transition route groups) coverage.
+    transitionCoverage :: (Core.Maybe GoogleCloudDialogflowCxV3TransitionCoverage)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3CalculateCoverageResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3CalculateCoverageResponse ::
+  GoogleCloudDialogflowCxV3CalculateCoverageResponse
+newGoogleCloudDialogflowCxV3CalculateCoverageResponse =
+  GoogleCloudDialogflowCxV3CalculateCoverageResponse
+    { agent =
+        Core.Nothing,
+      intentCoverage = Core.Nothing,
+      routeGroupCoverage = Core.Nothing,
+      transitionCoverage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3CalculateCoverageResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3CalculateCoverageResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3CalculateCoverageResponse
+            Core.<$> (o Core..:? "agent")
+            Core.<*> (o Core..:? "intentCoverage")
+            Core.<*> (o Core..:? "routeGroupCoverage")
+            Core.<*> (o Core..:? "transitionCoverage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3CalculateCoverageResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3CalculateCoverageResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agent" Core..=) Core.<$> agent,
+            ("intentCoverage" Core..=) Core.<$> intentCoverage,
+            ("routeGroupCoverage" Core..=) Core.<$> routeGroupCoverage,
+            ("transitionCoverage" Core..=) Core.<$> transitionCoverage
+          ]
+      )
+
+-- | Changelogs represents a change made to a given agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Changelog' smart constructor.
+data GoogleCloudDialogflowCxV3Changelog = GoogleCloudDialogflowCxV3Changelog
+  { -- | The action of the change.
+    action :: (Core.Maybe Core.Text),
+    -- | The timestamp of the change.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | The affected resource display name of the change.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The affected language code of the change.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the changelog. Format: @projects\/\/locations\/\/agents\/\/changelogs\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The affected resource name of the change.
+    resource :: (Core.Maybe Core.Text),
+    -- | The affected resource type.
+    type' :: (Core.Maybe Core.Text),
+    -- | Email address of the authenticated user.
+    userEmail :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Changelog' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Changelog ::
+  GoogleCloudDialogflowCxV3Changelog
+newGoogleCloudDialogflowCxV3Changelog =
+  GoogleCloudDialogflowCxV3Changelog
+    { action = Core.Nothing,
+      createTime = Core.Nothing,
+      displayName = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = Core.Nothing,
+      resource = Core.Nothing,
+      type' = Core.Nothing,
+      userEmail = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Changelog where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Changelog"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Changelog
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "resource")
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "userEmail")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Changelog where
+  toJSON GoogleCloudDialogflowCxV3Changelog {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("createTime" Core..=) Core.<$> createTime,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name,
+            ("resource" Core..=) Core.<$> resource,
+            ("type" Core..=) Core.<$> type',
+            ("userEmail" Core..=) Core.<$> userEmail
+          ]
+      )
+
+-- | The request message for Versions.CompareVersions.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3CompareVersionsRequest' smart constructor.
+data GoogleCloudDialogflowCxV3CompareVersionsRequest = GoogleCloudDialogflowCxV3CompareVersionsRequest
+  { -- | The language to compare the flow versions for. If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. Name of the target flow version to compare with the base version. Use version ID @0@ to indicate the draft version of the specified flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    targetVersion :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3CompareVersionsRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3CompareVersionsRequest ::
+  GoogleCloudDialogflowCxV3CompareVersionsRequest
+newGoogleCloudDialogflowCxV3CompareVersionsRequest =
+  GoogleCloudDialogflowCxV3CompareVersionsRequest
+    { languageCode =
+        Core.Nothing,
+      targetVersion = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3CompareVersionsRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3CompareVersionsRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3CompareVersionsRequest
+            Core.<$> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "targetVersion")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3CompareVersionsRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3CompareVersionsRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("languageCode" Core..=) Core.<$> languageCode,
+            ("targetVersion" Core..=) Core.<$> targetVersion
+          ]
+      )
+
+-- | The response message for Versions.CompareVersions.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3CompareVersionsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3CompareVersionsResponse = GoogleCloudDialogflowCxV3CompareVersionsResponse
+  { -- | JSON representation of the base version content.
+    baseVersionContentJson :: (Core.Maybe Core.Text),
+    -- | The timestamp when the two version compares.
+    compareTime :: (Core.Maybe Core.DateTime),
+    -- | JSON representation of the target version content.
+    targetVersionContentJson :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3CompareVersionsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3CompareVersionsResponse ::
+  GoogleCloudDialogflowCxV3CompareVersionsResponse
+newGoogleCloudDialogflowCxV3CompareVersionsResponse =
+  GoogleCloudDialogflowCxV3CompareVersionsResponse
+    { baseVersionContentJson =
+        Core.Nothing,
+      compareTime = Core.Nothing,
+      targetVersionContentJson = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3CompareVersionsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3CompareVersionsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3CompareVersionsResponse
+            Core.<$> (o Core..:? "baseVersionContentJson")
+            Core.<*> (o Core..:? "compareTime")
+            Core.<*> (o Core..:? "targetVersionContentJson")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3CompareVersionsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3CompareVersionsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("baseVersionContentJson" Core..=)
+              Core.<$> baseVersionContentJson,
+            ("compareTime" Core..=) Core.<$> compareTime,
+            ("targetVersionContentJson" Core..=)
+              Core.<$> targetVersionContentJson
+          ]
+      )
+
+-- | Represents a result from running a test case in an agent environment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ContinuousTestResult' smart constructor.
+data GoogleCloudDialogflowCxV3ContinuousTestResult = GoogleCloudDialogflowCxV3ContinuousTestResult
+  { -- | The resource name for the continuous test result. Format: @projects\/\/locations\/\/agents\/\/environments\/\/continuousTestResults\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The result of this continuous test run, i.e. whether all the tests in this continuous test run pass or not.
+    result :: (Core.Maybe GoogleCloudDialogflowCxV3ContinuousTestResult_Result),
+    -- | Time when the continuous testing run starts.
+    runTime :: (Core.Maybe Core.DateTime),
+    -- | A list of individual test case results names in this continuous test run.
+    testCaseResults :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ContinuousTestResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ContinuousTestResult ::
+  GoogleCloudDialogflowCxV3ContinuousTestResult
+newGoogleCloudDialogflowCxV3ContinuousTestResult =
+  GoogleCloudDialogflowCxV3ContinuousTestResult
+    { name =
+        Core.Nothing,
+      result = Core.Nothing,
+      runTime = Core.Nothing,
+      testCaseResults = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ContinuousTestResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ContinuousTestResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ContinuousTestResult
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "result")
+            Core.<*> (o Core..:? "runTime")
+            Core.<*> (o Core..:? "testCaseResults")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ContinuousTestResult where
+  toJSON GoogleCloudDialogflowCxV3ContinuousTestResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("result" Core..=) Core.<$> result,
+            ("runTime" Core..=) Core.<$> runTime,
+            ("testCaseResults" Core..=) Core.<$> testCaseResults
+          ]
+      )
+
+-- | This message is used to hold all the Conversation Signals data, which will be converted to JSON and exported to BigQuery.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationSignals' smart constructor.
+newtype GoogleCloudDialogflowCxV3ConversationSignals = GoogleCloudDialogflowCxV3ConversationSignals
+  { -- | Required. Turn signals for the current turn.
+    turnSignals :: (Core.Maybe GoogleCloudDialogflowCxV3TurnSignals)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationSignals ::
+  GoogleCloudDialogflowCxV3ConversationSignals
+newGoogleCloudDialogflowCxV3ConversationSignals =
+  GoogleCloudDialogflowCxV3ConversationSignals
+    { turnSignals =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ConversationSignals where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationSignals
+            Core.<$> (o Core..:? "turnSignals")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ConversationSignals where
+  toJSON GoogleCloudDialogflowCxV3ConversationSignals {..} =
+    Core.object
+      (Core.catMaybes [("turnSignals" Core..=) Core.<$> turnSignals])
+
+-- | One interaction between a human and virtual agent. The human provides some input and the virtual agent provides a response.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurn' smart constructor.
+data GoogleCloudDialogflowCxV3ConversationTurn = GoogleCloudDialogflowCxV3ConversationTurn
+  { -- | The user input.
+    userInput :: (Core.Maybe GoogleCloudDialogflowCxV3ConversationTurnUserInput),
+    -- | The virtual agent output.
+    virtualAgentOutput ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurn' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurn ::
+  GoogleCloudDialogflowCxV3ConversationTurn
+newGoogleCloudDialogflowCxV3ConversationTurn =
+  GoogleCloudDialogflowCxV3ConversationTurn
+    { userInput =
+        Core.Nothing,
+      virtualAgentOutput = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ConversationTurn where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurn"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurn
+            Core.<$> (o Core..:? "userInput")
+            Core.<*> (o Core..:? "virtualAgentOutput")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ConversationTurn where
+  toJSON GoogleCloudDialogflowCxV3ConversationTurn {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("userInput" Core..=) Core.<$> userInput,
+            ("virtualAgentOutput" Core..=) Core.<$> virtualAgentOutput
+          ]
+      )
+
+-- | The input from the human user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurnUserInput' smart constructor.
+data GoogleCloudDialogflowCxV3ConversationTurnUserInput = GoogleCloudDialogflowCxV3ConversationTurnUserInput
+  { -- | Whether sentiment analysis is enabled.
+    enableSentimentAnalysis :: (Core.Maybe Core.Bool),
+    -- | Parameters that need to be injected into the conversation during intent detection.
+    injectedParameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+      ),
+    -- | Supports text input, event input, dtmf input in the test case.
+    input :: (Core.Maybe GoogleCloudDialogflowCxV3QueryInput),
+    -- | If webhooks should be allowed to trigger in response to the user utterance. Often if parameters are injected, webhooks should not be enabled.
+    isWebhookEnabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurnUserInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurnUserInput ::
+  GoogleCloudDialogflowCxV3ConversationTurnUserInput
+newGoogleCloudDialogflowCxV3ConversationTurnUserInput =
+  GoogleCloudDialogflowCxV3ConversationTurnUserInput
+    { enableSentimentAnalysis =
+        Core.Nothing,
+      injectedParameters = Core.Nothing,
+      input = Core.Nothing,
+      isWebhookEnabled = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurnUserInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurnUserInput
+            Core.<$> (o Core..:? "enableSentimentAnalysis")
+            Core.<*> (o Core..:? "injectedParameters")
+            Core.<*> (o Core..:? "input")
+            Core.<*> (o Core..:? "isWebhookEnabled")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput
+  where
+  toJSON GoogleCloudDialogflowCxV3ConversationTurnUserInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableSentimentAnalysis" Core..=)
+              Core.<$> enableSentimentAnalysis,
+            ("injectedParameters" Core..=) Core.<$> injectedParameters,
+            ("input" Core..=) Core.<$> input,
+            ("isWebhookEnabled" Core..=) Core.<$> isWebhookEnabled
+          ]
+      )
+
+-- | Parameters that need to be injected into the conversation during intent detection.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters = GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+  additional =
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters {..} =
+      Core.toJSON additional
+
+-- | The output from the virtual agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput' smart constructor.
+data GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput = GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+  { -- | The Page on which the utterance was spoken. Only name and displayName will be set.
+    currentPage :: (Core.Maybe GoogleCloudDialogflowCxV3Page),
+    -- | Required. Input only. The diagnostic info output for the turn. Required to calculate the testing coverage.
+    diagnosticInfo ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+      ),
+    -- | Output only. If this is part of a result conversation turn, the list of differences between the original run and the replay for this output, if any.
+    differences :: (Core.Maybe [GoogleCloudDialogflowCxV3TestRunDifference]),
+    -- | The session parameters available to the bot at this point.
+    sessionParameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+      ),
+    -- | Response error from the agent in the test result. If set, other output is empty.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The text responses from the agent for the turn.
+    textResponses :: (Core.Maybe [GoogleCloudDialogflowCxV3ResponseMessageText]),
+    -- | The Intent that triggered the response. Only name and displayName will be set.
+    triggeredIntent :: (Core.Maybe GoogleCloudDialogflowCxV3Intent)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput ::
+  GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput =
+  GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+    { currentPage =
+        Core.Nothing,
+      diagnosticInfo = Core.Nothing,
+      differences = Core.Nothing,
+      sessionParameters = Core.Nothing,
+      status = Core.Nothing,
+      textResponses = Core.Nothing,
+      triggeredIntent = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+            Core.<$> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "diagnosticInfo")
+            Core.<*> (o Core..:? "differences")
+            Core.<*> (o Core..:? "sessionParameters")
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "textResponses")
+            Core.<*> (o Core..:? "triggeredIntent")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("currentPage" Core..=) Core.<$> currentPage,
+              ("diagnosticInfo" Core..=) Core.<$> diagnosticInfo,
+              ("differences" Core..=) Core.<$> differences,
+              ("sessionParameters" Core..=) Core.<$> sessionParameters,
+              ("status" Core..=) Core.<$> status,
+              ("textResponses" Core..=) Core.<$> textResponses,
+              ("triggeredIntent" Core..=) Core.<$> triggeredIntent
+            ]
+        )
+
+-- | Required. Input only. The diagnostic info output for the turn. Required to calculate the testing coverage.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo = GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  additional =
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo {..} =
+      Core.toJSON additional
+
+-- | The session parameters available to the bot at this point.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters = GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+  additional =
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters {..} =
+      Core.toJSON additional
+
+-- | Metadata associated with the long running operation for Versions.CreateVersion.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3CreateVersionOperationMetadata = GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+  { -- | Name of the created version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3CreateVersionOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata ::
+  GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata =
+  GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+    { version =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3CreateVersionOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+            Core.<$> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3CreateVersionOperationMetadata {..} =
+    Core.object
+      (Core.catMaybes [("version" Core..=) Core.<$> version])
+
+-- | A data store connection. It represents a data store in Discovery Engine and the type of the contents it contains.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnection' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnection = GoogleCloudDialogflowCxV3DataStoreConnection
+  { -- | The full name of the referenced data store. Formats: @projects\/{project}\/locations\/{location}\/collections\/{collection}\/dataStores\/{data_store}@ @projects\/{project}\/locations\/{location}\/dataStores\/{data_store}@
+    dataStore :: (Core.Maybe Core.Text),
+    -- | The type of the connected data store.
+    dataStoreType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+      ),
+    -- | The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode.
+    documentProcessingMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnection' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnection ::
+  GoogleCloudDialogflowCxV3DataStoreConnection
+newGoogleCloudDialogflowCxV3DataStoreConnection =
+  GoogleCloudDialogflowCxV3DataStoreConnection
+    { dataStore =
+        Core.Nothing,
+      dataStoreType = Core.Nothing,
+      documentProcessingMode = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DataStoreConnection where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnection"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnection
+            Core.<$> (o Core..:? "dataStore")
+            Core.<*> (o Core..:? "dataStoreType")
+            Core.<*> (o Core..:? "documentProcessingMode")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DataStoreConnection where
+  toJSON GoogleCloudDialogflowCxV3DataStoreConnection {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStore" Core..=) Core.<$> dataStore,
+            ("dataStoreType" Core..=) Core.<$> dataStoreType,
+            ("documentProcessingMode" Core..=)
+              Core.<$> documentProcessingMode
+          ]
+      )
+
+-- | Data store connection feature output signals. Might be only partially field if processing stop before the final answer. Reasons for this can be, but are not limited to: empty UCS search results, positive RAI check outcome, grounding failure, ...
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignals' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignals = GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+  { -- | Optional. The final compiled answer.
+    answer :: (Core.Maybe Core.Text),
+    -- | Optional. Diagnostic info related to the answer generation model call.
+    answerGenerationModelCallSignals ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+      ),
+    -- | Optional. Answer parts with relevant citations. Concatenation of texts should add up the @answer@ (not counting whitespaces).
+    answerParts ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart]
+      ),
+    -- | Optional. Snippets cited by the answer generation model from the most to least relevant.
+    citedSnippets ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet]
+      ),
+    -- | Optional. Grounding signals.
+    groundingSignals ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+      ),
+    -- | Optional. Diagnostic info related to the rewriter model call.
+    rewriterModelCallSignals ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+      ),
+    -- | Optional. Rewritten string query used for search.
+    rewrittenQuery :: (Core.Maybe Core.Text),
+    -- | Optional. Safety check result.
+    safetySignals ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+      ),
+    -- | Optional. Search snippets included in the answer generation prompt.
+    searchSnippets ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignals ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignals =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+    { answer =
+        Core.Nothing,
+      answerGenerationModelCallSignals =
+        Core.Nothing,
+      answerParts = Core.Nothing,
+      citedSnippets = Core.Nothing,
+      groundingSignals = Core.Nothing,
+      rewriterModelCallSignals = Core.Nothing,
+      rewrittenQuery = Core.Nothing,
+      safetySignals = Core.Nothing,
+      searchSnippets = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+            Core.<$> (o Core..:? "answer")
+            Core.<*> (o Core..:? "answerGenerationModelCallSignals")
+            Core.<*> (o Core..:? "answerParts")
+            Core.<*> (o Core..:? "citedSnippets")
+            Core.<*> (o Core..:? "groundingSignals")
+            Core.<*> (o Core..:? "rewriterModelCallSignals")
+            Core.<*> (o Core..:? "rewrittenQuery")
+            Core.<*> (o Core..:? "safetySignals")
+            Core.<*> (o Core..:? "searchSnippets")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+  where
+  toJSON GoogleCloudDialogflowCxV3DataStoreConnectionSignals {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answer" Core..=) Core.<$> answer,
+            ("answerGenerationModelCallSignals" Core..=)
+              Core.<$> answerGenerationModelCallSignals,
+            ("answerParts" Core..=) Core.<$> answerParts,
+            ("citedSnippets" Core..=) Core.<$> citedSnippets,
+            ("groundingSignals" Core..=) Core.<$> groundingSignals,
+            ("rewriterModelCallSignals" Core..=)
+              Core.<$> rewriterModelCallSignals,
+            ("rewrittenQuery" Core..=) Core.<$> rewrittenQuery,
+            ("safetySignals" Core..=) Core.<$> safetySignals,
+            ("searchSnippets" Core..=) Core.<$> searchSnippets
+          ]
+      )
+
+-- | Diagnostic info related to the answer generation model call.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+  { -- | Name of the generative model. For example, \"gemini-ultra\", \"gemini-pro\", \"gemini-1.5-flash\" etc. Defaults to \"Other\" if the model is unknown.
+    model :: (Core.Maybe Core.Text),
+    -- | Output of the generative model.
+    modelOutput :: (Core.Maybe Core.Text),
+    -- | Prompt as sent to the model.
+    renderedPrompt :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+    { model =
+        Core.Nothing,
+      modelOutput =
+        Core.Nothing,
+      renderedPrompt =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+            Core.<$> (o Core..:? "model")
+            Core.<*> (o Core..:? "modelOutput")
+            Core.<*> (o Core..:? "renderedPrompt")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("model" Core..=) Core.<$> model,
+              ("modelOutput" Core..=) Core.<$> modelOutput,
+              ("renderedPrompt" Core..=) Core.<$> renderedPrompt
+            ]
+        )
+
+-- | Answer part with citation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+  { -- | Citations for this answer part. Indices of @search_snippets@.
+    supportingIndices :: (Core.Maybe [Core.Int32]),
+    -- | Substring of the answer.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+    { supportingIndices =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+            Core.<$> (o Core..:? "supportingIndices")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("supportingIndices" Core..=) Core.<$> supportingIndices,
+              ("text" Core..=) Core.<$> text
+            ]
+        )
+
+-- | Snippet cited by the answer generation model.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+  { -- | Details of the snippet.
+    searchSnippet ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+      ),
+    -- | Index of the snippet in @search_snippets@ field.
+    snippetIndex :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+    { searchSnippet =
+        Core.Nothing,
+      snippetIndex = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+            Core.<$> (o Core..:? "searchSnippet")
+            Core.<*> (o Core..:? "snippetIndex")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("searchSnippet" Core..=) Core.<$> searchSnippet,
+              ("snippetIndex" Core..=) Core.<$> snippetIndex
+            ]
+        )
+
+-- | Grounding signals.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+  { -- | Represents the decision of the grounding check.
+    decision ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+      ),
+    -- | Grounding score bucket setting.
+    score ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+    { decision =
+        Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+            Core.<$> (o Core..:? "decision")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("decision" Core..=) Core.<$> decision,
+              ("score" Core..=) Core.<$> score
+            ]
+        )
+
+-- | Diagnostic info related to the rewriter model call.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+  { -- | Name of the generative model. For example, \"gemini-ultra\", \"gemini-pro\", \"gemini-1.5-flash\" etc. Defaults to \"Other\" if the model is unknown.
+    model :: (Core.Maybe Core.Text),
+    -- | Output of the generative model.
+    modelOutput :: (Core.Maybe Core.Text),
+    -- | Prompt as sent to the model.
+    renderedPrompt :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+    { model =
+        Core.Nothing,
+      modelOutput =
+        Core.Nothing,
+      renderedPrompt =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+            Core.<$> (o Core..:? "model")
+            Core.<*> (o Core..:? "modelOutput")
+            Core.<*> (o Core..:? "renderedPrompt")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("model" Core..=) Core.<$> model,
+              ("modelOutput" Core..=) Core.<$> modelOutput,
+              ("renderedPrompt" Core..=) Core.<$> renderedPrompt
+            ]
+        )
+
+-- | Safety check results.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+  { -- | Specifies banned phrase match subject.
+    bannedPhraseMatch ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+      ),
+    -- | Safety decision.
+    decision ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+      ),
+    -- | The matched banned phrase if there was a match.
+    matchedBannedPhrase :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+    { bannedPhraseMatch =
+        Core.Nothing,
+      decision = Core.Nothing,
+      matchedBannedPhrase =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+            Core.<$> (o Core..:? "bannedPhraseMatch")
+            Core.<*> (o Core..:? "decision")
+            Core.<*> (o Core..:? "matchedBannedPhrase")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("bannedPhraseMatch" Core..=) Core.<$> bannedPhraseMatch,
+              ("decision" Core..=) Core.<$> decision,
+              ("matchedBannedPhrase" Core..=) Core.<$> matchedBannedPhrase
+            ]
+        )
+
+-- | Search snippet details.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet' smart constructor.
+data GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+  { -- | Title of the enclosing document.
+    documentTitle :: (Core.Maybe Core.Text),
+    -- | Uri for the document. Present if specified for the document.
+    documentUri :: (Core.Maybe Core.Text),
+    -- | Text included in the prompt.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet ::
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet =
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+    { documentTitle =
+        Core.Nothing,
+      documentUri = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+            Core.<$> (o Core..:? "documentTitle")
+            Core.<*> (o Core..:? "documentUri")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("documentTitle" Core..=) Core.<$> documentTitle,
+              ("documentUri" Core..=) Core.<$> documentUri,
+              ("text" Core..=) Core.<$> text
+            ]
+        )
+
+-- | Metadata returned for the Environments.DeployFlow long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DeployFlowMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3DeployFlowMetadata = GoogleCloudDialogflowCxV3DeployFlowMetadata
+  { -- | Errors of running deployment tests.
+    testErrors :: (Core.Maybe [GoogleCloudDialogflowCxV3TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DeployFlowMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DeployFlowMetadata ::
+  GoogleCloudDialogflowCxV3DeployFlowMetadata
+newGoogleCloudDialogflowCxV3DeployFlowMetadata =
+  GoogleCloudDialogflowCxV3DeployFlowMetadata
+    { testErrors =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DeployFlowMetadata where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DeployFlowMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DeployFlowMetadata
+            Core.<$> (o Core..:? "testErrors")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DeployFlowMetadata where
+  toJSON GoogleCloudDialogflowCxV3DeployFlowMetadata {..} =
+    Core.object
+      (Core.catMaybes [("testErrors" Core..=) Core.<$> testErrors])
+
+-- | The request message for Environments.DeployFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DeployFlowRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3DeployFlowRequest = GoogleCloudDialogflowCxV3DeployFlowRequest
+  { -- | Required. The flow version to deploy. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    flowVersion :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DeployFlowRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DeployFlowRequest ::
+  GoogleCloudDialogflowCxV3DeployFlowRequest
+newGoogleCloudDialogflowCxV3DeployFlowRequest =
+  GoogleCloudDialogflowCxV3DeployFlowRequest
+    { flowVersion =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DeployFlowRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DeployFlowRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DeployFlowRequest
+            Core.<$> (o Core..:? "flowVersion")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DeployFlowRequest where
+  toJSON GoogleCloudDialogflowCxV3DeployFlowRequest {..} =
+    Core.object
+      (Core.catMaybes [("flowVersion" Core..=) Core.<$> flowVersion])
+
+-- | The response message for Environments.DeployFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DeployFlowResponse' smart constructor.
+data GoogleCloudDialogflowCxV3DeployFlowResponse = GoogleCloudDialogflowCxV3DeployFlowResponse
+  { -- | The name of the flow version Deployment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/deployments\/@.
+    deployment :: (Core.Maybe Core.Text),
+    -- | The updated environment where the flow is deployed.
+    environment :: (Core.Maybe GoogleCloudDialogflowCxV3Environment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DeployFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DeployFlowResponse ::
+  GoogleCloudDialogflowCxV3DeployFlowResponse
+newGoogleCloudDialogflowCxV3DeployFlowResponse =
+  GoogleCloudDialogflowCxV3DeployFlowResponse
+    { deployment =
+        Core.Nothing,
+      environment = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DeployFlowResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DeployFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DeployFlowResponse
+            Core.<$> (o Core..:? "deployment")
+            Core.<*> (o Core..:? "environment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DeployFlowResponse where
+  toJSON GoogleCloudDialogflowCxV3DeployFlowResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("deployment" Core..=) Core.<$> deployment,
+            ("environment" Core..=) Core.<$> environment
+          ]
+      )
+
+-- | Represents a deployment in an environment. A deployment happens when a flow version configured to be active in the environment. You can configure running pre-deployment steps, e.g. running validation test cases, experiment auto-rollout, etc.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Deployment' smart constructor.
+data GoogleCloudDialogflowCxV3Deployment = GoogleCloudDialogflowCxV3Deployment
+  { -- | End time of this deployment.
+    endTime :: (Core.Maybe Core.DateTime),
+    -- | The name of the flow version for this deployment. Format: projects\/\/locations\/\/agents\/\/flows\/\/versions\/.
+    flowVersion :: (Core.Maybe Core.Text),
+    -- | The name of the deployment. Format: projects\/\/locations\/\/agents\/\/environments\/\/deployments\/.
+    name :: (Core.Maybe Core.Text),
+    -- | Result of the deployment.
+    result :: (Core.Maybe GoogleCloudDialogflowCxV3DeploymentResult),
+    -- | Start time of this deployment.
+    startTime :: (Core.Maybe Core.DateTime),
+    -- | The current state of the deployment.
+    state :: (Core.Maybe GoogleCloudDialogflowCxV3Deployment_State)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Deployment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Deployment ::
+  GoogleCloudDialogflowCxV3Deployment
+newGoogleCloudDialogflowCxV3Deployment =
+  GoogleCloudDialogflowCxV3Deployment
+    { endTime = Core.Nothing,
+      flowVersion = Core.Nothing,
+      name = Core.Nothing,
+      result = Core.Nothing,
+      startTime = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Deployment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Deployment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Deployment
+            Core.<$> (o Core..:? "endTime")
+            Core.<*> (o Core..:? "flowVersion")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "result")
+            Core.<*> (o Core..:? "startTime")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Deployment where
+  toJSON GoogleCloudDialogflowCxV3Deployment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endTime" Core..=) Core.<$> endTime,
+            ("flowVersion" Core..=) Core.<$> flowVersion,
+            ("name" Core..=) Core.<$> name,
+            ("result" Core..=) Core.<$> result,
+            ("startTime" Core..=) Core.<$> startTime,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Result of the deployment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DeploymentResult' smart constructor.
+data GoogleCloudDialogflowCxV3DeploymentResult = GoogleCloudDialogflowCxV3DeploymentResult
+  { -- | Results of test cases running before the deployment. Format: @projects\/\/locations\/\/agents\/\/testCases\/\/results\/@.
+    deploymentTestResults :: (Core.Maybe [Core.Text]),
+    -- | The name of the experiment triggered by this deployment. Format: projects\/\/locations\/\/agents\/\/environments\/\/experiments\/.
+    experiment :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DeploymentResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DeploymentResult ::
+  GoogleCloudDialogflowCxV3DeploymentResult
+newGoogleCloudDialogflowCxV3DeploymentResult =
+  GoogleCloudDialogflowCxV3DeploymentResult
+    { deploymentTestResults =
+        Core.Nothing,
+      experiment = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DeploymentResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DeploymentResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DeploymentResult
+            Core.<$> (o Core..:? "deploymentTestResults")
+            Core.<*> (o Core..:? "experiment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DeploymentResult where
+  toJSON GoogleCloudDialogflowCxV3DeploymentResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("deploymentTestResults" Core..=) Core.<$> deploymentTestResults,
+            ("experiment" Core..=) Core.<$> experiment
+          ]
+      )
+
+-- | The request to detect user\'s intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DetectIntentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3DetectIntentRequest = GoogleCloudDialogflowCxV3DetectIntentRequest
+  { -- | Instructs the speech synthesizer how to generate the output audio.
+    outputAudioConfig :: (Core.Maybe GoogleCloudDialogflowCxV3OutputAudioConfig),
+    -- | Required. The input specification.
+    queryInput :: (Core.Maybe GoogleCloudDialogflowCxV3QueryInput),
+    -- | The parameters of this query.
+    queryParams :: (Core.Maybe GoogleCloudDialogflowCxV3QueryParameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DetectIntentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DetectIntentRequest ::
+  GoogleCloudDialogflowCxV3DetectIntentRequest
+newGoogleCloudDialogflowCxV3DetectIntentRequest =
+  GoogleCloudDialogflowCxV3DetectIntentRequest
+    { outputAudioConfig =
+        Core.Nothing,
+      queryInput = Core.Nothing,
+      queryParams = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DetectIntentRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DetectIntentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DetectIntentRequest
+            Core.<$> (o Core..:? "outputAudioConfig")
+            Core.<*> (o Core..:? "queryInput")
+            Core.<*> (o Core..:? "queryParams")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DetectIntentRequest where
+  toJSON GoogleCloudDialogflowCxV3DetectIntentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("outputAudioConfig" Core..=) Core.<$> outputAudioConfig,
+            ("queryInput" Core..=) Core.<$> queryInput,
+            ("queryParams" Core..=) Core.<$> queryParams
+          ]
+      )
+
+-- | The message returned from the DetectIntent method.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DetectIntentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3DetectIntentResponse = GoogleCloudDialogflowCxV3DetectIntentResponse
+  { -- | Indicates whether the partial response can be cancelled when a later response arrives. e.g. if the agent specified some music as partial response, it can be cancelled.
+    allowCancellation :: (Core.Maybe Core.Bool),
+    -- | The audio data bytes encoded as specified in the request. Note: The output audio is generated based on the values of default platform text responses found in the @query_result.response_messages@ field. If multiple default text responses exist, they will be concatenated when generating audio. If no default platform text responses exist, the generated audio content will be empty. In some scenarios, multiple output audio fields may be present in the response structure. In these cases, only the top-most-level audio output has content.
+    outputAudio :: (Core.Maybe Core.Base64),
+    -- | The config used by the speech synthesizer to generate the output audio.
+    outputAudioConfig :: (Core.Maybe GoogleCloudDialogflowCxV3OutputAudioConfig),
+    -- | The result of the conversational query.
+    queryResult :: (Core.Maybe GoogleCloudDialogflowCxV3QueryResult),
+    -- | Output only. The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.
+    responseId :: (Core.Maybe Core.Text),
+    -- | Response type.
+    responseType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DetectIntentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DetectIntentResponse ::
+  GoogleCloudDialogflowCxV3DetectIntentResponse
+newGoogleCloudDialogflowCxV3DetectIntentResponse =
+  GoogleCloudDialogflowCxV3DetectIntentResponse
+    { allowCancellation =
+        Core.Nothing,
+      outputAudio = Core.Nothing,
+      outputAudioConfig = Core.Nothing,
+      queryResult = Core.Nothing,
+      responseId = Core.Nothing,
+      responseType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3DetectIntentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DetectIntentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DetectIntentResponse
+            Core.<$> (o Core..:? "allowCancellation")
+            Core.<*> (o Core..:? "outputAudio")
+            Core.<*> (o Core..:? "outputAudioConfig")
+            Core.<*> (o Core..:? "queryResult")
+            Core.<*> (o Core..:? "responseId")
+            Core.<*> (o Core..:? "responseType")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DetectIntentResponse where
+  toJSON GoogleCloudDialogflowCxV3DetectIntentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowCancellation" Core..=) Core.<$> allowCancellation,
+            ("outputAudio" Core..=) Core.<$> outputAudio,
+            ("outputAudioConfig" Core..=) Core.<$> outputAudioConfig,
+            ("queryResult" Core..=) Core.<$> queryResult,
+            ("responseId" Core..=) Core.<$> responseId,
+            ("responseType" Core..=) Core.<$> responseType
+          ]
+      )
+
+-- | Represents the input for dtmf event.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3DtmfInput' smart constructor.
+data GoogleCloudDialogflowCxV3DtmfInput = GoogleCloudDialogflowCxV3DtmfInput
+  { -- | The dtmf digits.
+    digits :: (Core.Maybe Core.Text),
+    -- | The finish digit (if any).
+    finishDigit :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3DtmfInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3DtmfInput ::
+  GoogleCloudDialogflowCxV3DtmfInput
+newGoogleCloudDialogflowCxV3DtmfInput =
+  GoogleCloudDialogflowCxV3DtmfInput
+    { digits = Core.Nothing,
+      finishDigit = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3DtmfInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3DtmfInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3DtmfInput
+            Core.<$> (o Core..:? "digits")
+            Core.<*> (o Core..:? "finishDigit")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3DtmfInput where
+  toJSON GoogleCloudDialogflowCxV3DtmfInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("digits" Core..=) Core.<$> digits,
+            ("finishDigit" Core..=) Core.<$> finishDigit
+          ]
+      )
+
+-- | Entities are extracted from user input and represent parameters that are meaningful to your application. For example, a date range, a proper name such as a geographic location or landmark, and so on. Entities represent actionable data for your application. When you define an entity, you can also include synonyms that all map to that entity. For example, \"soft drink\", \"soda\", \"pop\", and so on. There are three types of entities: * __System__ - entities that are defined by the Dialogflow API for common data types such as date, time, currency, and so on. A system entity is represented by the @EntityType@ type. * __Custom__ - entities that are defined by you that represent actionable data that is meaningful to your application. For example, you could define a @pizza.sauce@ entity for red or white pizza sauce, a @pizza.cheese@ entity for the different types of cheese on a pizza, a @pizza.topping@ entity for different toppings, and so on. A custom entity is represented by the @EntityType@ type. * __User__ -
+-- entities that are built for an individual user such as favorites, preferences, playlists, and so on. A user entity is represented by the SessionEntityType type. For more information about entity types, see the <https://cloud.google.com/dialogflow/docs/entities-overview Dialogflow documentation>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EntityType' smart constructor.
+data GoogleCloudDialogflowCxV3EntityType = GoogleCloudDialogflowCxV3EntityType
+  { -- | Indicates whether the entity type can be automatically expanded.
+    autoExpansionMode :: (Core.Maybe GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode),
+    -- | Required. The human-readable name of the entity type, unique within the agent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Enables fuzzy entity extraction during classification.
+    enableFuzzyExtraction :: (Core.Maybe Core.Bool),
+    -- | The collection of entity entries associated with the entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowCxV3EntityTypeEntity]),
+    -- | Collection of exceptional words and phrases that shouldn\'t be matched. For example, if you have a size entity type with entry @giant@(an adjective), you might consider adding @giants@(a noun) as an exclusion. If the kind of entity type is @KIND_MAP@, then the phrases specified by entities and excluded phrases should be mutually exclusive.
+    excludedPhrases :: (Core.Maybe [GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase]),
+    -- | Required. Indicates the kind of entity type.
+    kind :: (Core.Maybe GoogleCloudDialogflowCxV3EntityType_Kind),
+    -- | The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Indicates whether parameters of the entity type should be redacted in log. If redaction is enabled, page parameters and intent parameters referring to the entity type will be replaced by parameter name when logging.
+    redact :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EntityType ::
+  GoogleCloudDialogflowCxV3EntityType
+newGoogleCloudDialogflowCxV3EntityType =
+  GoogleCloudDialogflowCxV3EntityType
+    { autoExpansionMode =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      enableFuzzyExtraction = Core.Nothing,
+      entities = Core.Nothing,
+      excludedPhrases = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      redact = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3EntityType where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EntityType"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EntityType
+            Core.<$> (o Core..:? "autoExpansionMode")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "enableFuzzyExtraction")
+            Core.<*> (o Core..:? "entities")
+            Core.<*> (o Core..:? "excludedPhrases")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "redact")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3EntityType where
+  toJSON GoogleCloudDialogflowCxV3EntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("autoExpansionMode" Core..=) Core.<$> autoExpansionMode,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("enableFuzzyExtraction" Core..=) Core.<$> enableFuzzyExtraction,
+            ("entities" Core..=) Core.<$> entities,
+            ("excludedPhrases" Core..=) Core.<$> excludedPhrases,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("redact" Core..=) Core.<$> redact
+          ]
+      )
+
+-- | An __entity entry__ for an associated entity type.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EntityTypeEntity' smart constructor.
+data GoogleCloudDialogflowCxV3EntityTypeEntity = GoogleCloudDialogflowCxV3EntityTypeEntity
+  { -- | Required. A collection of value synonyms. For example, if the entity type is /vegetable/, and @value@ is /scallions/, a synonym could be /green onions/. For @KIND_LIST@ entity types: * This collection must contain exactly one synonym equal to @value@.
+    synonyms :: (Core.Maybe [Core.Text]),
+    -- | Required. The primary value associated with this entity entry. For example, if the entity type is /vegetable/, the value could be /scallions/. For @KIND_MAP@ entity types: * A canonical value to be used in place of synonyms. For @KIND_LIST@ entity types: * A string that can contain references to other entity types (with or without aliases).
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EntityTypeEntity' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EntityTypeEntity ::
+  GoogleCloudDialogflowCxV3EntityTypeEntity
+newGoogleCloudDialogflowCxV3EntityTypeEntity =
+  GoogleCloudDialogflowCxV3EntityTypeEntity
+    { synonyms =
+        Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3EntityTypeEntity where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EntityTypeEntity"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EntityTypeEntity
+            Core.<$> (o Core..:? "synonyms")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3EntityTypeEntity where
+  toJSON GoogleCloudDialogflowCxV3EntityTypeEntity {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("synonyms" Core..=) Core.<$> synonyms,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | An excluded entity phrase that should not be matched.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase' smart constructor.
+newtype GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase = GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+  { -- | Required. The word or phrase to be excluded.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase ::
+  GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase =
+  GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+    { value =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+            Core.<$> (o Core..:? "value")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+  where
+  toJSON GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase {..} =
+    Core.object (Core.catMaybes [("value" Core..=) Core.<$> value])
+
+-- | Represents an environment for an agent. You can create multiple versions of your agent and publish them to separate environments. When you edit an agent, you are editing the draft agent. At any point, you can save the draft agent as an agent version, which is an immutable snapshot of your agent. When you save the draft agent, it is published to the default environment. When you create agent versions, you can publish them to custom environments. You can create a variety of custom environments for testing, development, production, etc.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Environment' smart constructor.
+data GoogleCloudDialogflowCxV3Environment = GoogleCloudDialogflowCxV3Environment
+  { -- | The human-readable description of the environment. The maximum length is 500 characters. If exceeded, the request is rejected.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the environment (unique in an agent). Limit of 64 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The name of the environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The test cases config for continuous tests of this environment.
+    testCasesConfig :: (Core.Maybe GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig),
+    -- | Output only. Update time of this environment.
+    updateTime :: (Core.Maybe Core.DateTime),
+    -- | A list of configurations for flow versions. You should include version configs for all flows that are reachable from @Start Flow@ in the agent. Otherwise, an error will be returned.
+    versionConfigs :: (Core.Maybe [GoogleCloudDialogflowCxV3EnvironmentVersionConfig]),
+    -- | The webhook configuration for this environment.
+    webhookConfig :: (Core.Maybe GoogleCloudDialogflowCxV3EnvironmentWebhookConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Environment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Environment ::
+  GoogleCloudDialogflowCxV3Environment
+newGoogleCloudDialogflowCxV3Environment =
+  GoogleCloudDialogflowCxV3Environment
+    { description = Core.Nothing,
+      displayName = Core.Nothing,
+      name = Core.Nothing,
+      testCasesConfig = Core.Nothing,
+      updateTime = Core.Nothing,
+      versionConfigs = Core.Nothing,
+      webhookConfig = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Environment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Environment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Environment
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "testCasesConfig")
+            Core.<*> (o Core..:? "updateTime")
+            Core.<*> (o Core..:? "versionConfigs")
+            Core.<*> (o Core..:? "webhookConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Environment where
+  toJSON GoogleCloudDialogflowCxV3Environment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("name" Core..=) Core.<$> name,
+            ("testCasesConfig" Core..=) Core.<$> testCasesConfig,
+            ("updateTime" Core..=) Core.<$> updateTime,
+            ("versionConfigs" Core..=) Core.<$> versionConfigs,
+            ("webhookConfig" Core..=) Core.<$> webhookConfig
+          ]
+      )
+
+-- | The configuration for continuous tests.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig' smart constructor.
+data GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig = GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+  { -- | Whether to run test cases in TestCasesConfig.test_cases periodically. Default false. If set to true, run once a day.
+    enableContinuousRun :: (Core.Maybe Core.Bool),
+    -- | Whether to run test cases in TestCasesConfig.test_cases before deploying a flow version to the environment. Default false.
+    enablePredeploymentRun :: (Core.Maybe Core.Bool),
+    -- | A list of test case names to run. They should be under the same agent. Format of each test case name: @projects\/\/locations\/\/agents\/\/testCases\/@
+    testCases :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig ::
+  GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig =
+  GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+    { enableContinuousRun =
+        Core.Nothing,
+      enablePredeploymentRun = Core.Nothing,
+      testCases = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+            Core.<$> (o Core..:? "enableContinuousRun")
+            Core.<*> (o Core..:? "enablePredeploymentRun")
+            Core.<*> (o Core..:? "testCases")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableContinuousRun" Core..=) Core.<$> enableContinuousRun,
+            ("enablePredeploymentRun" Core..=) Core.<$> enablePredeploymentRun,
+            ("testCases" Core..=) Core.<$> testCases
+          ]
+      )
+
+-- | Configuration for the version.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EnvironmentVersionConfig' smart constructor.
+newtype GoogleCloudDialogflowCxV3EnvironmentVersionConfig = GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+  { -- | Required. Both flow and playbook versions are supported. Format for flow version: projects\/\/locations\/\/agents\/\/flows\/\/versions\/. Format for playbook version: projects\/\/locations\/\/agents\/\/playbooks\/\/versions\/.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EnvironmentVersionConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EnvironmentVersionConfig ::
+  GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+newGoogleCloudDialogflowCxV3EnvironmentVersionConfig =
+  GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+    { version =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EnvironmentVersionConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+            Core.<$> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3EnvironmentVersionConfig {..} =
+    Core.object
+      (Core.catMaybes [("version" Core..=) Core.<$> version])
+
+-- | Configuration for webhooks.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig' smart constructor.
+newtype GoogleCloudDialogflowCxV3EnvironmentWebhookConfig = GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+  { -- | The list of webhooks to override for the agent environment. The webhook must exist in the agent. You can override fields in @generic_web_service@ and @service_directory@.
+    webhookOverrides :: (Core.Maybe [GoogleCloudDialogflowCxV3Webhook])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EnvironmentWebhookConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig ::
+  GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig =
+  GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+    { webhookOverrides =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EnvironmentWebhookConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+            Core.<$> (o Core..:? "webhookOverrides")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3EnvironmentWebhookConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [("webhookOverrides" Core..=) Core.<$> webhookOverrides]
+      )
+
+-- | An event handler specifies an event that can be handled during a session. When the specified event happens, the following actions are taken in order: * If there is a @trigger_fulfillment@ associated with the event, it will be called. * If there is a @target_page@ associated with the event, the session will transition into the specified page. * If there is a @target_flow@ associated with the event, the session will transition into the specified flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EventHandler' smart constructor.
+data GoogleCloudDialogflowCxV3EventHandler = GoogleCloudDialogflowCxV3EventHandler
+  { -- | Required. The name of the event to handle.
+    event :: (Core.Maybe Core.Text),
+    -- | Output only. The unique identifier of this event handler.
+    name :: (Core.Maybe Core.Text),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The target playbook to transition to. Format: @projects\/\/locations\/\/agents\/\/playbooks\/@.
+    targetPlaybook :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the event occurs. Handling webhook errors with a fulfillment enabled with webhook could cause infinite loop. It is invalid to specify such fulfillment for a handler handling webhooks.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EventHandler' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EventHandler ::
+  GoogleCloudDialogflowCxV3EventHandler
+newGoogleCloudDialogflowCxV3EventHandler =
+  GoogleCloudDialogflowCxV3EventHandler
+    { event = Core.Nothing,
+      name = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      targetPlaybook = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3EventHandler where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EventHandler"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EventHandler
+            Core.<$> (o Core..:? "event")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "targetPlaybook")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3EventHandler where
+  toJSON GoogleCloudDialogflowCxV3EventHandler {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("event" Core..=) Core.<$> event,
+            ("name" Core..=) Core.<$> name,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("targetPlaybook" Core..=) Core.<$> targetPlaybook,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | Represents the event to trigger.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3EventInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3EventInput = GoogleCloudDialogflowCxV3EventInput
+  { -- | Name of the event.
+    event :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3EventInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3EventInput ::
+  GoogleCloudDialogflowCxV3EventInput
+newGoogleCloudDialogflowCxV3EventInput =
+  GoogleCloudDialogflowCxV3EventInput {event = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3EventInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3EventInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3EventInput Core.<$> (o Core..:? "event")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3EventInput where
+  toJSON GoogleCloudDialogflowCxV3EventInput {..} =
+    Core.object (Core.catMaybes [("event" Core..=) Core.<$> event])
+
+-- | Represents an experiment in an environment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Experiment' smart constructor.
+data GoogleCloudDialogflowCxV3Experiment = GoogleCloudDialogflowCxV3Experiment
+  { -- | Creation time of this experiment.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | The definition of the experiment.
+    definition :: (Core.Maybe GoogleCloudDialogflowCxV3ExperimentDefinition),
+    -- | The human-readable description of the experiment.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the experiment (unique in an environment). Limit of 64 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | End time of this experiment.
+    endTime :: (Core.Maybe Core.DateTime),
+    -- | Maximum number of days to run the experiment\/rollout. If auto-rollout is not enabled, default value and maximum will be 30 days. If auto-rollout is enabled, default value and maximum will be 6 days.
+    experimentLength :: (Core.Maybe Core.Duration),
+    -- | Last update time of this experiment.
+    lastUpdateTime :: (Core.Maybe Core.DateTime),
+    -- | The name of the experiment. Format: projects\/\/locations\/\/agents\/\/environments\/\/experiments\/.
+    name :: (Core.Maybe Core.Text),
+    -- | Inference result of the experiment.
+    result :: (Core.Maybe GoogleCloudDialogflowCxV3ExperimentResult),
+    -- | The configuration for auto rollout. If set, there should be exactly two variants in the experiment (control variant being the default version of the flow), the traffic allocation for the non-control variant will gradually increase to 100% when conditions are met, and eventually replace the control variant to become the default version of the flow.
+    rolloutConfig :: (Core.Maybe GoogleCloudDialogflowCxV3RolloutConfig),
+    -- | The reason why rollout has failed. Should only be set when state is ROLLOUT_FAILED.
+    rolloutFailureReason :: (Core.Maybe Core.Text),
+    -- | State of the auto rollout process.
+    rolloutState :: (Core.Maybe GoogleCloudDialogflowCxV3RolloutState),
+    -- | Start time of this experiment.
+    startTime :: (Core.Maybe Core.DateTime),
+    -- | The current state of the experiment. Transition triggered by Experiments.StartExperiment: DRAFT->RUNNING. Transition triggered by Experiments.CancelExperiment: DRAFT->DONE or RUNNING->DONE.
+    state :: (Core.Maybe GoogleCloudDialogflowCxV3Experiment_State),
+    -- | The history of updates to the experiment variants.
+    variantsHistory :: (Core.Maybe [GoogleCloudDialogflowCxV3VariantsHistory])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Experiment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Experiment ::
+  GoogleCloudDialogflowCxV3Experiment
+newGoogleCloudDialogflowCxV3Experiment =
+  GoogleCloudDialogflowCxV3Experiment
+    { createTime = Core.Nothing,
+      definition = Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      endTime = Core.Nothing,
+      experimentLength = Core.Nothing,
+      lastUpdateTime = Core.Nothing,
+      name = Core.Nothing,
+      result = Core.Nothing,
+      rolloutConfig = Core.Nothing,
+      rolloutFailureReason = Core.Nothing,
+      rolloutState = Core.Nothing,
+      startTime = Core.Nothing,
+      state = Core.Nothing,
+      variantsHistory = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Experiment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Experiment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Experiment
+            Core.<$> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "definition")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "endTime")
+            Core.<*> (o Core..:? "experimentLength")
+            Core.<*> (o Core..:? "lastUpdateTime")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "result")
+            Core.<*> (o Core..:? "rolloutConfig")
+            Core.<*> (o Core..:? "rolloutFailureReason")
+            Core.<*> (o Core..:? "rolloutState")
+            Core.<*> (o Core..:? "startTime")
+            Core.<*> (o Core..:? "state")
+            Core.<*> (o Core..:? "variantsHistory")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Experiment where
+  toJSON GoogleCloudDialogflowCxV3Experiment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("createTime" Core..=) Core.<$> createTime,
+            ("definition" Core..=) Core.<$> definition,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("endTime" Core..=) Core.<$> endTime,
+            ("experimentLength" Core..=) Core.<$> experimentLength,
+            ("lastUpdateTime" Core..=) Core.<$> lastUpdateTime,
+            ("name" Core..=) Core.<$> name,
+            ("result" Core..=) Core.<$> result,
+            ("rolloutConfig" Core..=) Core.<$> rolloutConfig,
+            ("rolloutFailureReason" Core..=) Core.<$> rolloutFailureReason,
+            ("rolloutState" Core..=) Core.<$> rolloutState,
+            ("startTime" Core..=) Core.<$> startTime,
+            ("state" Core..=) Core.<$> state,
+            ("variantsHistory" Core..=) Core.<$> variantsHistory
+          ]
+      )
+
+-- | Definition of the experiment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExperimentDefinition' smart constructor.
+data GoogleCloudDialogflowCxV3ExperimentDefinition = GoogleCloudDialogflowCxV3ExperimentDefinition
+  { -- | The condition defines which subset of sessions are selected for this experiment. If not specified, all sessions are eligible. E.g. \"query/input.language/code=en\" See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>.
+    condition :: (Core.Maybe Core.Text),
+    -- | The flow versions as the variants of this experiment.
+    versionVariants :: (Core.Maybe GoogleCloudDialogflowCxV3VersionVariants)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExperimentDefinition' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExperimentDefinition ::
+  GoogleCloudDialogflowCxV3ExperimentDefinition
+newGoogleCloudDialogflowCxV3ExperimentDefinition =
+  GoogleCloudDialogflowCxV3ExperimentDefinition
+    { condition =
+        Core.Nothing,
+      versionVariants = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExperimentDefinition
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExperimentDefinition"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExperimentDefinition
+            Core.<$> (o Core..:? "condition")
+            Core.<*> (o Core..:? "versionVariants")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExperimentDefinition where
+  toJSON GoogleCloudDialogflowCxV3ExperimentDefinition {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("condition" Core..=) Core.<$> condition,
+            ("versionVariants" Core..=) Core.<$> versionVariants
+          ]
+      )
+
+-- | The inference result which includes an objective metric to optimize and the confidence interval.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExperimentResult' smart constructor.
+data GoogleCloudDialogflowCxV3ExperimentResult = GoogleCloudDialogflowCxV3ExperimentResult
+  { -- | The last time the experiment\'s stats data was updated. Will have default value if stats have never been computed for this experiment.
+    lastUpdateTime :: (Core.Maybe Core.DateTime),
+    -- | Version variants and metrics.
+    versionMetrics ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExperimentResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExperimentResult ::
+  GoogleCloudDialogflowCxV3ExperimentResult
+newGoogleCloudDialogflowCxV3ExperimentResult =
+  GoogleCloudDialogflowCxV3ExperimentResult
+    { lastUpdateTime =
+        Core.Nothing,
+      versionMetrics = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ExperimentResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExperimentResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExperimentResult
+            Core.<$> (o Core..:? "lastUpdateTime")
+            Core.<*> (o Core..:? "versionMetrics")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExperimentResult where
+  toJSON GoogleCloudDialogflowCxV3ExperimentResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("lastUpdateTime" Core..=) Core.<$> lastUpdateTime,
+            ("versionMetrics" Core..=) Core.<$> versionMetrics
+          ]
+      )
+
+-- | A confidence interval is a range of possible values for the experiment objective you are trying to measure.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval' smart constructor.
+data GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval = GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+  { -- | The confidence level used to construct the interval, i.e. there is X% chance that the true value is within this interval.
+    confidenceLevel :: (Core.Maybe Core.Double),
+    -- | Lower bound of the interval.
+    lowerBound :: (Core.Maybe Core.Double),
+    -- | The percent change between an experiment metric\'s value and the value for its control.
+    ratio :: (Core.Maybe Core.Double),
+    -- | Upper bound of the interval.
+    upperBound :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval ::
+  GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval =
+  GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+    { confidenceLevel =
+        Core.Nothing,
+      lowerBound = Core.Nothing,
+      ratio = Core.Nothing,
+      upperBound = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+            Core.<$> (o Core..:? "confidenceLevel")
+            Core.<*> (o Core..:? "lowerBound")
+            Core.<*> (o Core..:? "ratio")
+            Core.<*> (o Core..:? "upperBound")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("confidenceLevel" Core..=) Core.<$> confidenceLevel,
+              ("lowerBound" Core..=) Core.<$> lowerBound,
+              ("ratio" Core..=) Core.<$> ratio,
+              ("upperBound" Core..=) Core.<$> upperBound
+            ]
+        )
+
+-- | Metric and corresponding confidence intervals.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExperimentResultMetric' smart constructor.
+data GoogleCloudDialogflowCxV3ExperimentResultMetric = GoogleCloudDialogflowCxV3ExperimentResultMetric
+  { -- | The probability that the treatment is better than all other treatments in the experiment
+    confidenceInterval ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+      ),
+    -- | Count value of a metric.
+    count :: (Core.Maybe Core.Double),
+    -- | Count-based metric type. Only one of type or count_type is specified in each Metric.
+    countType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+      ),
+    -- | Ratio value of a metric.
+    ratio :: (Core.Maybe Core.Double),
+    -- | Ratio-based metric type. Only one of type or count_type is specified in each Metric.
+    type' :: (Core.Maybe GoogleCloudDialogflowCxV3ExperimentResultMetric_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExperimentResultMetric' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExperimentResultMetric ::
+  GoogleCloudDialogflowCxV3ExperimentResultMetric
+newGoogleCloudDialogflowCxV3ExperimentResultMetric =
+  GoogleCloudDialogflowCxV3ExperimentResultMetric
+    { confidenceInterval =
+        Core.Nothing,
+      count = Core.Nothing,
+      countType = Core.Nothing,
+      ratio = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExperimentResultMetric
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExperimentResultMetric"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExperimentResultMetric
+            Core.<$> (o Core..:? "confidenceInterval")
+            Core.<*> (o Core..:? "count")
+            Core.<*> (o Core..:? "countType")
+            Core.<*> (o Core..:? "ratio")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExperimentResultMetric
+  where
+  toJSON GoogleCloudDialogflowCxV3ExperimentResultMetric {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidenceInterval" Core..=) Core.<$> confidenceInterval,
+            ("count" Core..=) Core.<$> count,
+            ("countType" Core..=) Core.<$> countType,
+            ("ratio" Core..=) Core.<$> ratio,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Version variant and associated metrics.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics' smart constructor.
+data GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics = GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+  { -- | The metrics and corresponding confidence intervals in the inference result.
+    metrics :: (Core.Maybe [GoogleCloudDialogflowCxV3ExperimentResultMetric]),
+    -- | Number of sessions that were allocated to this version.
+    sessionCount :: (Core.Maybe Core.Int32),
+    -- | The name of the flow Version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics ::
+  GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics =
+  GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+    { metrics =
+        Core.Nothing,
+      sessionCount = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+            Core.<$> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "sessionCount")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+  where
+  toJSON GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("metrics" Core..=) Core.<$> metrics,
+            ("sessionCount" Core..=) Core.<$> sessionCount,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | The request message for Agents.ExportAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportAgentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ExportAgentRequest = GoogleCloudDialogflowCxV3ExportAgentRequest
+  { -- | Optional. The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to export the agent to. The format of this URI must be @gs:\/\/\/@. If left unspecified, the serialized agent is returned inline. Dialogflow performs a write operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have write permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    agentUri :: (Core.Maybe Core.Text),
+    -- | Optional. The data format of the exported agent. If not specified, @BLOB@ is assumed.
+    dataFormat :: (Core.Maybe GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat),
+    -- | Optional. Environment name. If not set, draft environment is assumed. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    environment :: (Core.Maybe Core.Text),
+    -- | Optional. The Git branch to export the agent to.
+    gitDestination ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+      ),
+    -- | Optional. Whether to include BigQuery Export setting.
+    includeBigqueryExportSettings :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportAgentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportAgentRequest ::
+  GoogleCloudDialogflowCxV3ExportAgentRequest
+newGoogleCloudDialogflowCxV3ExportAgentRequest =
+  GoogleCloudDialogflowCxV3ExportAgentRequest
+    { agentUri =
+        Core.Nothing,
+      dataFormat = Core.Nothing,
+      environment = Core.Nothing,
+      gitDestination = Core.Nothing,
+      includeBigqueryExportSettings = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ExportAgentRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportAgentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportAgentRequest
+            Core.<$> (o Core..:? "agentUri")
+            Core.<*> (o Core..:? "dataFormat")
+            Core.<*> (o Core..:? "environment")
+            Core.<*> (o Core..:? "gitDestination")
+            Core.<*> (o Core..:? "includeBigqueryExportSettings")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportAgentRequest where
+  toJSON GoogleCloudDialogflowCxV3ExportAgentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentUri" Core..=) Core.<$> agentUri,
+            ("dataFormat" Core..=) Core.<$> dataFormat,
+            ("environment" Core..=) Core.<$> environment,
+            ("gitDestination" Core..=) Core.<$> gitDestination,
+            ("includeBigqueryExportSettings" Core..=)
+              Core.<$> includeBigqueryExportSettings
+          ]
+      )
+
+-- | Settings for exporting to a git branch.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination' smart constructor.
+data GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination = GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+  { -- | Commit message for the git push.
+    commitMessage :: (Core.Maybe Core.Text),
+    -- | Tracking branch for the git push.
+    trackingBranch :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination ::
+  GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination =
+  GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+    { commitMessage =
+        Core.Nothing,
+      trackingBranch = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+            Core.<$> (o Core..:? "commitMessage")
+            Core.<*> (o Core..:? "trackingBranch")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("commitMessage" Core..=) Core.<$> commitMessage,
+              ("trackingBranch" Core..=) Core.<$> trackingBranch
+            ]
+        )
+
+-- | The response message for Agents.ExportAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportAgentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ExportAgentResponse = GoogleCloudDialogflowCxV3ExportAgentResponse
+  { -- | Uncompressed raw byte content for agent. This field is populated if none of @agent_uri@ and @git_destination@ are specified in ExportAgentRequest.
+    agentContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported agent. This field is populated if @agent_uri@ is specified in ExportAgentRequest.
+    agentUri :: (Core.Maybe Core.Text),
+    -- | Commit SHA of the git push. This field is populated if @git_destination@ is specified in ExportAgentRequest.
+    commitSha :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportAgentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportAgentResponse ::
+  GoogleCloudDialogflowCxV3ExportAgentResponse
+newGoogleCloudDialogflowCxV3ExportAgentResponse =
+  GoogleCloudDialogflowCxV3ExportAgentResponse
+    { agentContent =
+        Core.Nothing,
+      agentUri = Core.Nothing,
+      commitSha = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ExportAgentResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportAgentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportAgentResponse
+            Core.<$> (o Core..:? "agentContent")
+            Core.<*> (o Core..:? "agentUri")
+            Core.<*> (o Core..:? "commitSha")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportAgentResponse where
+  toJSON GoogleCloudDialogflowCxV3ExportAgentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentContent" Core..=) Core.<$> agentContent,
+            ("agentUri" Core..=) Core.<$> agentUri,
+            ("commitSha" Core..=) Core.<$> commitSha
+          ]
+      )
+
+-- | Metadata returned for the EntityTypes.ExportEntityTypes long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3ExportEntityTypesMetadata = GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportEntityTypesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata ::
+  GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata =
+  GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportEntityTypesMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for EntityTypes.ExportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportEntityTypesRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ExportEntityTypesRequest = GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+  { -- | Optional. The data format of the exported entity types. If not specified, @BLOB@ is assumed.
+    dataFormat ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+      ),
+    -- | Required. The name of the entity types to export. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@.
+    entityTypes :: (Core.Maybe [Core.Text]),
+    -- | Optional. The option to return the serialized entity types inline.
+    entityTypesContentInline :: (Core.Maybe Core.Bool),
+    -- | Optional. The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to export the entity types to. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a write operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have write permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    entityTypesUri :: (Core.Maybe Core.Text),
+    -- | Optional. The language to retrieve the entity type for. The following fields are language dependent: * @EntityType.entities.value@ * @EntityType.entities.synonyms@ * @EntityType.excluded_phrases.value@ If not specified, all language dependent fields will be retrieved. <https://cloud.google.com/dialogflow/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportEntityTypesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportEntityTypesRequest ::
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+newGoogleCloudDialogflowCxV3ExportEntityTypesRequest =
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+    { dataFormat =
+        Core.Nothing,
+      entityTypes = Core.Nothing,
+      entityTypesContentInline = Core.Nothing,
+      entityTypesUri = Core.Nothing,
+      languageCode = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportEntityTypesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+            Core.<$> (o Core..:? "dataFormat")
+            Core.<*> (o Core..:? "entityTypes")
+            Core.<*> (o Core..:? "entityTypesContentInline")
+            Core.<*> (o Core..:? "entityTypesUri")
+            Core.<*> (o Core..:? "languageCode")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3ExportEntityTypesRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataFormat" Core..=) Core.<$> dataFormat,
+            ("entityTypes" Core..=) Core.<$> entityTypes,
+            ("entityTypesContentInline" Core..=)
+              Core.<$> entityTypesContentInline,
+            ("entityTypesUri" Core..=) Core.<$> entityTypesUri,
+            ("languageCode" Core..=) Core.<$> languageCode
+          ]
+      )
+
+-- | The response message for EntityTypes.ExportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ExportEntityTypesResponse = GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+  { -- | Uncompressed byte content for entity types. This field is populated only if @entity_types_content_inline@ is set to true in ExportEntityTypesRequest.
+    entityTypesContent :: (Core.Maybe GoogleCloudDialogflowCxV3InlineDestination),
+    -- | The URI to a file containing the exported entity types. This field is populated only if @entity_types_uri@ is specified in ExportEntityTypesRequest.
+    entityTypesUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+newGoogleCloudDialogflowCxV3ExportEntityTypesResponse =
+  GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+    { entityTypesContent =
+        Core.Nothing,
+      entityTypesUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+            Core.<$> (o Core..:? "entityTypesContent")
+            Core.<*> (o Core..:? "entityTypesUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ExportEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityTypesContent" Core..=) Core.<$> entityTypesContent,
+            ("entityTypesUri" Core..=) Core.<$> entityTypesUri
+          ]
+      )
+
+-- | The request message for Flows.ExportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportFlowRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ExportFlowRequest = GoogleCloudDialogflowCxV3ExportFlowRequest
+  { -- | Optional. The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to export the flow to. The format of this URI must be @gs:\/\/\/@. If left unspecified, the serialized flow is returned inline. Dialogflow performs a write operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have write permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    flowUri :: (Core.Maybe Core.Text),
+    -- | Optional. Whether to export flows referenced by the specified flow.
+    includeReferencedFlows :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportFlowRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportFlowRequest ::
+  GoogleCloudDialogflowCxV3ExportFlowRequest
+newGoogleCloudDialogflowCxV3ExportFlowRequest =
+  GoogleCloudDialogflowCxV3ExportFlowRequest
+    { flowUri =
+        Core.Nothing,
+      includeReferencedFlows = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ExportFlowRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportFlowRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportFlowRequest
+            Core.<$> (o Core..:? "flowUri")
+            Core.<*> (o Core..:? "includeReferencedFlows")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportFlowRequest where
+  toJSON GoogleCloudDialogflowCxV3ExportFlowRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flowUri" Core..=) Core.<$> flowUri,
+            ("includeReferencedFlows" Core..=)
+              Core.<$> includeReferencedFlows
+          ]
+      )
+
+-- | The response message for Flows.ExportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportFlowResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ExportFlowResponse = GoogleCloudDialogflowCxV3ExportFlowResponse
+  { -- | Uncompressed raw byte content for flow.
+    flowContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported flow. This field is populated only if @flow_uri@ is specified in ExportFlowRequest.
+    flowUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportFlowResponse ::
+  GoogleCloudDialogflowCxV3ExportFlowResponse
+newGoogleCloudDialogflowCxV3ExportFlowResponse =
+  GoogleCloudDialogflowCxV3ExportFlowResponse
+    { flowContent =
+        Core.Nothing,
+      flowUri = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ExportFlowResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportFlowResponse
+            Core.<$> (o Core..:? "flowContent")
+            Core.<*> (o Core..:? "flowUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportFlowResponse where
+  toJSON GoogleCloudDialogflowCxV3ExportFlowResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flowContent" Core..=) Core.<$> flowContent,
+            ("flowUri" Core..=) Core.<$> flowUri
+          ]
+      )
+
+-- | Metadata returned for the Intents.ExportIntents long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportIntentsMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3ExportIntentsMetadata = GoogleCloudDialogflowCxV3ExportIntentsMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportIntentsMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportIntentsMetadata ::
+  GoogleCloudDialogflowCxV3ExportIntentsMetadata
+newGoogleCloudDialogflowCxV3ExportIntentsMetadata =
+  GoogleCloudDialogflowCxV3ExportIntentsMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportIntentsMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportIntentsMetadata"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3ExportIntentsMetadata)
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportIntentsMetadata where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for Intents.ExportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportIntentsRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ExportIntentsRequest = GoogleCloudDialogflowCxV3ExportIntentsRequest
+  { -- | Optional. The data format of the exported intents. If not specified, @BLOB@ is assumed.
+    dataFormat ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+      ),
+    -- | Required. The name of the intents to export. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    intents :: (Core.Maybe [Core.Text]),
+    -- | Optional. The option to return the serialized intents inline.
+    intentsContentInline :: (Core.Maybe Core.Bool),
+    -- | Optional. The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to export the intents to. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a write operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have write permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    intentsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportIntentsRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportIntentsRequest ::
+  GoogleCloudDialogflowCxV3ExportIntentsRequest
+newGoogleCloudDialogflowCxV3ExportIntentsRequest =
+  GoogleCloudDialogflowCxV3ExportIntentsRequest
+    { dataFormat =
+        Core.Nothing,
+      intents = Core.Nothing,
+      intentsContentInline = Core.Nothing,
+      intentsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportIntentsRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportIntentsRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportIntentsRequest
+            Core.<$> (o Core..:? "dataFormat")
+            Core.<*> (o Core..:? "intents")
+            Core.<*> (o Core..:? "intentsContentInline")
+            Core.<*> (o Core..:? "intentsUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportIntentsRequest where
+  toJSON GoogleCloudDialogflowCxV3ExportIntentsRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataFormat" Core..=) Core.<$> dataFormat,
+            ("intents" Core..=) Core.<$> intents,
+            ("intentsContentInline" Core..=) Core.<$> intentsContentInline,
+            ("intentsUri" Core..=) Core.<$> intentsUri
+          ]
+      )
+
+-- | The response message for Intents.ExportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportIntentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ExportIntentsResponse = GoogleCloudDialogflowCxV3ExportIntentsResponse
+  { -- | Uncompressed byte content for intents. This field is populated only if @intents_content_inline@ is set to true in ExportIntentsRequest.
+    intentsContent :: (Core.Maybe GoogleCloudDialogflowCxV3InlineDestination),
+    -- | The URI to a file containing the exported intents. This field is populated only if @intents_uri@ is specified in ExportIntentsRequest.
+    intentsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportIntentsResponse ::
+  GoogleCloudDialogflowCxV3ExportIntentsResponse
+newGoogleCloudDialogflowCxV3ExportIntentsResponse =
+  GoogleCloudDialogflowCxV3ExportIntentsResponse
+    { intentsContent =
+        Core.Nothing,
+      intentsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportIntentsResponse
+            Core.<$> (o Core..:? "intentsContent")
+            Core.<*> (o Core..:? "intentsUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ExportIntentsResponse where
+  toJSON GoogleCloudDialogflowCxV3ExportIntentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("intentsContent" Core..=) Core.<$> intentsContent,
+            ("intentsUri" Core..=) Core.<$> intentsUri
+          ]
+      )
+
+-- | Metadata returned for the TestCases.ExportTestCases long running operation. This message currently has no fields.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportTestCasesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3ExportTestCasesMetadata = GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+newGoogleCloudDialogflowCxV3ExportTestCasesMetadata =
+  GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportTestCasesMetadata"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3ExportTestCasesMetadata)
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for TestCases.ExportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportTestCasesRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ExportTestCasesRequest = GoogleCloudDialogflowCxV3ExportTestCasesRequest
+  { -- | The data format of the exported test cases. If not specified, @BLOB@ is assumed.
+    dataFormat ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+      ),
+    -- | The filter expression used to filter exported test cases, see <https://aip.dev/160 API Filtering>. The expression is case insensitive and supports the following syntax: name = [OR name = ] ... For example: * \"name = t1 OR name = t2\" matches the test case with the exact resource name \"t1\" or \"t2\".
+    filter :: (Core.Maybe Core.Text),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to export the test cases to. The format of this URI must be @gs:\/\/\/@. If unspecified, the serialized test cases is returned inline. Dialogflow performs a write operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have write permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    gcsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportTestCasesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportTestCasesRequest ::
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest
+newGoogleCloudDialogflowCxV3ExportTestCasesRequest =
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest
+    { dataFormat =
+        Core.Nothing,
+      filter = Core.Nothing,
+      gcsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportTestCasesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportTestCasesRequest
+            Core.<$> (o Core..:? "dataFormat")
+            Core.<*> (o Core..:? "filter")
+            Core.<*> (o Core..:? "gcsUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3ExportTestCasesRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataFormat" Core..=) Core.<$> dataFormat,
+            ("filter" Core..=) Core.<$> filter,
+            ("gcsUri" Core..=) Core.<$> gcsUri
+          ]
+      )
+
+-- | The response message for TestCases.ExportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ExportTestCasesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ExportTestCasesResponse = GoogleCloudDialogflowCxV3ExportTestCasesResponse
+  { -- | Uncompressed raw byte content for test cases.
+    content :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported test cases. This field is populated only if @gcs_uri@ is specified in ExportTestCasesRequest.
+    gcsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ExportTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ExportTestCasesResponse ::
+  GoogleCloudDialogflowCxV3ExportTestCasesResponse
+newGoogleCloudDialogflowCxV3ExportTestCasesResponse =
+  GoogleCloudDialogflowCxV3ExportTestCasesResponse
+    { content =
+        Core.Nothing,
+      gcsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ExportTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ExportTestCasesResponse
+            Core.<$> (o Core..:? "content")
+            Core.<*> (o Core..:? "gcsUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ExportTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ExportTestCasesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("content" Core..=) Core.<$> content,
+            ("gcsUri" Core..=) Core.<$> gcsUri
+          ]
+      )
+
+-- | Filter specifications for data stores.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FilterSpecs' smart constructor.
+data GoogleCloudDialogflowCxV3FilterSpecs = GoogleCloudDialogflowCxV3FilterSpecs
+  { -- | Optional. Data Stores where the boosting configuration is applied. The full names of the referenced data stores. Formats: @projects\/{project}\/locations\/{location}\/collections\/{collection}\/dataStores\/{data_store}@ @projects\/{project}\/locations\/{location}\/dataStores\/{data_store}@
+    dataStores :: (Core.Maybe [Core.Text]),
+    -- | Optional. The filter expression to be applied. Expression syntax is documented at https:\/\/cloud.google.com\/generative-ai-app-builder\/docs\/filter-search-metadata#filter-expression-syntax
+    filter :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FilterSpecs' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FilterSpecs ::
+  GoogleCloudDialogflowCxV3FilterSpecs
+newGoogleCloudDialogflowCxV3FilterSpecs =
+  GoogleCloudDialogflowCxV3FilterSpecs
+    { dataStores = Core.Nothing,
+      filter = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3FilterSpecs where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FilterSpecs"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FilterSpecs
+            Core.<$> (o Core..:? "dataStores")
+            Core.<*> (o Core..:? "filter")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FilterSpecs where
+  toJSON GoogleCloudDialogflowCxV3FilterSpecs {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStores" Core..=) Core.<$> dataStores,
+            ("filter" Core..=) Core.<$> filter
+          ]
+      )
+
+-- | Flows represents the conversation flows when you build your chatbot agent. A flow consists of many pages connected by the transition routes. Conversations always start with the built-in Start Flow (with an all-0 ID). Transition routes can direct the conversation session from the current flow (parent flow) to another flow (sub flow). When the sub flow is finished, Dialogflow will bring the session back to the parent flow, where the sub flow is started. Usually, when a transition route is followed by a matched intent, the intent will be \"consumed\". This means the intent won\'t activate more transition routes. However, when the followed transition route moves the conversation session into a different flow, the matched intent can be carried over and to be consumed in the target flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Flow' smart constructor.
+data GoogleCloudDialogflowCxV3Flow = GoogleCloudDialogflowCxV3Flow
+  { -- | Hierarchical advanced settings for this flow. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the flow.
+    displayName :: (Core.Maybe Core.Text),
+    -- | A flow\'s event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page\'s event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.
+    eventHandlers :: (Core.Maybe [GoogleCloudDialogflowCxV3EventHandler]),
+    -- | Optional. Knowledge connector configuration.
+    knowledgeConnectorSettings :: (Core.Maybe GoogleCloudDialogflowCxV3KnowledgeConnectorSettings),
+    -- | Indicates whether the flow is locked for changes. If the flow is locked, modifications to the flow will be rejected.
+    locked :: (Core.Maybe Core.Bool),
+    -- | Optional. Multi-lingual agent settings for this flow.
+    multiLanguageSettings :: (Core.Maybe GoogleCloudDialogflowCxV3FlowMultiLanguageSettings),
+    -- | The unique identifier of the flow. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | NLU related settings of the flow.
+    nluSettings :: (Core.Maybe GoogleCloudDialogflowCxV3NluSettings),
+    -- | A flow\'s transition route group serve two purposes: * They are responsible for matching the user\'s first utterances in the flow. * They are inherited by every page\'s transition route groups. Transition route groups defined in the page have higher priority than those defined in the flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@ for agent-level groups.
+    transitionRouteGroups :: (Core.Maybe [Core.Text]),
+    -- | A flow\'s transition routes serve two purposes: * They are responsible for matching the user\'s first utterances in the flow. * They are inherited by every page\'s transition routes and can support use cases such as the user saying \"help\" or \"can I talk to a human?\", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow. TransitionRoutes are evaluated in the following order: * TransitionRoutes with intent specified. * TransitionRoutes with only condition specified. TransitionRoutes with intent specified are inherited by pages in the flow.
+    transitionRoutes :: (Core.Maybe [GoogleCloudDialogflowCxV3TransitionRoute])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Flow' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Flow ::
+  GoogleCloudDialogflowCxV3Flow
+newGoogleCloudDialogflowCxV3Flow =
+  GoogleCloudDialogflowCxV3Flow
+    { advancedSettings = Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      eventHandlers = Core.Nothing,
+      knowledgeConnectorSettings = Core.Nothing,
+      locked = Core.Nothing,
+      multiLanguageSettings = Core.Nothing,
+      name = Core.Nothing,
+      nluSettings = Core.Nothing,
+      transitionRouteGroups = Core.Nothing,
+      transitionRoutes = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Flow where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Flow"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Flow
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "eventHandlers")
+            Core.<*> (o Core..:? "knowledgeConnectorSettings")
+            Core.<*> (o Core..:? "locked")
+            Core.<*> (o Core..:? "multiLanguageSettings")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "nluSettings")
+            Core.<*> (o Core..:? "transitionRouteGroups")
+            Core.<*> (o Core..:? "transitionRoutes")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Flow where
+  toJSON GoogleCloudDialogflowCxV3Flow {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("eventHandlers" Core..=) Core.<$> eventHandlers,
+            ("knowledgeConnectorSettings" Core..=)
+              Core.<$> knowledgeConnectorSettings,
+            ("locked" Core..=) Core.<$> locked,
+            ("multiLanguageSettings" Core..=) Core.<$> multiLanguageSettings,
+            ("name" Core..=) Core.<$> name,
+            ("nluSettings" Core..=) Core.<$> nluSettings,
+            ("transitionRouteGroups" Core..=) Core.<$> transitionRouteGroups,
+            ("transitionRoutes" Core..=) Core.<$> transitionRoutes
+          ]
+      )
+
+-- | The flow import strategy used for resource conflict resolution associated with an ImportFlowRequest.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FlowImportStrategy' smart constructor.
+newtype GoogleCloudDialogflowCxV3FlowImportStrategy = GoogleCloudDialogflowCxV3FlowImportStrategy
+  { -- | Optional. Import strategy for resource conflict resolution, applied globally throughout the flow. It will be applied for all display name conflicts in the imported content. If not specified, \'CREATE_NEW\' is assumed.
+    globalImportStrategy ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FlowImportStrategy' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FlowImportStrategy ::
+  GoogleCloudDialogflowCxV3FlowImportStrategy
+newGoogleCloudDialogflowCxV3FlowImportStrategy =
+  GoogleCloudDialogflowCxV3FlowImportStrategy
+    { globalImportStrategy =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3FlowImportStrategy where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FlowImportStrategy"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FlowImportStrategy
+            Core.<$> (o Core..:? "globalImportStrategy")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FlowImportStrategy where
+  toJSON GoogleCloudDialogflowCxV3FlowImportStrategy {..} =
+    Core.object
+      ( Core.catMaybes
+          [("globalImportStrategy" Core..=) Core.<$> globalImportStrategy]
+      )
+
+-- | Settings for multi-lingual agents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings' smart constructor.
+data GoogleCloudDialogflowCxV3FlowMultiLanguageSettings = GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+  { -- | Optional. Enable multi-language detection for this flow. This can be set only if agent level multi language setting is enabled.
+    enableMultiLanguageDetection :: (Core.Maybe Core.Bool),
+    -- | Optional. Agent will respond in the detected language if the detected language code is in the supported resolved languages for this flow. This will be used only if multi-language training is enabled in the agent and multi-language detection is enabled in the flow. The supported languages must be a subset of the languages supported by the agent.
+    supportedResponseLanguageCodes :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FlowMultiLanguageSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings ::
+  GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings =
+  GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+    { enableMultiLanguageDetection =
+        Core.Nothing,
+      supportedResponseLanguageCodes =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FlowMultiLanguageSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+            Core.<$> (o Core..:? "enableMultiLanguageDetection")
+            Core.<*> (o Core..:? "supportedResponseLanguageCodes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3FlowMultiLanguageSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableMultiLanguageDetection" Core..=)
+              Core.<$> enableMultiLanguageDetection,
+            ("supportedResponseLanguageCodes" Core..=)
+              Core.<$> supportedResponseLanguageCodes
+          ]
+      )
+
+-- | The response message for Flows.GetFlowValidationResult.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FlowValidationResult' smart constructor.
+data GoogleCloudDialogflowCxV3FlowValidationResult = GoogleCloudDialogflowCxV3FlowValidationResult
+  { -- | The unique identifier of the flow validation result. Format: @projects\/\/locations\/\/agents\/\/flows\/\/validationResult@.
+    name :: (Core.Maybe Core.Text),
+    -- | Last time the flow was validated.
+    updateTime :: (Core.Maybe Core.DateTime),
+    -- | Contains all validation messages.
+    validationMessages :: (Core.Maybe [GoogleCloudDialogflowCxV3ValidationMessage])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FlowValidationResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FlowValidationResult ::
+  GoogleCloudDialogflowCxV3FlowValidationResult
+newGoogleCloudDialogflowCxV3FlowValidationResult =
+  GoogleCloudDialogflowCxV3FlowValidationResult
+    { name =
+        Core.Nothing,
+      updateTime = Core.Nothing,
+      validationMessages = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FlowValidationResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FlowValidationResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FlowValidationResult
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "updateTime")
+            Core.<*> (o Core..:? "validationMessages")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FlowValidationResult where
+  toJSON GoogleCloudDialogflowCxV3FlowValidationResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("updateTime" Core..=) Core.<$> updateTime,
+            ("validationMessages" Core..=) Core.<$> validationMessages
+          ]
+      )
+
+-- | A form is a data model that groups related parameters that can be collected from the user. The process in which the agent prompts the user and collects parameter values from the user is called form filling. A form can be added to a page. When form filling is done, the filled parameters will be written to the session.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Form' smart constructor.
+newtype GoogleCloudDialogflowCxV3Form = GoogleCloudDialogflowCxV3Form
+  { -- | Parameters to collect from the user.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowCxV3FormParameter])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Form' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Form ::
+  GoogleCloudDialogflowCxV3Form
+newGoogleCloudDialogflowCxV3Form =
+  GoogleCloudDialogflowCxV3Form {parameters = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Form where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Form"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Form Core.<$> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Form where
+  toJSON GoogleCloudDialogflowCxV3Form {..} =
+    Core.object
+      (Core.catMaybes [("parameters" Core..=) Core.<$> parameters])
+
+-- | Represents a form parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FormParameter' smart constructor.
+data GoogleCloudDialogflowCxV3FormParameter = GoogleCloudDialogflowCxV3FormParameter
+  { -- | Hierarchical advanced settings for this parameter. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | The default value of an optional parameter. If the parameter is required, the default value will be ignored.
+    defaultValue :: (Core.Maybe Core.Value),
+    -- | Required. The human-readable name of the parameter, unique within the form.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Required. The entity type of the parameter. Format: @projects\/-\/locations\/-\/agents\/-\/entityTypes\/@ for system entity types (for example, @projects\/-\/locations\/-\/agents\/-\/entityTypes\/sys.date@), or @projects\/\/locations\/\/agents\/\/entityTypes\/@ for developer entity types.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. Defines fill behavior for the parameter.
+    fillBehavior :: (Core.Maybe GoogleCloudDialogflowCxV3FormParameterFillBehavior),
+    -- | Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.
+    redact :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.
+    required :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FormParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FormParameter ::
+  GoogleCloudDialogflowCxV3FormParameter
+newGoogleCloudDialogflowCxV3FormParameter =
+  GoogleCloudDialogflowCxV3FormParameter
+    { advancedSettings =
+        Core.Nothing,
+      defaultValue = Core.Nothing,
+      displayName = Core.Nothing,
+      entityType = Core.Nothing,
+      fillBehavior = Core.Nothing,
+      isList = Core.Nothing,
+      redact = Core.Nothing,
+      required = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3FormParameter where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FormParameter"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FormParameter
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "defaultValue")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "fillBehavior")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "redact")
+            Core.<*> (o Core..:? "required")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FormParameter where
+  toJSON GoogleCloudDialogflowCxV3FormParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("defaultValue" Core..=) Core.<$> defaultValue,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entityType" Core..=) Core.<$> entityType,
+            ("fillBehavior" Core..=) Core.<$> fillBehavior,
+            ("isList" Core..=) Core.<$> isList,
+            ("redact" Core..=) Core.<$> redact,
+            ("required" Core..=) Core.<$> required
+          ]
+      )
+
+-- | Configuration for how the filling of a parameter should be handled.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FormParameterFillBehavior' smart constructor.
+data GoogleCloudDialogflowCxV3FormParameterFillBehavior = GoogleCloudDialogflowCxV3FormParameterFillBehavior
+  { -- | Required. The fulfillment to provide the initial prompt that the agent can present to the user in order to fill the parameter.
+    initialPromptFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3Fulfillment),
+    -- | The handlers for parameter-level events, used to provide reprompt for the parameter or transition to a different page\/flow. The supported events are: * @sys.no-match-@, where N can be from 1 to 6 * @sys.no-match-default@ * @sys.no-input-@, where N can be from 1 to 6 * @sys.no-input-default@ * @sys.invalid-parameter@ @initial_prompt_fulfillment@ provides the first prompt for the parameter. If the user\'s response does not fill the parameter, a no-match\/no-input event will be triggered, and the fulfillment associated with the @sys.no-match-1@\/@sys.no-input-1@ handler (if defined) will be called to provide a prompt. The @sys.no-match-2@\/@sys.no-input-2@ handler (if defined) will respond to the next no-match\/no-input event, and so on. A @sys.no-match-default@ or @sys.no-input-default@ handler will be used to handle all following no-match\/no-input events after all numbered no-match\/no-input handlers for the parameter are consumed. A @sys.invalid-parameter@ handler can be defined to handle the case where the
+    -- parameter values have been @invalidated@ by webhook. For example, if the user\'s response fill the parameter, however the parameter was invalidated by webhook, the fulfillment associated with the @sys.invalid-parameter@ handler (if defined) will be called to provide a prompt. If the event handler for the corresponding event can\'t be found on the parameter, @initial_prompt_fulfillment@ will be re-prompted.
+    repromptEventHandlers :: (Core.Maybe [GoogleCloudDialogflowCxV3EventHandler])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FormParameterFillBehavior' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FormParameterFillBehavior ::
+  GoogleCloudDialogflowCxV3FormParameterFillBehavior
+newGoogleCloudDialogflowCxV3FormParameterFillBehavior =
+  GoogleCloudDialogflowCxV3FormParameterFillBehavior
+    { initialPromptFulfillment =
+        Core.Nothing,
+      repromptEventHandlers = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FormParameterFillBehavior
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FormParameterFillBehavior"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FormParameterFillBehavior
+            Core.<$> (o Core..:? "initialPromptFulfillment")
+            Core.<*> (o Core..:? "repromptEventHandlers")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FormParameterFillBehavior
+  where
+  toJSON GoogleCloudDialogflowCxV3FormParameterFillBehavior {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("initialPromptFulfillment" Core..=)
+              Core.<$> initialPromptFulfillment,
+            ("repromptEventHandlers" Core..=) Core.<$> repromptEventHandlers
+          ]
+      )
+
+-- | Request of FulfillIntent
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillIntentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3FulfillIntentRequest = GoogleCloudDialogflowCxV3FulfillIntentRequest
+  { -- | The matched intent\/event to fulfill.
+    match :: (Core.Maybe GoogleCloudDialogflowCxV3Match),
+    -- | Must be same as the corresponding MatchIntent request, otherwise the behavior is undefined.
+    matchIntentRequest :: (Core.Maybe GoogleCloudDialogflowCxV3MatchIntentRequest),
+    -- | Instructs the speech synthesizer how to generate output audio.
+    outputAudioConfig :: (Core.Maybe GoogleCloudDialogflowCxV3OutputAudioConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillIntentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillIntentRequest ::
+  GoogleCloudDialogflowCxV3FulfillIntentRequest
+newGoogleCloudDialogflowCxV3FulfillIntentRequest =
+  GoogleCloudDialogflowCxV3FulfillIntentRequest
+    { match =
+        Core.Nothing,
+      matchIntentRequest = Core.Nothing,
+      outputAudioConfig = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillIntentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillIntentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillIntentRequest
+            Core.<$> (o Core..:? "match")
+            Core.<*> (o Core..:? "matchIntentRequest")
+            Core.<*> (o Core..:? "outputAudioConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FulfillIntentRequest where
+  toJSON GoogleCloudDialogflowCxV3FulfillIntentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("match" Core..=) Core.<$> match,
+            ("matchIntentRequest" Core..=) Core.<$> matchIntentRequest,
+            ("outputAudioConfig" Core..=) Core.<$> outputAudioConfig
+          ]
+      )
+
+-- | Response of FulfillIntent
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillIntentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3FulfillIntentResponse = GoogleCloudDialogflowCxV3FulfillIntentResponse
+  { -- | The audio data bytes encoded as specified in the request. Note: The output audio is generated based on the values of default platform text responses found in the @query_result.response_messages@ field. If multiple default text responses exist, they will be concatenated when generating audio. If no default platform text responses exist, the generated audio content will be empty. In some scenarios, multiple output audio fields may be present in the response structure. In these cases, only the top-most-level audio output has content.
+    outputAudio :: (Core.Maybe Core.Base64),
+    -- | The config used by the speech synthesizer to generate the output audio.
+    outputAudioConfig :: (Core.Maybe GoogleCloudDialogflowCxV3OutputAudioConfig),
+    -- | The result of the conversational query.
+    queryResult :: (Core.Maybe GoogleCloudDialogflowCxV3QueryResult),
+    -- | Output only. The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.
+    responseId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillIntentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillIntentResponse ::
+  GoogleCloudDialogflowCxV3FulfillIntentResponse
+newGoogleCloudDialogflowCxV3FulfillIntentResponse =
+  GoogleCloudDialogflowCxV3FulfillIntentResponse
+    { outputAudio =
+        Core.Nothing,
+      outputAudioConfig = Core.Nothing,
+      queryResult = Core.Nothing,
+      responseId = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillIntentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillIntentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillIntentResponse
+            Core.<$> (o Core..:? "outputAudio")
+            Core.<*> (o Core..:? "outputAudioConfig")
+            Core.<*> (o Core..:? "queryResult")
+            Core.<*> (o Core..:? "responseId")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3FulfillIntentResponse where
+  toJSON GoogleCloudDialogflowCxV3FulfillIntentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("outputAudio" Core..=) Core.<$> outputAudio,
+            ("outputAudioConfig" Core..=) Core.<$> outputAudioConfig,
+            ("queryResult" Core..=) Core.<$> queryResult,
+            ("responseId" Core..=) Core.<$> responseId
+          ]
+      )
+
+-- | A fulfillment can do one or more of the following actions at the same time: * Generate rich message responses. * Set parameter values. * Call the webhook. Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page\'s entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Fulfillment' smart constructor.
+data GoogleCloudDialogflowCxV3Fulfillment = GoogleCloudDialogflowCxV3Fulfillment
+  { -- | Hierarchical advanced settings for this fulfillment. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | Conditional cases for this fulfillment.
+    conditionalCases :: (Core.Maybe [GoogleCloudDialogflowCxV3FulfillmentConditionalCases]),
+    -- | If the flag is true, the agent will utilize LLM to generate a text response. If LLM generation fails, the defined responses in the fulfillment will be respected. This flag is only useful for fulfillments associated with no-match event handlers.
+    enableGenerativeFallback :: (Core.Maybe Core.Bool),
+    -- | The list of rich message responses to present to the user.
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3ResponseMessage]),
+    -- | Whether Dialogflow should return currently queued fulfillment response messages in streaming APIs. If a webhook is specified, it happens before Dialogflow invokes webhook. Warning: 1) This flag only affects streaming API. Responses are still queued and returned once in non-streaming API. 2) The flag can be enabled in any fulfillment but only the first 3 partial responses will be returned. You may only want to apply it to fulfillments that have slow webhooks.
+    returnPartialResponses :: (Core.Maybe Core.Bool),
+    -- | Set parameter values before executing the webhook.
+    setParameterActions ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3FulfillmentSetParameterAction]
+      ),
+    -- | The value of this field will be populated in the WebhookRequest @fulfillmentInfo.tag@ field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes. This field is required if @webhook@ is specified.
+    tag :: (Core.Maybe Core.Text),
+    -- | The webhook to call. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    webhook :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Fulfillment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Fulfillment ::
+  GoogleCloudDialogflowCxV3Fulfillment
+newGoogleCloudDialogflowCxV3Fulfillment =
+  GoogleCloudDialogflowCxV3Fulfillment
+    { advancedSettings =
+        Core.Nothing,
+      conditionalCases = Core.Nothing,
+      enableGenerativeFallback = Core.Nothing,
+      messages = Core.Nothing,
+      returnPartialResponses = Core.Nothing,
+      setParameterActions = Core.Nothing,
+      tag = Core.Nothing,
+      webhook = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Fulfillment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Fulfillment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Fulfillment
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "conditionalCases")
+            Core.<*> (o Core..:? "enableGenerativeFallback")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "returnPartialResponses")
+            Core.<*> (o Core..:? "setParameterActions")
+            Core.<*> (o Core..:? "tag")
+            Core.<*> (o Core..:? "webhook")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Fulfillment where
+  toJSON GoogleCloudDialogflowCxV3Fulfillment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("conditionalCases" Core..=) Core.<$> conditionalCases,
+            ("enableGenerativeFallback" Core..=)
+              Core.<$> enableGenerativeFallback,
+            ("messages" Core..=) Core.<$> messages,
+            ("returnPartialResponses" Core..=) Core.<$> returnPartialResponses,
+            ("setParameterActions" Core..=) Core.<$> setParameterActions,
+            ("tag" Core..=) Core.<$> tag,
+            ("webhook" Core..=) Core.<$> webhook
+          ]
+      )
+
+-- | A list of cascading if-else conditions. Cases are mutually exclusive. The first one with a matching condition is selected, all the rest ignored.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillmentConditionalCases' smart constructor.
+newtype GoogleCloudDialogflowCxV3FulfillmentConditionalCases = GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+  { -- | A list of cascading if-else conditions.
+    cases ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillmentConditionalCases' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCases ::
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCases =
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+    { cases =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillmentConditionalCases"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+            Core.<$> (o Core..:? "cases")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+  where
+  toJSON GoogleCloudDialogflowCxV3FulfillmentConditionalCases {..} =
+    Core.object (Core.catMaybes [("cases" Core..=) Core.<$> cases])
+
+-- | Each case has a Boolean condition. When it is evaluated to be True, the corresponding messages will be selected and evaluated recursively.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase' smart constructor.
+data GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase = GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+  { -- | A list of case content.
+    caseContent ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent]
+      ),
+    -- | The condition to activate and select this case. Empty means the condition is always true. The condition is evaluated against form parameters or session parameters. See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>.
+    condition :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase ::
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase =
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+    { caseContent =
+        Core.Nothing,
+      condition = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+            Core.<$> (o Core..:? "caseContent")
+            Core.<*> (o Core..:? "condition")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+  where
+  toJSON GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("caseContent" Core..=) Core.<$> caseContent,
+            ("condition" Core..=) Core.<$> condition
+          ]
+      )
+
+-- | The list of messages or conditional cases to activate for this case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent' smart constructor.
+data GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent = GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+  { -- | Additional cases to be evaluated.
+    additionalCases :: (Core.Maybe GoogleCloudDialogflowCxV3FulfillmentConditionalCases),
+    -- | Returned message.
+    message :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessage)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent ::
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent =
+  GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+    { additionalCases =
+        Core.Nothing,
+      message = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+            Core.<$> (o Core..:? "additionalCases")
+            Core.<*> (o Core..:? "message")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("additionalCases" Core..=) Core.<$> additionalCases,
+              ("message" Core..=) Core.<$> message
+            ]
+        )
+
+-- | Setting a parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction' smart constructor.
+data GoogleCloudDialogflowCxV3FulfillmentSetParameterAction = GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+  { -- | Display name of the parameter.
+    parameter :: (Core.Maybe Core.Text),
+    -- | The new value of the parameter. A null value clears the parameter.
+    value :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3FulfillmentSetParameterAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction ::
+  GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction =
+  GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+    { parameter =
+        Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3FulfillmentSetParameterAction"
+      ( \o ->
+          GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+            Core.<$> (o Core..:? "parameter")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+  where
+  toJSON GoogleCloudDialogflowCxV3FulfillmentSetParameterAction {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("parameter" Core..=) Core.<$> parameter,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Google Cloud Storage location for a Dialogflow operation that writes or exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GcsDestination' smart constructor.
+newtype GoogleCloudDialogflowCxV3GcsDestination = GoogleCloudDialogflowCxV3GcsDestination
+  { -- | Required. The Google Cloud Storage URI for the exported objects. A URI is of the form: @gs:\/\/bucket\/object-name-or-prefix@ Whether a full object name, or just a prefix, its usage depends on the Dialogflow operation.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GcsDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GcsDestination ::
+  GoogleCloudDialogflowCxV3GcsDestination
+newGoogleCloudDialogflowCxV3GcsDestination =
+  GoogleCloudDialogflowCxV3GcsDestination {uri = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3GcsDestination where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GcsDestination"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GcsDestination
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3GcsDestination where
+  toJSON GoogleCloudDialogflowCxV3GcsDestination {..} =
+    Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Settings for Generative AI.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GenerativeSettings' smart constructor.
+data GoogleCloudDialogflowCxV3GenerativeSettings = GoogleCloudDialogflowCxV3GenerativeSettings
+  { -- | Settings for Generative Fallback.
+    fallbackSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+      ),
+    -- | Settings for Generative Safety.
+    generativeSafetySettings :: (Core.Maybe GoogleCloudDialogflowCxV3SafetySettings),
+    -- | Settings for knowledge connector.
+    knowledgeConnectorSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+      ),
+    -- | Language for this settings.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Format: @projects\/\/locations\/\/agents\/\/generativeSettings@.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GenerativeSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GenerativeSettings ::
+  GoogleCloudDialogflowCxV3GenerativeSettings
+newGoogleCloudDialogflowCxV3GenerativeSettings =
+  GoogleCloudDialogflowCxV3GenerativeSettings
+    { fallbackSettings =
+        Core.Nothing,
+      generativeSafetySettings = Core.Nothing,
+      knowledgeConnectorSettings = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3GenerativeSettings where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GenerativeSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GenerativeSettings
+            Core.<$> (o Core..:? "fallbackSettings")
+            Core.<*> (o Core..:? "generativeSafetySettings")
+            Core.<*> (o Core..:? "knowledgeConnectorSettings")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3GenerativeSettings where
+  toJSON GoogleCloudDialogflowCxV3GenerativeSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("fallbackSettings" Core..=) Core.<$> fallbackSettings,
+            ("generativeSafetySettings" Core..=)
+              Core.<$> generativeSafetySettings,
+            ("knowledgeConnectorSettings" Core..=)
+              Core.<$> knowledgeConnectorSettings,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Settings for Generative Fallback.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings' smart constructor.
+data GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings = GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+  { -- | Stored prompts that can be selected, for example default templates like \"conservative\" or \"chatty\", or user defined ones.
+    promptTemplates ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate]
+      ),
+    -- | Display name of the selected prompt.
+    selectedPrompt :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings ::
+  GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings =
+  GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+    { promptTemplates =
+        Core.Nothing,
+      selectedPrompt = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+            Core.<$> (o Core..:? "promptTemplates")
+            Core.<*> (o Core..:? "selectedPrompt")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("promptTemplates" Core..=) Core.<$> promptTemplates,
+              ("selectedPrompt" Core..=) Core.<$> selectedPrompt
+            ]
+        )
+
+-- | Prompt template.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate' smart constructor.
+data GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate = GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+  { -- | Prompt name.
+    displayName :: (Core.Maybe Core.Text),
+    -- | If the flag is true, the prompt is frozen and cannot be modified by users.
+    frozen :: (Core.Maybe Core.Bool),
+    -- | Prompt text that is sent to a LLM on no-match default, placeholders are filled downstream. For example: \"Here is a conversation $conversation, a response is: \"
+    promptText :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate ::
+  GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate =
+  GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+    { displayName =
+        Core.Nothing,
+      frozen = Core.Nothing,
+      promptText =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "frozen")
+            Core.<*> (o Core..:? "promptText")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("displayName" Core..=) Core.<$> displayName,
+              ("frozen" Core..=) Core.<$> frozen,
+              ("promptText" Core..=) Core.<$> promptText
+            ]
+        )
+
+-- | Settings for knowledge connector. These parameters are used for LLM prompt like \"You are . You are a helpful and verbose at , . Your task is to help humans on \".
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings' smart constructor.
+data GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings = GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+  { -- | Name of the virtual agent. Used for LLM prompt. Can be left empty.
+    agent :: (Core.Maybe Core.Text),
+    -- | Identity of the agent, e.g. \"virtual agent\", \"AI assistant\".
+    agentIdentity :: (Core.Maybe Core.Text),
+    -- | Agent scope, e.g. \"Example company website\", \"internal Example company website for employees\", \"manual of car owner\".
+    agentScope :: (Core.Maybe Core.Text),
+    -- | Name of the company, organization or other entity that the agent represents. Used for knowledge connector LLM prompt and for knowledge search.
+    business :: (Core.Maybe Core.Text),
+    -- | Company description, used for LLM prompt, e.g. \"a family company selling freshly roasted coffee beans\".
+    businessDescription :: (Core.Maybe Core.Text),
+    -- | Whether to disable fallback to Data Store search results (in case the LLM couldn\'t pick a proper answer). Per default the feature is enabled.
+    disableDataStoreFallback :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings ::
+  GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings =
+  GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+    { agent =
+        Core.Nothing,
+      agentIdentity =
+        Core.Nothing,
+      agentScope = Core.Nothing,
+      business = Core.Nothing,
+      businessDescription =
+        Core.Nothing,
+      disableDataStoreFallback =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+            Core.<$> (o Core..:? "agent")
+            Core.<*> (o Core..:? "agentIdentity")
+            Core.<*> (o Core..:? "agentScope")
+            Core.<*> (o Core..:? "business")
+            Core.<*> (o Core..:? "businessDescription")
+            Core.<*> (o Core..:? "disableDataStoreFallback")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("agent" Core..=) Core.<$> agent,
+              ("agentIdentity" Core..=) Core.<$> agentIdentity,
+              ("agentScope" Core..=) Core.<$> agentScope,
+              ("business" Core..=) Core.<$> business,
+              ("businessDescription" Core..=) Core.<$> businessDescription,
+              ("disableDataStoreFallback" Core..=)
+                Core.<$> disableDataStoreFallback
+            ]
+        )
+
+-- | Generators contain prompt to be sent to the LLM model to generate text. The prompt can contain parameters which will be resolved before calling the model. It can optionally contain banned phrases to ensure the model responses are safe.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Generator' smart constructor.
+data GoogleCloudDialogflowCxV3Generator = GoogleCloudDialogflowCxV3Generator
+  { -- | Required. The human-readable name of the generator, unique within the agent. The prompt contains pre-defined parameters such as $conversation, $last-user-utterance, etc. populated by Dialogflow. It can also contain custom placeholders which will be resolved during fulfillment.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Parameters passed to the LLM to configure its behavior.
+    modelParameter :: (Core.Maybe GoogleCloudDialogflowCxV3GeneratorModelParameter),
+    -- | The unique identifier of the generator. Must be set for the Generators.UpdateGenerator method. Generators.CreateGenerate populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/generators\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. List of custom placeholders in the prompt text.
+    placeholders :: (Core.Maybe [GoogleCloudDialogflowCxV3GeneratorPlaceholder]),
+    -- | Required. Prompt for the LLM model.
+    promptText :: (Core.Maybe GoogleCloudDialogflowCxV3Phrase)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Generator' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Generator ::
+  GoogleCloudDialogflowCxV3Generator
+newGoogleCloudDialogflowCxV3Generator =
+  GoogleCloudDialogflowCxV3Generator
+    { displayName = Core.Nothing,
+      modelParameter = Core.Nothing,
+      name = Core.Nothing,
+      placeholders = Core.Nothing,
+      promptText = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Generator where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Generator"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Generator
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "modelParameter")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "placeholders")
+            Core.<*> (o Core..:? "promptText")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Generator where
+  toJSON GoogleCloudDialogflowCxV3Generator {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("modelParameter" Core..=) Core.<$> modelParameter,
+            ("name" Core..=) Core.<$> name,
+            ("placeholders" Core..=) Core.<$> placeholders,
+            ("promptText" Core..=) Core.<$> promptText
+          ]
+      )
+
+-- | Parameters to be passed to the LLM. If not set, default values will be used.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GeneratorModelParameter' smart constructor.
+data GoogleCloudDialogflowCxV3GeneratorModelParameter = GoogleCloudDialogflowCxV3GeneratorModelParameter
+  { -- | The maximum number of tokens to generate.
+    maxDecodeSteps :: (Core.Maybe Core.Int32),
+    -- | The temperature used for sampling. Temperature sampling occurs after both topP and topK have been applied. Valid range: [0.0, 1.0] Low temperature = less random. High temperature = more random.
+    temperature :: (Core.Maybe Core.Double),
+    -- | If set, the sampling process in each step is limited to the top_k tokens with highest probabilities. Valid range: [1, 40] or 1000+. Small topK = less random. Large topK = more random.
+    topK :: (Core.Maybe Core.Int32),
+    -- | If set, only the tokens comprising the top top/p probability mass are considered. If both top/p and top/k are set, top/p will be used for further refining candidates selected with top_k. Valid range: (0.0, 1.0]. Small topP = less random. Large topP = more random.
+    topP :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GeneratorModelParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GeneratorModelParameter ::
+  GoogleCloudDialogflowCxV3GeneratorModelParameter
+newGoogleCloudDialogflowCxV3GeneratorModelParameter =
+  GoogleCloudDialogflowCxV3GeneratorModelParameter
+    { maxDecodeSteps =
+        Core.Nothing,
+      temperature = Core.Nothing,
+      topK = Core.Nothing,
+      topP = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3GeneratorModelParameter
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GeneratorModelParameter"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GeneratorModelParameter
+            Core.<$> (o Core..:? "maxDecodeSteps")
+            Core.<*> (o Core..:? "temperature")
+            Core.<*> (o Core..:? "topK")
+            Core.<*> (o Core..:? "topP")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3GeneratorModelParameter
+  where
+  toJSON GoogleCloudDialogflowCxV3GeneratorModelParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("maxDecodeSteps" Core..=) Core.<$> maxDecodeSteps,
+            ("temperature" Core..=) Core.<$> temperature,
+            ("topK" Core..=) Core.<$> topK,
+            ("topP" Core..=) Core.<$> topP
+          ]
+      )
+
+-- | Represents a custom placeholder in the prompt text.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3GeneratorPlaceholder' smart constructor.
+data GoogleCloudDialogflowCxV3GeneratorPlaceholder = GoogleCloudDialogflowCxV3GeneratorPlaceholder
+  { -- | Unique ID used to map custom placeholder to parameters in fulfillment.
+    id :: (Core.Maybe Core.Text),
+    -- | Custom placeholder value in the prompt text.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3GeneratorPlaceholder' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3GeneratorPlaceholder ::
+  GoogleCloudDialogflowCxV3GeneratorPlaceholder
+newGoogleCloudDialogflowCxV3GeneratorPlaceholder =
+  GoogleCloudDialogflowCxV3GeneratorPlaceholder
+    { id = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3GeneratorPlaceholder
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3GeneratorPlaceholder"
+      ( \o ->
+          GoogleCloudDialogflowCxV3GeneratorPlaceholder
+            Core.<$> (o Core..:? "id")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3GeneratorPlaceholder where
+  toJSON GoogleCloudDialogflowCxV3GeneratorPlaceholder {..} =
+    Core.object
+      ( Core.catMaybes
+          [("id" Core..=) Core.<$> id, ("name" Core..=) Core.<$> name]
+      )
+
+-- | Metadata returned for the EntityTypes.ImportEntityTypes long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3ImportEntityTypesMetadata = GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportEntityTypesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata ::
+  GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata =
+  GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportEntityTypesMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for EntityTypes.ImportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportEntityTypesRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ImportEntityTypesRequest = GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+  { -- | Uncompressed byte content of entity types.
+    entityTypesContent :: (Core.Maybe GoogleCloudDialogflowCxV3InlineSource),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to import entity types from. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a read operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have read permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    entityTypesUri :: (Core.Maybe Core.Text),
+    -- | Required. Merge option for importing entity types.
+    mergeOption ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+      ),
+    -- | Optional. The target entity type to import into. Format: @projects\/\/locations\/\/agents\/\/entity_types\/@. If set, there should be only one entity type included in entity_types, of which the type should match the type of the target entity type. All entities in the imported entity type will be added to the target entity type.
+    targetEntityType :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportEntityTypesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportEntityTypesRequest ::
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+newGoogleCloudDialogflowCxV3ImportEntityTypesRequest =
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+    { entityTypesContent =
+        Core.Nothing,
+      entityTypesUri = Core.Nothing,
+      mergeOption = Core.Nothing,
+      targetEntityType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportEntityTypesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+            Core.<$> (o Core..:? "entityTypesContent")
+            Core.<*> (o Core..:? "entityTypesUri")
+            Core.<*> (o Core..:? "mergeOption")
+            Core.<*> (o Core..:? "targetEntityType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3ImportEntityTypesRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityTypesContent" Core..=) Core.<$> entityTypesContent,
+            ("entityTypesUri" Core..=) Core.<$> entityTypesUri,
+            ("mergeOption" Core..=) Core.<$> mergeOption,
+            ("targetEntityType" Core..=) Core.<$> targetEntityType
+          ]
+      )
+
+-- | The response message for EntityTypes.ImportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ImportEntityTypesResponse = GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+  { -- | Info which resources have conflicts when REPORT/CONFLICT merge/option is set in ImportEntityTypesRequest.
+    conflictingResources ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+      ),
+    -- | The unique identifier of the imported entity types. Format: @projects\/\/locations\/\/agents\/\/entity_types\/@.
+    entityTypes :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+newGoogleCloudDialogflowCxV3ImportEntityTypesResponse =
+  GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+    { conflictingResources =
+        Core.Nothing,
+      entityTypes = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+            Core.<$> (o Core..:? "conflictingResources")
+            Core.<*> (o Core..:? "entityTypes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ImportEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conflictingResources" Core..=) Core.<$> conflictingResources,
+            ("entityTypes" Core..=) Core.<$> entityTypes
+          ]
+      )
+
+-- | Conflicting resources detected during the import process. Only filled when REPORT_CONFLICT is set in the request and there are conflicts in the display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources' smart constructor.
+data GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources = GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+  { -- | Display names of conflicting entities.
+    entityDisplayNames :: (Core.Maybe [Core.Text]),
+    -- | Display names of conflicting entity types.
+    entityTypeDisplayNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources ::
+  GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources =
+  GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+    { entityDisplayNames =
+        Core.Nothing,
+      entityTypeDisplayNames =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+            Core.<$> (o Core..:? "entityDisplayNames")
+            Core.<*> (o Core..:? "entityTypeDisplayNames")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("entityDisplayNames" Core..=) Core.<$> entityDisplayNames,
+              ("entityTypeDisplayNames" Core..=)
+                Core.<$> entityTypeDisplayNames
+            ]
+        )
+
+-- | The request message for Flows.ImportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportFlowRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ImportFlowRequest = GoogleCloudDialogflowCxV3ImportFlowRequest
+  { -- | Uncompressed raw byte content for flow.
+    flowContent :: (Core.Maybe Core.Base64),
+    -- | Optional. Specifies the import strategy used when resolving resource conflicts.
+    flowImportStrategy :: (Core.Maybe GoogleCloudDialogflowCxV3FlowImportStrategy),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to import flow from. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a read operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have read permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    flowUri :: (Core.Maybe Core.Text),
+    -- | Flow import mode. If not specified, @KEEP@ is assumed.
+    importOption ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportFlowRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportFlowRequest ::
+  GoogleCloudDialogflowCxV3ImportFlowRequest
+newGoogleCloudDialogflowCxV3ImportFlowRequest =
+  GoogleCloudDialogflowCxV3ImportFlowRequest
+    { flowContent =
+        Core.Nothing,
+      flowImportStrategy = Core.Nothing,
+      flowUri = Core.Nothing,
+      importOption = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ImportFlowRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportFlowRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportFlowRequest
+            Core.<$> (o Core..:? "flowContent")
+            Core.<*> (o Core..:? "flowImportStrategy")
+            Core.<*> (o Core..:? "flowUri")
+            Core.<*> (o Core..:? "importOption")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ImportFlowRequest where
+  toJSON GoogleCloudDialogflowCxV3ImportFlowRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flowContent" Core..=) Core.<$> flowContent,
+            ("flowImportStrategy" Core..=) Core.<$> flowImportStrategy,
+            ("flowUri" Core..=) Core.<$> flowUri,
+            ("importOption" Core..=) Core.<$> importOption
+          ]
+      )
+
+-- | The response message for Flows.ImportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportFlowResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3ImportFlowResponse = GoogleCloudDialogflowCxV3ImportFlowResponse
+  { -- | The unique identifier of the new flow. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    flow :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportFlowResponse ::
+  GoogleCloudDialogflowCxV3ImportFlowResponse
+newGoogleCloudDialogflowCxV3ImportFlowResponse =
+  GoogleCloudDialogflowCxV3ImportFlowResponse {flow = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ImportFlowResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportFlowResponse
+            Core.<$> (o Core..:? "flow")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ImportFlowResponse where
+  toJSON GoogleCloudDialogflowCxV3ImportFlowResponse {..} =
+    Core.object (Core.catMaybes [("flow" Core..=) Core.<$> flow])
+
+-- | Metadata returned for the Intents.ImportIntents long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportIntentsMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3ImportIntentsMetadata = GoogleCloudDialogflowCxV3ImportIntentsMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportIntentsMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportIntentsMetadata ::
+  GoogleCloudDialogflowCxV3ImportIntentsMetadata
+newGoogleCloudDialogflowCxV3ImportIntentsMetadata =
+  GoogleCloudDialogflowCxV3ImportIntentsMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportIntentsMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportIntentsMetadata"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3ImportIntentsMetadata)
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ImportIntentsMetadata where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for Intents.ImportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportIntentsRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ImportIntentsRequest = GoogleCloudDialogflowCxV3ImportIntentsRequest
+  { -- | Uncompressed byte content of intents.
+    intentsContent :: (Core.Maybe GoogleCloudDialogflowCxV3InlineSource),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to import intents from. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a read operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have read permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    intentsUri :: (Core.Maybe Core.Text),
+    -- | Merge option for importing intents. If not specified, @REJECT@ is assumed.
+    mergeOption ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportIntentsRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportIntentsRequest ::
+  GoogleCloudDialogflowCxV3ImportIntentsRequest
+newGoogleCloudDialogflowCxV3ImportIntentsRequest =
+  GoogleCloudDialogflowCxV3ImportIntentsRequest
+    { intentsContent =
+        Core.Nothing,
+      intentsUri = Core.Nothing,
+      mergeOption = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportIntentsRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportIntentsRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportIntentsRequest
+            Core.<$> (o Core..:? "intentsContent")
+            Core.<*> (o Core..:? "intentsUri")
+            Core.<*> (o Core..:? "mergeOption")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ImportIntentsRequest where
+  toJSON GoogleCloudDialogflowCxV3ImportIntentsRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("intentsContent" Core..=) Core.<$> intentsContent,
+            ("intentsUri" Core..=) Core.<$> intentsUri,
+            ("mergeOption" Core..=) Core.<$> mergeOption
+          ]
+      )
+
+-- | The response message for Intents.ImportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportIntentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ImportIntentsResponse = GoogleCloudDialogflowCxV3ImportIntentsResponse
+  { -- | Info which resources have conflicts when REPORT/CONFLICT merge/option is set in ImportIntentsRequest.
+    conflictingResources ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+      ),
+    -- | The unique identifier of the imported intents. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    intents :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportIntentsResponse ::
+  GoogleCloudDialogflowCxV3ImportIntentsResponse
+newGoogleCloudDialogflowCxV3ImportIntentsResponse =
+  GoogleCloudDialogflowCxV3ImportIntentsResponse
+    { conflictingResources =
+        Core.Nothing,
+      intents = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportIntentsResponse
+            Core.<$> (o Core..:? "conflictingResources")
+            Core.<*> (o Core..:? "intents")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ImportIntentsResponse where
+  toJSON GoogleCloudDialogflowCxV3ImportIntentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conflictingResources" Core..=) Core.<$> conflictingResources,
+            ("intents" Core..=) Core.<$> intents
+          ]
+      )
+
+-- | Conflicting resources detected during the import process. Only filled when REPORT_CONFLICT is set in the request and there are conflicts in the display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources' smart constructor.
+data GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources = GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+  { -- | Display names of conflicting entities.
+    entityDisplayNames :: (Core.Maybe [Core.Text]),
+    -- | Display names of conflicting intents.
+    intentDisplayNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources ::
+  GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources =
+  GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+    { entityDisplayNames =
+        Core.Nothing,
+      intentDisplayNames =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+            Core.<$> (o Core..:? "entityDisplayNames")
+            Core.<*> (o Core..:? "intentDisplayNames")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("entityDisplayNames" Core..=) Core.<$> entityDisplayNames,
+              ("intentDisplayNames" Core..=) Core.<$> intentDisplayNames
+            ]
+        )
+
+-- | Metadata returned for the TestCases.ImportTestCases long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportTestCasesMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3ImportTestCasesMetadata = GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+  { -- | Errors for failed test cases.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3TestCaseError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+newGoogleCloudDialogflowCxV3ImportTestCasesMetadata =
+  GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportTestCasesMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3ImportTestCasesMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The request message for TestCases.ImportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportTestCasesRequest' smart constructor.
+data GoogleCloudDialogflowCxV3ImportTestCasesRequest = GoogleCloudDialogflowCxV3ImportTestCasesRequest
+  { -- | Uncompressed raw byte content for test cases.
+    content :: (Core.Maybe Core.Base64),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to import test cases from. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a read operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have read permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    gcsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportTestCasesRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportTestCasesRequest ::
+  GoogleCloudDialogflowCxV3ImportTestCasesRequest
+newGoogleCloudDialogflowCxV3ImportTestCasesRequest =
+  GoogleCloudDialogflowCxV3ImportTestCasesRequest
+    { content =
+        Core.Nothing,
+      gcsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportTestCasesRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportTestCasesRequest
+            Core.<$> (o Core..:? "content")
+            Core.<*> (o Core..:? "gcsUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3ImportTestCasesRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("content" Core..=) Core.<$> content,
+            ("gcsUri" Core..=) Core.<$> gcsUri
+          ]
+      )
+
+-- | The response message for TestCases.ImportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ImportTestCasesResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3ImportTestCasesResponse = GoogleCloudDialogflowCxV3ImportTestCasesResponse
+  { -- | The unique identifiers of the new test cases. Format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    names :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ImportTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ImportTestCasesResponse ::
+  GoogleCloudDialogflowCxV3ImportTestCasesResponse
+newGoogleCloudDialogflowCxV3ImportTestCasesResponse =
+  GoogleCloudDialogflowCxV3ImportTestCasesResponse
+    { names =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ImportTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ImportTestCasesResponse
+            Core.<$> (o Core..:? "names")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ImportTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ImportTestCasesResponse {..} =
+    Core.object (Core.catMaybes [("names" Core..=) Core.<$> names])
+
+-- | Inline destination for a Dialogflow operation that writes or exports objects (e.g. intents) outside of Dialogflow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3InlineDestination' smart constructor.
+newtype GoogleCloudDialogflowCxV3InlineDestination = GoogleCloudDialogflowCxV3InlineDestination
+  { -- | Output only. The uncompressed byte content for the objects. Only populated in responses.
+    content :: (Core.Maybe Core.Base64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3InlineDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3InlineDestination ::
+  GoogleCloudDialogflowCxV3InlineDestination
+newGoogleCloudDialogflowCxV3InlineDestination =
+  GoogleCloudDialogflowCxV3InlineDestination
+    { content =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3InlineDestination where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3InlineDestination"
+      ( \o ->
+          GoogleCloudDialogflowCxV3InlineDestination
+            Core.<$> (o Core..:? "content")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3InlineDestination where
+  toJSON GoogleCloudDialogflowCxV3InlineDestination {..} =
+    Core.object
+      (Core.catMaybes [("content" Core..=) Core.<$> content])
+
+-- | Inline source for a Dialogflow operation that reads or imports objects (e.g. intents) into Dialogflow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3InlineSource' smart constructor.
+newtype GoogleCloudDialogflowCxV3InlineSource = GoogleCloudDialogflowCxV3InlineSource
+  { -- | The uncompressed byte content for the objects.
+    content :: (Core.Maybe Core.Base64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3InlineSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3InlineSource ::
+  GoogleCloudDialogflowCxV3InlineSource
+newGoogleCloudDialogflowCxV3InlineSource =
+  GoogleCloudDialogflowCxV3InlineSource {content = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3InlineSource where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3InlineSource"
+      ( \o ->
+          GoogleCloudDialogflowCxV3InlineSource
+            Core.<$> (o Core..:? "content")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3InlineSource where
+  toJSON GoogleCloudDialogflowCxV3InlineSource {..} =
+    Core.object
+      (Core.catMaybes [("content" Core..=) Core.<$> content])
+
+-- | Instructs the speech recognizer on how to process the audio content.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3InputAudioConfig' smart constructor.
+data GoogleCloudDialogflowCxV3InputAudioConfig = GoogleCloudDialogflowCxV3InputAudioConfig
+  { -- | Required. Audio encoding of the audio content to process.
+    audioEncoding ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+      ),
+    -- | Configuration of barge-in behavior during the streaming of input audio.
+    bargeInConfig :: (Core.Maybe GoogleCloudDialogflowCxV3BargeInConfig),
+    -- | Optional. If @true@, Dialogflow returns SpeechWordInfo in StreamingRecognitionResult with information about the recognized speech words, e.g. start and end time offsets. If false or unspecified, Speech doesn\'t return any word-level information.
+    enableWordInfo :: (Core.Maybe Core.Bool),
+    -- | Optional. Which Speech model to select for the given request. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+    model :: (Core.Maybe Core.Text),
+    -- | Optional. Which variant of the Speech model to use.
+    modelVariant :: (Core.Maybe GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant),
+    -- | If @true@, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to <https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration Dialogflow CX Speech model migration>.
+    optOutConformerModelMigration :: (Core.Maybe Core.Bool),
+    -- | Optional. A list of strings containing words and phrases that the speech recognizer should recognize with higher likelihood. See <https://cloud.google.com/speech-to-text/docs/basics#phrase-hints the Cloud Speech documentation> for more details.
+    phraseHints :: (Core.Maybe [Core.Text]),
+    -- | Sample rate (in Hertz) of the audio content sent in the query. Refer to <https://cloud.google.com/speech-to-text/docs/basics Cloud Speech API documentation> for more details.
+    sampleRateHertz :: (Core.Maybe Core.Int32),
+    -- | Optional. If @false@ (default), recognition does not cease until the client closes the stream. If @true@, the recognizer will detect a single spoken utterance in input audio. Recognition ceases when it detects the audio\'s voice has stopped or paused. In this case, once a detected intent is received, the client should close the stream and start a new request with a new stream as needed. Note: This setting is relevant only for streaming methods.
+    singleUtterance :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3InputAudioConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3InputAudioConfig ::
+  GoogleCloudDialogflowCxV3InputAudioConfig
+newGoogleCloudDialogflowCxV3InputAudioConfig =
+  GoogleCloudDialogflowCxV3InputAudioConfig
+    { audioEncoding =
+        Core.Nothing,
+      bargeInConfig = Core.Nothing,
+      enableWordInfo = Core.Nothing,
+      model = Core.Nothing,
+      modelVariant = Core.Nothing,
+      optOutConformerModelMigration = Core.Nothing,
+      phraseHints = Core.Nothing,
+      sampleRateHertz = Core.Nothing,
+      singleUtterance = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3InputAudioConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3InputAudioConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3InputAudioConfig
+            Core.<$> (o Core..:? "audioEncoding")
+            Core.<*> (o Core..:? "bargeInConfig")
+            Core.<*> (o Core..:? "enableWordInfo")
+            Core.<*> (o Core..:? "model")
+            Core.<*> (o Core..:? "modelVariant")
+            Core.<*> (o Core..:? "optOutConformerModelMigration")
+            Core.<*> (o Core..:? "phraseHints")
+            Core.<*> (o Core..:? "sampleRateHertz")
+            Core.<*> (o Core..:? "singleUtterance")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3InputAudioConfig where
+  toJSON GoogleCloudDialogflowCxV3InputAudioConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioEncoding" Core..=) Core.<$> audioEncoding,
+            ("bargeInConfig" Core..=) Core.<$> bargeInConfig,
+            ("enableWordInfo" Core..=) Core.<$> enableWordInfo,
+            ("model" Core..=) Core.<$> model,
+            ("modelVariant" Core..=) Core.<$> modelVariant,
+            ("optOutConformerModelMigration" Core..=)
+              Core.<$> optOutConformerModelMigration,
+            ("phraseHints" Core..=) Core.<$> phraseHints,
+            ("sampleRateHertz" Core..=) Core.<$> sampleRateHertz,
+            ("singleUtterance" Core..=) Core.<$> singleUtterance
+          ]
+      )
+
+-- | An intent represents a user\'s intent to interact with a conversational agent. You can provide information for the Dialogflow API to use to match user input to an intent by adding training phrases (i.e., examples of user input) to your intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Intent' smart constructor.
+data GoogleCloudDialogflowCxV3Intent = GoogleCloudDialogflowCxV3Intent
+  { -- | Human readable description for better understanding an intent like its scope, content, result etc. Maximum character limit: 140 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the intent, unique within the agent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Indicates whether this is a fallback intent. Currently only default fallback intent is allowed in the agent, which is added upon agent creation. Adding training phrases to fallback intent is useful in the case of requests that are mistakenly matched, since training phrases assigned to fallback intents act as negative examples that triggers no-match event.
+    isFallback :: (Core.Maybe Core.Bool),
+    -- | The key\/value metadata to label an intent. Labels can contain lowercase letters, digits and the symbols \'-\' and \'_\'. International characters are allowed, including letters from unicase alphabets. Keys must start with a letter. Keys and values can be no longer than 63 characters and no more than 128 bytes. Prefix \"sys-\" is reserved for Dialogflow defined labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-contextual The above labels do not require value. \"sys-head\" means the intent is a head intent. \"sys.contextual\" means the intent is a contextual intent.
+    labels :: (Core.Maybe GoogleCloudDialogflowCxV3Intent_Labels),
+    -- | The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The collection of parameters associated with the intent.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowCxV3IntentParameter]),
+    -- | The priority of this intent. Higher numbers represent higher priorities. - If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the @Normal@ priority in the console. - If the supplied value is negative, the intent is ignored in runtime detect intent requests.
+    priority :: (Core.Maybe Core.Int32),
+    -- | The collection of training phrases the agent is trained on to identify the intent.
+    trainingPhrases :: (Core.Maybe [GoogleCloudDialogflowCxV3IntentTrainingPhrase])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Intent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Intent ::
+  GoogleCloudDialogflowCxV3Intent
+newGoogleCloudDialogflowCxV3Intent =
+  GoogleCloudDialogflowCxV3Intent
+    { description = Core.Nothing,
+      displayName = Core.Nothing,
+      isFallback = Core.Nothing,
+      labels = Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing,
+      priority = Core.Nothing,
+      trainingPhrases = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Intent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Intent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Intent
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "isFallback")
+            Core.<*> (o Core..:? "labels")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "priority")
+            Core.<*> (o Core..:? "trainingPhrases")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Intent where
+  toJSON GoogleCloudDialogflowCxV3Intent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("isFallback" Core..=) Core.<$> isFallback,
+            ("labels" Core..=) Core.<$> labels,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("priority" Core..=) Core.<$> priority,
+            ("trainingPhrases" Core..=) Core.<$> trainingPhrases
+          ]
+      )
+
+-- | The key\/value metadata to label an intent. Labels can contain lowercase letters, digits and the symbols \'-\' and \'_\'. International characters are allowed, including letters from unicase alphabets. Keys must start with a letter. Keys and values can be no longer than 63 characters and no more than 128 bytes. Prefix \"sys-\" is reserved for Dialogflow defined labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-contextual The above labels do not require value. \"sys-head\" means the intent is a head intent. \"sys.contextual\" means the intent is a contextual intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Intent_Labels' smart constructor.
+newtype GoogleCloudDialogflowCxV3Intent_Labels = GoogleCloudDialogflowCxV3Intent_Labels
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Intent_Labels' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Intent_Labels ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowCxV3Intent_Labels
+newGoogleCloudDialogflowCxV3Intent_Labels additional =
+  GoogleCloudDialogflowCxV3Intent_Labels {additional = additional}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Intent_Labels where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Intent_Labels"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Intent_Labels
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Intent_Labels where
+  toJSON GoogleCloudDialogflowCxV3Intent_Labels {..} =
+    Core.toJSON additional
+
+-- | Intent coverage represents the percentage of all possible intents in the agent that are triggered in any of a parent\'s test cases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentCoverage' smart constructor.
+data GoogleCloudDialogflowCxV3IntentCoverage = GoogleCloudDialogflowCxV3IntentCoverage
+  { -- | The percent of intents in the agent that are covered.
+    coverageScore :: (Core.Maybe Core.Double),
+    -- | The list of Intents present in the agent
+    intents :: (Core.Maybe [GoogleCloudDialogflowCxV3IntentCoverageIntent])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentCoverage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentCoverage ::
+  GoogleCloudDialogflowCxV3IntentCoverage
+newGoogleCloudDialogflowCxV3IntentCoverage =
+  GoogleCloudDialogflowCxV3IntentCoverage
+    { coverageScore =
+        Core.Nothing,
+      intents = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3IntentCoverage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentCoverage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentCoverage
+            Core.<$> (o Core..:? "coverageScore")
+            Core.<*> (o Core..:? "intents")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3IntentCoverage where
+  toJSON GoogleCloudDialogflowCxV3IntentCoverage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("coverageScore" Core..=) Core.<$> coverageScore,
+            ("intents" Core..=) Core.<$> intents
+          ]
+      )
+
+-- | The agent\'s intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentCoverageIntent' smart constructor.
+data GoogleCloudDialogflowCxV3IntentCoverageIntent = GoogleCloudDialogflowCxV3IntentCoverageIntent
+  { -- | Whether the intent is covered by at least one of the agent\'s test cases.
+    covered :: (Core.Maybe Core.Bool),
+    -- | The intent full resource name
+    intent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentCoverageIntent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentCoverageIntent ::
+  GoogleCloudDialogflowCxV3IntentCoverageIntent
+newGoogleCloudDialogflowCxV3IntentCoverageIntent =
+  GoogleCloudDialogflowCxV3IntentCoverageIntent
+    { covered =
+        Core.Nothing,
+      intent = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3IntentCoverageIntent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentCoverageIntent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentCoverageIntent
+            Core.<$> (o Core..:? "covered")
+            Core.<*> (o Core..:? "intent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3IntentCoverageIntent where
+  toJSON GoogleCloudDialogflowCxV3IntentCoverageIntent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("covered" Core..=) Core.<$> covered,
+            ("intent" Core..=) Core.<$> intent
+          ]
+      )
+
+-- | Represents the intent to trigger programmatically rather than as a result of natural language processing.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3IntentInput = GoogleCloudDialogflowCxV3IntentInput
+  { -- | Required. The unique identifier of the intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    intent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentInput ::
+  GoogleCloudDialogflowCxV3IntentInput
+newGoogleCloudDialogflowCxV3IntentInput =
+  GoogleCloudDialogflowCxV3IntentInput {intent = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3IntentInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentInput
+            Core.<$> (o Core..:? "intent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3IntentInput where
+  toJSON GoogleCloudDialogflowCxV3IntentInput {..} =
+    Core.object (Core.catMaybes [("intent" Core..=) Core.<$> intent])
+
+-- | Represents an intent parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentParameter' smart constructor.
+data GoogleCloudDialogflowCxV3IntentParameter = GoogleCloudDialogflowCxV3IntentParameter
+  { -- | Required. The entity type of the parameter. Format: @projects\/-\/locations\/-\/agents\/-\/entityTypes\/@ for system entity types (for example, @projects\/-\/locations\/-\/agents\/-\/entityTypes\/sys.date@), or @projects\/\/locations\/\/agents\/\/entityTypes\/@ for developer entity types.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the parameter. This field is used by training phrases to annotate their parts.
+    id :: (Core.Maybe Core.Text),
+    -- | Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.
+    redact :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentParameter ::
+  GoogleCloudDialogflowCxV3IntentParameter
+newGoogleCloudDialogflowCxV3IntentParameter =
+  GoogleCloudDialogflowCxV3IntentParameter
+    { entityType =
+        Core.Nothing,
+      id = Core.Nothing,
+      isList = Core.Nothing,
+      redact = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3IntentParameter where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentParameter"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentParameter
+            Core.<$> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "redact")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3IntentParameter where
+  toJSON GoogleCloudDialogflowCxV3IntentParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityType" Core..=) Core.<$> entityType,
+            ("id" Core..=) Core.<$> id,
+            ("isList" Core..=) Core.<$> isList,
+            ("redact" Core..=) Core.<$> redact
+          ]
+      )
+
+-- | Represents an example that the agent is trained on to identify the intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentTrainingPhrase' smart constructor.
+data GoogleCloudDialogflowCxV3IntentTrainingPhrase = GoogleCloudDialogflowCxV3IntentTrainingPhrase
+  { -- | Output only. The unique identifier of the training phrase.
+    id :: (Core.Maybe Core.Text),
+    -- | Required. The ordered list of training phrase parts. The parts are concatenated in order to form the training phrase. Note: The API does not automatically annotate training phrases like the Dialogflow Console does. Note: Do not forget to include whitespace at part boundaries, so the training phrase is well formatted when the parts are concatenated. If the training phrase does not need to be annotated with parameters, you just need a single part with only the Part.text field set. If you want to annotate the training phrase, you must create multiple parts, where the fields of each part are populated in one of two ways: - @Part.text@ is set to a part of the phrase that has no parameters. - @Part.text@ is set to a part of the phrase that you want to annotate, and the @parameter_id@ field is set.
+    parts :: (Core.Maybe [GoogleCloudDialogflowCxV3IntentTrainingPhrasePart]),
+    -- | Indicates how many times this example was added to the intent.
+    repeatCount :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentTrainingPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentTrainingPhrase ::
+  GoogleCloudDialogflowCxV3IntentTrainingPhrase
+newGoogleCloudDialogflowCxV3IntentTrainingPhrase =
+  GoogleCloudDialogflowCxV3IntentTrainingPhrase
+    { id = Core.Nothing,
+      parts = Core.Nothing,
+      repeatCount = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3IntentTrainingPhrase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentTrainingPhrase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentTrainingPhrase
+            Core.<$> (o Core..:? "id")
+            Core.<*> (o Core..:? "parts")
+            Core.<*> (o Core..:? "repeatCount")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3IntentTrainingPhrase where
+  toJSON GoogleCloudDialogflowCxV3IntentTrainingPhrase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.<$> id,
+            ("parts" Core..=) Core.<$> parts,
+            ("repeatCount" Core..=) Core.<$> repeatCount
+          ]
+      )
+
+-- | Represents a part of a training phrase.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart' smart constructor.
+data GoogleCloudDialogflowCxV3IntentTrainingPhrasePart = GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+  { -- | The parameter used to annotate this part of the training phrase. This field is required for annotated parts of the training phrase.
+    parameterId :: (Core.Maybe Core.Text),
+    -- | Required. The text for this part.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3IntentTrainingPhrasePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart ::
+  GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart =
+  GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+    { parameterId =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3IntentTrainingPhrasePart"
+      ( \o ->
+          GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+            Core.<$> (o Core..:? "parameterId")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+  where
+  toJSON GoogleCloudDialogflowCxV3IntentTrainingPhrasePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("parameterId" Core..=) Core.<$> parameterId,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | The Knowledge Connector settings for this page or flow. This includes information such as the attached Knowledge Bases, and the way to execute fulfillment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings' smart constructor.
+data GoogleCloudDialogflowCxV3KnowledgeConnectorSettings = GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+  { -- | Optional. List of related data store connections.
+    dataStoreConnections :: (Core.Maybe [GoogleCloudDialogflowCxV3DataStoreConnection]),
+    -- | Whether Knowledge Connector is enabled or not.
+    enabled :: (Core.Maybe Core.Bool),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The fulfillment to be triggered. When the answers from the Knowledge Connector are selected by Dialogflow, you can utitlize the request scoped parameter @$request.knowledge.answers@ (contains up to the 5 highest confidence answers) and @$request.knowledge.questions@ (contains the corresponding questions) to construct the fulfillment.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3KnowledgeConnectorSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings ::
+  GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings =
+  GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+    { dataStoreConnections =
+        Core.Nothing,
+      enabled = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3KnowledgeConnectorSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+            Core.<$> (o Core..:? "dataStoreConnections")
+            Core.<*> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3KnowledgeConnectorSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStoreConnections" Core..=) Core.<$> dataStoreConnections,
+            ("enabled" Core..=) Core.<$> enabled,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | Represents the language information of the request.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3LanguageInfo' smart constructor.
+data GoogleCloudDialogflowCxV3LanguageInfo = GoogleCloudDialogflowCxV3LanguageInfo
+  { -- | The confidence score of the detected language between 0 and 1.
+    confidenceScore :: (Core.Maybe Core.Double),
+    -- | The language code specified in the original request.
+    inputLanguageCode :: (Core.Maybe Core.Text),
+    -- | The language code detected for this request based on the user conversation.
+    resolvedLanguageCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3LanguageInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3LanguageInfo ::
+  GoogleCloudDialogflowCxV3LanguageInfo
+newGoogleCloudDialogflowCxV3LanguageInfo =
+  GoogleCloudDialogflowCxV3LanguageInfo
+    { confidenceScore =
+        Core.Nothing,
+      inputLanguageCode = Core.Nothing,
+      resolvedLanguageCode = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3LanguageInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3LanguageInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3LanguageInfo
+            Core.<$> (o Core..:? "confidenceScore")
+            Core.<*> (o Core..:? "inputLanguageCode")
+            Core.<*> (o Core..:? "resolvedLanguageCode")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3LanguageInfo where
+  toJSON GoogleCloudDialogflowCxV3LanguageInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidenceScore" Core..=) Core.<$> confidenceScore,
+            ("inputLanguageCode" Core..=) Core.<$> inputLanguageCode,
+            ("resolvedLanguageCode" Core..=) Core.<$> resolvedLanguageCode
+          ]
+      )
+
+-- | The response message for Agents.ListAgents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListAgentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListAgentsResponse = GoogleCloudDialogflowCxV3ListAgentsResponse
+  { -- | The list of agents. There will be a maximum number of items returned based on the page_size field in the request.
+    agents :: (Core.Maybe [GoogleCloudDialogflowCxV3Agent]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListAgentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListAgentsResponse ::
+  GoogleCloudDialogflowCxV3ListAgentsResponse
+newGoogleCloudDialogflowCxV3ListAgentsResponse =
+  GoogleCloudDialogflowCxV3ListAgentsResponse
+    { agents =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ListAgentsResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListAgentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListAgentsResponse
+            Core.<$> (o Core..:? "agents")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListAgentsResponse where
+  toJSON GoogleCloudDialogflowCxV3ListAgentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agents" Core..=) Core.<$> agents,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Changelogs.ListChangelogs.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListChangelogsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListChangelogsResponse = GoogleCloudDialogflowCxV3ListChangelogsResponse
+  { -- | The list of changelogs. There will be a maximum number of items returned based on the page_size field in the request. The changelogs will be ordered by timestamp.
+    changelogs :: (Core.Maybe [GoogleCloudDialogflowCxV3Changelog]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListChangelogsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListChangelogsResponse ::
+  GoogleCloudDialogflowCxV3ListChangelogsResponse
+newGoogleCloudDialogflowCxV3ListChangelogsResponse =
+  GoogleCloudDialogflowCxV3ListChangelogsResponse
+    { changelogs =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListChangelogsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListChangelogsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListChangelogsResponse
+            Core.<$> (o Core..:? "changelogs")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListChangelogsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListChangelogsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("changelogs" Core..=) Core.<$> changelogs,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Environments.ListTestCaseResults.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse = GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+  { -- | The list of continuous test results.
+    continuousTestResults :: (Core.Maybe [GoogleCloudDialogflowCxV3ContinuousTestResult]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse ::
+  GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse =
+  GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+    { continuousTestResults =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+            Core.<$> (o Core..:? "continuousTestResults")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("continuousTestResults" Core..=) Core.<$> continuousTestResults,
+              ("nextPageToken" Core..=) Core.<$> nextPageToken
+            ]
+        )
+
+-- | The response message for Deployments.ListDeployments.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListDeploymentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListDeploymentsResponse = GoogleCloudDialogflowCxV3ListDeploymentsResponse
+  { -- | The list of deployments. There will be a maximum number of items returned based on the page/size field in the request. The list may in some cases be empty or contain fewer entries than page/size even if this isn\'t the last page.
+    deployments :: (Core.Maybe [GoogleCloudDialogflowCxV3Deployment]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListDeploymentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListDeploymentsResponse ::
+  GoogleCloudDialogflowCxV3ListDeploymentsResponse
+newGoogleCloudDialogflowCxV3ListDeploymentsResponse =
+  GoogleCloudDialogflowCxV3ListDeploymentsResponse
+    { deployments =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListDeploymentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListDeploymentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListDeploymentsResponse
+            Core.<$> (o Core..:? "deployments")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListDeploymentsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListDeploymentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("deployments" Core..=) Core.<$> deployments,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for EntityTypes.ListEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListEntityTypesResponse = GoogleCloudDialogflowCxV3ListEntityTypesResponse
+  { -- | The list of entity types. There will be a maximum number of items returned based on the page_size field in the request.
+    entityTypes :: (Core.Maybe [GoogleCloudDialogflowCxV3EntityType]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3ListEntityTypesResponse
+newGoogleCloudDialogflowCxV3ListEntityTypesResponse =
+  GoogleCloudDialogflowCxV3ListEntityTypesResponse
+    { entityTypes =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListEntityTypesResponse
+            Core.<$> (o Core..:? "entityTypes")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityTypes" Core..=) Core.<$> entityTypes,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Environments.ListEnvironments.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListEnvironmentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListEnvironmentsResponse = GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+  { -- | The list of environments. There will be a maximum number of items returned based on the page/size field in the request. The list may in some cases be empty or contain fewer entries than page/size even if this isn\'t the last page.
+    environments :: (Core.Maybe [GoogleCloudDialogflowCxV3Environment]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListEnvironmentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListEnvironmentsResponse ::
+  GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+newGoogleCloudDialogflowCxV3ListEnvironmentsResponse =
+  GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+    { environments =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListEnvironmentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+            Core.<$> (o Core..:? "environments")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListEnvironmentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("environments" Core..=) Core.<$> environments,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Experiments.ListExperiments.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListExperimentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListExperimentsResponse = GoogleCloudDialogflowCxV3ListExperimentsResponse
+  { -- | The list of experiments. There will be a maximum number of items returned based on the page/size field in the request. The list may in some cases be empty or contain fewer entries than page/size even if this isn\'t the last page.
+    experiments :: (Core.Maybe [GoogleCloudDialogflowCxV3Experiment]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListExperimentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListExperimentsResponse ::
+  GoogleCloudDialogflowCxV3ListExperimentsResponse
+newGoogleCloudDialogflowCxV3ListExperimentsResponse =
+  GoogleCloudDialogflowCxV3ListExperimentsResponse
+    { experiments =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListExperimentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListExperimentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListExperimentsResponse
+            Core.<$> (o Core..:? "experiments")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListExperimentsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListExperimentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("experiments" Core..=) Core.<$> experiments,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Flows.ListFlows.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListFlowsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListFlowsResponse = GoogleCloudDialogflowCxV3ListFlowsResponse
+  { -- | The list of flows. There will be a maximum number of items returned based on the page_size field in the request.
+    flows :: (Core.Maybe [GoogleCloudDialogflowCxV3Flow]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListFlowsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListFlowsResponse ::
+  GoogleCloudDialogflowCxV3ListFlowsResponse
+newGoogleCloudDialogflowCxV3ListFlowsResponse =
+  GoogleCloudDialogflowCxV3ListFlowsResponse
+    { flows = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ListFlowsResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListFlowsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListFlowsResponse
+            Core.<$> (o Core..:? "flows")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListFlowsResponse where
+  toJSON GoogleCloudDialogflowCxV3ListFlowsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flows" Core..=) Core.<$> flows,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Generators.ListGenerators.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListGeneratorsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListGeneratorsResponse = GoogleCloudDialogflowCxV3ListGeneratorsResponse
+  { -- | The list of generators. There will be a maximum number of items returned based on the page_size field in the request.
+    generators :: (Core.Maybe [GoogleCloudDialogflowCxV3Generator]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListGeneratorsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListGeneratorsResponse ::
+  GoogleCloudDialogflowCxV3ListGeneratorsResponse
+newGoogleCloudDialogflowCxV3ListGeneratorsResponse =
+  GoogleCloudDialogflowCxV3ListGeneratorsResponse
+    { generators =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListGeneratorsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListGeneratorsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListGeneratorsResponse
+            Core.<$> (o Core..:? "generators")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListGeneratorsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListGeneratorsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("generators" Core..=) Core.<$> generators,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Intents.ListIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListIntentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListIntentsResponse = GoogleCloudDialogflowCxV3ListIntentsResponse
+  { -- | The list of intents. There will be a maximum number of items returned based on the page_size field in the request.
+    intents :: (Core.Maybe [GoogleCloudDialogflowCxV3Intent]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListIntentsResponse ::
+  GoogleCloudDialogflowCxV3ListIntentsResponse
+newGoogleCloudDialogflowCxV3ListIntentsResponse =
+  GoogleCloudDialogflowCxV3ListIntentsResponse
+    { intents =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ListIntentsResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListIntentsResponse
+            Core.<$> (o Core..:? "intents")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListIntentsResponse where
+  toJSON GoogleCloudDialogflowCxV3ListIntentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("intents" Core..=) Core.<$> intents,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | The response message for Pages.ListPages.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListPagesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListPagesResponse = GoogleCloudDialogflowCxV3ListPagesResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of pages. There will be a maximum number of items returned based on the page_size field in the request.
+    pages :: (Core.Maybe [GoogleCloudDialogflowCxV3Page])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListPagesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListPagesResponse ::
+  GoogleCloudDialogflowCxV3ListPagesResponse
+newGoogleCloudDialogflowCxV3ListPagesResponse =
+  GoogleCloudDialogflowCxV3ListPagesResponse
+    { nextPageToken =
+        Core.Nothing,
+      pages = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ListPagesResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListPagesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListPagesResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "pages")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListPagesResponse where
+  toJSON GoogleCloudDialogflowCxV3ListPagesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("pages" Core..=) Core.<$> pages
+          ]
+      )
+
+-- | The response message for SecuritySettings.ListSecuritySettings.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListSecuritySettingsResponse = GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of security settings.
+    securitySettings :: (Core.Maybe [GoogleCloudDialogflowCxV3SecuritySettings])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListSecuritySettingsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse ::
+  GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse =
+  GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+    { nextPageToken =
+        Core.Nothing,
+      securitySettings = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListSecuritySettingsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "securitySettings")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListSecuritySettingsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("securitySettings" Core..=) Core.<$> securitySettings
+          ]
+      )
+
+-- | The response message for SessionEntityTypes.ListSessionEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse = GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of session entity types. There will be a maximum number of items returned based on the page_size field in the request.
+    sessionEntityTypes :: (Core.Maybe [GoogleCloudDialogflowCxV3SessionEntityType])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse =
+  GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+    { nextPageToken =
+        Core.Nothing,
+      sessionEntityTypes = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "sessionEntityTypes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("sessionEntityTypes" Core..=) Core.<$> sessionEntityTypes
+          ]
+      )
+
+-- | The response message for TestCases.ListTestCaseResults.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListTestCaseResultsResponse = GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of test case results.
+    testCaseResults :: (Core.Maybe [GoogleCloudDialogflowCxV3TestCaseResult])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListTestCaseResultsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse ::
+  GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse =
+  GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+    { nextPageToken =
+        Core.Nothing,
+      testCaseResults = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListTestCaseResultsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "testCaseResults")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3ListTestCaseResultsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("testCaseResults" Core..=) Core.<$> testCaseResults
+          ]
+      )
+
+-- | The response message for TestCases.ListTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListTestCasesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListTestCasesResponse = GoogleCloudDialogflowCxV3ListTestCasesResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of test cases. There will be a maximum number of items returned based on the page_size field in the request.
+    testCases :: (Core.Maybe [GoogleCloudDialogflowCxV3TestCase])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListTestCasesResponse ::
+  GoogleCloudDialogflowCxV3ListTestCasesResponse
+newGoogleCloudDialogflowCxV3ListTestCasesResponse =
+  GoogleCloudDialogflowCxV3ListTestCasesResponse
+    { nextPageToken =
+        Core.Nothing,
+      testCases = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListTestCasesResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "testCases")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListTestCasesResponse where
+  toJSON GoogleCloudDialogflowCxV3ListTestCasesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("testCases" Core..=) Core.<$> testCases
+          ]
+      )
+
+-- | The response message for TransitionRouteGroups.ListTransitionRouteGroups.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse = GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of transition route groups. There will be a maximum number of items returned based on the page/size field in the request. The list may in some cases be empty or contain fewer entries than page/size even if this isn\'t the last page.
+    transitionRouteGroups :: (Core.Maybe [GoogleCloudDialogflowCxV3TransitionRouteGroup])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse ::
+  GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse =
+  GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+    { nextPageToken =
+        Core.Nothing,
+      transitionRouteGroups = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "transitionRouteGroups")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+              ("transitionRouteGroups" Core..=) Core.<$> transitionRouteGroups
+            ]
+        )
+
+-- | The response message for Versions.ListVersions.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListVersionsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListVersionsResponse = GoogleCloudDialogflowCxV3ListVersionsResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | A list of versions. There will be a maximum number of items returned based on the page/size field in the request. The list may in some cases be empty or contain fewer entries than page/size even if this isn\'t the last page.
+    versions :: (Core.Maybe [GoogleCloudDialogflowCxV3Version])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListVersionsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListVersionsResponse ::
+  GoogleCloudDialogflowCxV3ListVersionsResponse
+newGoogleCloudDialogflowCxV3ListVersionsResponse =
+  GoogleCloudDialogflowCxV3ListVersionsResponse
+    { nextPageToken =
+        Core.Nothing,
+      versions = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListVersionsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListVersionsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListVersionsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "versions")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListVersionsResponse where
+  toJSON GoogleCloudDialogflowCxV3ListVersionsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("versions" Core..=) Core.<$> versions
+          ]
+      )
+
+-- | The response message for Webhooks.ListWebhooks.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ListWebhooksResponse' smart constructor.
+data GoogleCloudDialogflowCxV3ListWebhooksResponse = GoogleCloudDialogflowCxV3ListWebhooksResponse
+  { -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of webhooks. There will be a maximum number of items returned based on the page_size field in the request.
+    webhooks :: (Core.Maybe [GoogleCloudDialogflowCxV3Webhook])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ListWebhooksResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ListWebhooksResponse ::
+  GoogleCloudDialogflowCxV3ListWebhooksResponse
+newGoogleCloudDialogflowCxV3ListWebhooksResponse =
+  GoogleCloudDialogflowCxV3ListWebhooksResponse
+    { nextPageToken =
+        Core.Nothing,
+      webhooks = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ListWebhooksResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ListWebhooksResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ListWebhooksResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "webhooks")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ListWebhooksResponse where
+  toJSON GoogleCloudDialogflowCxV3ListWebhooksResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("webhooks" Core..=) Core.<$> webhooks
+          ]
+      )
+
+-- | The request message for Versions.LoadVersion.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3LoadVersionRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3LoadVersionRequest = GoogleCloudDialogflowCxV3LoadVersionRequest
+  { -- | This field is used to prevent accidental overwrite of other agent resources, which can potentially impact other flow\'s behavior. If @allow_override_agent_resources@ is false, conflicted agent-level resources will not be overridden (i.e. intents, entities, webhooks).
+    allowOverrideAgentResources :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3LoadVersionRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3LoadVersionRequest ::
+  GoogleCloudDialogflowCxV3LoadVersionRequest
+newGoogleCloudDialogflowCxV3LoadVersionRequest =
+  GoogleCloudDialogflowCxV3LoadVersionRequest
+    { allowOverrideAgentResources =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3LoadVersionRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3LoadVersionRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3LoadVersionRequest
+            Core.<$> (o Core..:? "allowOverrideAgentResources")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3LoadVersionRequest where
+  toJSON GoogleCloudDialogflowCxV3LoadVersionRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowOverrideAgentResources" Core..=)
+              Core.<$> allowOverrideAgentResources
+          ]
+      )
+
+-- | The response message for Environments.LookupEnvironmentHistory.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse' smart constructor.
+data GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse = GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+  { -- | Represents a list of snapshots for an environment. Time of the snapshots is stored in @update_time@.
+    environments :: (Core.Maybe [GoogleCloudDialogflowCxV3Environment]),
+    -- | Token to retrieve the next page of results, or empty if there are no more results in the list.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse ::
+  GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse =
+  GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+    { environments =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+            Core.<$> (o Core..:? "environments")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("environments" Core..=) Core.<$> environments,
+              ("nextPageToken" Core..=) Core.<$> nextPageToken
+            ]
+        )
+
+-- | Represents one match result of MatchIntent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Match' smart constructor.
+data GoogleCloudDialogflowCxV3Match = GoogleCloudDialogflowCxV3Match
+  { -- | The confidence of this match. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation.
+    confidence :: (Core.Maybe Core.Double),
+    -- | The event that matched the query. Filled for @EVENT@, @NO_MATCH@ and @NO_INPUT@ match types.
+    event :: (Core.Maybe Core.Text),
+    -- | The Intent that matched the query. Some, not all fields are filled in this message, including but not limited to: @name@ and @display_name@. Only filled for @INTENT@ match type.
+    intent :: (Core.Maybe GoogleCloudDialogflowCxV3Intent),
+    -- | Type of this Match.
+    matchType :: (Core.Maybe GoogleCloudDialogflowCxV3Match_MatchType),
+    -- | The collection of parameters extracted from the query. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowCxV3Match_Parameters),
+    -- | Final text input which was matched during MatchIntent. This value can be different from original input sent in request because of spelling correction or other processing.
+    resolvedInput :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Match' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Match ::
+  GoogleCloudDialogflowCxV3Match
+newGoogleCloudDialogflowCxV3Match =
+  GoogleCloudDialogflowCxV3Match
+    { confidence = Core.Nothing,
+      event = Core.Nothing,
+      intent = Core.Nothing,
+      matchType = Core.Nothing,
+      parameters = Core.Nothing,
+      resolvedInput = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Match where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Match"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Match
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "event")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "matchType")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "resolvedInput")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Match where
+  toJSON GoogleCloudDialogflowCxV3Match {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("event" Core..=) Core.<$> event,
+            ("intent" Core..=) Core.<$> intent,
+            ("matchType" Core..=) Core.<$> matchType,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("resolvedInput" Core..=) Core.<$> resolvedInput
+          ]
+      )
+
+-- | The collection of parameters extracted from the query. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Match_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3Match_Parameters = GoogleCloudDialogflowCxV3Match_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Match_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Match_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3Match_Parameters
+newGoogleCloudDialogflowCxV3Match_Parameters additional =
+  GoogleCloudDialogflowCxV3Match_Parameters
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Match_Parameters where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Match_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Match_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Match_Parameters where
+  toJSON GoogleCloudDialogflowCxV3Match_Parameters {..} =
+    Core.toJSON additional
+
+-- | Request of MatchIntent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3MatchIntentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3MatchIntentRequest = GoogleCloudDialogflowCxV3MatchIntentRequest
+  { -- | Persist session parameter changes from @query_params@.
+    persistParameterChanges :: (Core.Maybe Core.Bool),
+    -- | Required. The input specification.
+    queryInput :: (Core.Maybe GoogleCloudDialogflowCxV3QueryInput),
+    -- | The parameters of this query.
+    queryParams :: (Core.Maybe GoogleCloudDialogflowCxV3QueryParameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3MatchIntentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3MatchIntentRequest ::
+  GoogleCloudDialogflowCxV3MatchIntentRequest
+newGoogleCloudDialogflowCxV3MatchIntentRequest =
+  GoogleCloudDialogflowCxV3MatchIntentRequest
+    { persistParameterChanges =
+        Core.Nothing,
+      queryInput = Core.Nothing,
+      queryParams = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3MatchIntentRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3MatchIntentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3MatchIntentRequest
+            Core.<$> (o Core..:? "persistParameterChanges")
+            Core.<*> (o Core..:? "queryInput")
+            Core.<*> (o Core..:? "queryParams")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3MatchIntentRequest where
+  toJSON GoogleCloudDialogflowCxV3MatchIntentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("persistParameterChanges" Core..=)
+              Core.<$> persistParameterChanges,
+            ("queryInput" Core..=) Core.<$> queryInput,
+            ("queryParams" Core..=) Core.<$> queryParams
+          ]
+      )
+
+-- | Response of MatchIntent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3MatchIntentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3MatchIntentResponse = GoogleCloudDialogflowCxV3MatchIntentResponse
+  { -- | The current Page. Some, not all fields are filled in this message, including but not limited to @name@ and @display_name@.
+    currentPage :: (Core.Maybe GoogleCloudDialogflowCxV3Page),
+    -- | Match results, if more than one, ordered descendingly by the confidence we have that the particular intent matches the query.
+    matches :: (Core.Maybe [GoogleCloudDialogflowCxV3Match]),
+    -- | If natural language text was provided as input, this field will contain a copy of the text.
+    text :: (Core.Maybe Core.Text),
+    -- | If natural language speech audio was provided as input, this field will contain the transcript for the audio.
+    transcript :: (Core.Maybe Core.Text),
+    -- | If an event was provided as input, this field will contain a copy of the event name.
+    triggerEvent :: (Core.Maybe Core.Text),
+    -- | If an intent was provided as input, this field will contain a copy of the intent identifier. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    triggerIntent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3MatchIntentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3MatchIntentResponse ::
+  GoogleCloudDialogflowCxV3MatchIntentResponse
+newGoogleCloudDialogflowCxV3MatchIntentResponse =
+  GoogleCloudDialogflowCxV3MatchIntentResponse
+    { currentPage =
+        Core.Nothing,
+      matches = Core.Nothing,
+      text = Core.Nothing,
+      transcript = Core.Nothing,
+      triggerEvent = Core.Nothing,
+      triggerIntent = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3MatchIntentResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3MatchIntentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3MatchIntentResponse
+            Core.<$> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "matches")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "transcript")
+            Core.<*> (o Core..:? "triggerEvent")
+            Core.<*> (o Core..:? "triggerIntent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3MatchIntentResponse where
+  toJSON GoogleCloudDialogflowCxV3MatchIntentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("currentPage" Core..=) Core.<$> currentPage,
+            ("matches" Core..=) Core.<$> matches,
+            ("text" Core..=) Core.<$> text,
+            ("transcript" Core..=) Core.<$> transcript,
+            ("triggerEvent" Core..=) Core.<$> triggerEvent,
+            ("triggerIntent" Core..=) Core.<$> triggerIntent
+          ]
+      )
+
+-- | Settings related to NLU.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3NluSettings' smart constructor.
+data GoogleCloudDialogflowCxV3NluSettings = GoogleCloudDialogflowCxV3NluSettings
+  { -- | To filter out false positive results and still get variety in matched natural language inputs for your agent, you can tune the machine learning classification threshold. If the returned score value is less than the threshold value, then a no-match event will be triggered. The score values range from 0.0 (completely uncertain) to 1.0 (completely certain). If set to 0.0, the default of 0.3 is used. You can set a separate classification threshold for the flow in each language enabled for the agent.
+    classificationThreshold :: (Core.Maybe Core.Double),
+    -- | Indicates NLU model training mode.
+    modelTrainingMode :: (Core.Maybe GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode),
+    -- | Indicates the type of NLU model.
+    modelType :: (Core.Maybe GoogleCloudDialogflowCxV3NluSettings_ModelType)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3NluSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3NluSettings ::
+  GoogleCloudDialogflowCxV3NluSettings
+newGoogleCloudDialogflowCxV3NluSettings =
+  GoogleCloudDialogflowCxV3NluSettings
+    { classificationThreshold =
+        Core.Nothing,
+      modelTrainingMode = Core.Nothing,
+      modelType = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3NluSettings where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3NluSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3NluSettings
+            Core.<$> (o Core..:? "classificationThreshold")
+            Core.<*> (o Core..:? "modelTrainingMode")
+            Core.<*> (o Core..:? "modelType")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3NluSettings where
+  toJSON GoogleCloudDialogflowCxV3NluSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("classificationThreshold" Core..=)
+              Core.<$> classificationThreshold,
+            ("modelTrainingMode" Core..=) Core.<$> modelTrainingMode,
+            ("modelType" Core..=) Core.<$> modelType
+          ]
+      )
+
+-- | Instructs the speech synthesizer how to generate the output audio content.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3OutputAudioConfig' smart constructor.
+data GoogleCloudDialogflowCxV3OutputAudioConfig = GoogleCloudDialogflowCxV3OutputAudioConfig
+  { -- | Required. Audio encoding of the synthesized audio content.
+    audioEncoding ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+      ),
+    -- | Optional. The synthesis sample rate (in hertz) for this audio. If not provided, then the synthesizer will use the default sample rate based on the audio encoding. If this is different from the voice\'s natural sample rate, then the synthesizer will honor this request by converting to the desired sample rate (which might result in worse audio quality).
+    sampleRateHertz :: (Core.Maybe Core.Int32),
+    -- | Optional. Configuration of how speech should be synthesized. If not specified, Agent.text/to/speech_settings is applied.
+    synthesizeSpeechConfig :: (Core.Maybe GoogleCloudDialogflowCxV3SynthesizeSpeechConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3OutputAudioConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3OutputAudioConfig ::
+  GoogleCloudDialogflowCxV3OutputAudioConfig
+newGoogleCloudDialogflowCxV3OutputAudioConfig =
+  GoogleCloudDialogflowCxV3OutputAudioConfig
+    { audioEncoding =
+        Core.Nothing,
+      sampleRateHertz = Core.Nothing,
+      synthesizeSpeechConfig = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3OutputAudioConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3OutputAudioConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3OutputAudioConfig
+            Core.<$> (o Core..:? "audioEncoding")
+            Core.<*> (o Core..:? "sampleRateHertz")
+            Core.<*> (o Core..:? "synthesizeSpeechConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3OutputAudioConfig where
+  toJSON GoogleCloudDialogflowCxV3OutputAudioConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioEncoding" Core..=) Core.<$> audioEncoding,
+            ("sampleRateHertz" Core..=) Core.<$> sampleRateHertz,
+            ("synthesizeSpeechConfig" Core..=)
+              Core.<$> synthesizeSpeechConfig
+          ]
+      )
+
+-- | A Dialogflow CX conversation (session) can be described and visualized as a state machine. The states of a CX session are represented by pages. For each flow, you define many pages, where your combined pages can handle a complete conversation on the topics the flow is designed for. At any given moment, exactly one page is the current page, the current page is considered active, and the flow associated with that page is considered active. Every flow has a special start page. When a flow initially becomes active, the start page page becomes the current page. For each conversational turn, the current page will either stay the same or transition to another page. You configure each page to collect information from the end-user that is relevant for the conversational state represented by the page. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/page Page guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Page' smart constructor.
+data GoogleCloudDialogflowCxV3Page = GoogleCloudDialogflowCxV3Page
+  { -- | Hierarchical advanced settings for this page. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | The description of the page. The maximum length is 500 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the page, unique within the flow.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the session is entering the page.
+    entryFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3Fulfillment),
+    -- | Handlers associated with the page to handle events such as webhook errors, no match or no input.
+    eventHandlers :: (Core.Maybe [GoogleCloudDialogflowCxV3EventHandler]),
+    -- | The form associated with the page, used for collecting parameters relevant to the page.
+    form :: (Core.Maybe GoogleCloudDialogflowCxV3Form),
+    -- | Optional. Knowledge connector configuration.
+    knowledgeConnectorSettings :: (Core.Maybe GoogleCloudDialogflowCxV3KnowledgeConnectorSettings),
+    -- | The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Ordered list of @TransitionRouteGroups@ added to the page. Transition route groups must be unique within a page. If the page links both flow-level transition route groups and agent-level transition route groups, the flow-level ones will have higher priority and will be put before the agent-level ones. * If multiple transition routes within a page scope refer to the same intent, then the precedence order is: page\'s transition route -> page\'s transition route group -> flow\'s transition routes. * If multiple transition route groups within a page contain the same intent, then the first group in the ordered list takes precedence. Format:@projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@ for agent-level groups.
+    transitionRouteGroups :: (Core.Maybe [Core.Text]),
+    -- | A list of transitions for the transition rules of this page. They route the conversation to another page in the same flow, or another flow. When we are in a certain page, the TransitionRoutes are evaluated in the following order: * TransitionRoutes defined in the page with intent specified. * TransitionRoutes defined in the transition route groups with intent specified. * TransitionRoutes defined in flow with intent specified. * TransitionRoutes defined in the transition route groups with intent specified. * TransitionRoutes defined in the page with only condition specified. * TransitionRoutes defined in the transition route groups with only condition specified.
+    transitionRoutes :: (Core.Maybe [GoogleCloudDialogflowCxV3TransitionRoute])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Page' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Page ::
+  GoogleCloudDialogflowCxV3Page
+newGoogleCloudDialogflowCxV3Page =
+  GoogleCloudDialogflowCxV3Page
+    { advancedSettings = Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      entryFulfillment = Core.Nothing,
+      eventHandlers = Core.Nothing,
+      form = Core.Nothing,
+      knowledgeConnectorSettings = Core.Nothing,
+      name = Core.Nothing,
+      transitionRouteGroups = Core.Nothing,
+      transitionRoutes = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Page where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Page"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Page
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entryFulfillment")
+            Core.<*> (o Core..:? "eventHandlers")
+            Core.<*> (o Core..:? "form")
+            Core.<*> (o Core..:? "knowledgeConnectorSettings")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "transitionRouteGroups")
+            Core.<*> (o Core..:? "transitionRoutes")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Page where
+  toJSON GoogleCloudDialogflowCxV3Page {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entryFulfillment" Core..=) Core.<$> entryFulfillment,
+            ("eventHandlers" Core..=) Core.<$> eventHandlers,
+            ("form" Core..=) Core.<$> form,
+            ("knowledgeConnectorSettings" Core..=)
+              Core.<$> knowledgeConnectorSettings,
+            ("name" Core..=) Core.<$> name,
+            ("transitionRouteGroups" Core..=) Core.<$> transitionRouteGroups,
+            ("transitionRoutes" Core..=) Core.<$> transitionRoutes
+          ]
+      )
+
+-- | Represents page information communicated to and from the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3PageInfo' smart constructor.
+data GoogleCloudDialogflowCxV3PageInfo = GoogleCloudDialogflowCxV3PageInfo
+  { -- | Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the current page. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    currentPage :: (Core.Maybe Core.Text),
+    -- | Always present for WebhookRequest. Ignored for WebhookResponse. The display name of the current page.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional for both WebhookRequest and WebhookResponse. Information about the form.
+    formInfo :: (Core.Maybe GoogleCloudDialogflowCxV3PageInfoFormInfo)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3PageInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3PageInfo ::
+  GoogleCloudDialogflowCxV3PageInfo
+newGoogleCloudDialogflowCxV3PageInfo =
+  GoogleCloudDialogflowCxV3PageInfo
+    { currentPage = Core.Nothing,
+      displayName = Core.Nothing,
+      formInfo = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3PageInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3PageInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3PageInfo
+            Core.<$> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "formInfo")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3PageInfo where
+  toJSON GoogleCloudDialogflowCxV3PageInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("currentPage" Core..=) Core.<$> currentPage,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("formInfo" Core..=) Core.<$> formInfo
+          ]
+      )
+
+-- | Represents form information.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3PageInfoFormInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3PageInfoFormInfo = GoogleCloudDialogflowCxV3PageInfoFormInfo
+  { -- | Optional for both WebhookRequest and WebhookResponse. The parameters contained in the form. Note that the webhook cannot add or remove any form parameter.
+    parameterInfo ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3PageInfoFormInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3PageInfoFormInfo ::
+  GoogleCloudDialogflowCxV3PageInfoFormInfo
+newGoogleCloudDialogflowCxV3PageInfoFormInfo =
+  GoogleCloudDialogflowCxV3PageInfoFormInfo
+    { parameterInfo =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3PageInfoFormInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3PageInfoFormInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3PageInfoFormInfo
+            Core.<$> (o Core..:? "parameterInfo")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3PageInfoFormInfo where
+  toJSON GoogleCloudDialogflowCxV3PageInfoFormInfo {..} =
+    Core.object
+      (Core.catMaybes [("parameterInfo" Core..=) Core.<$> parameterInfo])
+
+-- | Represents parameter information.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo' smart constructor.
+data GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+  { -- | Always present for WebhookRequest. Required for WebhookResponse. The human-readable name of the parameter, unique within the form. This field cannot be modified by the webhook.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the parameter value was just collected on the last conversation turn.
+    justCollected :: (Core.Maybe Core.Bool),
+    -- | Optional for both WebhookRequest and WebhookResponse. Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.
+    required :: (Core.Maybe Core.Bool),
+    -- | Always present for WebhookRequest. Required for WebhookResponse. The state of the parameter. This field can be set to INVALID by the webhook to invalidate the parameter; other values set by the webhook will be ignored.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+      ),
+    -- | Optional for both WebhookRequest and WebhookResponse. The value of the parameter. This field can be set by the webhook to change the parameter value.
+    value :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo ::
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo =
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+    { displayName =
+        Core.Nothing,
+      justCollected = Core.Nothing,
+      required = Core.Nothing,
+      state = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "justCollected")
+            Core.<*> (o Core..:? "required")
+            Core.<*> (o Core..:? "state")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+  where
+  toJSON GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("justCollected" Core..=) Core.<$> justCollected,
+            ("required" Core..=) Core.<$> required,
+            ("state" Core..=) Core.<$> state,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Text input which can be used for prompt or banned phrases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Phrase' smart constructor.
+newtype GoogleCloudDialogflowCxV3Phrase = GoogleCloudDialogflowCxV3Phrase
+  { -- | Required. Text input which can be used for prompt or banned phrases.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Phrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Phrase ::
+  GoogleCloudDialogflowCxV3Phrase
+newGoogleCloudDialogflowCxV3Phrase =
+  GoogleCloudDialogflowCxV3Phrase {text = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Phrase where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Phrase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Phrase Core.<$> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Phrase where
+  toJSON GoogleCloudDialogflowCxV3Phrase {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Represents the query input. It can contain one of: 1. A conversational query in the form of text. 2. An intent query that specifies which intent to trigger. 3. Natural language speech audio to be processed. 4. An event to be triggered. 5. DTMF digits to invoke an intent and fill in parameter value. 6. The results of a tool executed by the client.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryInput' smart constructor.
+data GoogleCloudDialogflowCxV3QueryInput = GoogleCloudDialogflowCxV3QueryInput
+  { -- | The natural language speech audio to be processed.
+    audio :: (Core.Maybe GoogleCloudDialogflowCxV3AudioInput),
+    -- | The DTMF event to be handled.
+    dtmf :: (Core.Maybe GoogleCloudDialogflowCxV3DtmfInput),
+    -- | The event to be triggered.
+    event :: (Core.Maybe GoogleCloudDialogflowCxV3EventInput),
+    -- | The intent to be triggered.
+    intent :: (Core.Maybe GoogleCloudDialogflowCxV3IntentInput),
+    -- | Required. The language of the input. See <https://cloud.google.com/dialogflow/cx/docs/reference/language Language Support> for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The natural language text to be processed.
+    text :: (Core.Maybe GoogleCloudDialogflowCxV3TextInput)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryInput ::
+  GoogleCloudDialogflowCxV3QueryInput
+newGoogleCloudDialogflowCxV3QueryInput =
+  GoogleCloudDialogflowCxV3QueryInput
+    { audio = Core.Nothing,
+      dtmf = Core.Nothing,
+      event = Core.Nothing,
+      intent = Core.Nothing,
+      languageCode = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3QueryInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryInput
+            Core.<$> (o Core..:? "audio")
+            Core.<*> (o Core..:? "dtmf")
+            Core.<*> (o Core..:? "event")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3QueryInput where
+  toJSON GoogleCloudDialogflowCxV3QueryInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audio" Core..=) Core.<$> audio,
+            ("dtmf" Core..=) Core.<$> dtmf,
+            ("event" Core..=) Core.<$> event,
+            ("intent" Core..=) Core.<$> intent,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Represents the parameters of a conversational query.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryParameters' smart constructor.
+data GoogleCloudDialogflowCxV3QueryParameters = GoogleCloudDialogflowCxV3QueryParameters
+  { -- | Configures whether sentiment analysis should be performed. If not provided, sentiment analysis is not performed.
+    analyzeQueryTextSentiment :: (Core.Maybe Core.Bool),
+    -- | The channel which this query is for. If specified, only the ResponseMessage associated with the channel will be returned. If no ResponseMessage is associated with the channel, it falls back to the ResponseMessage with unspecified channel. If unspecified, the ResponseMessage with unspecified channel will be returned.
+    channel :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the page to override the current page in the session. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@. If @current_page@ is specified, the previous state of the session will be ignored by Dialogflow, including the previous page and the previous session parameters. In most cases, current_page and parameters should be configured together to direct a session to a specific state.
+    currentPage :: (Core.Maybe Core.Text),
+    -- | Whether to disable webhook calls for this request.
+    disableWebhook :: (Core.Maybe Core.Bool),
+    -- | Optional. Information about the end-user to improve the relevance and accuracy of generative answers. This will be interpreted and used by a language model, so, for good results, the data should be self-descriptive, and in a simple structure. Example: @json { \"subscription plan\": \"Business Premium Plus\", \"devices owned\": [ {\"model\": \"Google Pixel 7\"}, {\"model\": \"Google Pixel Tablet\"} ] }@
+    endUserMetadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+      ),
+    -- | A list of flow versions to override for the request. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@. If version 1 of flow X is included in this list, the traffic of flow X will go through version 1 regardless of the version configuration in the environment. Each flow can have at most one version specified in this list.
+    flowVersions :: (Core.Maybe [Core.Text]),
+    -- | The geo location of this conversational query.
+    geoLocation :: (Core.Maybe GoogleTypeLatLng),
+    -- | Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. You can reference the session parameters in the agent with the following format: $session.params.parameter-id. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowCxV3QueryParameters_Parameters),
+    -- | This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: @{ \"telephony\": { \"caller_id\": \"+18558363987\" } }@
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3QueryParameters_Payload),
+    -- | Optional. If set to true and data stores are involved in serving the request then DetectIntentResponse.query/result.data/store/connection/signals will be filled with data that can help evaluations.
+    populateDataStoreConnectionSignals :: (Core.Maybe Core.Bool),
+    -- | Optional. Search configuration for UCS search queries.
+    searchConfig :: (Core.Maybe GoogleCloudDialogflowCxV3SearchConfig),
+    -- | Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
+    sessionEntityTypes :: (Core.Maybe [GoogleCloudDialogflowCxV3SessionEntityType]),
+    -- | Optional. Configure lifetime of the Dialogflow session. By default, a Dialogflow session remains active and its data is stored for 30 minutes after the last request is sent for the session. This value should be no longer than 1 day.
+    sessionTtl :: (Core.Maybe Core.Duration),
+    -- | The time zone of this conversational query from the <https://www.iana.org/time-zones time zone database>, e.g., America\/New_York, Europe\/Paris. If not provided, the time zone specified in the agent is used.
+    timeZone :: (Core.Maybe Core.Text),
+    -- | This field can be used to pass HTTP headers for a webhook call. These headers will be sent to webhook along with the headers that have been configured through Dialogflow web console. The headers defined within this field will overwrite the headers configured through Dialogflow console if there is a conflict. Header names are case-insensitive. Google\'s specified headers are not allowed. Including: \"Host\", \"Content-Length\", \"Connection\", \"From\", \"User-Agent\", \"Accept-Encoding\", \"If-Modified-Since\", \"If-None-Match\", \"X-Forwarded-For\", etc.
+    webhookHeaders ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryParameters ::
+  GoogleCloudDialogflowCxV3QueryParameters
+newGoogleCloudDialogflowCxV3QueryParameters =
+  GoogleCloudDialogflowCxV3QueryParameters
+    { analyzeQueryTextSentiment =
+        Core.Nothing,
+      channel = Core.Nothing,
+      currentPage = Core.Nothing,
+      disableWebhook = Core.Nothing,
+      endUserMetadata = Core.Nothing,
+      flowVersions = Core.Nothing,
+      geoLocation = Core.Nothing,
+      parameters = Core.Nothing,
+      payload = Core.Nothing,
+      populateDataStoreConnectionSignals = Core.Nothing,
+      searchConfig = Core.Nothing,
+      sessionEntityTypes = Core.Nothing,
+      sessionTtl = Core.Nothing,
+      timeZone = Core.Nothing,
+      webhookHeaders = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3QueryParameters where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryParameters
+            Core.<$> (o Core..:? "analyzeQueryTextSentiment")
+            Core.<*> (o Core..:? "channel")
+            Core.<*> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "disableWebhook")
+            Core.<*> (o Core..:? "endUserMetadata")
+            Core.<*> (o Core..:? "flowVersions")
+            Core.<*> (o Core..:? "geoLocation")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "populateDataStoreConnectionSignals")
+            Core.<*> (o Core..:? "searchConfig")
+            Core.<*> (o Core..:? "sessionEntityTypes")
+            Core.<*> (o Core..:? "sessionTtl")
+            Core.<*> (o Core..:? "timeZone")
+            Core.<*> (o Core..:? "webhookHeaders")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3QueryParameters where
+  toJSON GoogleCloudDialogflowCxV3QueryParameters {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("analyzeQueryTextSentiment" Core..=)
+              Core.<$> analyzeQueryTextSentiment,
+            ("channel" Core..=) Core.<$> channel,
+            ("currentPage" Core..=) Core.<$> currentPage,
+            ("disableWebhook" Core..=) Core.<$> disableWebhook,
+            ("endUserMetadata" Core..=) Core.<$> endUserMetadata,
+            ("flowVersions" Core..=) Core.<$> flowVersions,
+            ("geoLocation" Core..=) Core.<$> geoLocation,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("payload" Core..=) Core.<$> payload,
+            ("populateDataStoreConnectionSignals" Core..=)
+              Core.<$> populateDataStoreConnectionSignals,
+            ("searchConfig" Core..=) Core.<$> searchConfig,
+            ("sessionEntityTypes" Core..=) Core.<$> sessionEntityTypes,
+            ("sessionTtl" Core..=) Core.<$> sessionTtl,
+            ("timeZone" Core..=) Core.<$> timeZone,
+            ("webhookHeaders" Core..=) Core.<$> webhookHeaders
+          ]
+      )
+
+-- | Optional. Information about the end-user to improve the relevance and accuracy of generative answers. This will be interpreted and used by a language model, so, for good results, the data should be self-descriptive, and in a simple structure. Example: @json { \"subscription plan\": \"Business Premium Plus\", \"devices owned\": [ {\"model\": \"Google Pixel 7\"}, {\"model\": \"Google Pixel Tablet\"} ] }@
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata = GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+  additional =
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata {..} =
+    Core.toJSON additional
+
+-- | Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. You can reference the session parameters in the agent with the following format: $session.params.parameter-id. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryParameters_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryParameters_Parameters = GoogleCloudDialogflowCxV3QueryParameters_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryParameters_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryParameters_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryParameters_Parameters
+newGoogleCloudDialogflowCxV3QueryParameters_Parameters additional =
+  GoogleCloudDialogflowCxV3QueryParameters_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryParameters_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryParameters_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryParameters_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryParameters_Parameters
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryParameters_Parameters {..} =
+    Core.toJSON additional
+
+-- | This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: @{ \"telephony\": { \"caller_id\": \"+18558363987\" } }@
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryParameters_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryParameters_Payload = GoogleCloudDialogflowCxV3QueryParameters_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryParameters_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryParameters_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryParameters_Payload
+newGoogleCloudDialogflowCxV3QueryParameters_Payload additional =
+  GoogleCloudDialogflowCxV3QueryParameters_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryParameters_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryParameters_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryParameters_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryParameters_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryParameters_Payload {..} =
+    Core.toJSON additional
+
+-- | This field can be used to pass HTTP headers for a webhook call. These headers will be sent to webhook along with the headers that have been configured through Dialogflow web console. The headers defined within this field will overwrite the headers configured through Dialogflow console if there is a conflict. Header names are case-insensitive. Google\'s specified headers are not allowed. Including: \"Host\", \"Content-Length\", \"Connection\", \"From\", \"User-Agent\", \"Accept-Encoding\", \"If-Modified-Since\", \"If-None-Match\", \"X-Forwarded-For\", etc.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders = GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+  additional =
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders {..} =
+    Core.toJSON additional
+
+-- | Represents the result of a conversational query.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryResult' smart constructor.
+data GoogleCloudDialogflowCxV3QueryResult = GoogleCloudDialogflowCxV3QueryResult
+  { -- | Returns the current advanced settings including IVR settings. Even though the operations configured by these settings are performed by Dialogflow, the client may need to perform special logic at the moment. For example, if Dialogflow exports audio to Google Cloud Storage, then the client may need to wait for the resulting object to appear in the bucket before proceeding.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3AdvancedSettings),
+    -- | Indicates whether the Thumbs up\/Thumbs down rating controls are need to be shown for the response in the Dialogflow Messenger widget.
+    allowAnswerFeedback :: (Core.Maybe Core.Bool),
+    -- | The current Page. Some, not all fields are filled in this message, including but not limited to @name@ and @display_name@.
+    currentPage :: (Core.Maybe GoogleCloudDialogflowCxV3Page),
+    -- | Optional. Data store connection feature output signals. Filled only when data stores are involved in serving the query.
+    dataStoreConnectionSignals :: (Core.Maybe GoogleCloudDialogflowCxV3DataStoreConnectionSignals),
+    -- | The free-form diagnostic info. For example, this field could contain webhook call latency. The fields of this data can change without notice, so you should not write code that depends on its structure. One of the fields is called \"Alternative Matched Intents\", which may aid with debugging. The following describes these intent results: - The list is empty if no intent was matched to end-user input. - Only intents that are referenced in the currently active flow are included. - The matched intent is included. - Other intents that could have matched end-user input, but did not match because they are referenced by intent routes that are out of <https://cloud.google.com/dialogflow/cx/docs/concept/handler#scope scope>, are included. - Other intents referenced by intent routes in scope that matched end-user input, but had a lower confidence score.
+    diagnosticInfo :: (Core.Maybe GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo),
+    -- | If a DTMF was provided as input, this field will contain a copy of the DtmfInput.
+    dtmf :: (Core.Maybe GoogleCloudDialogflowCxV3DtmfInput),
+    -- | The Intent that matched the conversational query. Some, not all fields are filled in this message, including but not limited to: @name@ and @display_name@. This field is deprecated, please use QueryResult.match instead.
+    intent :: (Core.Maybe GoogleCloudDialogflowCxV3Intent),
+    -- | The intent detection confidence. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation. This field is deprecated, please use QueryResult.match instead.
+    intentDetectionConfidence :: (Core.Maybe Core.Double),
+    -- | The language that was triggered during intent detection. See <https://cloud.google.com/dialogflow/cx/docs/reference/language Language Support> for a list of the currently supported language codes.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Intent match result, could be an intent or an event.
+    match :: (Core.Maybe GoogleCloudDialogflowCxV3Match),
+    -- | The collected session parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowCxV3QueryResult_Parameters),
+    -- | The list of rich messages returned to the client. Responses vary from simple text messages to more sophisticated, structured payloads used to drive complex logic.
+    responseMessages :: (Core.Maybe [GoogleCloudDialogflowCxV3ResponseMessage]),
+    -- | The sentiment analyss result, which depends on @analyze_query_text_sentiment@, specified in the request.
+    sentimentAnalysisResult :: (Core.Maybe GoogleCloudDialogflowCxV3SentimentAnalysisResult),
+    -- | If natural language text was provided as input, this field will contain a copy of the text.
+    text :: (Core.Maybe Core.Text),
+    -- | If natural language speech audio was provided as input, this field will contain the transcript for the audio.
+    transcript :: (Core.Maybe Core.Text),
+    -- | If an event was provided as input, this field will contain the name of the event.
+    triggerEvent :: (Core.Maybe Core.Text),
+    -- | If an intent was provided as input, this field will contain a copy of the intent identifier. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    triggerIntent :: (Core.Maybe Core.Text),
+    -- | The list of webhook payload in WebhookResponse.payload, in the order of call sequence. If some webhook call fails or doesn\'t return any payload, an empty @Struct@ would be used instead.
+    webhookPayloads ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem]
+      ),
+    -- | The list of webhook call status in the order of call sequence.
+    webhookStatuses :: (Core.Maybe [GoogleRpcStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryResult ::
+  GoogleCloudDialogflowCxV3QueryResult
+newGoogleCloudDialogflowCxV3QueryResult =
+  GoogleCloudDialogflowCxV3QueryResult
+    { advancedSettings =
+        Core.Nothing,
+      allowAnswerFeedback = Core.Nothing,
+      currentPage = Core.Nothing,
+      dataStoreConnectionSignals = Core.Nothing,
+      diagnosticInfo = Core.Nothing,
+      dtmf = Core.Nothing,
+      intent = Core.Nothing,
+      intentDetectionConfidence = Core.Nothing,
+      languageCode = Core.Nothing,
+      match = Core.Nothing,
+      parameters = Core.Nothing,
+      responseMessages = Core.Nothing,
+      sentimentAnalysisResult = Core.Nothing,
+      text = Core.Nothing,
+      transcript = Core.Nothing,
+      triggerEvent = Core.Nothing,
+      triggerIntent = Core.Nothing,
+      webhookPayloads = Core.Nothing,
+      webhookStatuses = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3QueryResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryResult
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "allowAnswerFeedback")
+            Core.<*> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "dataStoreConnectionSignals")
+            Core.<*> (o Core..:? "diagnosticInfo")
+            Core.<*> (o Core..:? "dtmf")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "intentDetectionConfidence")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "match")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "responseMessages")
+            Core.<*> (o Core..:? "sentimentAnalysisResult")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "transcript")
+            Core.<*> (o Core..:? "triggerEvent")
+            Core.<*> (o Core..:? "triggerIntent")
+            Core.<*> (o Core..:? "webhookPayloads")
+            Core.<*> (o Core..:? "webhookStatuses")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3QueryResult where
+  toJSON GoogleCloudDialogflowCxV3QueryResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("allowAnswerFeedback" Core..=) Core.<$> allowAnswerFeedback,
+            ("currentPage" Core..=) Core.<$> currentPage,
+            ("dataStoreConnectionSignals" Core..=)
+              Core.<$> dataStoreConnectionSignals,
+            ("diagnosticInfo" Core..=) Core.<$> diagnosticInfo,
+            ("dtmf" Core..=) Core.<$> dtmf,
+            ("intent" Core..=) Core.<$> intent,
+            ("intentDetectionConfidence" Core..=)
+              Core.<$> intentDetectionConfidence,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("match" Core..=) Core.<$> match,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("responseMessages" Core..=) Core.<$> responseMessages,
+            ("sentimentAnalysisResult" Core..=)
+              Core.<$> sentimentAnalysisResult,
+            ("text" Core..=) Core.<$> text,
+            ("transcript" Core..=) Core.<$> transcript,
+            ("triggerEvent" Core..=) Core.<$> triggerEvent,
+            ("triggerIntent" Core..=) Core.<$> triggerIntent,
+            ("webhookPayloads" Core..=) Core.<$> webhookPayloads,
+            ("webhookStatuses" Core..=) Core.<$> webhookStatuses
+          ]
+      )
+
+-- | The free-form diagnostic info. For example, this field could contain webhook call latency. The fields of this data can change without notice, so you should not write code that depends on its structure. One of the fields is called \"Alternative Matched Intents\", which may aid with debugging. The following describes these intent results: - The list is empty if no intent was matched to end-user input. - Only intents that are referenced in the currently active flow are included. - The matched intent is included. - Other intents that could have matched end-user input, but did not match because they are referenced by intent routes that are out of <https://cloud.google.com/dialogflow/cx/docs/concept/handler#scope scope>, are included. - Other intents referenced by intent routes in scope that matched end-user input, but had a lower confidence score.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo = GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo additional =
+  GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo {..} =
+    Core.toJSON additional
+
+-- | The collected session parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryResult_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryResult_Parameters = GoogleCloudDialogflowCxV3QueryResult_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryResult_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryResult_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryResult_Parameters
+newGoogleCloudDialogflowCxV3QueryResult_Parameters additional =
+  GoogleCloudDialogflowCxV3QueryResult_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryResult_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryResult_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryResult_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryResult_Parameters
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryResult_Parameters {..} =
+    Core.toJSON additional
+
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem' smart constructor.
+newtype GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem = GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+  additional =
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem"
+      ( \o ->
+          GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+  where
+  toJSON GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem {..} =
+    Core.toJSON additional
+
+-- | Resource name and display name.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResourceName' smart constructor.
+data GoogleCloudDialogflowCxV3ResourceName = GoogleCloudDialogflowCxV3ResourceName
+  { -- | Display name.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Name.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResourceName' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResourceName ::
+  GoogleCloudDialogflowCxV3ResourceName
+newGoogleCloudDialogflowCxV3ResourceName =
+  GoogleCloudDialogflowCxV3ResourceName
+    { displayName = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ResourceName where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResourceName"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResourceName
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ResourceName where
+  toJSON GoogleCloudDialogflowCxV3ResourceName {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Represents a response message that can be returned by a conversational agent. Response messages are also used for output audio synthesis. The approach is as follows: * If at least one OutputAudioText response is present, then all OutputAudioText responses are linearly concatenated, and the result is used for output audio synthesis. * If the OutputAudioText responses are a mixture of text and SSML, then the concatenated result is treated as SSML; otherwise, the result is treated as either text or SSML as appropriate. The agent designer should ideally use either text or SSML consistently throughout the bot design. * Otherwise, all Text responses are linearly concatenated, and the result is used for output audio synthesis. This approach allows for more sophisticated user experience scenarios, where the text displayed to the user may differ from what is heard.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessage' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessage = GoogleCloudDialogflowCxV3ResponseMessage
+  { -- | The channel which the response is associated with. Clients can specify the channel via QueryParameters.channel, and only associated channel response will be returned.
+    channel :: (Core.Maybe Core.Text),
+    -- | Indicates that the conversation succeeded.
+    conversationSuccess ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+      ),
+    -- | Output only. A signal that indicates the interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only when the conversation reaches @END_SESSION@ page. It is not supposed to be defined by the user. It\'s guaranteed that there is at most one such message in each response.
+    endInteraction :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessageEndInteraction),
+    -- | Represents info card for knowledge answers, to be better rendered in Dialogflow Messenger.
+    knowledgeInfoCard ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+      ),
+    -- | Hands off conversation to a human agent.
+    liveAgentHandoff ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+      ),
+    -- | Output only. An audio response message composed of both the synthesized Dialogflow agent responses and responses defined via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.
+    mixedAudio :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessageMixedAudio),
+    -- | A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.
+    outputAudioText ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+      ),
+    -- | Returns a response containing a custom, platform-specific payload.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessage_Payload),
+    -- | Signal that the client should play an audio clip hosted at a client-specific URI. Dialogflow uses this to construct mixed_audio. However, Dialogflow itself does not try to read or process the URI in any way.
+    playAudio :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessagePlayAudio),
+    -- | Response type.
+    responseType :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessage_ResponseType),
+    -- | A signal that the client should transfer the phone call connected to this agent to a third-party endpoint.
+    telephonyTransferCall ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+      ),
+    -- | Returns a text response.
+    text :: (Core.Maybe GoogleCloudDialogflowCxV3ResponseMessageText)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessage ::
+  GoogleCloudDialogflowCxV3ResponseMessage
+newGoogleCloudDialogflowCxV3ResponseMessage =
+  GoogleCloudDialogflowCxV3ResponseMessage
+    { channel = Core.Nothing,
+      conversationSuccess = Core.Nothing,
+      endInteraction = Core.Nothing,
+      knowledgeInfoCard = Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      mixedAudio = Core.Nothing,
+      outputAudioText = Core.Nothing,
+      payload = Core.Nothing,
+      playAudio = Core.Nothing,
+      responseType = Core.Nothing,
+      telephonyTransferCall = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ResponseMessage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessage
+            Core.<$> (o Core..:? "channel")
+            Core.<*> (o Core..:? "conversationSuccess")
+            Core.<*> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "knowledgeInfoCard")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "mixedAudio")
+            Core.<*> (o Core..:? "outputAudioText")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "playAudio")
+            Core.<*> (o Core..:? "responseType")
+            Core.<*> (o Core..:? "telephonyTransferCall")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ResponseMessage where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("channel" Core..=) Core.<$> channel,
+            ("conversationSuccess" Core..=) Core.<$> conversationSuccess,
+            ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("knowledgeInfoCard" Core..=) Core.<$> knowledgeInfoCard,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("mixedAudio" Core..=) Core.<$> mixedAudio,
+            ("outputAudioText" Core..=) Core.<$> outputAudioText,
+            ("payload" Core..=) Core.<$> payload,
+            ("playAudio" Core..=) Core.<$> playAudio,
+            ("responseType" Core..=) Core.<$> responseType,
+            ("telephonyTransferCall" Core..=) Core.<$> telephonyTransferCall,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Returns a response containing a custom, platform-specific payload.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessage_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessage_Payload = GoogleCloudDialogflowCxV3ResponseMessage_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessage_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessage_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3ResponseMessage_Payload
+newGoogleCloudDialogflowCxV3ResponseMessage_Payload additional =
+  GoogleCloudDialogflowCxV3ResponseMessage_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessage_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessage_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessage_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessage_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessage_Payload {..} =
+    Core.toJSON additional
+
+-- | Indicates that the conversation succeeded, i.e., the bot handled the issue that the customer talked to it about. Dialogflow only uses this to determine which conversations should be counted as successful and doesn\'t process the metadata in this message in any way. Note that Dialogflow also considers conversations that get to the conversation end page as successful even if they don\'t return ConversationSuccess. You may set this, for example: * In the entry_fulfillment of a Page if entering the page indicates that the conversation succeeded. * In a webhook response when you determine that you handled the customer issue.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess = GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+  { -- | Custom metadata. Dialogflow doesn\'t impose any structure on this.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess ::
+  GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess =
+  GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+    { metadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+            Core.<$> (o Core..:? "metadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess {..} =
+      Core.object
+        (Core.catMaybes [("metadata" Core..=) Core.<$> metadata])
+
+-- | Custom metadata. Dialogflow doesn\'t impose any structure on this.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata = GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+  additional =
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata {..} =
+      Core.toJSON additional
+
+-- | Indicates that interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only and not supposed to be defined by the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessageEndInteraction = GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageEndInteraction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction ::
+  GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction =
+  GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageEndInteraction"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Represents info card response. If the response contains generative knowledge prediction, Dialogflow will return a payload with Infobot Messenger compatible info card. Otherwise, the info card response is skipped.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard = GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard ::
+  GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard =
+  GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Indicates that the conversation should be handed off to a live agent. Dialogflow only uses this to determine which conversations were handed off to a human agent for measurement purposes. What else to do with this signal is up to you and your handoff procedures. You may set this, for example: * In the entry_fulfillment of a Page if entering the page indicates something went extremely wrong in the conversation. * In a webhook response when you determine that the customer issue can only be handled by a human.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff = GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+  { -- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff ::
+  GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff =
+  GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+    { metadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+            Core.<$> (o Core..:? "metadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+  where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff {..} =
+    Core.object
+      (Core.catMaybes [("metadata" Core..=) Core.<$> metadata])
+
+-- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata = GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+  additional =
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata {..} =
+      Core.toJSON additional
+
+-- | Represents an audio message that is composed of both segments synthesized from the Dialogflow agent prompts and ones hosted externally at the specified URIs. The external URIs are specified via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageMixedAudio = GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+  { -- | Segments this audio response is composed of.
+    segments ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageMixedAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio ::
+  GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio =
+  GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+    { segments =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageMixedAudio"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+            Core.<$> (o Core..:? "segments")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+  where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessageMixedAudio {..} =
+    Core.object
+      (Core.catMaybes [("segments" Core..=) Core.<$> segments])
+
+-- | Represents one segment of audio.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment = GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+  { -- | Output only. Whether the playback of this segment can be interrupted by the end user\'s speech and the client should then start the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Raw audio synthesized from the Dialogflow agent\'s response using the output config specified in the request.
+    audio :: (Core.Maybe Core.Base64),
+    -- | Client-specific URI that points to an audio clip accessible to the client. Dialogflow does not impose any validation on it.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment ::
+  GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment =
+  GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      audio = Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "audio")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("allowPlaybackInterruption" Core..=)
+                Core.<$> allowPlaybackInterruption,
+              ("audio" Core..=) Core.<$> audio,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText = GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | The SSML text to be synthesized. For more information, see </speech/text-to-speech/docs/ssml SSML>.
+    ssml :: (Core.Maybe Core.Text),
+    -- | The raw text to be synthesized.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText ::
+  GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText =
+  GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      ssml = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "ssml")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+  where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowPlaybackInterruption" Core..=)
+              Core.<$> allowPlaybackInterruption,
+            ("ssml" Core..=) Core.<$> ssml,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Specifies an audio clip to be played by the client as part of the response.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessagePlayAudio = GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Required. URI of the audio clip. Dialogflow does not impose any validation on this value. It is specific to the client that reads it.
+    audioUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessagePlayAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio ::
+  GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio =
+  GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      audioUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessagePlayAudio"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "audioUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+  where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessagePlayAudio {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowPlaybackInterruption" Core..=)
+              Core.<$> allowPlaybackInterruption,
+            ("audioUri" Core..=) Core.<$> audioUri
+          ]
+      )
+
+-- | Represents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall' smart constructor.
+newtype GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall = GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+  { -- | Transfer the call to a phone number in <https://en.wikipedia.org/wiki/E.164 E.164 format>.
+    phoneNumber :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall ::
+  GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall =
+  GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+    { phoneNumber =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+            Core.<$> (o Core..:? "phoneNumber")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall {..} =
+      Core.object
+        (Core.catMaybes [("phoneNumber" Core..=) Core.<$> phoneNumber])
+
+-- | The text response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ResponseMessageText' smart constructor.
+data GoogleCloudDialogflowCxV3ResponseMessageText = GoogleCloudDialogflowCxV3ResponseMessageText
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Required. A collection of text response variants. If multiple variants are defined, only one text response variant is returned at runtime.
+    text :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ResponseMessageText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ResponseMessageText ::
+  GoogleCloudDialogflowCxV3ResponseMessageText
+newGoogleCloudDialogflowCxV3ResponseMessageText =
+  GoogleCloudDialogflowCxV3ResponseMessageText
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ResponseMessageText where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ResponseMessageText"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ResponseMessageText
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ResponseMessageText where
+  toJSON GoogleCloudDialogflowCxV3ResponseMessageText {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowPlaybackInterruption" Core..=)
+              Core.<$> allowPlaybackInterruption,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | The request message for Agents.RestoreAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RestoreAgentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3RestoreAgentRequest = GoogleCloudDialogflowCxV3RestoreAgentRequest
+  { -- | Uncompressed raw byte content for agent.
+    agentContent :: (Core.Maybe Core.Base64),
+    -- | The <https://cloud.google.com/storage/docs/ Google Cloud Storage> URI to restore agent from. The format of this URI must be @gs:\/\/\/@. Dialogflow performs a read operation for the Cloud Storage object on the caller\'s behalf, so your request authentication must have read permissions for the object. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage Dialogflow access control>.
+    agentUri :: (Core.Maybe Core.Text),
+    -- | Setting for restoring from a git branch
+    gitSource :: (Core.Maybe GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource),
+    -- | Agent restore mode. If not specified, @KEEP@ is assumed.
+    restoreOption ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RestoreAgentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RestoreAgentRequest ::
+  GoogleCloudDialogflowCxV3RestoreAgentRequest
+newGoogleCloudDialogflowCxV3RestoreAgentRequest =
+  GoogleCloudDialogflowCxV3RestoreAgentRequest
+    { agentContent =
+        Core.Nothing,
+      agentUri = Core.Nothing,
+      gitSource = Core.Nothing,
+      restoreOption = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RestoreAgentRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RestoreAgentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RestoreAgentRequest
+            Core.<$> (o Core..:? "agentContent")
+            Core.<*> (o Core..:? "agentUri")
+            Core.<*> (o Core..:? "gitSource")
+            Core.<*> (o Core..:? "restoreOption")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RestoreAgentRequest where
+  toJSON GoogleCloudDialogflowCxV3RestoreAgentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentContent" Core..=) Core.<$> agentContent,
+            ("agentUri" Core..=) Core.<$> agentUri,
+            ("gitSource" Core..=) Core.<$> gitSource,
+            ("restoreOption" Core..=) Core.<$> restoreOption
+          ]
+      )
+
+-- | Settings for restoring from a git branch
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource' smart constructor.
+newtype GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource = GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+  { -- | tracking branch for the git pull
+    trackingBranch :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource ::
+  GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource =
+  GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+    { trackingBranch =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+            Core.<$> (o Core..:? "trackingBranch")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+  where
+  toJSON GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource {..} =
+    Core.object
+      ( Core.catMaybes
+          [("trackingBranch" Core..=) Core.<$> trackingBranch]
+      )
+
+-- | The configuration for auto rollout.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RolloutConfig' smart constructor.
+data GoogleCloudDialogflowCxV3RolloutConfig = GoogleCloudDialogflowCxV3RolloutConfig
+  { -- | The conditions that are used to evaluate the failure of a rollout step. If not specified, no rollout steps will fail. E.g. \"containment/rate \< 10% OR average/turn_count \< 3\". See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>.
+    failureCondition :: (Core.Maybe Core.Text),
+    -- | The conditions that are used to evaluate the success of a rollout step. If not specified, all rollout steps will proceed to the next one unless failure conditions are met. E.g. \"containment/rate > 60% AND callback/rate \< 20%\". See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>.
+    rolloutCondition :: (Core.Maybe Core.Text),
+    -- | Steps to roll out a flow version. Steps should be sorted by percentage in ascending order.
+    rolloutSteps :: (Core.Maybe [GoogleCloudDialogflowCxV3RolloutConfigRolloutStep])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RolloutConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RolloutConfig ::
+  GoogleCloudDialogflowCxV3RolloutConfig
+newGoogleCloudDialogflowCxV3RolloutConfig =
+  GoogleCloudDialogflowCxV3RolloutConfig
+    { failureCondition =
+        Core.Nothing,
+      rolloutCondition = Core.Nothing,
+      rolloutSteps = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RolloutConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RolloutConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RolloutConfig
+            Core.<$> (o Core..:? "failureCondition")
+            Core.<*> (o Core..:? "rolloutCondition")
+            Core.<*> (o Core..:? "rolloutSteps")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RolloutConfig where
+  toJSON GoogleCloudDialogflowCxV3RolloutConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("failureCondition" Core..=) Core.<$> failureCondition,
+            ("rolloutCondition" Core..=) Core.<$> rolloutCondition,
+            ("rolloutSteps" Core..=) Core.<$> rolloutSteps
+          ]
+      )
+
+-- | A single rollout step with specified traffic allocation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep' smart constructor.
+data GoogleCloudDialogflowCxV3RolloutConfigRolloutStep = GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+  { -- | The name of the rollout step;
+    displayName :: (Core.Maybe Core.Text),
+    -- | The minimum time that this step should last. Should be longer than 1 hour. If not set, the default minimum duration for each step will be 1 hour.
+    minDuration :: (Core.Maybe Core.Duration),
+    -- | The percentage of traffic allocated to the flow version of this rollout step. (0%, 100%].
+    trafficPercent :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RolloutConfigRolloutStep' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep ::
+  GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep =
+  GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+    { displayName =
+        Core.Nothing,
+      minDuration = Core.Nothing,
+      trafficPercent = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RolloutConfigRolloutStep"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "minDuration")
+            Core.<*> (o Core..:? "trafficPercent")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+  where
+  toJSON GoogleCloudDialogflowCxV3RolloutConfigRolloutStep {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("minDuration" Core..=) Core.<$> minDuration,
+            ("trafficPercent" Core..=) Core.<$> trafficPercent
+          ]
+      )
+
+-- | State of the auto-rollout process.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RolloutState' smart constructor.
+data GoogleCloudDialogflowCxV3RolloutState = GoogleCloudDialogflowCxV3RolloutState
+  { -- | Start time of the current step.
+    startTime :: (Core.Maybe Core.DateTime),
+    -- | Display name of the current auto rollout step.
+    step :: (Core.Maybe Core.Text),
+    -- | Index of the current step in the auto rollout steps list.
+    stepIndex :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RolloutState' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RolloutState ::
+  GoogleCloudDialogflowCxV3RolloutState
+newGoogleCloudDialogflowCxV3RolloutState =
+  GoogleCloudDialogflowCxV3RolloutState
+    { startTime = Core.Nothing,
+      step = Core.Nothing,
+      stepIndex = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RolloutState where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RolloutState"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RolloutState
+            Core.<$> (o Core..:? "startTime")
+            Core.<*> (o Core..:? "step")
+            Core.<*> (o Core..:? "stepIndex")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RolloutState where
+  toJSON GoogleCloudDialogflowCxV3RolloutState {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("startTime" Core..=) Core.<$> startTime,
+            ("step" Core..=) Core.<$> step,
+            ("stepIndex" Core..=) Core.<$> stepIndex
+          ]
+      )
+
+-- | Metadata returned for the Environments.RunContinuousTest long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunContinuousTestMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3RunContinuousTestMetadata = GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+  { -- | The test errors.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunContinuousTestMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunContinuousTestMetadata ::
+  GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+newGoogleCloudDialogflowCxV3RunContinuousTestMetadata =
+  GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunContinuousTestMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3RunContinuousTestMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The request message for Environments.RunContinuousTest.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunContinuousTestRequest' smart constructor.
+data GoogleCloudDialogflowCxV3RunContinuousTestRequest = GoogleCloudDialogflowCxV3RunContinuousTestRequest
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunContinuousTestRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunContinuousTestRequest ::
+  GoogleCloudDialogflowCxV3RunContinuousTestRequest
+newGoogleCloudDialogflowCxV3RunContinuousTestRequest =
+  GoogleCloudDialogflowCxV3RunContinuousTestRequest
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunContinuousTestRequest"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3RunContinuousTestRequest
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestRequest
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for Environments.RunContinuousTest.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunContinuousTestResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3RunContinuousTestResponse = GoogleCloudDialogflowCxV3RunContinuousTestResponse
+  { -- | The result for a continuous test run.
+    continuousTestResult :: (Core.Maybe GoogleCloudDialogflowCxV3ContinuousTestResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunContinuousTestResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunContinuousTestResponse ::
+  GoogleCloudDialogflowCxV3RunContinuousTestResponse
+newGoogleCloudDialogflowCxV3RunContinuousTestResponse =
+  GoogleCloudDialogflowCxV3RunContinuousTestResponse
+    { continuousTestResult =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunContinuousTestResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RunContinuousTestResponse
+            Core.<$> (o Core..:? "continuousTestResult")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3RunContinuousTestResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3RunContinuousTestResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [("continuousTestResult" Core..=) Core.<$> continuousTestResult]
+      )
+
+-- | Metadata returned for the TestCases.RunTestCase long running operation. This message currently has no fields.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunTestCaseMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3RunTestCaseMetadata = GoogleCloudDialogflowCxV3RunTestCaseMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunTestCaseMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunTestCaseMetadata ::
+  GoogleCloudDialogflowCxV3RunTestCaseMetadata
+newGoogleCloudDialogflowCxV3RunTestCaseMetadata =
+  GoogleCloudDialogflowCxV3RunTestCaseMetadata
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RunTestCaseMetadata where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunTestCaseMetadata"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3RunTestCaseMetadata)
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RunTestCaseMetadata where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for TestCases.RunTestCase.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunTestCaseRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3RunTestCaseRequest = GoogleCloudDialogflowCxV3RunTestCaseRequest
+  { -- | Optional. Environment name. If not set, draft environment is assumed. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    environment :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunTestCaseRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunTestCaseRequest ::
+  GoogleCloudDialogflowCxV3RunTestCaseRequest
+newGoogleCloudDialogflowCxV3RunTestCaseRequest =
+  GoogleCloudDialogflowCxV3RunTestCaseRequest
+    { environment =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RunTestCaseRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunTestCaseRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RunTestCaseRequest
+            Core.<$> (o Core..:? "environment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RunTestCaseRequest where
+  toJSON GoogleCloudDialogflowCxV3RunTestCaseRequest {..} =
+    Core.object
+      (Core.catMaybes [("environment" Core..=) Core.<$> environment])
+
+-- | The response message for TestCases.RunTestCase.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3RunTestCaseResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3RunTestCaseResponse = GoogleCloudDialogflowCxV3RunTestCaseResponse
+  { -- | The result.
+    result :: (Core.Maybe GoogleCloudDialogflowCxV3TestCaseResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3RunTestCaseResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3RunTestCaseResponse ::
+  GoogleCloudDialogflowCxV3RunTestCaseResponse
+newGoogleCloudDialogflowCxV3RunTestCaseResponse =
+  GoogleCloudDialogflowCxV3RunTestCaseResponse
+    { result =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3RunTestCaseResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3RunTestCaseResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3RunTestCaseResponse
+            Core.<$> (o Core..:? "result")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3RunTestCaseResponse where
+  toJSON GoogleCloudDialogflowCxV3RunTestCaseResponse {..} =
+    Core.object (Core.catMaybes [("result" Core..=) Core.<$> result])
+
+-- | Settings for Generative Safety.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SafetySettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3SafetySettings = GoogleCloudDialogflowCxV3SafetySettings
+  { -- | Banned phrases for generated text.
+    bannedPhrases :: (Core.Maybe [GoogleCloudDialogflowCxV3SafetySettingsPhrase])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SafetySettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SafetySettings ::
+  GoogleCloudDialogflowCxV3SafetySettings
+newGoogleCloudDialogflowCxV3SafetySettings =
+  GoogleCloudDialogflowCxV3SafetySettings
+    { bannedPhrases =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3SafetySettings where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SafetySettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SafetySettings
+            Core.<$> (o Core..:? "bannedPhrases")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SafetySettings where
+  toJSON GoogleCloudDialogflowCxV3SafetySettings {..} =
+    Core.object
+      (Core.catMaybes [("bannedPhrases" Core..=) Core.<$> bannedPhrases])
+
+-- | Text input which can be used for prompt or banned phrases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SafetySettingsPhrase' smart constructor.
+data GoogleCloudDialogflowCxV3SafetySettingsPhrase = GoogleCloudDialogflowCxV3SafetySettingsPhrase
+  { -- | Required. Language code of the phrase.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. Text input which can be used for prompt or banned phrases.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SafetySettingsPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SafetySettingsPhrase ::
+  GoogleCloudDialogflowCxV3SafetySettingsPhrase
+newGoogleCloudDialogflowCxV3SafetySettingsPhrase =
+  GoogleCloudDialogflowCxV3SafetySettingsPhrase
+    { languageCode =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SafetySettingsPhrase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SafetySettingsPhrase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SafetySettingsPhrase
+            Core.<$> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SafetySettingsPhrase where
+  toJSON GoogleCloudDialogflowCxV3SafetySettingsPhrase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("languageCode" Core..=) Core.<$> languageCode,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Search configuration for UCS search queries.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SearchConfig' smart constructor.
+data GoogleCloudDialogflowCxV3SearchConfig = GoogleCloudDialogflowCxV3SearchConfig
+  { -- | Optional. Boosting configuration for the datastores. Maps from datastore name to their boost configuration. Do not specify more than one BoostSpecs for each datastore name. If multiple BoostSpecs are provided for the same datastore name, the behavior is undefined.
+    boostSpecs :: (Core.Maybe [GoogleCloudDialogflowCxV3BoostSpecs]),
+    -- | Optional. Filter configuration for the datastores. Maps from datastore name to the filter expression for that datastore. Do not specify more than one FilterSpecs for each datastore name. If multiple FilterSpecs are provided for the same datastore name, the behavior is undefined.
+    filterSpecs :: (Core.Maybe [GoogleCloudDialogflowCxV3FilterSpecs])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SearchConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SearchConfig ::
+  GoogleCloudDialogflowCxV3SearchConfig
+newGoogleCloudDialogflowCxV3SearchConfig =
+  GoogleCloudDialogflowCxV3SearchConfig
+    { boostSpecs = Core.Nothing,
+      filterSpecs = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3SearchConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SearchConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SearchConfig
+            Core.<$> (o Core..:? "boostSpecs")
+            Core.<*> (o Core..:? "filterSpecs")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SearchConfig where
+  toJSON GoogleCloudDialogflowCxV3SearchConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("boostSpecs" Core..=) Core.<$> boostSpecs,
+            ("filterSpecs" Core..=) Core.<$> filterSpecs
+          ]
+      )
+
+-- | Represents the settings related to security issues, such as data redaction and data retention. It may take hours for updates on the settings to propagate to all the related components and take effect.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SecuritySettings' smart constructor.
+data GoogleCloudDialogflowCxV3SecuritySettings = GoogleCloudDialogflowCxV3SecuritySettings
+  { -- | Controls audio export settings for post-conversation analytics when ingesting audio to conversations via Participants.AnalyzeContent or Participants.StreamingAnalyzeContent. If retention/strategy is set to REMOVE/AFTER/CONVERSATION or audio/export/settings.gcs/bucket is empty, audio export is disabled. If audio export is enabled, audio is recorded and saved to audio/export/settings.gcs/bucket, subject to retention policy of audio/export/settings.gcs/bucket. This setting won\'t effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.
+    audioExportSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+      ),
+    -- | <https://cloud.google.com/dlp/docs DLP> deidentify template name. Use this template to define de-identification configuration for the content. The @DLP De-identify Templates Reader@ role is needed on the Dialogflow service identity service account (has the form @service-PROJECT_NUMBER\@gcp-sa-dialogflow.iam.gserviceaccount.com@) for your agent\'s project. If empty, Dialogflow replaces sensitive info with @[redacted]@ text. The template name will have one of the following formats: @projects\/\/locations\/\/deidentifyTemplates\/@ OR @organizations\/\/locations\/\/deidentifyTemplates\/@ Note: @deidentify_template@ must be located in the same region as the @SecuritySettings@.
+    deidentifyTemplate :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the security settings, unique within the location.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Controls conversation exporting settings to Insights after conversation is completed. If retention/strategy is set to REMOVE/AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.
+    insightsExportSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+      ),
+    -- | <https://cloud.google.com/dlp/docs DLP> inspect template name. Use this template to define inspect base settings. The @DLP Inspect Templates Reader@ role is needed on the Dialogflow service identity service account (has the form @service-PROJECT_NUMBER\@gcp-sa-dialogflow.iam.gserviceaccount.com@) for your agent\'s project. If empty, we use the default DLP inspect config. The template name will have one of the following formats: @projects\/\/locations\/\/inspectTemplates\/@ OR @organizations\/\/locations\/\/inspectTemplates\/@ Note: @inspect_template@ must be located in the same region as the @SecuritySettings@.
+    inspectTemplate :: (Core.Maybe Core.Text),
+    -- | Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: @projects\/\/locations\/\/securitySettings\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | List of types of data to remove when retention settings triggers purge.
+    purgeDataTypes ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem]
+      ),
+    -- | Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
+    redactionScope ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+      ),
+    -- | Strategy that defines how we do redaction.
+    redactionStrategy ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+      ),
+    -- | Specifies the retention behavior defined by SecuritySettings.RetentionStrategy.
+    retentionStrategy ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+      ),
+    -- | Retains the data for the specified number of days. User must set a value lower than Dialogflow\'s default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. When data retention configuration is changed, it only applies to the data created after the change; the TTL of existing data created before the change stays intact.
+    retentionWindowDays :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SecuritySettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SecuritySettings ::
+  GoogleCloudDialogflowCxV3SecuritySettings
+newGoogleCloudDialogflowCxV3SecuritySettings =
+  GoogleCloudDialogflowCxV3SecuritySettings
+    { audioExportSettings =
+        Core.Nothing,
+      deidentifyTemplate = Core.Nothing,
+      displayName = Core.Nothing,
+      insightsExportSettings = Core.Nothing,
+      inspectTemplate = Core.Nothing,
+      name = Core.Nothing,
+      purgeDataTypes = Core.Nothing,
+      redactionScope = Core.Nothing,
+      redactionStrategy = Core.Nothing,
+      retentionStrategy = Core.Nothing,
+      retentionWindowDays = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3SecuritySettings where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SecuritySettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SecuritySettings
+            Core.<$> (o Core..:? "audioExportSettings")
+            Core.<*> (o Core..:? "deidentifyTemplate")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "insightsExportSettings")
+            Core.<*> (o Core..:? "inspectTemplate")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "purgeDataTypes")
+            Core.<*> (o Core..:? "redactionScope")
+            Core.<*> (o Core..:? "redactionStrategy")
+            Core.<*> (o Core..:? "retentionStrategy")
+            Core.<*> (o Core..:? "retentionWindowDays")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SecuritySettings where
+  toJSON GoogleCloudDialogflowCxV3SecuritySettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioExportSettings" Core..=) Core.<$> audioExportSettings,
+            ("deidentifyTemplate" Core..=) Core.<$> deidentifyTemplate,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("insightsExportSettings" Core..=) Core.<$> insightsExportSettings,
+            ("inspectTemplate" Core..=) Core.<$> inspectTemplate,
+            ("name" Core..=) Core.<$> name,
+            ("purgeDataTypes" Core..=) Core.<$> purgeDataTypes,
+            ("redactionScope" Core..=) Core.<$> redactionScope,
+            ("redactionStrategy" Core..=) Core.<$> redactionStrategy,
+            ("retentionStrategy" Core..=) Core.<$> retentionStrategy,
+            ("retentionWindowDays" Core..=) Core.<$> retentionWindowDays
+          ]
+      )
+
+-- | Settings for exporting audio.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings' smart constructor.
+data GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+  { -- | Filename pattern for exported audio.
+    audioExportPattern :: (Core.Maybe Core.Text),
+    -- | File format for exported audio file. Currently only in telephony recordings.
+    audioFormat ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+      ),
+    -- | Enable audio redaction if it is true. Note that this only redacts end-user audio data; Synthesised audio from the virtual agent is not redacted.
+    enableAudioRedaction :: (Core.Maybe Core.Bool),
+    -- | Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.
+    gcsBucket :: (Core.Maybe Core.Text),
+    -- | Whether to store TTS audio. By default, TTS audio from the virtual agent is not exported.
+    storeTtsAudio :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings ::
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings =
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+    { audioExportPattern =
+        Core.Nothing,
+      audioFormat = Core.Nothing,
+      enableAudioRedaction =
+        Core.Nothing,
+      gcsBucket = Core.Nothing,
+      storeTtsAudio = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+            Core.<$> (o Core..:? "audioExportPattern")
+            Core.<*> (o Core..:? "audioFormat")
+            Core.<*> (o Core..:? "enableAudioRedaction")
+            Core.<*> (o Core..:? "gcsBucket")
+            Core.<*> (o Core..:? "storeTtsAudio")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("audioExportPattern" Core..=) Core.<$> audioExportPattern,
+              ("audioFormat" Core..=) Core.<$> audioFormat,
+              ("enableAudioRedaction" Core..=) Core.<$> enableAudioRedaction,
+              ("gcsBucket" Core..=) Core.<$> gcsBucket,
+              ("storeTtsAudio" Core..=) Core.<$> storeTtsAudio
+            ]
+        )
+
+-- | Settings for exporting conversations to <https://cloud.google.com/contact-center/insights/docs Insights>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings = GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+  { -- | If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.
+    enableInsightsExport :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings ::
+  GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings =
+  GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+    { enableInsightsExport =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+            Core.<$> (o Core..:? "enableInsightsExport")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [("enableInsightsExport" Core..=) Core.<$> enableInsightsExport]
+        )
+
+-- | The result of sentiment analysis. Sentiment analysis inspects user input and identifies the prevailing subjective opinion, especially to determine a user\'s attitude as positive, negative, or neutral.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SentimentAnalysisResult' smart constructor.
+data GoogleCloudDialogflowCxV3SentimentAnalysisResult = GoogleCloudDialogflowCxV3SentimentAnalysisResult
+  { -- | A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).
+    magnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).
+    score :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SentimentAnalysisResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SentimentAnalysisResult ::
+  GoogleCloudDialogflowCxV3SentimentAnalysisResult
+newGoogleCloudDialogflowCxV3SentimentAnalysisResult =
+  GoogleCloudDialogflowCxV3SentimentAnalysisResult
+    { magnitude =
+        Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SentimentAnalysisResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SentimentAnalysisResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SentimentAnalysisResult
+            Core.<$> (o Core..:? "magnitude")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SentimentAnalysisResult
+  where
+  toJSON GoogleCloudDialogflowCxV3SentimentAnalysisResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("magnitude" Core..=) Core.<$> magnitude,
+            ("score" Core..=) Core.<$> score
+          ]
+      )
+
+-- | Session entity types are referred to as __User__ entity types and are entities that are built for an individual user such as favorites, preferences, playlists, and so on. You can redefine a session entity type at the session level to extend or replace a custom entity type at the user session level (we refer to the entity types defined at the agent level as \"custom entity types\"). Note: session entity types apply to all queries, regardless of the language. For more information about entity types, see the <https://cloud.google.com/dialogflow/docs/entities-overview Dialogflow documentation>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SessionEntityType' smart constructor.
+data GoogleCloudDialogflowCxV3SessionEntityType = GoogleCloudDialogflowCxV3SessionEntityType
+  { -- | Required. The collection of entities to override or supplement the custom entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowCxV3EntityTypeEntity]),
+    -- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+    entityOverrideMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+      ),
+    -- | Required. The unique identifier of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SessionEntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SessionEntityType ::
+  GoogleCloudDialogflowCxV3SessionEntityType
+newGoogleCloudDialogflowCxV3SessionEntityType =
+  GoogleCloudDialogflowCxV3SessionEntityType
+    { entities =
+        Core.Nothing,
+      entityOverrideMode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3SessionEntityType where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SessionEntityType"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SessionEntityType
+            Core.<$> (o Core..:? "entities")
+            Core.<*> (o Core..:? "entityOverrideMode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SessionEntityType where
+  toJSON GoogleCloudDialogflowCxV3SessionEntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entities" Core..=) Core.<$> entities,
+            ("entityOverrideMode" Core..=) Core.<$> entityOverrideMode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Represents session information communicated to and from the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SessionInfo' smart constructor.
+data GoogleCloudDialogflowCxV3SessionInfo = GoogleCloudDialogflowCxV3SessionInfo
+  { -- | Optional for WebhookRequest. Optional for WebhookResponse. All parameters collected from forms and intents during the session. Parameters can be created, updated, or removed by the webhook. To remove a parameter from the session, the webhook should explicitly set the parameter value to null in WebhookResponse. The map is keyed by parameters\' display names.
+    parameters :: (Core.Maybe GoogleCloudDialogflowCxV3SessionInfo_Parameters),
+    -- | Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the session. This field can be used by the webhook to identify a session. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@ if environment is specified.
+    session :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SessionInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SessionInfo ::
+  GoogleCloudDialogflowCxV3SessionInfo
+newGoogleCloudDialogflowCxV3SessionInfo =
+  GoogleCloudDialogflowCxV3SessionInfo
+    { parameters = Core.Nothing,
+      session = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3SessionInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SessionInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SessionInfo
+            Core.<$> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "session")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SessionInfo where
+  toJSON GoogleCloudDialogflowCxV3SessionInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("parameters" Core..=) Core.<$> parameters,
+            ("session" Core..=) Core.<$> session
+          ]
+      )
+
+-- | Optional for WebhookRequest. Optional for WebhookResponse. All parameters collected from forms and intents during the session. Parameters can be created, updated, or removed by the webhook. To remove a parameter from the session, the webhook should explicitly set the parameter value to null in WebhookResponse. The map is keyed by parameters\' display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SessionInfo_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3SessionInfo_Parameters = GoogleCloudDialogflowCxV3SessionInfo_Parameters
+  { additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SessionInfo_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SessionInfo_Parameters ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3SessionInfo_Parameters
+newGoogleCloudDialogflowCxV3SessionInfo_Parameters additional =
+  GoogleCloudDialogflowCxV3SessionInfo_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SessionInfo_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SessionInfo_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SessionInfo_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SessionInfo_Parameters
+  where
+  toJSON GoogleCloudDialogflowCxV3SessionInfo_Parameters {..} =
+    Core.toJSON additional
+
+-- | Settings related to speech recognition.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SpeechToTextSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3SpeechToTextSettings = GoogleCloudDialogflowCxV3SpeechToTextSettings
+  { -- | Whether to use speech adaptation for speech recognition.
+    enableSpeechAdaptation :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SpeechToTextSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SpeechToTextSettings ::
+  GoogleCloudDialogflowCxV3SpeechToTextSettings
+newGoogleCloudDialogflowCxV3SpeechToTextSettings =
+  GoogleCloudDialogflowCxV3SpeechToTextSettings
+    { enableSpeechAdaptation =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SpeechToTextSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SpeechToTextSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SpeechToTextSettings
+            Core.<$> (o Core..:? "enableSpeechAdaptation")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3SpeechToTextSettings where
+  toJSON GoogleCloudDialogflowCxV3SpeechToTextSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableSpeechAdaptation" Core..=)
+              Core.<$> enableSpeechAdaptation
+          ]
+      )
+
+-- | The request message for Experiments.StartExperiment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3StartExperimentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3StartExperimentRequest = GoogleCloudDialogflowCxV3StartExperimentRequest
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3StartExperimentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3StartExperimentRequest ::
+  GoogleCloudDialogflowCxV3StartExperimentRequest
+newGoogleCloudDialogflowCxV3StartExperimentRequest =
+  GoogleCloudDialogflowCxV3StartExperimentRequest
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3StartExperimentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3StartExperimentRequest"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3StartExperimentRequest)
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3StartExperimentRequest
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request message for Experiments.StopExperiment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3StopExperimentRequest' smart constructor.
+data GoogleCloudDialogflowCxV3StopExperimentRequest = GoogleCloudDialogflowCxV3StopExperimentRequest
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3StopExperimentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3StopExperimentRequest ::
+  GoogleCloudDialogflowCxV3StopExperimentRequest
+newGoogleCloudDialogflowCxV3StopExperimentRequest =
+  GoogleCloudDialogflowCxV3StopExperimentRequest
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3StopExperimentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3StopExperimentRequest"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3StopExperimentRequest)
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3StopExperimentRequest where
+  toJSON = Core.const Core.emptyObject
+
+-- | The request to set the feedback for a bot answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest' smart constructor.
+data GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest = GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+  { -- | Required. Feedback provided for a bot answer.
+    answerFeedback :: (Core.Maybe GoogleCloudDialogflowCxV3AnswerFeedback),
+    -- | Required. ID of the response to update its feedback. This is the same as DetectIntentResponse.response_id.
+    responseId :: (Core.Maybe Core.Text),
+    -- | Optional. The mask to control which fields to update. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest ::
+  GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest =
+  GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+    { answerFeedback =
+        Core.Nothing,
+      responseId = Core.Nothing,
+      updateMask = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+            Core.<$> (o Core..:? "answerFeedback")
+            Core.<*> (o Core..:? "responseId")
+            Core.<*> (o Core..:? "updateMask")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+  where
+  toJSON GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerFeedback" Core..=) Core.<$> answerFeedback,
+            ("responseId" Core..=) Core.<$> responseId,
+            ("updateMask" Core..=) Core.<$> updateMask
+          ]
+      )
+
+-- | Configuration of how speech should be synthesized.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig' smart constructor.
+data GoogleCloudDialogflowCxV3SynthesizeSpeechConfig = GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+  { -- | Optional. An identifier which selects \'audio effects\' profiles that are applied on (post synthesized) text to speech. Effects are applied on top of each other in the order they are given.
+    effectsProfileId :: (Core.Maybe [Core.Text]),
+    -- | Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means increase 20 semitones from the original pitch. -20 means decrease 20 semitones from the original pitch.
+    pitch :: (Core.Maybe Core.Double),
+    -- | Optional. Speaking rate\/speed, in the range [0.25, 4.0]. 1.0 is the normal native speed supported by the specific voice. 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed. Any other values \< 0.25 or > 4.0 will return an error.
+    speakingRate :: (Core.Maybe Core.Double),
+    -- | Optional. The desired voice of the synthesized audio.
+    voice :: (Core.Maybe GoogleCloudDialogflowCxV3VoiceSelectionParams),
+    -- | Optional. Volume gain (in dB) of the normal native volume supported by the specific voice, in the range [-96.0, 16.0]. If unset, or set to a value of 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB) will play at approximately half the amplitude of the normal native signal amplitude. A value of +6.0 (dB) will play at approximately twice the amplitude of the normal native signal amplitude. We strongly recommend not to exceed +10 (dB) as there\'s usually no effective increase in loudness for any value greater than that.
+    volumeGainDb :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3SynthesizeSpeechConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig ::
+  GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig =
+  GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+    { effectsProfileId =
+        Core.Nothing,
+      pitch = Core.Nothing,
+      speakingRate = Core.Nothing,
+      voice = Core.Nothing,
+      volumeGainDb = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3SynthesizeSpeechConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+            Core.<$> (o Core..:? "effectsProfileId")
+            Core.<*> (o Core..:? "pitch")
+            Core.<*> (o Core..:? "speakingRate")
+            Core.<*> (o Core..:? "voice")
+            Core.<*> (o Core..:? "volumeGainDb")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3SynthesizeSpeechConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("effectsProfileId" Core..=) Core.<$> effectsProfileId,
+            ("pitch" Core..=) Core.<$> pitch,
+            ("speakingRate" Core..=) Core.<$> speakingRate,
+            ("voice" Core..=) Core.<$> voice,
+            ("volumeGainDb" Core..=) Core.<$> volumeGainDb
+          ]
+      )
+
+-- | Represents a test case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestCase' smart constructor.
+data GoogleCloudDialogflowCxV3TestCase = GoogleCloudDialogflowCxV3TestCase
+  { -- | Output only. When the test was created.
+    creationTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The human-readable name of the test case, unique within the agent. Limit of 200 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The latest test result.
+    lastTestResult :: (Core.Maybe GoogleCloudDialogflowCxV3TestCaseResult),
+    -- | The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Additional freeform notes about the test case. Limit of 400 characters.
+    notes :: (Core.Maybe Core.Text),
+    -- | Tags are short descriptions that users may apply to test cases for organizational and filtering purposes. Each tag should start with \"#\" and has a limit of 30 characters.
+    tags :: (Core.Maybe [Core.Text]),
+    -- | The conversation turns uttered when the test case was created, in chronological order. These include the canonical set of agent utterances that should occur when the agent is working properly.
+    testCaseConversationTurns :: (Core.Maybe [GoogleCloudDialogflowCxV3ConversationTurn]),
+    -- | Config for the test case.
+    testConfig :: (Core.Maybe GoogleCloudDialogflowCxV3TestConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestCase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestCase ::
+  GoogleCloudDialogflowCxV3TestCase
+newGoogleCloudDialogflowCxV3TestCase =
+  GoogleCloudDialogflowCxV3TestCase
+    { creationTime = Core.Nothing,
+      displayName = Core.Nothing,
+      lastTestResult = Core.Nothing,
+      name = Core.Nothing,
+      notes = Core.Nothing,
+      tags = Core.Nothing,
+      testCaseConversationTurns = Core.Nothing,
+      testConfig = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestCase where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestCase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestCase
+            Core.<$> (o Core..:? "creationTime")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "lastTestResult")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "notes")
+            Core.<*> (o Core..:? "tags")
+            Core.<*> (o Core..:? "testCaseConversationTurns")
+            Core.<*> (o Core..:? "testConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestCase where
+  toJSON GoogleCloudDialogflowCxV3TestCase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creationTime" Core..=) Core.<$> creationTime,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("lastTestResult" Core..=) Core.<$> lastTestResult,
+            ("name" Core..=) Core.<$> name,
+            ("notes" Core..=) Core.<$> notes,
+            ("tags" Core..=) Core.<$> tags,
+            ("testCaseConversationTurns" Core..=)
+              Core.<$> testCaseConversationTurns,
+            ("testConfig" Core..=) Core.<$> testConfig
+          ]
+      )
+
+-- | Error info for importing a test.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestCaseError' smart constructor.
+data GoogleCloudDialogflowCxV3TestCaseError = GoogleCloudDialogflowCxV3TestCaseError
+  { -- | The status associated with the test case.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The test case.
+    testCase :: (Core.Maybe GoogleCloudDialogflowCxV3TestCase)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestCaseError' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestCaseError ::
+  GoogleCloudDialogflowCxV3TestCaseError
+newGoogleCloudDialogflowCxV3TestCaseError =
+  GoogleCloudDialogflowCxV3TestCaseError
+    { status = Core.Nothing,
+      testCase = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestCaseError where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestCaseError"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestCaseError
+            Core.<$> (o Core..:? "status")
+            Core.<*> (o Core..:? "testCase")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestCaseError where
+  toJSON GoogleCloudDialogflowCxV3TestCaseError {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("status" Core..=) Core.<$> status,
+            ("testCase" Core..=) Core.<$> testCase
+          ]
+      )
+
+-- | Represents a result from running a test case in an agent environment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestCaseResult' smart constructor.
+data GoogleCloudDialogflowCxV3TestCaseResult = GoogleCloudDialogflowCxV3TestCaseResult
+  { -- | The conversation turns uttered during the test case replay in chronological order.
+    conversationTurns :: (Core.Maybe [GoogleCloudDialogflowCxV3ConversationTurn]),
+    -- | Environment where the test was run. If not set, it indicates the draft environment.
+    environment :: (Core.Maybe Core.Text),
+    -- | The resource name for the test case result. Format: @projects\/\/locations\/\/agents\/\/testCases\/\/results\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Whether the test case passed in the agent environment.
+    testResult :: (Core.Maybe GoogleCloudDialogflowCxV3TestCaseResult_TestResult),
+    -- | The time that the test was run.
+    testTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestCaseResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestCaseResult ::
+  GoogleCloudDialogflowCxV3TestCaseResult
+newGoogleCloudDialogflowCxV3TestCaseResult =
+  GoogleCloudDialogflowCxV3TestCaseResult
+    { conversationTurns =
+        Core.Nothing,
+      environment = Core.Nothing,
+      name = Core.Nothing,
+      testResult = Core.Nothing,
+      testTime = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestCaseResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestCaseResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestCaseResult
+            Core.<$> (o Core..:? "conversationTurns")
+            Core.<*> (o Core..:? "environment")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "testResult")
+            Core.<*> (o Core..:? "testTime")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestCaseResult where
+  toJSON GoogleCloudDialogflowCxV3TestCaseResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversationTurns" Core..=) Core.<$> conversationTurns,
+            ("environment" Core..=) Core.<$> environment,
+            ("name" Core..=) Core.<$> name,
+            ("testResult" Core..=) Core.<$> testResult,
+            ("testTime" Core..=) Core.<$> testTime
+          ]
+      )
+
+-- | Represents configurations for a test case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestConfig' smart constructor.
+data GoogleCloudDialogflowCxV3TestConfig = GoogleCloudDialogflowCxV3TestConfig
+  { -- | Flow name to start the test case with. Format: @projects\/\/locations\/\/agents\/\/flows\/@. Only one of @flow@ and @page@ should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
+    flow :: (Core.Maybe Core.Text),
+    -- | The page to start the test case with. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@. Only one of @flow@ and @page@ should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
+    page :: (Core.Maybe Core.Text),
+    -- | Session parameters to be compared when calculating differences.
+    trackingParameters :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestConfig ::
+  GoogleCloudDialogflowCxV3TestConfig
+newGoogleCloudDialogflowCxV3TestConfig =
+  GoogleCloudDialogflowCxV3TestConfig
+    { flow = Core.Nothing,
+      page = Core.Nothing,
+      trackingParameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestConfig
+            Core.<$> (o Core..:? "flow")
+            Core.<*> (o Core..:? "page")
+            Core.<*> (o Core..:? "trackingParameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestConfig where
+  toJSON GoogleCloudDialogflowCxV3TestConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flow" Core..=) Core.<$> flow,
+            ("page" Core..=) Core.<$> page,
+            ("trackingParameters" Core..=) Core.<$> trackingParameters
+          ]
+      )
+
+-- | Error info for running a test.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestError' smart constructor.
+data GoogleCloudDialogflowCxV3TestError = GoogleCloudDialogflowCxV3TestError
+  { -- | The status associated with the test.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The test case resource name.
+    testCase :: (Core.Maybe Core.Text),
+    -- | The timestamp when the test was completed.
+    testTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestError' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestError ::
+  GoogleCloudDialogflowCxV3TestError
+newGoogleCloudDialogflowCxV3TestError =
+  GoogleCloudDialogflowCxV3TestError
+    { status = Core.Nothing,
+      testCase = Core.Nothing,
+      testTime = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestError where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestError"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestError
+            Core.<$> (o Core..:? "status")
+            Core.<*> (o Core..:? "testCase")
+            Core.<*> (o Core..:? "testTime")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestError where
+  toJSON GoogleCloudDialogflowCxV3TestError {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("status" Core..=) Core.<$> status,
+            ("testCase" Core..=) Core.<$> testCase,
+            ("testTime" Core..=) Core.<$> testTime
+          ]
+      )
+
+-- | The description of differences between original and replayed agent output.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TestRunDifference' smart constructor.
+data GoogleCloudDialogflowCxV3TestRunDifference = GoogleCloudDialogflowCxV3TestRunDifference
+  { -- | A human readable description of the diff, showing the actual output vs expected output.
+    description :: (Core.Maybe Core.Text),
+    -- | The type of diff.
+    type' :: (Core.Maybe GoogleCloudDialogflowCxV3TestRunDifference_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TestRunDifference' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TestRunDifference ::
+  GoogleCloudDialogflowCxV3TestRunDifference
+newGoogleCloudDialogflowCxV3TestRunDifference =
+  GoogleCloudDialogflowCxV3TestRunDifference
+    { description =
+        Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TestRunDifference where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TestRunDifference"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TestRunDifference
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TestRunDifference where
+  toJSON GoogleCloudDialogflowCxV3TestRunDifference {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents the natural language text to be processed.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TextInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3TextInput = GoogleCloudDialogflowCxV3TextInput
+  { -- | Required. The UTF-8 encoded natural language text to be processed.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TextInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TextInput ::
+  GoogleCloudDialogflowCxV3TextInput
+newGoogleCloudDialogflowCxV3TextInput =
+  GoogleCloudDialogflowCxV3TextInput {text = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TextInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TextInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TextInput Core.<$> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TextInput where
+  toJSON GoogleCloudDialogflowCxV3TextInput {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Settings related to speech synthesizing.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TextToSpeechSettings' smart constructor.
+newtype GoogleCloudDialogflowCxV3TextToSpeechSettings = GoogleCloudDialogflowCxV3TextToSpeechSettings
+  { -- | Configuration of how speech should be synthesized, mapping from language (https:\/\/cloud.google.com\/dialogflow\/cx\/docs\/reference\/language) to SynthesizeSpeechConfig. These settings affect: - The <https://cloud.google.com/dialogflow/cx/docs/concept/integration/phone-gateway phone gateway> synthesize configuration set via Agent.text/to/speech/settings. - How speech is synthesized when invoking session APIs. Agent.text/to/speech/settings only applies if OutputAudioConfig.synthesize/speech/config is not specified.
+    synthesizeSpeechConfigs ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TextToSpeechSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TextToSpeechSettings ::
+  GoogleCloudDialogflowCxV3TextToSpeechSettings
+newGoogleCloudDialogflowCxV3TextToSpeechSettings =
+  GoogleCloudDialogflowCxV3TextToSpeechSettings
+    { synthesizeSpeechConfigs =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TextToSpeechSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TextToSpeechSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TextToSpeechSettings
+            Core.<$> (o Core..:? "synthesizeSpeechConfigs")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TextToSpeechSettings where
+  toJSON GoogleCloudDialogflowCxV3TextToSpeechSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("synthesizeSpeechConfigs" Core..=)
+              Core.<$> synthesizeSpeechConfigs
+          ]
+      )
+
+-- | Configuration of how speech should be synthesized, mapping from language (https:\/\/cloud.google.com\/dialogflow\/cx\/docs\/reference\/language) to SynthesizeSpeechConfig. These settings affect: - The <https://cloud.google.com/dialogflow/cx/docs/concept/integration/phone-gateway phone gateway> synthesize configuration set via Agent.text/to/speech/settings. - How speech is synthesized when invoking session APIs. Agent.text/to/speech/settings only applies if OutputAudioConfig.synthesize/speech/config is not specified.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs' smart constructor.
+newtype GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs = GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+  { additional ::
+      ( Core.HashMap
+          Core.Text
+          GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig ->
+  GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+  additional =
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs {..} =
+      Core.toJSON additional
+
+-- | The request message for Flows.TrainFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TrainFlowRequest' smart constructor.
+data GoogleCloudDialogflowCxV3TrainFlowRequest = GoogleCloudDialogflowCxV3TrainFlowRequest
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TrainFlowRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TrainFlowRequest ::
+  GoogleCloudDialogflowCxV3TrainFlowRequest
+newGoogleCloudDialogflowCxV3TrainFlowRequest =
+  GoogleCloudDialogflowCxV3TrainFlowRequest
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TrainFlowRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TrainFlowRequest"
+      (\o -> Core.pure GoogleCloudDialogflowCxV3TrainFlowRequest)
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TrainFlowRequest where
+  toJSON = Core.const Core.emptyObject
+
+-- | Transition coverage represents the percentage of all possible page transitions (page-level transition routes and event handlers, excluding transition route groups) present within any of a parent\'s test cases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionCoverage' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionCoverage = GoogleCloudDialogflowCxV3TransitionCoverage
+  { -- | The percent of transitions in the agent that are covered.
+    coverageScore :: (Core.Maybe Core.Double),
+    -- | The list of Transitions present in the agent.
+    transitions ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3TransitionCoverageTransition]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionCoverage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionCoverage ::
+  GoogleCloudDialogflowCxV3TransitionCoverage
+newGoogleCloudDialogflowCxV3TransitionCoverage =
+  GoogleCloudDialogflowCxV3TransitionCoverage
+    { coverageScore =
+        Core.Nothing,
+      transitions = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TransitionCoverage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionCoverage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionCoverage
+            Core.<$> (o Core..:? "coverageScore")
+            Core.<*> (o Core..:? "transitions")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TransitionCoverage where
+  toJSON GoogleCloudDialogflowCxV3TransitionCoverage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("coverageScore" Core..=) Core.<$> coverageScore,
+            ("transitions" Core..=) Core.<$> transitions
+          ]
+      )
+
+-- | A transition in a page.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionCoverageTransition' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionCoverageTransition = GoogleCloudDialogflowCxV3TransitionCoverageTransition
+  { -- | Whether the transition is covered by at least one of the agent\'s test cases.
+    covered :: (Core.Maybe Core.Bool),
+    -- | Event handler.
+    eventHandler :: (Core.Maybe GoogleCloudDialogflowCxV3EventHandler),
+    -- | The index of a transition in the transition list. Starting from 0.
+    index :: (Core.Maybe Core.Int32),
+    -- | The start node of a transition.
+    source ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+      ),
+    -- | The end node of a transition.
+    target ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+      ),
+    -- | Intent route or condition route.
+    transitionRoute :: (Core.Maybe GoogleCloudDialogflowCxV3TransitionRoute)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionCoverageTransition' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionCoverageTransition ::
+  GoogleCloudDialogflowCxV3TransitionCoverageTransition
+newGoogleCloudDialogflowCxV3TransitionCoverageTransition =
+  GoogleCloudDialogflowCxV3TransitionCoverageTransition
+    { covered =
+        Core.Nothing,
+      eventHandler = Core.Nothing,
+      index = Core.Nothing,
+      source = Core.Nothing,
+      target = Core.Nothing,
+      transitionRoute = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionCoverageTransition
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionCoverageTransition"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionCoverageTransition
+            Core.<$> (o Core..:? "covered")
+            Core.<*> (o Core..:? "eventHandler")
+            Core.<*> (o Core..:? "index")
+            Core.<*> (o Core..:? "source")
+            Core.<*> (o Core..:? "target")
+            Core.<*> (o Core..:? "transitionRoute")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TransitionCoverageTransition
+  where
+  toJSON GoogleCloudDialogflowCxV3TransitionCoverageTransition {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("covered" Core..=) Core.<$> covered,
+            ("eventHandler" Core..=) Core.<$> eventHandler,
+            ("index" Core..=) Core.<$> index,
+            ("source" Core..=) Core.<$> source,
+            ("target" Core..=) Core.<$> target,
+            ("transitionRoute" Core..=) Core.<$> transitionRoute
+          ]
+      )
+
+-- | The source or target of a transition.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode = GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+  { -- | Indicates a transition to a Flow. Only some fields such as name and displayname will be set.
+    flow :: (Core.Maybe GoogleCloudDialogflowCxV3Flow),
+    -- | Indicates a transition to a Page. Only some fields such as name and displayname will be set.
+    page :: (Core.Maybe GoogleCloudDialogflowCxV3Page)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode ::
+  GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode =
+  GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+    { flow =
+        Core.Nothing,
+      page = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+            Core.<$> (o Core..:? "flow")
+            Core.<*> (o Core..:? "page")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode {..} =
+      Core.object
+        ( Core.catMaybes
+            [("flow" Core..=) Core.<$> flow, ("page" Core..=) Core.<$> page]
+        )
+
+-- | A transition route specifies a intent that can be matched and\/or a data condition that can be evaluated during a session. When a specified transition is matched, the following actions are taken in order: * If there is a @trigger_fulfillment@ associated with the transition, it will be called. * If there is a @target_page@ associated with the transition, the session will transition into the specified page. * If there is a @target_flow@ associated with the transition, the session will transition into the specified flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionRoute' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionRoute = GoogleCloudDialogflowCxV3TransitionRoute
+  { -- | The condition to evaluate against form parameters or session parameters. See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>. At least one of @intent@ or @condition@ must be specified. When both @intent@ and @condition@ are specified, the transition can only happen when both are fulfilled.
+    condition :: (Core.Maybe Core.Text),
+    -- | Optional. The description of the transition route. The maximum length is 500 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | The unique identifier of an Intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@. Indicates that the transition can only happen when the given intent is matched. At least one of @intent@ or @condition@ must be specified. When both @intent@ and @condition@ are specified, the transition can only happen when both are fulfilled.
+    intent :: (Core.Maybe Core.Text),
+    -- | Output only. The unique identifier of this transition route.
+    name :: (Core.Maybe Core.Text),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the condition is satisfied. At least one of @trigger_fulfillment@ and @target@ must be specified. When both are defined, @trigger_fulfillment@ is executed first.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionRoute' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionRoute ::
+  GoogleCloudDialogflowCxV3TransitionRoute
+newGoogleCloudDialogflowCxV3TransitionRoute =
+  GoogleCloudDialogflowCxV3TransitionRoute
+    { condition =
+        Core.Nothing,
+      description = Core.Nothing,
+      intent = Core.Nothing,
+      name = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TransitionRoute where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionRoute"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionRoute
+            Core.<$> (o Core..:? "condition")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TransitionRoute where
+  toJSON GoogleCloudDialogflowCxV3TransitionRoute {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("condition" Core..=) Core.<$> condition,
+            ("description" Core..=) Core.<$> description,
+            ("intent" Core..=) Core.<$> intent,
+            ("name" Core..=) Core.<$> name,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | A TransitionRouteGroup represents a group of @TransitionRoutes@ to be used by a Page.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionRouteGroup' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionRouteGroup = GoogleCloudDialogflowCxV3TransitionRouteGroup
+  { -- | Required. The human-readable name of the transition route group, unique within the flow. The display name can be no longer than 30 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ .
+    name :: (Core.Maybe Core.Text),
+    -- | Transition routes associated with the TransitionRouteGroup.
+    transitionRoutes :: (Core.Maybe [GoogleCloudDialogflowCxV3TransitionRoute])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionRouteGroup' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionRouteGroup ::
+  GoogleCloudDialogflowCxV3TransitionRouteGroup
+newGoogleCloudDialogflowCxV3TransitionRouteGroup =
+  GoogleCloudDialogflowCxV3TransitionRouteGroup
+    { displayName =
+        Core.Nothing,
+      name = Core.Nothing,
+      transitionRoutes = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroup
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionRouteGroup"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionRouteGroup
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "transitionRoutes")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TransitionRouteGroup where
+  toJSON GoogleCloudDialogflowCxV3TransitionRouteGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("name" Core..=) Core.<$> name,
+            ("transitionRoutes" Core..=) Core.<$> transitionRoutes
+          ]
+      )
+
+-- | Transition route group coverage represents the percentage of all possible transition routes present within any of a parent\'s test cases. The results are grouped by the transition route group.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage = GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+  { -- | The percent of transition routes in all the transition route groups that are covered.
+    coverageScore :: (Core.Maybe Core.Double),
+    -- | Transition route group coverages.
+    coverages ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage ::
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage =
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+    { coverageScore =
+        Core.Nothing,
+      coverages = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+            Core.<$> (o Core..:? "coverageScore")
+            Core.<*> (o Core..:? "coverages")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+  where
+  toJSON GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("coverageScore" Core..=) Core.<$> coverageScore,
+            ("coverages" Core..=) Core.<$> coverages
+          ]
+      )
+
+-- | Coverage result message for one transition route group.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage = GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+  { -- | The percent of transition routes in the transition route group that are covered.
+    coverageScore :: (Core.Maybe Core.Double),
+    -- | Transition route group metadata. Only name and displayName will be set.
+    routeGroup :: (Core.Maybe GoogleCloudDialogflowCxV3TransitionRouteGroup),
+    -- | The list of transition routes and coverage in the transition route group.
+    transitions ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage ::
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage =
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+    { coverageScore =
+        Core.Nothing,
+      routeGroup = Core.Nothing,
+      transitions = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+            Core.<$> (o Core..:? "coverageScore")
+            Core.<*> (o Core..:? "routeGroup")
+            Core.<*> (o Core..:? "transitions")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("coverageScore" Core..=) Core.<$> coverageScore,
+              ("routeGroup" Core..=) Core.<$> routeGroup,
+              ("transitions" Core..=) Core.<$> transitions
+            ]
+        )
+
+-- | A transition coverage in a transition route group.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition' smart constructor.
+data GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition = GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+  { -- | Whether the transition route is covered by at least one of the agent\'s test cases.
+    covered :: (Core.Maybe Core.Bool),
+    -- | Intent route or condition route.
+    transitionRoute :: (Core.Maybe GoogleCloudDialogflowCxV3TransitionRoute)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition ::
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition =
+  GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+    { covered =
+        Core.Nothing,
+      transitionRoute =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+            Core.<$> (o Core..:? "covered")
+            Core.<*> (o Core..:? "transitionRoute")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("covered" Core..=) Core.<$> covered,
+              ("transitionRoute" Core..=) Core.<$> transitionRoute
+            ]
+        )
+
+-- | Collection of all signals that were extracted for a single turn of the conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3TurnSignals' smart constructor.
+data GoogleCloudDialogflowCxV3TurnSignals = GoogleCloudDialogflowCxV3TurnSignals
+  { -- | Whether agent responded with LiveAgentHandoff fulfillment.
+    agentEscalated :: (Core.Maybe Core.Bool),
+    -- | Whether user was using DTMF input.
+    dtmfUsed :: (Core.Maybe Core.Bool),
+    -- | Failure reasons of the turn.
+    failureReasons ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem]
+      ),
+    -- | Whether NLU predicted NO_MATCH.
+    noMatch :: (Core.Maybe Core.Bool),
+    -- | Whether user provided no input.
+    noUserInput :: (Core.Maybe Core.Bool),
+    -- | Whether turn resulted in End Session page.
+    reachedEndPage :: (Core.Maybe Core.Bool),
+    -- | Sentiment magnitude of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentMagnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentScore :: (Core.Maybe Core.Double),
+    -- | Whether user was specifically asking for a live agent.
+    userEscalated :: (Core.Maybe Core.Bool),
+    -- | Human-readable statuses of the webhooks triggered during this turn.
+    webhookStatuses :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3TurnSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3TurnSignals ::
+  GoogleCloudDialogflowCxV3TurnSignals
+newGoogleCloudDialogflowCxV3TurnSignals =
+  GoogleCloudDialogflowCxV3TurnSignals
+    { agentEscalated =
+        Core.Nothing,
+      dtmfUsed = Core.Nothing,
+      failureReasons = Core.Nothing,
+      noMatch = Core.Nothing,
+      noUserInput = Core.Nothing,
+      reachedEndPage = Core.Nothing,
+      sentimentMagnitude = Core.Nothing,
+      sentimentScore = Core.Nothing,
+      userEscalated = Core.Nothing,
+      webhookStatuses = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3TurnSignals where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3TurnSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3TurnSignals
+            Core.<$> (o Core..:? "agentEscalated")
+            Core.<*> (o Core..:? "dtmfUsed")
+            Core.<*> (o Core..:? "failureReasons")
+            Core.<*> (o Core..:? "noMatch")
+            Core.<*> (o Core..:? "noUserInput")
+            Core.<*> (o Core..:? "reachedEndPage")
+            Core.<*> (o Core..:? "sentimentMagnitude")
+            Core.<*> (o Core..:? "sentimentScore")
+            Core.<*> (o Core..:? "userEscalated")
+            Core.<*> (o Core..:? "webhookStatuses")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3TurnSignals where
+  toJSON GoogleCloudDialogflowCxV3TurnSignals {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentEscalated" Core..=) Core.<$> agentEscalated,
+            ("dtmfUsed" Core..=) Core.<$> dtmfUsed,
+            ("failureReasons" Core..=) Core.<$> failureReasons,
+            ("noMatch" Core..=) Core.<$> noMatch,
+            ("noUserInput" Core..=) Core.<$> noUserInput,
+            ("reachedEndPage" Core..=) Core.<$> reachedEndPage,
+            ("sentimentMagnitude" Core..=) Core.<$> sentimentMagnitude,
+            ("sentimentScore" Core..=) Core.<$> sentimentScore,
+            ("userEscalated" Core..=) Core.<$> userEscalated,
+            ("webhookStatuses" Core..=) Core.<$> webhookStatuses
+          ]
+      )
+
+-- | The request message for Agents.ValidateAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ValidateAgentRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3ValidateAgentRequest = GoogleCloudDialogflowCxV3ValidateAgentRequest
+  { -- | If not specified, the agent\'s default language is used.
+    languageCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ValidateAgentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ValidateAgentRequest ::
+  GoogleCloudDialogflowCxV3ValidateAgentRequest
+newGoogleCloudDialogflowCxV3ValidateAgentRequest =
+  GoogleCloudDialogflowCxV3ValidateAgentRequest
+    { languageCode =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3ValidateAgentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ValidateAgentRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ValidateAgentRequest
+            Core.<$> (o Core..:? "languageCode")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ValidateAgentRequest where
+  toJSON GoogleCloudDialogflowCxV3ValidateAgentRequest {..} =
+    Core.object
+      (Core.catMaybes [("languageCode" Core..=) Core.<$> languageCode])
+
+-- | The request message for Flows.ValidateFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ValidateFlowRequest' smart constructor.
+newtype GoogleCloudDialogflowCxV3ValidateFlowRequest = GoogleCloudDialogflowCxV3ValidateFlowRequest
+  { -- | If not specified, the agent\'s default language is used.
+    languageCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ValidateFlowRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ValidateFlowRequest ::
+  GoogleCloudDialogflowCxV3ValidateFlowRequest
+newGoogleCloudDialogflowCxV3ValidateFlowRequest =
+  GoogleCloudDialogflowCxV3ValidateFlowRequest
+    { languageCode =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ValidateFlowRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ValidateFlowRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ValidateFlowRequest
+            Core.<$> (o Core..:? "languageCode")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ValidateFlowRequest where
+  toJSON GoogleCloudDialogflowCxV3ValidateFlowRequest {..} =
+    Core.object
+      (Core.catMaybes [("languageCode" Core..=) Core.<$> languageCode])
+
+-- | Agent\/flow validation message.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3ValidationMessage' smart constructor.
+data GoogleCloudDialogflowCxV3ValidationMessage = GoogleCloudDialogflowCxV3ValidationMessage
+  { -- | The message detail.
+    detail :: (Core.Maybe Core.Text),
+    -- | The resource names of the resources where the message is found.
+    resourceNames :: (Core.Maybe [GoogleCloudDialogflowCxV3ResourceName]),
+    -- | The type of the resources where the message is found.
+    resourceType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+      ),
+    -- | The names of the resources where the message is found.
+    resources :: (Core.Maybe [Core.Text]),
+    -- | Indicates the severity of the message.
+    severity :: (Core.Maybe GoogleCloudDialogflowCxV3ValidationMessage_Severity)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3ValidationMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3ValidationMessage ::
+  GoogleCloudDialogflowCxV3ValidationMessage
+newGoogleCloudDialogflowCxV3ValidationMessage =
+  GoogleCloudDialogflowCxV3ValidationMessage
+    { detail = Core.Nothing,
+      resourceNames = Core.Nothing,
+      resourceType = Core.Nothing,
+      resources = Core.Nothing,
+      severity = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3ValidationMessage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3ValidationMessage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3ValidationMessage
+            Core.<$> (o Core..:? "detail")
+            Core.<*> (o Core..:? "resourceNames")
+            Core.<*> (o Core..:? "resourceType")
+            Core.<*> (o Core..:? "resources")
+            Core.<*> (o Core..:? "severity")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3ValidationMessage where
+  toJSON GoogleCloudDialogflowCxV3ValidationMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("detail" Core..=) Core.<$> detail,
+            ("resourceNames" Core..=) Core.<$> resourceNames,
+            ("resourceType" Core..=) Core.<$> resourceType,
+            ("resources" Core..=) Core.<$> resources,
+            ("severity" Core..=) Core.<$> severity
+          ]
+      )
+
+-- | The history of variants update.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3VariantsHistory' smart constructor.
+data GoogleCloudDialogflowCxV3VariantsHistory = GoogleCloudDialogflowCxV3VariantsHistory
+  { -- | Update time of the variants.
+    updateTime :: (Core.Maybe Core.DateTime),
+    -- | The flow versions as the variants.
+    versionVariants :: (Core.Maybe GoogleCloudDialogflowCxV3VersionVariants)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3VariantsHistory' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3VariantsHistory ::
+  GoogleCloudDialogflowCxV3VariantsHistory
+newGoogleCloudDialogflowCxV3VariantsHistory =
+  GoogleCloudDialogflowCxV3VariantsHistory
+    { updateTime =
+        Core.Nothing,
+      versionVariants = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3VariantsHistory where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3VariantsHistory"
+      ( \o ->
+          GoogleCloudDialogflowCxV3VariantsHistory
+            Core.<$> (o Core..:? "updateTime")
+            Core.<*> (o Core..:? "versionVariants")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3VariantsHistory where
+  toJSON GoogleCloudDialogflowCxV3VariantsHistory {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("updateTime" Core..=) Core.<$> updateTime,
+            ("versionVariants" Core..=) Core.<$> versionVariants
+          ]
+      )
+
+-- | Represents a version of a flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Version' smart constructor.
+data GoogleCloudDialogflowCxV3Version = GoogleCloudDialogflowCxV3Version
+  { -- | Output only. Create time of the version.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | The description of the version. The maximum length is 500 characters. If exceeded, the request is rejected.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the version. Limit of 64 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Format: projects\/\/locations\/\/agents\/\/flows\/\/versions\/. Version ID is a self-increasing number generated by Dialogflow upon version creation.
+    name :: (Core.Maybe Core.Text),
+    -- | Output only. The NLU settings of the flow at version creation.
+    nluSettings :: (Core.Maybe GoogleCloudDialogflowCxV3NluSettings),
+    -- | Output only. The state of this version. This field is read-only and cannot be set by create and update methods.
+    state :: (Core.Maybe GoogleCloudDialogflowCxV3Version_State)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Version' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Version ::
+  GoogleCloudDialogflowCxV3Version
+newGoogleCloudDialogflowCxV3Version =
+  GoogleCloudDialogflowCxV3Version
+    { createTime = Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      name = Core.Nothing,
+      nluSettings = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Version where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Version"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Version
+            Core.<$> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "nluSettings")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Version where
+  toJSON GoogleCloudDialogflowCxV3Version {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("createTime" Core..=) Core.<$> createTime,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("name" Core..=) Core.<$> name,
+            ("nluSettings" Core..=) Core.<$> nluSettings,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | A list of flow version variants.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3VersionVariants' smart constructor.
+newtype GoogleCloudDialogflowCxV3VersionVariants = GoogleCloudDialogflowCxV3VersionVariants
+  { -- | A list of flow version variants.
+    variants :: (Core.Maybe [GoogleCloudDialogflowCxV3VersionVariantsVariant])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3VersionVariants' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3VersionVariants ::
+  GoogleCloudDialogflowCxV3VersionVariants
+newGoogleCloudDialogflowCxV3VersionVariants =
+  GoogleCloudDialogflowCxV3VersionVariants {variants = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3VersionVariants where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3VersionVariants"
+      ( \o ->
+          GoogleCloudDialogflowCxV3VersionVariants
+            Core.<$> (o Core..:? "variants")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3VersionVariants where
+  toJSON GoogleCloudDialogflowCxV3VersionVariants {..} =
+    Core.object
+      (Core.catMaybes [("variants" Core..=) Core.<$> variants])
+
+-- | A single flow version with specified traffic allocation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3VersionVariantsVariant' smart constructor.
+data GoogleCloudDialogflowCxV3VersionVariantsVariant = GoogleCloudDialogflowCxV3VersionVariantsVariant
+  { -- | Whether the variant is for the control group.
+    isControlGroup :: (Core.Maybe Core.Bool),
+    -- | Percentage of the traffic which should be routed to this version of flow. Traffic allocation for a single flow must sum up to 1.0.
+    trafficAllocation :: (Core.Maybe Core.Double),
+    -- | The name of the flow version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3VersionVariantsVariant' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3VersionVariantsVariant ::
+  GoogleCloudDialogflowCxV3VersionVariantsVariant
+newGoogleCloudDialogflowCxV3VersionVariantsVariant =
+  GoogleCloudDialogflowCxV3VersionVariantsVariant
+    { isControlGroup =
+        Core.Nothing,
+      trafficAllocation = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3VersionVariantsVariant
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3VersionVariantsVariant"
+      ( \o ->
+          GoogleCloudDialogflowCxV3VersionVariantsVariant
+            Core.<$> (o Core..:? "isControlGroup")
+            Core.<*> (o Core..:? "trafficAllocation")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3VersionVariantsVariant
+  where
+  toJSON GoogleCloudDialogflowCxV3VersionVariantsVariant {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("isControlGroup" Core..=) Core.<$> isControlGroup,
+            ("trafficAllocation" Core..=) Core.<$> trafficAllocation,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | Description of which voice to use for speech synthesis.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3VoiceSelectionParams' smart constructor.
+data GoogleCloudDialogflowCxV3VoiceSelectionParams = GoogleCloudDialogflowCxV3VoiceSelectionParams
+  { -- | Optional. The name of the voice. If not set, the service will choose a voice based on the other parameters such as language/code and ssml/gender. For the list of available voices, please refer to <https://cloud.google.com/text-to-speech/docs/voices Supported voices and languages>.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The preferred gender of the voice. If not set, the service will choose a voice based on the other parameters such as language_code and name. Note that this is only a preference, not requirement. If a voice of the appropriate gender is not available, the synthesizer substitutes a voice with a different gender rather than failing the request.
+    ssmlGender ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3VoiceSelectionParams' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3VoiceSelectionParams ::
+  GoogleCloudDialogflowCxV3VoiceSelectionParams
+newGoogleCloudDialogflowCxV3VoiceSelectionParams =
+  GoogleCloudDialogflowCxV3VoiceSelectionParams
+    { name =
+        Core.Nothing,
+      ssmlGender = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3VoiceSelectionParams
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3VoiceSelectionParams"
+      ( \o ->
+          GoogleCloudDialogflowCxV3VoiceSelectionParams
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "ssmlGender")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3VoiceSelectionParams where
+  toJSON GoogleCloudDialogflowCxV3VoiceSelectionParams {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("ssmlGender" Core..=) Core.<$> ssmlGender
+          ]
+      )
+
+-- | Webhooks host the developer\'s business logic. During a session, webhooks allow the developer to use the data extracted by Dialogflow\'s natural language processing to generate dynamic responses, validate collected data, or trigger actions on the backend.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3Webhook' smart constructor.
+data GoogleCloudDialogflowCxV3Webhook = GoogleCloudDialogflowCxV3Webhook
+  { -- | Indicates whether the webhook is disabled.
+    disabled :: (Core.Maybe Core.Bool),
+    -- | Required. The human-readable name of the webhook, unique within the agent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Configuration for a generic web service.
+    genericWebService :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookGenericWebService),
+    -- | The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Configuration for a <https://cloud.google.com/service-directory Service Directory> service.
+    serviceDirectory :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig),
+    -- | Webhook execution timeout. Execution is considered failed if Dialogflow doesn\'t receive a response from webhook at the end of the timeout period. Defaults to 5 seconds, maximum allowed timeout is 30 seconds.
+    timeout :: (Core.Maybe Core.Duration)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3Webhook' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3Webhook ::
+  GoogleCloudDialogflowCxV3Webhook
+newGoogleCloudDialogflowCxV3Webhook =
+  GoogleCloudDialogflowCxV3Webhook
+    { disabled = Core.Nothing,
+      displayName = Core.Nothing,
+      genericWebService = Core.Nothing,
+      name = Core.Nothing,
+      serviceDirectory = Core.Nothing,
+      timeout = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3Webhook where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3Webhook"
+      ( \o ->
+          GoogleCloudDialogflowCxV3Webhook
+            Core.<$> (o Core..:? "disabled")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "genericWebService")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "serviceDirectory")
+            Core.<*> (o Core..:? "timeout")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3Webhook where
+  toJSON GoogleCloudDialogflowCxV3Webhook {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("disabled" Core..=) Core.<$> disabled,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("genericWebService" Core..=) Core.<$> genericWebService,
+            ("name" Core..=) Core.<$> name,
+            ("serviceDirectory" Core..=) Core.<$> serviceDirectory,
+            ("timeout" Core..=) Core.<$> timeout
+          ]
+      )
+
+-- | Represents configuration for a generic web service.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookGenericWebService' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookGenericWebService = GoogleCloudDialogflowCxV3WebhookGenericWebService
+  { -- | Optional. Specifies a list of allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, Dialogflow will use Google\'s default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command, @openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile \<(printf \"\\nsubjectAltName=\'DNS:www.example.com\'\")@
+    allowedCaCerts :: (Core.Maybe [Core.Base64]),
+    -- | Optional. HTTP method for the flexible webhook calls. Standard webhook always uses POST.
+    httpMethod ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+      ),
+    -- | Optional. The OAuth configuration of the webhook. If specified, Dialogflow will initiate the OAuth client credential flow to exchange an access token from the 3rd party platform and put it in the auth header.
+    oauthConfig ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+      ),
+    -- | Optional. Maps the values extracted from specific fields of the flexible webhook response into session parameters. - Key: session parameter name - Value: field path in the webhook response
+    parameterMapping ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+      ),
+    -- | The password for HTTP Basic authentication.
+    password :: (Core.Maybe Core.Text),
+    -- | Optional. Defines a custom JSON object as request body to send to flexible webhook.
+    requestBody :: (Core.Maybe Core.Text),
+    -- | The HTTP request headers to send together with webhook requests.
+    requestHeaders ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+      ),
+    -- | Optional. Indicate the auth token type generated from the <https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent Diglogflow service agent>. The generated token is sent in the Authorization header.
+    serviceAgentAuth ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+      ),
+    -- | Required. The webhook URI for receiving POST requests. It must use https protocol.
+    uri :: (Core.Maybe Core.Text),
+    -- | The user name for HTTP Basic authentication.
+    username :: (Core.Maybe Core.Text),
+    -- | Optional. Type of the webhook.
+    webhookType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookGenericWebService' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookGenericWebService ::
+  GoogleCloudDialogflowCxV3WebhookGenericWebService
+newGoogleCloudDialogflowCxV3WebhookGenericWebService =
+  GoogleCloudDialogflowCxV3WebhookGenericWebService
+    { allowedCaCerts =
+        Core.Nothing,
+      httpMethod = Core.Nothing,
+      oauthConfig = Core.Nothing,
+      parameterMapping = Core.Nothing,
+      password = Core.Nothing,
+      requestBody = Core.Nothing,
+      requestHeaders = Core.Nothing,
+      serviceAgentAuth = Core.Nothing,
+      uri = Core.Nothing,
+      username = Core.Nothing,
+      webhookType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookGenericWebService"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookGenericWebService
+            Core.<$> (o Core..:? "allowedCaCerts")
+            Core.<*> (o Core..:? "httpMethod")
+            Core.<*> (o Core..:? "oauthConfig")
+            Core.<*> (o Core..:? "parameterMapping")
+            Core.<*> (o Core..:? "password")
+            Core.<*> (o Core..:? "requestBody")
+            Core.<*> (o Core..:? "requestHeaders")
+            Core.<*> (o Core..:? "serviceAgentAuth")
+            Core.<*> (o Core..:? "uri")
+            Core.<*> (o Core..:? "username")
+            Core.<*> (o Core..:? "webhookType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookGenericWebService {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowedCaCerts" Core..=) Core.<$> allowedCaCerts,
+            ("httpMethod" Core..=) Core.<$> httpMethod,
+            ("oauthConfig" Core..=) Core.<$> oauthConfig,
+            ("parameterMapping" Core..=) Core.<$> parameterMapping,
+            ("password" Core..=) Core.<$> password,
+            ("requestBody" Core..=) Core.<$> requestBody,
+            ("requestHeaders" Core..=) Core.<$> requestHeaders,
+            ("serviceAgentAuth" Core..=) Core.<$> serviceAgentAuth,
+            ("uri" Core..=) Core.<$> uri,
+            ("username" Core..=) Core.<$> username,
+            ("webhookType" Core..=) Core.<$> webhookType
+          ]
+      )
+
+-- | Optional. Maps the values extracted from specific fields of the flexible webhook response into session parameters. - Key: session parameter name - Value: field path in the webhook response
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping = GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Text ->
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+  additional =
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping {..} =
+      Core.toJSON additional
+
+-- | The HTTP request headers to send together with webhook requests.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders = GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+  additional =
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders {..} =
+      Core.toJSON additional
+
+-- | Represents configuration of OAuth client credential flow for 3rd party API authentication.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig = GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+  { -- | Required. The client ID provided by the 3rd party platform.
+    clientId :: (Core.Maybe Core.Text),
+    -- | Optional. The client secret provided by the 3rd party platform.
+    clientSecret :: (Core.Maybe Core.Text),
+    -- | Optional. The OAuth scopes to grant.
+    scopes :: (Core.Maybe [Core.Text]),
+    -- | Required. The token endpoint provided by the 3rd party platform to exchange an access token.
+    tokenEndpoint :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig ::
+  GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig =
+  GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+    { clientId =
+        Core.Nothing,
+      clientSecret = Core.Nothing,
+      scopes = Core.Nothing,
+      tokenEndpoint = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+            Core.<$> (o Core..:? "clientId")
+            Core.<*> (o Core..:? "clientSecret")
+            Core.<*> (o Core..:? "scopes")
+            Core.<*> (o Core..:? "tokenEndpoint")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("clientId" Core..=) Core.<$> clientId,
+              ("clientSecret" Core..=) Core.<$> clientSecret,
+              ("scopes" Core..=) Core.<$> scopes,
+              ("tokenEndpoint" Core..=) Core.<$> tokenEndpoint
+            ]
+        )
+
+-- | The request message for a webhook call. The request is sent as a JSON object and the field names will be presented in camel cases. You may see undocumented fields in an actual request. These fields are used internally by Dialogflow and should be ignored.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequest' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookRequest = GoogleCloudDialogflowCxV3WebhookRequest
+  { -- | Always present. The unique identifier of the DetectIntentResponse that will be returned to the API caller.
+    detectIntentResponseId :: (Core.Maybe Core.Text),
+    -- | If DTMF was provided as input, this field will contain the DTMF digits.
+    dtmfDigits :: (Core.Maybe Core.Text),
+    -- | Always present. Information about the fulfillment that triggered this webhook call.
+    fulfillmentInfo :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo),
+    -- | Information about the last matched intent.
+    intentInfo :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookRequestIntentInfo),
+    -- | The language code specified in the original request.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Information about the language of the request.
+    languageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3LanguageInfo),
+    -- | The list of rich message responses to present to the user. Webhook can choose to append or replace this list in WebhookResponse.fulfillment_response;
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3ResponseMessage]),
+    -- | Information about page status.
+    pageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3PageInfo),
+    -- | Custom data set in QueryParameters.payload.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookRequest_Payload),
+    -- | The sentiment analysis result of the current user request. The field is filled when sentiment analysis is configured to be enabled for the request.
+    sentimentAnalysisResult ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+      ),
+    -- | Information about session status.
+    sessionInfo :: (Core.Maybe GoogleCloudDialogflowCxV3SessionInfo),
+    -- | If natural language text was provided as input, this field will contain a copy of the text.
+    text :: (Core.Maybe Core.Text),
+    -- | If natural language speech audio was provided as input, this field will contain the transcript for the audio.
+    transcript :: (Core.Maybe Core.Text),
+    -- | If an event was provided as input, this field will contain the name of the event.
+    triggerEvent :: (Core.Maybe Core.Text),
+    -- | If an intent was provided as input, this field will contain a copy of the intent identifier. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    triggerIntent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequest ::
+  GoogleCloudDialogflowCxV3WebhookRequest
+newGoogleCloudDialogflowCxV3WebhookRequest =
+  GoogleCloudDialogflowCxV3WebhookRequest
+    { detectIntentResponseId =
+        Core.Nothing,
+      dtmfDigits = Core.Nothing,
+      fulfillmentInfo = Core.Nothing,
+      intentInfo = Core.Nothing,
+      languageCode = Core.Nothing,
+      languageInfo = Core.Nothing,
+      messages = Core.Nothing,
+      pageInfo = Core.Nothing,
+      payload = Core.Nothing,
+      sentimentAnalysisResult = Core.Nothing,
+      sessionInfo = Core.Nothing,
+      text = Core.Nothing,
+      transcript = Core.Nothing,
+      triggerEvent = Core.Nothing,
+      triggerIntent = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3WebhookRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequest
+            Core.<$> (o Core..:? "detectIntentResponseId")
+            Core.<*> (o Core..:? "dtmfDigits")
+            Core.<*> (o Core..:? "fulfillmentInfo")
+            Core.<*> (o Core..:? "intentInfo")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "languageInfo")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sentimentAnalysisResult")
+            Core.<*> (o Core..:? "sessionInfo")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "transcript")
+            Core.<*> (o Core..:? "triggerEvent")
+            Core.<*> (o Core..:? "triggerIntent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3WebhookRequest where
+  toJSON GoogleCloudDialogflowCxV3WebhookRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("detectIntentResponseId" Core..=)
+              Core.<$> detectIntentResponseId,
+            ("dtmfDigits" Core..=) Core.<$> dtmfDigits,
+            ("fulfillmentInfo" Core..=) Core.<$> fulfillmentInfo,
+            ("intentInfo" Core..=) Core.<$> intentInfo,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("languageInfo" Core..=) Core.<$> languageInfo,
+            ("messages" Core..=) Core.<$> messages,
+            ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("payload" Core..=) Core.<$> payload,
+            ("sentimentAnalysisResult" Core..=)
+              Core.<$> sentimentAnalysisResult,
+            ("sessionInfo" Core..=) Core.<$> sessionInfo,
+            ("text" Core..=) Core.<$> text,
+            ("transcript" Core..=) Core.<$> transcript,
+            ("triggerEvent" Core..=) Core.<$> triggerEvent,
+            ("triggerIntent" Core..=) Core.<$> triggerIntent
+          ]
+      )
+
+-- | Custom data set in QueryParameters.payload.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequest_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookRequest_Payload = GoogleCloudDialogflowCxV3WebhookRequest_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequest_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequest_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3WebhookRequest_Payload
+newGoogleCloudDialogflowCxV3WebhookRequest_Payload additional =
+  GoogleCloudDialogflowCxV3WebhookRequest_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequest_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequest_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequest_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequest_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookRequest_Payload {..} =
+    Core.toJSON additional
+
+-- | Represents fulfillment information communicated to the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo = GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+  { -- | Always present. The value of the Fulfillment.tag field will be populated in this field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes.
+    tag :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo ::
+  GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo =
+  GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+    { tag =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+            Core.<$> (o Core..:? "tag")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo {..} =
+    Core.object (Core.catMaybes [("tag" Core..=) Core.<$> tag])
+
+-- | Represents intent information communicated to the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookRequestIntentInfo = GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+  { -- | The confidence of the matched intent. Values range from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | Always present. The display name of the last matched intent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Always present. The unique identifier of the last matched intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    lastMatchedIntent :: (Core.Maybe Core.Text),
+    -- | Parameters identified as a result of intent matching. This is a map of the name of the identified parameter to the value of the parameter identified from the user\'s utterance. All parameters defined in the matched intent that are identified will be surfaced here.
+    parameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequestIntentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo ::
+  GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo =
+  GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+    { confidence =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      lastMatchedIntent = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequestIntentInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "lastMatchedIntent")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookRequestIntentInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("lastMatchedIntent" Core..=) Core.<$> lastMatchedIntent,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | Parameters identified as a result of intent matching. This is a map of the name of the identified parameter to the value of the parameter identified from the user\'s utterance. All parameters defined in the matched intent that are identified will be surfaced here.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters = GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+  { additional ::
+      ( Core.HashMap
+          Core.Text
+          GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue ->
+  GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+  additional =
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters {..} =
+      Core.toJSON additional
+
+-- | Represents a value for an intent parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue = GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+  { -- | Always present. Original text value extracted from user utterance.
+    originalValue :: (Core.Maybe Core.Text),
+    -- | Always present. Structured value for the parameter extracted from user utterance.
+    resolvedValue :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue ::
+  GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue =
+  GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+    { originalValue =
+        Core.Nothing,
+      resolvedValue =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+            Core.<$> (o Core..:? "originalValue")
+            Core.<*> (o Core..:? "resolvedValue")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("originalValue" Core..=) Core.<$> originalValue,
+              ("resolvedValue" Core..=) Core.<$> resolvedValue
+            ]
+        )
+
+-- | Represents the result of sentiment analysis.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult = GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+  { -- | A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).
+    magnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).
+    score :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult ::
+  GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult =
+  GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+    { magnitude =
+        Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+            Core.<$> (o Core..:? "magnitude")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("magnitude" Core..=) Core.<$> magnitude,
+              ("score" Core..=) Core.<$> score
+            ]
+        )
+
+-- | The response message for a webhook call.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookResponse' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookResponse = GoogleCloudDialogflowCxV3WebhookResponse
+  { -- | The fulfillment response to send to the user. This field can be omitted by the webhook if it does not intend to send any response to the user.
+    fulfillmentResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+      ),
+    -- | Information about page status. This field can be omitted by the webhook if it does not intend to modify page status.
+    pageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3PageInfo),
+    -- | Value to append directly to QueryResult.webhook_payloads.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookResponse_Payload),
+    -- | Information about session status. This field can be omitted by the webhook if it does not intend to modify session status.
+    sessionInfo :: (Core.Maybe GoogleCloudDialogflowCxV3SessionInfo),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookResponse ::
+  GoogleCloudDialogflowCxV3WebhookResponse
+newGoogleCloudDialogflowCxV3WebhookResponse =
+  GoogleCloudDialogflowCxV3WebhookResponse
+    { fulfillmentResponse =
+        Core.Nothing,
+      pageInfo = Core.Nothing,
+      payload = Core.Nothing,
+      sessionInfo = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3WebhookResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookResponse
+            Core.<$> (o Core..:? "fulfillmentResponse")
+            Core.<*> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sessionInfo")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3WebhookResponse where
+  toJSON GoogleCloudDialogflowCxV3WebhookResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("fulfillmentResponse" Core..=) Core.<$> fulfillmentResponse,
+            ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("payload" Core..=) Core.<$> payload,
+            ("sessionInfo" Core..=) Core.<$> sessionInfo,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage
+          ]
+      )
+
+-- | Value to append directly to QueryResult.webhook_payloads.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookResponse_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3WebhookResponse_Payload = GoogleCloudDialogflowCxV3WebhookResponse_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookResponse_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookResponse_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3WebhookResponse_Payload
+newGoogleCloudDialogflowCxV3WebhookResponse_Payload additional =
+  GoogleCloudDialogflowCxV3WebhookResponse_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookResponse_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookResponse_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookResponse_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookResponse_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookResponse_Payload {..} =
+    Core.toJSON additional
+
+-- | Represents a fulfillment response to the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse = GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+  { -- | Merge behavior for @messages@.
+    mergeBehavior ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+      ),
+    -- | The list of rich message responses to present to the user.
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3ResponseMessage])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse ::
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse =
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+    { mergeBehavior =
+        Core.Nothing,
+      messages = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+            Core.<$> (o Core..:? "mergeBehavior")
+            Core.<*> (o Core..:? "messages")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("mergeBehavior" Core..=) Core.<$> mergeBehavior,
+              ("messages" Core..=) Core.<$> messages
+            ]
+        )
+
+-- | Represents configuration for a <https://cloud.google.com/service-directory Service Directory> service.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig' smart constructor.
+data GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig = GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+  { -- | Generic Service configuration of this webhook.
+    genericWebService :: (Core.Maybe GoogleCloudDialogflowCxV3WebhookGenericWebService),
+    -- | Required. The name of <https://cloud.google.com/service-directory Service Directory> service. Format: @projects\/\/locations\/\/namespaces\/\/services\/@. @Location ID@ of the service directory must be the same as the location of the agent.
+    service :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig ::
+  GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig =
+  GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+    { genericWebService =
+        Core.Nothing,
+      service = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+            Core.<$> (o Core..:? "genericWebService")
+            Core.<*> (o Core..:? "service")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("genericWebService" Core..=) Core.<$> genericWebService,
+            ("service" Core..=) Core.<$> service
+          ]
+      )
+
+-- | Hierarchical advanced settings for agent\/flow\/page\/fulfillment\/parameter. Settings exposed at lower level overrides the settings exposed at higher level. Overriding occurs at the sub-setting level. For example, the playback/interruption/settings at fulfillment level only overrides the playback/interruption/settings at the agent level, leaving other settings at the agent level unchanged. DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel. Hierarchy: Agent->Flow->Page->Fulfillment\/Parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AdvancedSettings' smart constructor.
+data GoogleCloudDialogflowCxV3beta1AdvancedSettings = GoogleCloudDialogflowCxV3beta1AdvancedSettings
+  { -- | If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels: - Agent level - Flow level
+    audioExportGcsDestination :: (Core.Maybe GoogleCloudDialogflowCxV3beta1GcsDestination),
+    -- | Settings for DTMF. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level.
+    dtmfSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+      ),
+    -- | Settings for logging. Settings for Dialogflow History, Contact Center messages, StackDriver logs, and speech logging. Exposed at the following levels: - Agent level.
+    loggingSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+      ),
+    -- | Settings for speech to text detection. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level
+    speechSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AdvancedSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AdvancedSettings ::
+  GoogleCloudDialogflowCxV3beta1AdvancedSettings
+newGoogleCloudDialogflowCxV3beta1AdvancedSettings =
+  GoogleCloudDialogflowCxV3beta1AdvancedSettings
+    { audioExportGcsDestination =
+        Core.Nothing,
+      dtmfSettings = Core.Nothing,
+      loggingSettings = Core.Nothing,
+      speechSettings = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AdvancedSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AdvancedSettings
+            Core.<$> (o Core..:? "audioExportGcsDestination")
+            Core.<*> (o Core..:? "dtmfSettings")
+            Core.<*> (o Core..:? "loggingSettings")
+            Core.<*> (o Core..:? "speechSettings")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1AdvancedSettings where
+  toJSON GoogleCloudDialogflowCxV3beta1AdvancedSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioExportGcsDestination" Core..=)
+              Core.<$> audioExportGcsDestination,
+            ("dtmfSettings" Core..=) Core.<$> dtmfSettings,
+            ("loggingSettings" Core..=) Core.<$> loggingSettings,
+            ("speechSettings" Core..=) Core.<$> speechSettings
+          ]
+      )
+
+-- | Define behaviors for DTMF (dual tone multi frequency).
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings' smart constructor.
+data GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings = GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+  { -- | If true, incoming audio is processed for DTMF (dual tone multi frequency) events. For example, if the caller presses a button on their telephone keypad and DTMF processing is enabled, Dialogflow will detect the event (e.g. a \"3\" was pressed) in the incoming audio and pass the event to the bot to drive business logic (e.g. when 3 is pressed, return the account balance).
+    enabled :: (Core.Maybe Core.Bool),
+    -- | Endpoint timeout setting for matching dtmf input to regex.
+    endpointingTimeoutDuration :: (Core.Maybe Core.Duration),
+    -- | The digit that terminates a DTMF digit sequence.
+    finishDigit :: (Core.Maybe Core.Text),
+    -- | Interdigit timeout setting for matching dtmf input to regex.
+    interdigitTimeoutDuration :: (Core.Maybe Core.Duration),
+    -- | Max length of DTMF digits.
+    maxDigits :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings ::
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings =
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+    { enabled =
+        Core.Nothing,
+      endpointingTimeoutDuration =
+        Core.Nothing,
+      finishDigit = Core.Nothing,
+      interdigitTimeoutDuration =
+        Core.Nothing,
+      maxDigits = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+            Core.<$> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "endpointingTimeoutDuration")
+            Core.<*> (o Core..:? "finishDigit")
+            Core.<*> (o Core..:? "interdigitTimeoutDuration")
+            Core.<*> (o Core..:? "maxDigits")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("enabled" Core..=) Core.<$> enabled,
+              ("endpointingTimeoutDuration" Core..=)
+                Core.<$> endpointingTimeoutDuration,
+              ("finishDigit" Core..=) Core.<$> finishDigit,
+              ("interdigitTimeoutDuration" Core..=)
+                Core.<$> interdigitTimeoutDuration,
+              ("maxDigits" Core..=) Core.<$> maxDigits
+            ]
+        )
+
+-- | Define behaviors on logging.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings' smart constructor.
+data GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings = GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+  { -- | Enables consent-based end-user input redaction, if true, a pre-defined session parameter @$session.params.conversation-redaction@ will be used to determine if the utterance should be redacted.
+    enableConsentBasedRedaction :: (Core.Maybe Core.Bool),
+    -- | Enables DF Interaction logging.
+    enableInteractionLogging :: (Core.Maybe Core.Bool),
+    -- | Enables Google Cloud Logging.
+    enableStackdriverLogging :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings ::
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings =
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+    { enableConsentBasedRedaction =
+        Core.Nothing,
+      enableInteractionLogging =
+        Core.Nothing,
+      enableStackdriverLogging =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+            Core.<$> (o Core..:? "enableConsentBasedRedaction")
+            Core.<*> (o Core..:? "enableInteractionLogging")
+            Core.<*> (o Core..:? "enableStackdriverLogging")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("enableConsentBasedRedaction" Core..=)
+                Core.<$> enableConsentBasedRedaction,
+              ("enableInteractionLogging" Core..=)
+                Core.<$> enableInteractionLogging,
+              ("enableStackdriverLogging" Core..=)
+                Core.<$> enableStackdriverLogging
+            ]
+        )
+
+-- | Define behaviors of speech to text detection.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings' smart constructor.
+data GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings = GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+  { -- | Sensitivity of the speech model that detects the end of speech. Scale from 0 to 100.
+    endpointerSensitivity :: (Core.Maybe Core.Int32),
+    -- | Mapping from language to Speech-to-Text model. The mapped Speech-to-Text model will be selected for requests from its corresponding language. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+    models ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+      ),
+    -- | Timeout before detecting no speech.
+    noSpeechTimeout :: (Core.Maybe Core.Duration),
+    -- | Use timeout based endpointing, interpreting endpointer sensitivity as seconds of timeout value.
+    useTimeoutBasedEndpointing :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings ::
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings =
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+    { endpointerSensitivity =
+        Core.Nothing,
+      models = Core.Nothing,
+      noSpeechTimeout = Core.Nothing,
+      useTimeoutBasedEndpointing =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+            Core.<$> (o Core..:? "endpointerSensitivity")
+            Core.<*> (o Core..:? "models")
+            Core.<*> (o Core..:? "noSpeechTimeout")
+            Core.<*> (o Core..:? "useTimeoutBasedEndpointing")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("endpointerSensitivity" Core..=) Core.<$> endpointerSensitivity,
+              ("models" Core..=) Core.<$> models,
+              ("noSpeechTimeout" Core..=) Core.<$> noSpeechTimeout,
+              ("useTimeoutBasedEndpointing" Core..=)
+                Core.<$> useTimeoutBasedEndpointing
+            ]
+        )
+
+-- | Mapping from language to Speech-to-Text model. The mapped Speech-to-Text model will be selected for requests from its corresponding language. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models = GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Text ->
+  GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+  additional =
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models {..} =
+      Core.toJSON additional
+
+-- | Represents the natural speech audio to be processed.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1AudioInput' smart constructor.
+data GoogleCloudDialogflowCxV3beta1AudioInput = GoogleCloudDialogflowCxV3beta1AudioInput
+  { -- | The natural language speech audio to be processed. A single request can contain up to 2 minutes of speech audio data. The transcribed text cannot contain more than 256 bytes. For non-streaming audio detect intent, both @config@ and @audio@ must be provided. For streaming audio detect intent, @config@ must be provided in the first request and @audio@ must be provided in all following requests.
+    audio :: (Core.Maybe Core.Base64),
+    -- | Required. Instructs the speech recognizer how to process the speech audio.
+    config :: (Core.Maybe GoogleCloudDialogflowCxV3beta1InputAudioConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1AudioInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1AudioInput ::
+  GoogleCloudDialogflowCxV3beta1AudioInput
+newGoogleCloudDialogflowCxV3beta1AudioInput =
+  GoogleCloudDialogflowCxV3beta1AudioInput
+    { audio = Core.Nothing,
+      config = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1AudioInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1AudioInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1AudioInput
+            Core.<$> (o Core..:? "audio")
+            Core.<*> (o Core..:? "config")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1AudioInput where
+  toJSON GoogleCloudDialogflowCxV3beta1AudioInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audio" Core..=) Core.<$> audio,
+            ("config" Core..=) Core.<$> config
+          ]
+      )
+
+-- | Configuration of the barge-in behavior. Barge-in instructs the API to return a detected utterance at a proper time while the client is playing back the response audio from a previous request. When the client sees the utterance, it should stop the playback and immediately get ready for receiving the responses for the current request. The barge-in handling requires the client to start streaming audio input as soon as it starts playing back the audio from the previous response. The playback is modeled into two phases: * No barge-in phase: which goes first and during which speech detection should not be carried out. * Barge-in phase: which follows the no barge-in phase and during which the API starts speech detection and may inform the client that an utterance has been detected. Note that no-speech event is not expected in this phase. The client provides this configuration in terms of the durations of those two phases. The durations are measured in terms of the audio length from the start of the input audio.
+-- No-speech event is a response with END/OF/UTTERANCE without any transcript following up.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1BargeInConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1BargeInConfig = GoogleCloudDialogflowCxV3beta1BargeInConfig
+  { -- | Duration that is not eligible for barge-in at the beginning of the input audio.
+    noBargeInDuration :: (Core.Maybe Core.Duration),
+    -- | Total duration for the playback at the beginning of the input audio.
+    totalDuration :: (Core.Maybe Core.Duration)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1BargeInConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1BargeInConfig ::
+  GoogleCloudDialogflowCxV3beta1BargeInConfig
+newGoogleCloudDialogflowCxV3beta1BargeInConfig =
+  GoogleCloudDialogflowCxV3beta1BargeInConfig
+    { noBargeInDuration =
+        Core.Nothing,
+      totalDuration = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1BargeInConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1BargeInConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1BargeInConfig
+            Core.<$> (o Core..:? "noBargeInDuration")
+            Core.<*> (o Core..:? "totalDuration")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1BargeInConfig where
+  toJSON GoogleCloudDialogflowCxV3beta1BargeInConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("noBargeInDuration" Core..=) Core.<$> noBargeInDuration,
+            ("totalDuration" Core..=) Core.<$> totalDuration
+          ]
+      )
+
+-- | Metadata returned for the TestCases.BatchRunTestCases long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata = GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+  { -- | The test errors.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata =
+  GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The response message for TestCases.BatchRunTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse = GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+  { -- | The test case results. The detailed conversation turns are empty in this response.
+    results :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestCaseResult])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse ::
+  GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse =
+  GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+    { results =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+            Core.<$> (o Core..:? "results")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse {..} =
+    Core.object
+      (Core.catMaybes [("results" Core..=) Core.<$> results])
+
+-- | Represents a result from running a test case in an agent environment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ContinuousTestResult' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ContinuousTestResult = GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+  { -- | The resource name for the continuous test result. Format: @projects\/\/locations\/\/agents\/\/environments\/\/continuousTestResults\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The result of this continuous test run, i.e. whether all the tests in this continuous test run pass or not.
+    result ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+      ),
+    -- | Time when the continuous testing run starts.
+    runTime :: (Core.Maybe Core.DateTime),
+    -- | A list of individual test case results names in this continuous test run.
+    testCaseResults :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ContinuousTestResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ContinuousTestResult ::
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+newGoogleCloudDialogflowCxV3beta1ContinuousTestResult =
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+    { name =
+        Core.Nothing,
+      result = Core.Nothing,
+      runTime = Core.Nothing,
+      testCaseResults = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ContinuousTestResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "result")
+            Core.<*> (o Core..:? "runTime")
+            Core.<*> (o Core..:? "testCaseResults")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ContinuousTestResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("result" Core..=) Core.<$> result,
+            ("runTime" Core..=) Core.<$> runTime,
+            ("testCaseResults" Core..=) Core.<$> testCaseResults
+          ]
+      )
+
+-- | This message is used to hold all the Conversation Signals data, which will be converted to JSON and exported to BigQuery.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationSignals' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ConversationSignals = GoogleCloudDialogflowCxV3beta1ConversationSignals
+  { -- | Required. Turn signals for the current turn.
+    turnSignals :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TurnSignals)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationSignals ::
+  GoogleCloudDialogflowCxV3beta1ConversationSignals
+newGoogleCloudDialogflowCxV3beta1ConversationSignals =
+  GoogleCloudDialogflowCxV3beta1ConversationSignals
+    { turnSignals =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationSignals
+            Core.<$> (o Core..:? "turnSignals")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationSignals
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ConversationSignals {..} =
+    Core.object
+      (Core.catMaybes [("turnSignals" Core..=) Core.<$> turnSignals])
+
+-- | One interaction between a human and virtual agent. The human provides some input and the virtual agent provides a response.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurn' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ConversationTurn = GoogleCloudDialogflowCxV3beta1ConversationTurn
+  { -- | The user input.
+    userInput ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+      ),
+    -- | The virtual agent output.
+    virtualAgentOutput ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurn' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurn ::
+  GoogleCloudDialogflowCxV3beta1ConversationTurn
+newGoogleCloudDialogflowCxV3beta1ConversationTurn =
+  GoogleCloudDialogflowCxV3beta1ConversationTurn
+    { userInput =
+        Core.Nothing,
+      virtualAgentOutput = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurn
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurn"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurn
+            Core.<$> (o Core..:? "userInput")
+            Core.<*> (o Core..:? "virtualAgentOutput")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1ConversationTurn where
+  toJSON GoogleCloudDialogflowCxV3beta1ConversationTurn {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("userInput" Core..=) Core.<$> userInput,
+            ("virtualAgentOutput" Core..=) Core.<$> virtualAgentOutput
+          ]
+      )
+
+-- | The input from the human user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput = GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+  { -- | Whether sentiment analysis is enabled.
+    enableSentimentAnalysis :: (Core.Maybe Core.Bool),
+    -- | Parameters that need to be injected into the conversation during intent detection.
+    injectedParameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+      ),
+    -- | Supports text input, event input, dtmf input in the test case.
+    input :: (Core.Maybe GoogleCloudDialogflowCxV3beta1QueryInput),
+    -- | If webhooks should be allowed to trigger in response to the user utterance. Often if parameters are injected, webhooks should not be enabled.
+    isWebhookEnabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput ::
+  GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput =
+  GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+    { enableSentimentAnalysis =
+        Core.Nothing,
+      injectedParameters = Core.Nothing,
+      input = Core.Nothing,
+      isWebhookEnabled = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+            Core.<$> (o Core..:? "enableSentimentAnalysis")
+            Core.<*> (o Core..:? "injectedParameters")
+            Core.<*> (o Core..:? "input")
+            Core.<*> (o Core..:? "isWebhookEnabled")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableSentimentAnalysis" Core..=)
+              Core.<$> enableSentimentAnalysis,
+            ("injectedParameters" Core..=) Core.<$> injectedParameters,
+            ("input" Core..=) Core.<$> input,
+            ("isWebhookEnabled" Core..=) Core.<$> isWebhookEnabled
+          ]
+      )
+
+-- | Parameters that need to be injected into the conversation during intent detection.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters = GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+  additional =
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters {..} =
+      Core.toJSON additional
+
+-- | The output from the virtual agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput = GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+  { -- | The Page on which the utterance was spoken. Only name and displayName will be set.
+    currentPage :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Page),
+    -- | Required. Input only. The diagnostic info output for the turn. Required to calculate the testing coverage.
+    diagnosticInfo ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+      ),
+    -- | Output only. If this is part of a result conversation turn, the list of differences between the original run and the replay for this output, if any.
+    differences :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestRunDifference]),
+    -- | The session parameters available to the bot at this point.
+    sessionParameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+      ),
+    -- | Response error from the agent in the test result. If set, other output is empty.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The text responses from the agent for the turn.
+    textResponses :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ResponseMessageText]),
+    -- | The Intent that triggered the response. Only name and displayName will be set.
+    triggeredIntent :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Intent)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput ::
+  GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput =
+  GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+    { currentPage =
+        Core.Nothing,
+      diagnosticInfo = Core.Nothing,
+      differences = Core.Nothing,
+      sessionParameters =
+        Core.Nothing,
+      status = Core.Nothing,
+      textResponses = Core.Nothing,
+      triggeredIntent = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+            Core.<$> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "diagnosticInfo")
+            Core.<*> (o Core..:? "differences")
+            Core.<*> (o Core..:? "sessionParameters")
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "textResponses")
+            Core.<*> (o Core..:? "triggeredIntent")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("currentPage" Core..=) Core.<$> currentPage,
+              ("diagnosticInfo" Core..=) Core.<$> diagnosticInfo,
+              ("differences" Core..=) Core.<$> differences,
+              ("sessionParameters" Core..=) Core.<$> sessionParameters,
+              ("status" Core..=) Core.<$> status,
+              ("textResponses" Core..=) Core.<$> textResponses,
+              ("triggeredIntent" Core..=) Core.<$> triggeredIntent
+            ]
+        )
+
+-- | Required. Input only. The diagnostic info output for the turn. Required to calculate the testing coverage.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo = GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  additional =
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo {..} =
+      Core.toJSON additional
+
+-- | The session parameters available to the bot at this point.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters = GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+  additional =
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters {..} =
+      Core.toJSON additional
+
+-- | Metadata associated with the long running operation for Versions.CreateVersion.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata = GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+  { -- | Name of the created version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata ::
+  GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata =
+  GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+    { version =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+            Core.<$> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata {..} =
+      Core.object
+        (Core.catMaybes [("version" Core..=) Core.<$> version])
+
+-- | A data store connection. It represents a data store in Discovery Engine and the type of the contents it contains.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1DataStoreConnection' smart constructor.
+data GoogleCloudDialogflowCxV3beta1DataStoreConnection = GoogleCloudDialogflowCxV3beta1DataStoreConnection
+  { -- | The full name of the referenced data store. Formats: @projects\/{project}\/locations\/{location}\/collections\/{collection}\/dataStores\/{data_store}@ @projects\/{project}\/locations\/{location}\/dataStores\/{data_store}@
+    dataStore :: (Core.Maybe Core.Text),
+    -- | The type of the connected data store.
+    dataStoreType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+      ),
+    -- | The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode.
+    documentProcessingMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1DataStoreConnection' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1DataStoreConnection ::
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection
+newGoogleCloudDialogflowCxV3beta1DataStoreConnection =
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection
+    { dataStore =
+        Core.Nothing,
+      dataStoreType = Core.Nothing,
+      documentProcessingMode = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1DataStoreConnection"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1DataStoreConnection
+            Core.<$> (o Core..:? "dataStore")
+            Core.<*> (o Core..:? "dataStoreType")
+            Core.<*> (o Core..:? "documentProcessingMode")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1DataStoreConnection {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStore" Core..=) Core.<$> dataStore,
+            ("dataStoreType" Core..=) Core.<$> dataStoreType,
+            ("documentProcessingMode" Core..=)
+              Core.<$> documentProcessingMode
+          ]
+      )
+
+-- | Metadata returned for the Environments.DeployFlow long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1DeployFlowMetadata = GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+  { -- | Errors of running deployment tests.
+    testErrors :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1DeployFlowMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata ::
+  GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata =
+  GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+    { testErrors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1DeployFlowMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+            Core.<$> (o Core..:? "testErrors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1DeployFlowMetadata {..} =
+    Core.object
+      (Core.catMaybes [("testErrors" Core..=) Core.<$> testErrors])
+
+-- | The response message for Environments.DeployFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1DeployFlowResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1DeployFlowResponse = GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+  { -- | The name of the flow version deployment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/deployments\/@.
+    deployment :: (Core.Maybe Core.Text),
+    -- | The updated environment where the flow is deployed.
+    environment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Environment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1DeployFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1DeployFlowResponse ::
+  GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+newGoogleCloudDialogflowCxV3beta1DeployFlowResponse =
+  GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+    { deployment =
+        Core.Nothing,
+      environment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1DeployFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+            Core.<$> (o Core..:? "deployment")
+            Core.<*> (o Core..:? "environment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1DeployFlowResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("deployment" Core..=) Core.<$> deployment,
+            ("environment" Core..=) Core.<$> environment
+          ]
+      )
+
+-- | Represents the input for dtmf event.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1DtmfInput' smart constructor.
+data GoogleCloudDialogflowCxV3beta1DtmfInput = GoogleCloudDialogflowCxV3beta1DtmfInput
+  { -- | The dtmf digits.
+    digits :: (Core.Maybe Core.Text),
+    -- | The finish digit (if any).
+    finishDigit :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1DtmfInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1DtmfInput ::
+  GoogleCloudDialogflowCxV3beta1DtmfInput
+newGoogleCloudDialogflowCxV3beta1DtmfInput =
+  GoogleCloudDialogflowCxV3beta1DtmfInput
+    { digits = Core.Nothing,
+      finishDigit = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1DtmfInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1DtmfInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1DtmfInput
+            Core.<$> (o Core..:? "digits")
+            Core.<*> (o Core..:? "finishDigit")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1DtmfInput where
+  toJSON GoogleCloudDialogflowCxV3beta1DtmfInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("digits" Core..=) Core.<$> digits,
+            ("finishDigit" Core..=) Core.<$> finishDigit
+          ]
+      )
+
+-- | Represents an environment for an agent. You can create multiple versions of your agent and publish them to separate environments. When you edit an agent, you are editing the draft agent. At any point, you can save the draft agent as an agent version, which is an immutable snapshot of your agent. When you save the draft agent, it is published to the default environment. When you create agent versions, you can publish them to custom environments. You can create a variety of custom environments for testing, development, production, etc.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Environment' smart constructor.
+data GoogleCloudDialogflowCxV3beta1Environment = GoogleCloudDialogflowCxV3beta1Environment
+  { -- | The human-readable description of the environment. The maximum length is 500 characters. If exceeded, the request is rejected.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the environment (unique in an agent). Limit of 64 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The name of the environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The test cases config for continuous tests of this environment.
+    testCasesConfig ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+      ),
+    -- | Output only. Update time of this environment.
+    updateTime :: (Core.Maybe Core.DateTime),
+    -- | A list of configurations for flow versions. You should include version configs for all flows that are reachable from @Start Flow@ in the agent. Otherwise, an error will be returned.
+    versionConfigs ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig]
+      ),
+    -- | The webhook configuration for this environment.
+    webhookConfig :: (Core.Maybe GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Environment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Environment ::
+  GoogleCloudDialogflowCxV3beta1Environment
+newGoogleCloudDialogflowCxV3beta1Environment =
+  GoogleCloudDialogflowCxV3beta1Environment
+    { description =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      name = Core.Nothing,
+      testCasesConfig = Core.Nothing,
+      updateTime = Core.Nothing,
+      versionConfigs = Core.Nothing,
+      webhookConfig = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Environment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Environment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Environment
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "testCasesConfig")
+            Core.<*> (o Core..:? "updateTime")
+            Core.<*> (o Core..:? "versionConfigs")
+            Core.<*> (o Core..:? "webhookConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Environment where
+  toJSON GoogleCloudDialogflowCxV3beta1Environment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("name" Core..=) Core.<$> name,
+            ("testCasesConfig" Core..=) Core.<$> testCasesConfig,
+            ("updateTime" Core..=) Core.<$> updateTime,
+            ("versionConfigs" Core..=) Core.<$> versionConfigs,
+            ("webhookConfig" Core..=) Core.<$> webhookConfig
+          ]
+      )
+
+-- | The configuration for continuous tests.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig = GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+  { -- | Whether to run test cases in TestCasesConfig.test_cases periodically. Default false. If set to true, run once a day.
+    enableContinuousRun :: (Core.Maybe Core.Bool),
+    -- | Whether to run test cases in TestCasesConfig.test_cases before deploying a flow version to the environment. Default false.
+    enablePredeploymentRun :: (Core.Maybe Core.Bool),
+    -- | A list of test case names to run. They should be under the same agent. Format of each test case name: @projects\/\/locations\/\/agents\/\/testCases\/@
+    testCases :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig ::
+  GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig =
+  GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+    { enableContinuousRun =
+        Core.Nothing,
+      enablePredeploymentRun = Core.Nothing,
+      testCases = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+            Core.<$> (o Core..:? "enableContinuousRun")
+            Core.<*> (o Core..:? "enablePredeploymentRun")
+            Core.<*> (o Core..:? "testCases")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enableContinuousRun" Core..=) Core.<$> enableContinuousRun,
+            ("enablePredeploymentRun" Core..=) Core.<$> enablePredeploymentRun,
+            ("testCases" Core..=) Core.<$> testCases
+          ]
+      )
+
+-- | Configuration for the version.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig = GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+  { -- | Required. Both flow and playbook versions are supported. Format for flow version: projects\/\/locations\/\/agents\/\/flows\/\/versions\/. Format for playbook version: projects\/\/locations\/\/agents\/\/playbooks\/\/versions\/.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig ::
+  GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig =
+  GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+    { version =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+            Core.<$> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig {..} =
+    Core.object
+      (Core.catMaybes [("version" Core..=) Core.<$> version])
+
+-- | Configuration for webhooks.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig = GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+  { -- | The list of webhooks to override for the agent environment. The webhook must exist in the agent. You can override fields in @generic_web_service@ and @service_directory@.
+    webhookOverrides :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1Webhook])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig ::
+  GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig =
+  GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+    { webhookOverrides =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+            Core.<$> (o Core..:? "webhookOverrides")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [("webhookOverrides" Core..=) Core.<$> webhookOverrides]
+      )
+
+-- | An event handler specifies an event that can be handled during a session. When the specified event happens, the following actions are taken in order: * If there is a @trigger_fulfillment@ associated with the event, it will be called. * If there is a @target_page@ associated with the event, the session will transition into the specified page. * If there is a @target_flow@ associated with the event, the session will transition into the specified flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1EventHandler' smart constructor.
+data GoogleCloudDialogflowCxV3beta1EventHandler = GoogleCloudDialogflowCxV3beta1EventHandler
+  { -- | Required. The name of the event to handle.
+    event :: (Core.Maybe Core.Text),
+    -- | Output only. The unique identifier of this event handler.
+    name :: (Core.Maybe Core.Text),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The target playbook to transition to. Format: @projects\/\/locations\/\/agents\/\/playbooks\/@.
+    targetPlaybook :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the event occurs. Handling webhook errors with a fulfillment enabled with webhook could cause infinite loop. It is invalid to specify such fulfillment for a handler handling webhooks.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1EventHandler' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1EventHandler ::
+  GoogleCloudDialogflowCxV3beta1EventHandler
+newGoogleCloudDialogflowCxV3beta1EventHandler =
+  GoogleCloudDialogflowCxV3beta1EventHandler
+    { event = Core.Nothing,
+      name = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      targetPlaybook = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1EventHandler where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1EventHandler"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1EventHandler
+            Core.<$> (o Core..:? "event")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "targetPlaybook")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1EventHandler where
+  toJSON GoogleCloudDialogflowCxV3beta1EventHandler {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("event" Core..=) Core.<$> event,
+            ("name" Core..=) Core.<$> name,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("targetPlaybook" Core..=) Core.<$> targetPlaybook,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | Represents the event to trigger.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1EventInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1EventInput = GoogleCloudDialogflowCxV3beta1EventInput
+  { -- | Name of the event.
+    event :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1EventInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1EventInput ::
+  GoogleCloudDialogflowCxV3beta1EventInput
+newGoogleCloudDialogflowCxV3beta1EventInput =
+  GoogleCloudDialogflowCxV3beta1EventInput {event = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1EventInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1EventInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1EventInput
+            Core.<$> (o Core..:? "event")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1EventInput where
+  toJSON GoogleCloudDialogflowCxV3beta1EventInput {..} =
+    Core.object (Core.catMaybes [("event" Core..=) Core.<$> event])
+
+-- | The response message for Agents.ExportAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportAgentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportAgentResponse = GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+  { -- | Uncompressed raw byte content for agent. This field is populated if none of @agent_uri@ and @git_destination@ are specified in ExportAgentRequest.
+    agentContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported agent. This field is populated if @agent_uri@ is specified in ExportAgentRequest.
+    agentUri :: (Core.Maybe Core.Text),
+    -- | Commit SHA of the git push. This field is populated if @git_destination@ is specified in ExportAgentRequest.
+    commitSha :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportAgentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportAgentResponse ::
+  GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+newGoogleCloudDialogflowCxV3beta1ExportAgentResponse =
+  GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+    { agentContent =
+        Core.Nothing,
+      agentUri = Core.Nothing,
+      commitSha = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportAgentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+            Core.<$> (o Core..:? "agentContent")
+            Core.<*> (o Core..:? "agentUri")
+            Core.<*> (o Core..:? "commitSha")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ExportAgentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentContent" Core..=) Core.<$> agentContent,
+            ("agentUri" Core..=) Core.<$> agentUri,
+            ("commitSha" Core..=) Core.<$> commitSha
+          ]
+      )
+
+-- | Metadata returned for the EntityTypes.ExportEntityTypes long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata = GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata ::
+  GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata =
+  GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for EntityTypes.ExportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse = GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+  { -- | Uncompressed byte content for entity types. This field is populated only if @entity_types_content_inline@ is set to true in ExportEntityTypesRequest.
+    entityTypesContent :: (Core.Maybe GoogleCloudDialogflowCxV3beta1InlineDestination),
+    -- | The URI to a file containing the exported entity types. This field is populated only if @entity_types_uri@ is specified in ExportEntityTypesRequest.
+    entityTypesUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse =
+  GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+    { entityTypesContent =
+        Core.Nothing,
+      entityTypesUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+            Core.<$> (o Core..:? "entityTypesContent")
+            Core.<*> (o Core..:? "entityTypesUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityTypesContent" Core..=) Core.<$> entityTypesContent,
+            ("entityTypesUri" Core..=) Core.<$> entityTypesUri
+          ]
+      )
+
+-- | The response message for Flows.ExportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportFlowResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportFlowResponse = GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+  { -- | Uncompressed raw byte content for flow.
+    flowContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported flow. This field is populated only if @flow_uri@ is specified in ExportFlowRequest.
+    flowUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportFlowResponse ::
+  GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+newGoogleCloudDialogflowCxV3beta1ExportFlowResponse =
+  GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+    { flowContent =
+        Core.Nothing,
+      flowUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+            Core.<$> (o Core..:? "flowContent")
+            Core.<*> (o Core..:? "flowUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ExportFlowResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flowContent" Core..=) Core.<$> flowContent,
+            ("flowUri" Core..=) Core.<$> flowUri
+          ]
+      )
+
+-- | Metadata returned for the Intents.ExportIntents long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata = GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata ::
+  GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata =
+  GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for Intents.ExportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportIntentsResponse = GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+  { -- | Uncompressed byte content for intents. This field is populated only if @intents_content_inline@ is set to true in ExportIntentsRequest.
+    intentsContent :: (Core.Maybe GoogleCloudDialogflowCxV3beta1InlineDestination),
+    -- | The URI to a file containing the exported intents. This field is populated only if @intents_uri@ is specified in ExportIntentsRequest.
+    intentsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse ::
+  GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse =
+  GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+    { intentsContent =
+        Core.Nothing,
+      intentsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+            Core.<$> (o Core..:? "intentsContent")
+            Core.<*> (o Core..:? "intentsUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ExportIntentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("intentsContent" Core..=) Core.<$> intentsContent,
+            ("intentsUri" Core..=) Core.<$> intentsUri
+          ]
+      )
+
+-- | Metadata returned for the TestCases.ExportTestCases long running operation. This message currently has no fields.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata = GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata =
+  GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for TestCases.ExportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse = GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+  { -- | Uncompressed raw byte content for test cases.
+    content :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported test cases. This field is populated only if @gcs_uri@ is specified in ExportTestCasesRequest.
+    gcsUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse ::
+  GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse =
+  GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+    { content =
+        Core.Nothing,
+      gcsUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+            Core.<$> (o Core..:? "content")
+            Core.<*> (o Core..:? "gcsUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("content" Core..=) Core.<$> content,
+            ("gcsUri" Core..=) Core.<$> gcsUri
+          ]
+      )
+
+-- | A form is a data model that groups related parameters that can be collected from the user. The process in which the agent prompts the user and collects parameter values from the user is called form filling. A form can be added to a page. When form filling is done, the filled parameters will be written to the session.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Form' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1Form = GoogleCloudDialogflowCxV3beta1Form
+  { -- | Parameters to collect from the user.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1FormParameter])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Form' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Form ::
+  GoogleCloudDialogflowCxV3beta1Form
+newGoogleCloudDialogflowCxV3beta1Form =
+  GoogleCloudDialogflowCxV3beta1Form {parameters = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Form where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Form"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Form
+            Core.<$> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Form where
+  toJSON GoogleCloudDialogflowCxV3beta1Form {..} =
+    Core.object
+      (Core.catMaybes [("parameters" Core..=) Core.<$> parameters])
+
+-- | Represents a form parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FormParameter' smart constructor.
+data GoogleCloudDialogflowCxV3beta1FormParameter = GoogleCloudDialogflowCxV3beta1FormParameter
+  { -- | Hierarchical advanced settings for this parameter. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3beta1AdvancedSettings),
+    -- | The default value of an optional parameter. If the parameter is required, the default value will be ignored.
+    defaultValue :: (Core.Maybe Core.Value),
+    -- | Required. The human-readable name of the parameter, unique within the form.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Required. The entity type of the parameter. Format: @projects\/-\/locations\/-\/agents\/-\/entityTypes\/@ for system entity types (for example, @projects\/-\/locations\/-\/agents\/-\/entityTypes\/sys.date@), or @projects\/\/locations\/\/agents\/\/entityTypes\/@ for developer entity types.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. Defines fill behavior for the parameter.
+    fillBehavior ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+      ),
+    -- | Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.
+    redact :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.
+    required :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FormParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FormParameter ::
+  GoogleCloudDialogflowCxV3beta1FormParameter
+newGoogleCloudDialogflowCxV3beta1FormParameter =
+  GoogleCloudDialogflowCxV3beta1FormParameter
+    { advancedSettings =
+        Core.Nothing,
+      defaultValue = Core.Nothing,
+      displayName = Core.Nothing,
+      entityType = Core.Nothing,
+      fillBehavior = Core.Nothing,
+      isList = Core.Nothing,
+      redact = Core.Nothing,
+      required = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1FormParameter where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FormParameter"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FormParameter
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "defaultValue")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "fillBehavior")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "redact")
+            Core.<*> (o Core..:? "required")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1FormParameter where
+  toJSON GoogleCloudDialogflowCxV3beta1FormParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("defaultValue" Core..=) Core.<$> defaultValue,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entityType" Core..=) Core.<$> entityType,
+            ("fillBehavior" Core..=) Core.<$> fillBehavior,
+            ("isList" Core..=) Core.<$> isList,
+            ("redact" Core..=) Core.<$> redact,
+            ("required" Core..=) Core.<$> required
+          ]
+      )
+
+-- | Configuration for how the filling of a parameter should be handled.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior' smart constructor.
+data GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior = GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+  { -- | Required. The fulfillment to provide the initial prompt that the agent can present to the user in order to fill the parameter.
+    initialPromptFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Fulfillment),
+    -- | The handlers for parameter-level events, used to provide reprompt for the parameter or transition to a different page\/flow. The supported events are: * @sys.no-match-@, where N can be from 1 to 6 * @sys.no-match-default@ * @sys.no-input-@, where N can be from 1 to 6 * @sys.no-input-default@ * @sys.invalid-parameter@ @initial_prompt_fulfillment@ provides the first prompt for the parameter. If the user\'s response does not fill the parameter, a no-match\/no-input event will be triggered, and the fulfillment associated with the @sys.no-match-1@\/@sys.no-input-1@ handler (if defined) will be called to provide a prompt. The @sys.no-match-2@\/@sys.no-input-2@ handler (if defined) will respond to the next no-match\/no-input event, and so on. A @sys.no-match-default@ or @sys.no-input-default@ handler will be used to handle all following no-match\/no-input events after all numbered no-match\/no-input handlers for the parameter are consumed. A @sys.invalid-parameter@ handler can be defined to handle the case where the
+    -- parameter values have been @invalidated@ by webhook. For example, if the user\'s response fill the parameter, however the parameter was invalidated by webhook, the fulfillment associated with the @sys.invalid-parameter@ handler (if defined) will be called to provide a prompt. If the event handler for the corresponding event can\'t be found on the parameter, @initial_prompt_fulfillment@ will be re-prompted.
+    repromptEventHandlers :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1EventHandler])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior ::
+  GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior =
+  GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+    { initialPromptFulfillment =
+        Core.Nothing,
+      repromptEventHandlers = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+            Core.<$> (o Core..:? "initialPromptFulfillment")
+            Core.<*> (o Core..:? "repromptEventHandlers")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("initialPromptFulfillment" Core..=)
+              Core.<$> initialPromptFulfillment,
+            ("repromptEventHandlers" Core..=) Core.<$> repromptEventHandlers
+          ]
+      )
+
+-- | A fulfillment can do one or more of the following actions at the same time: * Generate rich message responses. * Set parameter values. * Call the webhook. Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page\'s entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Fulfillment' smart constructor.
+data GoogleCloudDialogflowCxV3beta1Fulfillment = GoogleCloudDialogflowCxV3beta1Fulfillment
+  { -- | Hierarchical advanced settings for this fulfillment. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3beta1AdvancedSettings),
+    -- | Conditional cases for this fulfillment.
+    conditionalCases ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases]
+      ),
+    -- | If the flag is true, the agent will utilize LLM to generate a text response. If LLM generation fails, the defined responses in the fulfillment will be respected. This flag is only useful for fulfillments associated with no-match event handlers.
+    enableGenerativeFallback :: (Core.Maybe Core.Bool),
+    -- | The list of rich message responses to present to the user.
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ResponseMessage]),
+    -- | Whether Dialogflow should return currently queued fulfillment response messages in streaming APIs. If a webhook is specified, it happens before Dialogflow invokes webhook. Warning: 1) This flag only affects streaming API. Responses are still queued and returned once in non-streaming API. 2) The flag can be enabled in any fulfillment but only the first 3 partial responses will be returned. You may only want to apply it to fulfillments that have slow webhooks.
+    returnPartialResponses :: (Core.Maybe Core.Bool),
+    -- | Set parameter values before executing the webhook.
+    setParameterActions ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction]
+      ),
+    -- | The value of this field will be populated in the WebhookRequest @fulfillmentInfo.tag@ field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes. This field is required if @webhook@ is specified.
+    tag :: (Core.Maybe Core.Text),
+    -- | The webhook to call. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    webhook :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Fulfillment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Fulfillment ::
+  GoogleCloudDialogflowCxV3beta1Fulfillment
+newGoogleCloudDialogflowCxV3beta1Fulfillment =
+  GoogleCloudDialogflowCxV3beta1Fulfillment
+    { advancedSettings =
+        Core.Nothing,
+      conditionalCases = Core.Nothing,
+      enableGenerativeFallback = Core.Nothing,
+      messages = Core.Nothing,
+      returnPartialResponses = Core.Nothing,
+      setParameterActions = Core.Nothing,
+      tag = Core.Nothing,
+      webhook = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Fulfillment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Fulfillment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Fulfillment
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "conditionalCases")
+            Core.<*> (o Core..:? "enableGenerativeFallback")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "returnPartialResponses")
+            Core.<*> (o Core..:? "setParameterActions")
+            Core.<*> (o Core..:? "tag")
+            Core.<*> (o Core..:? "webhook")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Fulfillment where
+  toJSON GoogleCloudDialogflowCxV3beta1Fulfillment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("conditionalCases" Core..=) Core.<$> conditionalCases,
+            ("enableGenerativeFallback" Core..=)
+              Core.<$> enableGenerativeFallback,
+            ("messages" Core..=) Core.<$> messages,
+            ("returnPartialResponses" Core..=) Core.<$> returnPartialResponses,
+            ("setParameterActions" Core..=) Core.<$> setParameterActions,
+            ("tag" Core..=) Core.<$> tag,
+            ("webhook" Core..=) Core.<$> webhook
+          ]
+      )
+
+-- | A list of cascading if-else conditions. Cases are mutually exclusive. The first one with a matching condition is selected, all the rest ignored.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases = GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+  { -- | A list of cascading if-else conditions.
+    cases ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases ::
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases =
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+    { cases =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+            Core.<$> (o Core..:? "cases")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases {..} =
+      Core.object (Core.catMaybes [("cases" Core..=) Core.<$> cases])
+
+-- | Each case has a Boolean condition. When it is evaluated to be True, the corresponding messages will be selected and evaluated recursively.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase' smart constructor.
+data GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase = GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+  { -- | A list of case content.
+    caseContent ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent]
+      ),
+    -- | The condition to activate and select this case. Empty means the condition is always true. The condition is evaluated against form parameters or session parameters. See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>.
+    condition :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase ::
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase =
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+    { caseContent =
+        Core.Nothing,
+      condition = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+            Core.<$> (o Core..:? "caseContent")
+            Core.<*> (o Core..:? "condition")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("caseContent" Core..=) Core.<$> caseContent,
+              ("condition" Core..=) Core.<$> condition
+            ]
+        )
+
+-- | The list of messages or conditional cases to activate for this case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent' smart constructor.
+data GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent = GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+  { -- | Additional cases to be evaluated.
+    additionalCases ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+      ),
+    -- | Returned message.
+    message :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ResponseMessage)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent ::
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent =
+  GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+    { additionalCases =
+        Core.Nothing,
+      message = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+            Core.<$> (o Core..:? "additionalCases")
+            Core.<*> (o Core..:? "message")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("additionalCases" Core..=) Core.<$> additionalCases,
+              ("message" Core..=) Core.<$> message
+            ]
+        )
+
+-- | Setting a parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction' smart constructor.
+data GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction = GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+  { -- | Display name of the parameter.
+    parameter :: (Core.Maybe Core.Text),
+    -- | The new value of the parameter. A null value clears the parameter.
+    value :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction ::
+  GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction =
+  GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+    { parameter =
+        Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+            Core.<$> (o Core..:? "parameter")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("parameter" Core..=) Core.<$> parameter,
+              ("value" Core..=) Core.<$> value
+            ]
+        )
+
+-- | Google Cloud Storage location for a Dialogflow operation that writes or exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1GcsDestination' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1GcsDestination = GoogleCloudDialogflowCxV3beta1GcsDestination
+  { -- | Required. The Google Cloud Storage URI for the exported objects. A URI is of the form: @gs:\/\/bucket\/object-name-or-prefix@ Whether a full object name, or just a prefix, its usage depends on the Dialogflow operation.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1GcsDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1GcsDestination ::
+  GoogleCloudDialogflowCxV3beta1GcsDestination
+newGoogleCloudDialogflowCxV3beta1GcsDestination =
+  GoogleCloudDialogflowCxV3beta1GcsDestination {uri = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1GcsDestination where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1GcsDestination"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1GcsDestination
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1GcsDestination where
+  toJSON GoogleCloudDialogflowCxV3beta1GcsDestination {..} =
+    Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Metadata returned for the EntityTypes.ImportEntityTypes long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata = GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata ::
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata =
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for EntityTypes.ImportEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse = GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+  { -- | Info which resources have conflicts when REPORT/CONFLICT merge/option is set in ImportEntityTypesRequest.
+    conflictingResources ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+      ),
+    -- | The unique identifier of the imported entity types. Format: @projects\/\/locations\/\/agents\/\/entity_types\/@.
+    entityTypes :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse ::
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse =
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+    { conflictingResources =
+        Core.Nothing,
+      entityTypes = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+            Core.<$> (o Core..:? "conflictingResources")
+            Core.<*> (o Core..:? "entityTypes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conflictingResources" Core..=) Core.<$> conflictingResources,
+            ("entityTypes" Core..=) Core.<$> entityTypes
+          ]
+      )
+
+-- | Conflicting resources detected during the import process. Only filled when REPORT_CONFLICT is set in the request and there are conflicts in the display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources = GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+  { -- | Display names of conflicting entities.
+    entityDisplayNames :: (Core.Maybe [Core.Text]),
+    -- | Display names of conflicting entity types.
+    entityTypeDisplayNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources ::
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources =
+  GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+    { entityDisplayNames =
+        Core.Nothing,
+      entityTypeDisplayNames =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+            Core.<$> (o Core..:? "entityDisplayNames")
+            Core.<*> (o Core..:? "entityTypeDisplayNames")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("entityDisplayNames" Core..=) Core.<$> entityDisplayNames,
+              ("entityTypeDisplayNames" Core..=)
+                Core.<$> entityTypeDisplayNames
+            ]
+        )
+
+-- | The response message for Flows.ImportFlow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportFlowResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ImportFlowResponse = GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+  { -- | The unique identifier of the new flow. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    flow :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportFlowResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportFlowResponse ::
+  GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+newGoogleCloudDialogflowCxV3beta1ImportFlowResponse =
+  GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+    { flow =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportFlowResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+            Core.<$> (o Core..:? "flow")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ImportFlowResponse {..} =
+    Core.object (Core.catMaybes [("flow" Core..=) Core.<$> flow])
+
+-- | Metadata returned for the Intents.ImportIntents long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata = GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata ::
+  GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata =
+  GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for Intents.ImportIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportIntentsResponse = GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+  { -- | Info which resources have conflicts when REPORT/CONFLICT merge/option is set in ImportIntentsRequest.
+    conflictingResources ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+      ),
+    -- | The unique identifier of the imported intents. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    intents :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse ::
+  GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse =
+  GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+    { conflictingResources =
+        Core.Nothing,
+      intents = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+            Core.<$> (o Core..:? "conflictingResources")
+            Core.<*> (o Core..:? "intents")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ImportIntentsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conflictingResources" Core..=) Core.<$> conflictingResources,
+            ("intents" Core..=) Core.<$> intents
+          ]
+      )
+
+-- | Conflicting resources detected during the import process. Only filled when REPORT_CONFLICT is set in the request and there are conflicts in the display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources = GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+  { -- | Display names of conflicting entities.
+    entityDisplayNames :: (Core.Maybe [Core.Text]),
+    -- | Display names of conflicting intents.
+    intentDisplayNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources ::
+  GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources =
+  GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+    { entityDisplayNames =
+        Core.Nothing,
+      intentDisplayNames =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+            Core.<$> (o Core..:? "entityDisplayNames")
+            Core.<*> (o Core..:? "intentDisplayNames")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("entityDisplayNames" Core..=) Core.<$> entityDisplayNames,
+              ("intentDisplayNames" Core..=) Core.<$> intentDisplayNames
+            ]
+        )
+
+-- | Metadata returned for the TestCases.ImportTestCases long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata = GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+  { -- | Errors for failed test cases.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestCaseError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata ::
+  GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata =
+  GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The response message for TestCases.ImportTestCases.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse = GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+  { -- | The unique identifiers of the new test cases. Format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    names :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse ::
+  GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse =
+  GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+    { names =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+            Core.<$> (o Core..:? "names")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse {..} =
+    Core.object (Core.catMaybes [("names" Core..=) Core.<$> names])
+
+-- | Inline destination for a Dialogflow operation that writes or exports objects (e.g. intents) outside of Dialogflow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1InlineDestination' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1InlineDestination = GoogleCloudDialogflowCxV3beta1InlineDestination
+  { -- | Output only. The uncompressed byte content for the objects. Only populated in responses.
+    content :: (Core.Maybe Core.Base64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1InlineDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1InlineDestination ::
+  GoogleCloudDialogflowCxV3beta1InlineDestination
+newGoogleCloudDialogflowCxV3beta1InlineDestination =
+  GoogleCloudDialogflowCxV3beta1InlineDestination
+    { content =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1InlineDestination
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1InlineDestination"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1InlineDestination
+            Core.<$> (o Core..:? "content")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1InlineDestination
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1InlineDestination {..} =
+    Core.object
+      (Core.catMaybes [("content" Core..=) Core.<$> content])
+
+-- | Instructs the speech recognizer on how to process the audio content.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1InputAudioConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1InputAudioConfig = GoogleCloudDialogflowCxV3beta1InputAudioConfig
+  { -- | Required. Audio encoding of the audio content to process.
+    audioEncoding ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+      ),
+    -- | Configuration of barge-in behavior during the streaming of input audio.
+    bargeInConfig :: (Core.Maybe GoogleCloudDialogflowCxV3beta1BargeInConfig),
+    -- | Optional. If @true@, Dialogflow returns SpeechWordInfo in StreamingRecognitionResult with information about the recognized speech words, e.g. start and end time offsets. If false or unspecified, Speech doesn\'t return any word-level information.
+    enableWordInfo :: (Core.Maybe Core.Bool),
+    -- | Optional. Which Speech model to select for the given request. For more information, see <https://cloud.google.com/dialogflow/cx/docs/concept/speech-models Speech models>.
+    model :: (Core.Maybe Core.Text),
+    -- | Optional. Which variant of the Speech model to use.
+    modelVariant ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+      ),
+    -- | If @true@, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to <https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration Dialogflow CX Speech model migration>.
+    optOutConformerModelMigration :: (Core.Maybe Core.Bool),
+    -- | Optional. A list of strings containing words and phrases that the speech recognizer should recognize with higher likelihood. See <https://cloud.google.com/speech-to-text/docs/basics#phrase-hints the Cloud Speech documentation> for more details.
+    phraseHints :: (Core.Maybe [Core.Text]),
+    -- | Sample rate (in Hertz) of the audio content sent in the query. Refer to <https://cloud.google.com/speech-to-text/docs/basics Cloud Speech API documentation> for more details.
+    sampleRateHertz :: (Core.Maybe Core.Int32),
+    -- | Optional. If @false@ (default), recognition does not cease until the client closes the stream. If @true@, the recognizer will detect a single spoken utterance in input audio. Recognition ceases when it detects the audio\'s voice has stopped or paused. In this case, once a detected intent is received, the client should close the stream and start a new request with a new stream as needed. Note: This setting is relevant only for streaming methods.
+    singleUtterance :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1InputAudioConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1InputAudioConfig ::
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig
+newGoogleCloudDialogflowCxV3beta1InputAudioConfig =
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig
+    { audioEncoding =
+        Core.Nothing,
+      bargeInConfig = Core.Nothing,
+      enableWordInfo = Core.Nothing,
+      model = Core.Nothing,
+      modelVariant = Core.Nothing,
+      optOutConformerModelMigration = Core.Nothing,
+      phraseHints = Core.Nothing,
+      sampleRateHertz = Core.Nothing,
+      singleUtterance = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1InputAudioConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1InputAudioConfig
+            Core.<$> (o Core..:? "audioEncoding")
+            Core.<*> (o Core..:? "bargeInConfig")
+            Core.<*> (o Core..:? "enableWordInfo")
+            Core.<*> (o Core..:? "model")
+            Core.<*> (o Core..:? "modelVariant")
+            Core.<*> (o Core..:? "optOutConformerModelMigration")
+            Core.<*> (o Core..:? "phraseHints")
+            Core.<*> (o Core..:? "sampleRateHertz")
+            Core.<*> (o Core..:? "singleUtterance")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1InputAudioConfig where
+  toJSON GoogleCloudDialogflowCxV3beta1InputAudioConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audioEncoding" Core..=) Core.<$> audioEncoding,
+            ("bargeInConfig" Core..=) Core.<$> bargeInConfig,
+            ("enableWordInfo" Core..=) Core.<$> enableWordInfo,
+            ("model" Core..=) Core.<$> model,
+            ("modelVariant" Core..=) Core.<$> modelVariant,
+            ("optOutConformerModelMigration" Core..=)
+              Core.<$> optOutConformerModelMigration,
+            ("phraseHints" Core..=) Core.<$> phraseHints,
+            ("sampleRateHertz" Core..=) Core.<$> sampleRateHertz,
+            ("singleUtterance" Core..=) Core.<$> singleUtterance
+          ]
+      )
+
+-- | An intent represents a user\'s intent to interact with a conversational agent. You can provide information for the Dialogflow API to use to match user input to an intent by adding training phrases (i.e., examples of user input) to your intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Intent' smart constructor.
+data GoogleCloudDialogflowCxV3beta1Intent = GoogleCloudDialogflowCxV3beta1Intent
+  { -- | Human readable description for better understanding an intent like its scope, content, result etc. Maximum character limit: 140 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the intent, unique within the agent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Indicates whether this is a fallback intent. Currently only default fallback intent is allowed in the agent, which is added upon agent creation. Adding training phrases to fallback intent is useful in the case of requests that are mistakenly matched, since training phrases assigned to fallback intents act as negative examples that triggers no-match event.
+    isFallback :: (Core.Maybe Core.Bool),
+    -- | The key\/value metadata to label an intent. Labels can contain lowercase letters, digits and the symbols \'-\' and \'_\'. International characters are allowed, including letters from unicase alphabets. Keys must start with a letter. Keys and values can be no longer than 63 characters and no more than 128 bytes. Prefix \"sys-\" is reserved for Dialogflow defined labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-contextual The above labels do not require value. \"sys-head\" means the intent is a head intent. \"sys-contextual\" means the intent is a contextual intent.
+    labels :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Intent_Labels),
+    -- | The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | The collection of parameters associated with the intent.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1IntentParameter]),
+    -- | The priority of this intent. Higher numbers represent higher priorities. - If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the @Normal@ priority in the console. - If the supplied value is negative, the intent is ignored in runtime detect intent requests.
+    priority :: (Core.Maybe Core.Int32),
+    -- | The collection of training phrases the agent is trained on to identify the intent.
+    trainingPhrases :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Intent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Intent ::
+  GoogleCloudDialogflowCxV3beta1Intent
+newGoogleCloudDialogflowCxV3beta1Intent =
+  GoogleCloudDialogflowCxV3beta1Intent
+    { description = Core.Nothing,
+      displayName = Core.Nothing,
+      isFallback = Core.Nothing,
+      labels = Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing,
+      priority = Core.Nothing,
+      trainingPhrases = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Intent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Intent"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Intent
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "isFallback")
+            Core.<*> (o Core..:? "labels")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "priority")
+            Core.<*> (o Core..:? "trainingPhrases")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Intent where
+  toJSON GoogleCloudDialogflowCxV3beta1Intent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("isFallback" Core..=) Core.<$> isFallback,
+            ("labels" Core..=) Core.<$> labels,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("priority" Core..=) Core.<$> priority,
+            ("trainingPhrases" Core..=) Core.<$> trainingPhrases
+          ]
+      )
+
+-- | The key\/value metadata to label an intent. Labels can contain lowercase letters, digits and the symbols \'-\' and \'_\'. International characters are allowed, including letters from unicase alphabets. Keys must start with a letter. Keys and values can be no longer than 63 characters and no more than 128 bytes. Prefix \"sys-\" is reserved for Dialogflow defined labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-contextual The above labels do not require value. \"sys-head\" means the intent is a head intent. \"sys-contextual\" means the intent is a contextual intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Intent_Labels' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1Intent_Labels = GoogleCloudDialogflowCxV3beta1Intent_Labels
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Intent_Labels' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Intent_Labels ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowCxV3beta1Intent_Labels
+newGoogleCloudDialogflowCxV3beta1Intent_Labels additional =
+  GoogleCloudDialogflowCxV3beta1Intent_Labels
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Intent_Labels where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Intent_Labels"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Intent_Labels
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Intent_Labels where
+  toJSON GoogleCloudDialogflowCxV3beta1Intent_Labels {..} =
+    Core.toJSON additional
+
+-- | Represents the intent to trigger programmatically rather than as a result of natural language processing.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1IntentInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1IntentInput = GoogleCloudDialogflowCxV3beta1IntentInput
+  { -- | Required. The unique identifier of the intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    intent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1IntentInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1IntentInput ::
+  GoogleCloudDialogflowCxV3beta1IntentInput
+newGoogleCloudDialogflowCxV3beta1IntentInput =
+  GoogleCloudDialogflowCxV3beta1IntentInput {intent = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1IntentInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1IntentInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1IntentInput
+            Core.<$> (o Core..:? "intent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1IntentInput where
+  toJSON GoogleCloudDialogflowCxV3beta1IntentInput {..} =
+    Core.object (Core.catMaybes [("intent" Core..=) Core.<$> intent])
+
+-- | Represents an intent parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1IntentParameter' smart constructor.
+data GoogleCloudDialogflowCxV3beta1IntentParameter = GoogleCloudDialogflowCxV3beta1IntentParameter
+  { -- | Required. The entity type of the parameter. Format: @projects\/-\/locations\/-\/agents\/-\/entityTypes\/@ for system entity types (for example, @projects\/-\/locations\/-\/agents\/-\/entityTypes\/sys.date@), or @projects\/\/locations\/\/agents\/\/entityTypes\/@ for developer entity types.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the parameter. This field is used by training phrases to annotate their parts.
+    id :: (Core.Maybe Core.Text),
+    -- | Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.
+    redact :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1IntentParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1IntentParameter ::
+  GoogleCloudDialogflowCxV3beta1IntentParameter
+newGoogleCloudDialogflowCxV3beta1IntentParameter =
+  GoogleCloudDialogflowCxV3beta1IntentParameter
+    { entityType =
+        Core.Nothing,
+      id = Core.Nothing,
+      isList = Core.Nothing,
+      redact = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1IntentParameter
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1IntentParameter"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1IntentParameter
+            Core.<$> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "redact")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1IntentParameter where
+  toJSON GoogleCloudDialogflowCxV3beta1IntentParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityType" Core..=) Core.<$> entityType,
+            ("id" Core..=) Core.<$> id,
+            ("isList" Core..=) Core.<$> isList,
+            ("redact" Core..=) Core.<$> redact
+          ]
+      )
+
+-- | Represents an example that the agent is trained on to identify the intent.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase' smart constructor.
+data GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase = GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+  { -- | Output only. The unique identifier of the training phrase.
+    id :: (Core.Maybe Core.Text),
+    -- | Required. The ordered list of training phrase parts. The parts are concatenated in order to form the training phrase. Note: The API does not automatically annotate training phrases like the Dialogflow Console does. Note: Do not forget to include whitespace at part boundaries, so the training phrase is well formatted when the parts are concatenated. If the training phrase does not need to be annotated with parameters, you just need a single part with only the Part.text field set. If you want to annotate the training phrase, you must create multiple parts, where the fields of each part are populated in one of two ways: - @Part.text@ is set to a part of the phrase that has no parameters. - @Part.text@ is set to a part of the phrase that you want to annotate, and the @parameter_id@ field is set.
+    parts ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart]
+      ),
+    -- | Indicates how many times this example was added to the intent.
+    repeatCount :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase ::
+  GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase =
+  GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+    { id =
+        Core.Nothing,
+      parts = Core.Nothing,
+      repeatCount = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+            Core.<$> (o Core..:? "id")
+            Core.<*> (o Core..:? "parts")
+            Core.<*> (o Core..:? "repeatCount")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.<$> id,
+            ("parts" Core..=) Core.<$> parts,
+            ("repeatCount" Core..=) Core.<$> repeatCount
+          ]
+      )
+
+-- | Represents a part of a training phrase.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart' smart constructor.
+data GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart = GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+  { -- | The parameter used to annotate this part of the training phrase. This field is required for annotated parts of the training phrase.
+    parameterId :: (Core.Maybe Core.Text),
+    -- | Required. The text for this part.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart ::
+  GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart =
+  GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+    { parameterId =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+            Core.<$> (o Core..:? "parameterId")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("parameterId" Core..=) Core.<$> parameterId,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | The Knowledge Connector settings for this page or flow. This includes information such as the attached Knowledge Bases, and the way to execute fulfillment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings' smart constructor.
+data GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings = GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+  { -- | Optional. List of related data store connections.
+    dataStoreConnections :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1DataStoreConnection]),
+    -- | Whether Knowledge Connector is enabled or not.
+    enabled :: (Core.Maybe Core.Bool),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The fulfillment to be triggered. When the answers from the Knowledge Connector are selected by Dialogflow, you can utitlize the request scoped parameter @$request.knowledge.answers@ (contains up to the 5 highest confidence answers) and @$request.knowledge.questions@ (contains the corresponding questions) to construct the fulfillment.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings ::
+  GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings =
+  GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+    { dataStoreConnections =
+        Core.Nothing,
+      enabled = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+            Core.<$> (o Core..:? "dataStoreConnections")
+            Core.<*> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataStoreConnections" Core..=) Core.<$> dataStoreConnections,
+            ("enabled" Core..=) Core.<$> enabled,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | Represents the language information of the request.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1LanguageInfo' smart constructor.
+data GoogleCloudDialogflowCxV3beta1LanguageInfo = GoogleCloudDialogflowCxV3beta1LanguageInfo
+  { -- | The confidence score of the detected language between 0 and 1.
+    confidenceScore :: (Core.Maybe Core.Double),
+    -- | The language code specified in the original request.
+    inputLanguageCode :: (Core.Maybe Core.Text),
+    -- | The language code detected for this request based on the user conversation.
+    resolvedLanguageCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1LanguageInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1LanguageInfo ::
+  GoogleCloudDialogflowCxV3beta1LanguageInfo
+newGoogleCloudDialogflowCxV3beta1LanguageInfo =
+  GoogleCloudDialogflowCxV3beta1LanguageInfo
+    { confidenceScore =
+        Core.Nothing,
+      inputLanguageCode = Core.Nothing,
+      resolvedLanguageCode = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1LanguageInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1LanguageInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1LanguageInfo
+            Core.<$> (o Core..:? "confidenceScore")
+            Core.<*> (o Core..:? "inputLanguageCode")
+            Core.<*> (o Core..:? "resolvedLanguageCode")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1LanguageInfo where
+  toJSON GoogleCloudDialogflowCxV3beta1LanguageInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidenceScore" Core..=) Core.<$> confidenceScore,
+            ("inputLanguageCode" Core..=) Core.<$> inputLanguageCode,
+            ("resolvedLanguageCode" Core..=) Core.<$> resolvedLanguageCode
+          ]
+      )
+
+-- | A Dialogflow CX conversation (session) can be described and visualized as a state machine. The states of a CX session are represented by pages. For each flow, you define many pages, where your combined pages can handle a complete conversation on the topics the flow is designed for. At any given moment, exactly one page is the current page, the current page is considered active, and the flow associated with that page is considered active. Every flow has a special start page. When a flow initially becomes active, the start page page becomes the current page. For each conversational turn, the current page will either stay the same or transition to another page. You configure each page to collect information from the end-user that is relevant for the conversational state represented by the page. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/page Page guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Page' smart constructor.
+data GoogleCloudDialogflowCxV3beta1Page = GoogleCloudDialogflowCxV3beta1Page
+  { -- | Hierarchical advanced settings for this page. The settings exposed at the lower level overrides the settings exposed at the higher level.
+    advancedSettings :: (Core.Maybe GoogleCloudDialogflowCxV3beta1AdvancedSettings),
+    -- | The description of the page. The maximum length is 500 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | Required. The human-readable name of the page, unique within the flow.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the session is entering the page.
+    entryFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Fulfillment),
+    -- | Handlers associated with the page to handle events such as webhook errors, no match or no input.
+    eventHandlers :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1EventHandler]),
+    -- | The form associated with the page, used for collecting parameters relevant to the page.
+    form :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Form),
+    -- | Optional. Knowledge connector configuration.
+    knowledgeConnectorSettings ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+      ),
+    -- | The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Ordered list of @TransitionRouteGroups@ added to the page. Transition route groups must be unique within a page. If the page links both flow-level transition route groups and agent-level transition route groups, the flow-level ones will have higher priority and will be put before the agent-level ones. * If multiple transition routes within a page scope refer to the same intent, then the precedence order is: page\'s transition route -> page\'s transition route group -> flow\'s transition routes. * If multiple transition route groups within a page contain the same intent, then the first group in the ordered list takes precedence. Format:@projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@ for agent-level groups.
+    transitionRouteGroups :: (Core.Maybe [Core.Text]),
+    -- | A list of transitions for the transition rules of this page. They route the conversation to another page in the same flow, or another flow. When we are in a certain page, the TransitionRoutes are evaluated in the following order: * TransitionRoutes defined in the page with intent specified. * TransitionRoutes defined in the transition route groups with intent specified. * TransitionRoutes defined in flow with intent specified. * TransitionRoutes defined in the transition route groups with intent specified. * TransitionRoutes defined in the page with only condition specified. * TransitionRoutes defined in the transition route groups with only condition specified.
+    transitionRoutes :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TransitionRoute])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Page' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Page ::
+  GoogleCloudDialogflowCxV3beta1Page
+newGoogleCloudDialogflowCxV3beta1Page =
+  GoogleCloudDialogflowCxV3beta1Page
+    { advancedSettings =
+        Core.Nothing,
+      description = Core.Nothing,
+      displayName = Core.Nothing,
+      entryFulfillment = Core.Nothing,
+      eventHandlers = Core.Nothing,
+      form = Core.Nothing,
+      knowledgeConnectorSettings = Core.Nothing,
+      name = Core.Nothing,
+      transitionRouteGroups = Core.Nothing,
+      transitionRoutes = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Page where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Page"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Page
+            Core.<$> (o Core..:? "advancedSettings")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entryFulfillment")
+            Core.<*> (o Core..:? "eventHandlers")
+            Core.<*> (o Core..:? "form")
+            Core.<*> (o Core..:? "knowledgeConnectorSettings")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "transitionRouteGroups")
+            Core.<*> (o Core..:? "transitionRoutes")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Page where
+  toJSON GoogleCloudDialogflowCxV3beta1Page {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advancedSettings" Core..=) Core.<$> advancedSettings,
+            ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entryFulfillment" Core..=) Core.<$> entryFulfillment,
+            ("eventHandlers" Core..=) Core.<$> eventHandlers,
+            ("form" Core..=) Core.<$> form,
+            ("knowledgeConnectorSettings" Core..=)
+              Core.<$> knowledgeConnectorSettings,
+            ("name" Core..=) Core.<$> name,
+            ("transitionRouteGroups" Core..=) Core.<$> transitionRouteGroups,
+            ("transitionRoutes" Core..=) Core.<$> transitionRoutes
+          ]
+      )
+
+-- | Represents page information communicated to and from the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1PageInfo' smart constructor.
+data GoogleCloudDialogflowCxV3beta1PageInfo = GoogleCloudDialogflowCxV3beta1PageInfo
+  { -- | Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the current page. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    currentPage :: (Core.Maybe Core.Text),
+    -- | Always present for WebhookRequest. Ignored for WebhookResponse. The display name of the current page.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional for both WebhookRequest and WebhookResponse. Information about the form.
+    formInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1PageInfoFormInfo)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1PageInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1PageInfo ::
+  GoogleCloudDialogflowCxV3beta1PageInfo
+newGoogleCloudDialogflowCxV3beta1PageInfo =
+  GoogleCloudDialogflowCxV3beta1PageInfo
+    { currentPage =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      formInfo = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1PageInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1PageInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1PageInfo
+            Core.<$> (o Core..:? "currentPage")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "formInfo")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1PageInfo where
+  toJSON GoogleCloudDialogflowCxV3beta1PageInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("currentPage" Core..=) Core.<$> currentPage,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("formInfo" Core..=) Core.<$> formInfo
+          ]
+      )
+
+-- | Represents form information.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1PageInfoFormInfo = GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+  { -- | Optional for both WebhookRequest and WebhookResponse. The parameters contained in the form. Note that the webhook cannot add or remove any form parameter.
+    parameterInfo ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1PageInfoFormInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo ::
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo =
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+    { parameterInfo =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1PageInfoFormInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+            Core.<$> (o Core..:? "parameterInfo")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1PageInfoFormInfo where
+  toJSON GoogleCloudDialogflowCxV3beta1PageInfoFormInfo {..} =
+    Core.object
+      (Core.catMaybes [("parameterInfo" Core..=) Core.<$> parameterInfo])
+
+-- | Represents parameter information.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo' smart constructor.
+data GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+  { -- | Always present for WebhookRequest. Required for WebhookResponse. The human-readable name of the parameter, unique within the form. This field cannot be modified by the webhook.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the parameter value was just collected on the last conversation turn.
+    justCollected :: (Core.Maybe Core.Bool),
+    -- | Optional for both WebhookRequest and WebhookResponse. Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.
+    required :: (Core.Maybe Core.Bool),
+    -- | Always present for WebhookRequest. Required for WebhookResponse. The state of the parameter. This field can be set to INVALID by the webhook to invalidate the parameter; other values set by the webhook will be ignored.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+      ),
+    -- | Optional for both WebhookRequest and WebhookResponse. The value of the parameter. This field can be set by the webhook to change the parameter value.
+    value :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo ::
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo =
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+    { displayName =
+        Core.Nothing,
+      justCollected = Core.Nothing,
+      required = Core.Nothing,
+      state = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "justCollected")
+            Core.<*> (o Core..:? "required")
+            Core.<*> (o Core..:? "state")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("displayName" Core..=) Core.<$> displayName,
+              ("justCollected" Core..=) Core.<$> justCollected,
+              ("required" Core..=) Core.<$> required,
+              ("state" Core..=) Core.<$> state,
+              ("value" Core..=) Core.<$> value
+            ]
+        )
+
+-- | Represents the query input. It can contain one of: 1. A conversational query in the form of text. 2. An intent query that specifies which intent to trigger. 3. Natural language speech audio to be processed. 4. An event to be triggered. 5. DTMF digits to invoke an intent and fill in parameter value. 6. The results of a tool executed by the client.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1QueryInput' smart constructor.
+data GoogleCloudDialogflowCxV3beta1QueryInput = GoogleCloudDialogflowCxV3beta1QueryInput
+  { -- | The natural language speech audio to be processed.
+    audio :: (Core.Maybe GoogleCloudDialogflowCxV3beta1AudioInput),
+    -- | The DTMF event to be handled.
+    dtmf :: (Core.Maybe GoogleCloudDialogflowCxV3beta1DtmfInput),
+    -- | The event to be triggered.
+    event :: (Core.Maybe GoogleCloudDialogflowCxV3beta1EventInput),
+    -- | The intent to be triggered.
+    intent :: (Core.Maybe GoogleCloudDialogflowCxV3beta1IntentInput),
+    -- | Required. The language of the input. See <https://cloud.google.com/dialogflow/cx/docs/reference/language Language Support> for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The natural language text to be processed.
+    text :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TextInput),
+    -- | The results of a tool executed by the client.
+    toolCallResult :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ToolCallResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1QueryInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1QueryInput ::
+  GoogleCloudDialogflowCxV3beta1QueryInput
+newGoogleCloudDialogflowCxV3beta1QueryInput =
+  GoogleCloudDialogflowCxV3beta1QueryInput
+    { audio = Core.Nothing,
+      dtmf = Core.Nothing,
+      event = Core.Nothing,
+      intent = Core.Nothing,
+      languageCode = Core.Nothing,
+      text = Core.Nothing,
+      toolCallResult = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1QueryInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1QueryInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1QueryInput
+            Core.<$> (o Core..:? "audio")
+            Core.<*> (o Core..:? "dtmf")
+            Core.<*> (o Core..:? "event")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "toolCallResult")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1QueryInput where
+  toJSON GoogleCloudDialogflowCxV3beta1QueryInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audio" Core..=) Core.<$> audio,
+            ("dtmf" Core..=) Core.<$> dtmf,
+            ("event" Core..=) Core.<$> event,
+            ("intent" Core..=) Core.<$> intent,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("text" Core..=) Core.<$> text,
+            ("toolCallResult" Core..=) Core.<$> toolCallResult
+          ]
+      )
+
+-- | Represents a response message that can be returned by a conversational agent. Response messages are also used for output audio synthesis. The approach is as follows: * If at least one OutputAudioText response is present, then all OutputAudioText responses are linearly concatenated, and the result is used for output audio synthesis. * If the OutputAudioText responses are a mixture of text and SSML, then the concatenated result is treated as SSML; otherwise, the result is treated as either text or SSML as appropriate. The agent designer should ideally use either text or SSML consistently throughout the bot design. * Otherwise, all Text responses are linearly concatenated, and the result is used for output audio synthesis. This approach allows for more sophisticated user experience scenarios, where the text displayed to the user may differ from what is heard.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessage' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessage = GoogleCloudDialogflowCxV3beta1ResponseMessage
+  { -- | The channel which the response is associated with. Clients can specify the channel via QueryParameters.channel, and only associated channel response will be returned.
+    channel :: (Core.Maybe Core.Text),
+    -- | Indicates that the conversation succeeded.
+    conversationSuccess ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+      ),
+    -- | Output only. A signal that indicates the interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only when the conversation reaches @END_SESSION@ page. It is not supposed to be defined by the user. It\'s guaranteed that there is at most one such message in each response.
+    endInteraction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+      ),
+    -- | Represents info card for knowledge answers, to be better rendered in Dialogflow Messenger.
+    knowledgeInfoCard ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+      ),
+    -- | Hands off conversation to a human agent.
+    liveAgentHandoff ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+      ),
+    -- | Output only. An audio response message composed of both the synthesized Dialogflow agent responses and responses defined via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.
+    mixedAudio ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+      ),
+    -- | A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.
+    outputAudioText ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+      ),
+    -- | Returns a response containing a custom, platform-specific payload.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload),
+    -- | Signal that the client should play an audio clip hosted at a client-specific URI. Dialogflow uses this to construct mixed_audio. However, Dialogflow itself does not try to read or process the URI in any way.
+    playAudio :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio),
+    -- | A signal that the client should transfer the phone call connected to this agent to a third-party endpoint.
+    telephonyTransferCall ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+      ),
+    -- | Returns a text response.
+    text :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ResponseMessageText),
+    -- | Returns the definition of a tool call that should be executed by the client.
+    toolCall :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ToolCall)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessage ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessage
+newGoogleCloudDialogflowCxV3beta1ResponseMessage =
+  GoogleCloudDialogflowCxV3beta1ResponseMessage
+    { channel =
+        Core.Nothing,
+      conversationSuccess = Core.Nothing,
+      endInteraction = Core.Nothing,
+      knowledgeInfoCard = Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      mixedAudio = Core.Nothing,
+      outputAudioText = Core.Nothing,
+      payload = Core.Nothing,
+      playAudio = Core.Nothing,
+      telephonyTransferCall = Core.Nothing,
+      text = Core.Nothing,
+      toolCall = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessage
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessage"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessage
+            Core.<$> (o Core..:? "channel")
+            Core.<*> (o Core..:? "conversationSuccess")
+            Core.<*> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "knowledgeInfoCard")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "mixedAudio")
+            Core.<*> (o Core..:? "outputAudioText")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "playAudio")
+            Core.<*> (o Core..:? "telephonyTransferCall")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "toolCall")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1ResponseMessage where
+  toJSON GoogleCloudDialogflowCxV3beta1ResponseMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("channel" Core..=) Core.<$> channel,
+            ("conversationSuccess" Core..=) Core.<$> conversationSuccess,
+            ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("knowledgeInfoCard" Core..=) Core.<$> knowledgeInfoCard,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("mixedAudio" Core..=) Core.<$> mixedAudio,
+            ("outputAudioText" Core..=) Core.<$> outputAudioText,
+            ("payload" Core..=) Core.<$> payload,
+            ("playAudio" Core..=) Core.<$> playAudio,
+            ("telephonyTransferCall" Core..=) Core.<$> telephonyTransferCall,
+            ("text" Core..=) Core.<$> text,
+            ("toolCall" Core..=) Core.<$> toolCall
+          ]
+      )
+
+-- | Returns a response containing a custom, platform-specific payload.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload = GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload additional =
+  GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload {..} =
+    Core.toJSON additional
+
+-- | Indicates that the conversation succeeded, i.e., the bot handled the issue that the customer talked to it about. Dialogflow only uses this to determine which conversations should be counted as successful and doesn\'t process the metadata in this message in any way. Note that Dialogflow also considers conversations that get to the conversation end page as successful even if they don\'t return ConversationSuccess. You may set this, for example: * In the entry_fulfillment of a Page if entering the page indicates that the conversation succeeded. * In a webhook response when you determine that you handled the customer issue.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess = GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+  { -- | Custom metadata. Dialogflow doesn\'t impose any structure on this.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+    { metadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+            Core.<$> (o Core..:? "metadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess {..} =
+      Core.object
+        (Core.catMaybes [("metadata" Core..=) Core.<$> metadata])
+
+-- | Custom metadata. Dialogflow doesn\'t impose any structure on this.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata = GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+  additional =
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata {..} =
+      Core.toJSON additional
+
+-- | Indicates that interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only and not supposed to be defined by the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction = GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Represents info card response. If the response contains generative knowledge prediction, Dialogflow will return a payload with Infobot Messenger compatible info card. Otherwise, the info card response is skipped.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard = GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Indicates that the conversation should be handed off to a live agent. Dialogflow only uses this to determine which conversations were handed off to a human agent for measurement purposes. What else to do with this signal is up to you and your handoff procedures. You may set this, for example: * In the entry_fulfillment of a Page if entering the page indicates something went extremely wrong in the conversation. * In a webhook response when you determine that the customer issue can only be handled by a human.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff = GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+  { -- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+    { metadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+            Core.<$> (o Core..:? "metadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff {..} =
+      Core.object
+        (Core.catMaybes [("metadata" Core..=) Core.<$> metadata])
+
+-- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata = GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+  additional =
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata {..} =
+      Core.toJSON additional
+
+-- | Represents an audio message that is composed of both segments synthesized from the Dialogflow agent prompts and ones hosted externally at the specified URIs. The external URIs are specified via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio = GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+  { -- | Segments this audio response is composed of.
+    segments ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+    { segments =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+            Core.<$> (o Core..:? "segments")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio {..} =
+    Core.object
+      (Core.catMaybes [("segments" Core..=) Core.<$> segments])
+
+-- | Represents one segment of audio.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment = GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+  { -- | Output only. Whether the playback of this segment can be interrupted by the end user\'s speech and the client should then start the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Raw audio synthesized from the Dialogflow agent\'s response using the output config specified in the request.
+    audio :: (Core.Maybe Core.Base64),
+    -- | Client-specific URI that points to an audio clip accessible to the client. Dialogflow does not impose any validation on it.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      audio = Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "audio")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("allowPlaybackInterruption" Core..=)
+                Core.<$> allowPlaybackInterruption,
+              ("audio" Core..=) Core.<$> audio,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText = GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | The SSML text to be synthesized. For more information, see </speech/text-to-speech/docs/ssml SSML>.
+    ssml :: (Core.Maybe Core.Text),
+    -- | The raw text to be synthesized.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      ssml = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "ssml")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("allowPlaybackInterruption" Core..=)
+                Core.<$> allowPlaybackInterruption,
+              ("ssml" Core..=) Core.<$> ssml,
+              ("text" Core..=) Core.<$> text
+            ]
+        )
+
+-- | Specifies an audio clip to be played by the client as part of the response.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio = GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Required. URI of the audio clip. Dialogflow does not impose any validation on this value. It is specific to the client that reads it.
+    audioUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio =
+  GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      audioUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "audioUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowPlaybackInterruption" Core..=)
+              Core.<$> allowPlaybackInterruption,
+            ("audioUri" Core..=) Core.<$> audioUri
+          ]
+      )
+
+-- | Represents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall = GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+  { -- | Transfer the call to a phone number in <https://en.wikipedia.org/wiki/E.164 E.164 format>.
+    phoneNumber :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+    { phoneNumber =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+            Core.<$> (o Core..:? "phoneNumber")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall {..} =
+      Core.object
+        (Core.catMaybes [("phoneNumber" Core..=) Core.<$> phoneNumber])
+
+-- | The text response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ResponseMessageText' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ResponseMessageText = GoogleCloudDialogflowCxV3beta1ResponseMessageText
+  { -- | Output only. Whether the playback of this message can be interrupted by the end user\'s speech and the client can then starts the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Required. A collection of text response variants. If multiple variants are defined, only one text response variant is returned at runtime.
+    text :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ResponseMessageText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ResponseMessageText ::
+  GoogleCloudDialogflowCxV3beta1ResponseMessageText
+newGoogleCloudDialogflowCxV3beta1ResponseMessageText =
+  GoogleCloudDialogflowCxV3beta1ResponseMessageText
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ResponseMessageText"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ResponseMessageText
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ResponseMessageText
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ResponseMessageText {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowPlaybackInterruption" Core..=)
+              Core.<$> allowPlaybackInterruption,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Metadata returned for the Environments.RunContinuousTest long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata = GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+  { -- | The test errors.
+    errors :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1TestError])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata ::
+  GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata =
+  GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+    { errors =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+            Core.<$> (o Core..:? "errors")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata {..} =
+    Core.object (Core.catMaybes [("errors" Core..=) Core.<$> errors])
+
+-- | The response message for Environments.RunContinuousTest.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse = GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+  { -- | The result for a continuous test run.
+    continuousTestResult :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ContinuousTestResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse ::
+  GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse =
+  GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+    { continuousTestResult =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+            Core.<$> (o Core..:? "continuousTestResult")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [("continuousTestResult" Core..=) Core.<$> continuousTestResult]
+      )
+
+-- | Metadata returned for the TestCases.RunTestCase long running operation. This message currently has no fields.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata' smart constructor.
+data GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata = GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata ::
+  GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata =
+  GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata"
+      ( \o ->
+          Core.pure GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | The response message for TestCases.RunTestCase.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1RunTestCaseResponse = GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+  { -- | The result.
+    result :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TestCaseResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1RunTestCaseResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse ::
+  GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse =
+  GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+    { result =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1RunTestCaseResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+            Core.<$> (o Core..:? "result")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1RunTestCaseResponse {..} =
+    Core.object (Core.catMaybes [("result" Core..=) Core.<$> result])
+
+-- | Represents session information communicated to and from the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1SessionInfo' smart constructor.
+data GoogleCloudDialogflowCxV3beta1SessionInfo = GoogleCloudDialogflowCxV3beta1SessionInfo
+  { -- | Optional for WebhookRequest. Optional for WebhookResponse. All parameters collected from forms and intents during the session. Parameters can be created, updated, or removed by the webhook. To remove a parameter from the session, the webhook should explicitly set the parameter value to null in WebhookResponse. The map is keyed by parameters\' display names.
+    parameters :: (Core.Maybe GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters),
+    -- | Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the session. This field can be used by the webhook to identify a session. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@ if environment is specified.
+    session :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1SessionInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1SessionInfo ::
+  GoogleCloudDialogflowCxV3beta1SessionInfo
+newGoogleCloudDialogflowCxV3beta1SessionInfo =
+  GoogleCloudDialogflowCxV3beta1SessionInfo
+    { parameters =
+        Core.Nothing,
+      session = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1SessionInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1SessionInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1SessionInfo
+            Core.<$> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "session")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1SessionInfo where
+  toJSON GoogleCloudDialogflowCxV3beta1SessionInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("parameters" Core..=) Core.<$> parameters,
+            ("session" Core..=) Core.<$> session
+          ]
+      )
+
+-- | Optional for WebhookRequest. Optional for WebhookResponse. All parameters collected from forms and intents during the session. Parameters can be created, updated, or removed by the webhook. To remove a parameter from the session, the webhook should explicitly set the parameter value to null in WebhookResponse. The map is keyed by parameters\' display names.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters = GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+  { additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters additional =
+  GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters {..} =
+    Core.toJSON additional
+
+-- | Represents a test case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestCase' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestCase = GoogleCloudDialogflowCxV3beta1TestCase
+  { -- | Output only. When the test was created.
+    creationTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The human-readable name of the test case, unique within the agent. Limit of 200 characters.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The latest test result.
+    lastTestResult :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TestCaseResult),
+    -- | The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Additional freeform notes about the test case. Limit of 400 characters.
+    notes :: (Core.Maybe Core.Text),
+    -- | Tags are short descriptions that users may apply to test cases for organizational and filtering purposes. Each tag should start with \"#\" and has a limit of 30 characters.
+    tags :: (Core.Maybe [Core.Text]),
+    -- | The conversation turns uttered when the test case was created, in chronological order. These include the canonical set of agent utterances that should occur when the agent is working properly.
+    testCaseConversationTurns :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ConversationTurn]),
+    -- | Config for the test case.
+    testConfig :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TestConfig)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestCase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestCase ::
+  GoogleCloudDialogflowCxV3beta1TestCase
+newGoogleCloudDialogflowCxV3beta1TestCase =
+  GoogleCloudDialogflowCxV3beta1TestCase
+    { creationTime =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      lastTestResult = Core.Nothing,
+      name = Core.Nothing,
+      notes = Core.Nothing,
+      tags = Core.Nothing,
+      testCaseConversationTurns = Core.Nothing,
+      testConfig = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TestCase where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestCase"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestCase
+            Core.<$> (o Core..:? "creationTime")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "lastTestResult")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "notes")
+            Core.<*> (o Core..:? "tags")
+            Core.<*> (o Core..:? "testCaseConversationTurns")
+            Core.<*> (o Core..:? "testConfig")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TestCase where
+  toJSON GoogleCloudDialogflowCxV3beta1TestCase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creationTime" Core..=) Core.<$> creationTime,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("lastTestResult" Core..=) Core.<$> lastTestResult,
+            ("name" Core..=) Core.<$> name,
+            ("notes" Core..=) Core.<$> notes,
+            ("tags" Core..=) Core.<$> tags,
+            ("testCaseConversationTurns" Core..=)
+              Core.<$> testCaseConversationTurns,
+            ("testConfig" Core..=) Core.<$> testConfig
+          ]
+      )
+
+-- | Error info for importing a test.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestCaseError' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestCaseError = GoogleCloudDialogflowCxV3beta1TestCaseError
+  { -- | The status associated with the test case.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The test case.
+    testCase :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TestCase)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestCaseError' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestCaseError ::
+  GoogleCloudDialogflowCxV3beta1TestCaseError
+newGoogleCloudDialogflowCxV3beta1TestCaseError =
+  GoogleCloudDialogflowCxV3beta1TestCaseError
+    { status =
+        Core.Nothing,
+      testCase = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TestCaseError where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestCaseError"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestCaseError
+            Core.<$> (o Core..:? "status")
+            Core.<*> (o Core..:? "testCase")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TestCaseError where
+  toJSON GoogleCloudDialogflowCxV3beta1TestCaseError {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("status" Core..=) Core.<$> status,
+            ("testCase" Core..=) Core.<$> testCase
+          ]
+      )
+
+-- | Represents a result from running a test case in an agent environment.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestCaseResult' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestCaseResult = GoogleCloudDialogflowCxV3beta1TestCaseResult
+  { -- | The conversation turns uttered during the test case replay in chronological order.
+    conversationTurns :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ConversationTurn]),
+    -- | Environment where the test was run. If not set, it indicates the draft environment.
+    environment :: (Core.Maybe Core.Text),
+    -- | The resource name for the test case result. Format: @projects\/\/locations\/\/agents\/\/testCases\/\/results\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Whether the test case passed in the agent environment.
+    testResult ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+      ),
+    -- | The time that the test was run.
+    testTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestCaseResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestCaseResult ::
+  GoogleCloudDialogflowCxV3beta1TestCaseResult
+newGoogleCloudDialogflowCxV3beta1TestCaseResult =
+  GoogleCloudDialogflowCxV3beta1TestCaseResult
+    { conversationTurns =
+        Core.Nothing,
+      environment = Core.Nothing,
+      name = Core.Nothing,
+      testResult = Core.Nothing,
+      testTime = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TestCaseResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestCaseResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestCaseResult
+            Core.<$> (o Core..:? "conversationTurns")
+            Core.<*> (o Core..:? "environment")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "testResult")
+            Core.<*> (o Core..:? "testTime")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TestCaseResult where
+  toJSON GoogleCloudDialogflowCxV3beta1TestCaseResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversationTurns" Core..=) Core.<$> conversationTurns,
+            ("environment" Core..=) Core.<$> environment,
+            ("name" Core..=) Core.<$> name,
+            ("testResult" Core..=) Core.<$> testResult,
+            ("testTime" Core..=) Core.<$> testTime
+          ]
+      )
+
+-- | Represents configurations for a test case.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestConfig = GoogleCloudDialogflowCxV3beta1TestConfig
+  { -- | Flow name to start the test case with. Format: @projects\/\/locations\/\/agents\/\/flows\/@. Only one of @flow@ and @page@ should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
+    flow :: (Core.Maybe Core.Text),
+    -- | The page to start the test case with. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@. Only one of @flow@ and @page@ should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
+    page :: (Core.Maybe Core.Text),
+    -- | Session parameters to be compared when calculating differences.
+    trackingParameters :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestConfig ::
+  GoogleCloudDialogflowCxV3beta1TestConfig
+newGoogleCloudDialogflowCxV3beta1TestConfig =
+  GoogleCloudDialogflowCxV3beta1TestConfig
+    { flow = Core.Nothing,
+      page = Core.Nothing,
+      trackingParameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TestConfig where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestConfig
+            Core.<$> (o Core..:? "flow")
+            Core.<*> (o Core..:? "page")
+            Core.<*> (o Core..:? "trackingParameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TestConfig where
+  toJSON GoogleCloudDialogflowCxV3beta1TestConfig {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("flow" Core..=) Core.<$> flow,
+            ("page" Core..=) Core.<$> page,
+            ("trackingParameters" Core..=) Core.<$> trackingParameters
+          ]
+      )
+
+-- | Error info for running a test.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestError' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestError = GoogleCloudDialogflowCxV3beta1TestError
+  { -- | The status associated with the test.
+    status :: (Core.Maybe GoogleRpcStatus),
+    -- | The test case resource name.
+    testCase :: (Core.Maybe Core.Text),
+    -- | The timestamp when the test was completed.
+    testTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestError' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestError ::
+  GoogleCloudDialogflowCxV3beta1TestError
+newGoogleCloudDialogflowCxV3beta1TestError =
+  GoogleCloudDialogflowCxV3beta1TestError
+    { status = Core.Nothing,
+      testCase = Core.Nothing,
+      testTime = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TestError where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestError"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestError
+            Core.<$> (o Core..:? "status")
+            Core.<*> (o Core..:? "testCase")
+            Core.<*> (o Core..:? "testTime")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TestError where
+  toJSON GoogleCloudDialogflowCxV3beta1TestError {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("status" Core..=) Core.<$> status,
+            ("testCase" Core..=) Core.<$> testCase,
+            ("testTime" Core..=) Core.<$> testTime
+          ]
+      )
+
+-- | The description of differences between original and replayed agent output.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TestRunDifference' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TestRunDifference = GoogleCloudDialogflowCxV3beta1TestRunDifference
+  { -- | A human readable description of the diff, showing the actual output vs expected output.
+    description :: (Core.Maybe Core.Text),
+    -- | The type of diff.
+    type' :: (Core.Maybe GoogleCloudDialogflowCxV3beta1TestRunDifference_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TestRunDifference' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TestRunDifference ::
+  GoogleCloudDialogflowCxV3beta1TestRunDifference
+newGoogleCloudDialogflowCxV3beta1TestRunDifference =
+  GoogleCloudDialogflowCxV3beta1TestRunDifference
+    { description =
+        Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1TestRunDifference
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TestRunDifference"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TestRunDifference
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1TestRunDifference
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1TestRunDifference {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents the natural language text to be processed.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TextInput' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1TextInput = GoogleCloudDialogflowCxV3beta1TextInput
+  { -- | Required. The UTF-8 encoded natural language text to be processed.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TextInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TextInput ::
+  GoogleCloudDialogflowCxV3beta1TextInput
+newGoogleCloudDialogflowCxV3beta1TextInput =
+  GoogleCloudDialogflowCxV3beta1TextInput {text = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TextInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TextInput"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TextInput
+            Core.<$> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TextInput where
+  toJSON GoogleCloudDialogflowCxV3beta1TextInput {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Represents a call of a specific tool\'s action with the specified inputs.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ToolCall' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ToolCall = GoogleCloudDialogflowCxV3beta1ToolCall
+  { -- | Required. The name of the tool\'s action associated with this call.
+    action :: (Core.Maybe Core.Text),
+    -- | Optional. The action\'s input parameters.
+    inputParameters :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters),
+    -- | Required. The tool associated with this call. Format: @projects\/\/locations\/\/agents\/\/tools\/@.
+    tool :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ToolCall' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ToolCall ::
+  GoogleCloudDialogflowCxV3beta1ToolCall
+newGoogleCloudDialogflowCxV3beta1ToolCall =
+  GoogleCloudDialogflowCxV3beta1ToolCall
+    { action = Core.Nothing,
+      inputParameters = Core.Nothing,
+      tool = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1ToolCall where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ToolCall"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ToolCall
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "inputParameters")
+            Core.<*> (o Core..:? "tool")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1ToolCall where
+  toJSON GoogleCloudDialogflowCxV3beta1ToolCall {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("inputParameters" Core..=) Core.<$> inputParameters,
+            ("tool" Core..=) Core.<$> tool
+          ]
+      )
+
+-- | Optional. The action\'s input parameters.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters = GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+  additional =
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters {..} =
+    Core.toJSON additional
+
+-- | The result of calling a tool\'s action that has been executed by the client.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ToolCallResult' smart constructor.
+data GoogleCloudDialogflowCxV3beta1ToolCallResult = GoogleCloudDialogflowCxV3beta1ToolCallResult
+  { -- | Required. The name of the tool\'s action associated with this call.
+    action :: (Core.Maybe Core.Text),
+    -- | The tool call\'s error.
+    error :: (Core.Maybe GoogleCloudDialogflowCxV3beta1ToolCallResultError),
+    -- | The tool call\'s output parameters.
+    outputParameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+      ),
+    -- | Required. The tool associated with this call. Format: @projects\/\/locations\/\/agents\/\/tools\/@.
+    tool :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ToolCallResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ToolCallResult ::
+  GoogleCloudDialogflowCxV3beta1ToolCallResult
+newGoogleCloudDialogflowCxV3beta1ToolCallResult =
+  GoogleCloudDialogflowCxV3beta1ToolCallResult
+    { action =
+        Core.Nothing,
+      error = Core.Nothing,
+      outputParameters = Core.Nothing,
+      tool = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1ToolCallResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ToolCallResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ToolCallResult
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "error")
+            Core.<*> (o Core..:? "outputParameters")
+            Core.<*> (o Core..:? "tool")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1ToolCallResult where
+  toJSON GoogleCloudDialogflowCxV3beta1ToolCallResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("error" Core..=) Core.<$> error,
+            ("outputParameters" Core..=) Core.<$> outputParameters,
+            ("tool" Core..=) Core.<$> tool
+          ]
+      )
+
+-- | The tool call\'s output parameters.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters = GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+  additional =
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters {..} =
+      Core.toJSON additional
+
+-- | An error produced by the tool call.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1ToolCallResultError' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1ToolCallResultError = GoogleCloudDialogflowCxV3beta1ToolCallResultError
+  { -- | Optional. The error message of the function.
+    message :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1ToolCallResultError' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1ToolCallResultError ::
+  GoogleCloudDialogflowCxV3beta1ToolCallResultError
+newGoogleCloudDialogflowCxV3beta1ToolCallResultError =
+  GoogleCloudDialogflowCxV3beta1ToolCallResultError
+    { message =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1ToolCallResultError
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1ToolCallResultError"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1ToolCallResultError
+            Core.<$> (o Core..:? "message")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1ToolCallResultError
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1ToolCallResultError {..} =
+    Core.object
+      (Core.catMaybes [("message" Core..=) Core.<$> message])
+
+-- | A transition route specifies a intent that can be matched and\/or a data condition that can be evaluated during a session. When a specified transition is matched, the following actions are taken in order: * If there is a @trigger_fulfillment@ associated with the transition, it will be called. * If there is a @target_page@ associated with the transition, the session will transition into the specified page. * If there is a @target_flow@ associated with the transition, the session will transition into the specified flow.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TransitionRoute' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TransitionRoute = GoogleCloudDialogflowCxV3beta1TransitionRoute
+  { -- | The condition to evaluate against form parameters or session parameters. See the <https://cloud.google.com/dialogflow/cx/docs/reference/condition conditions reference>. At least one of @intent@ or @condition@ must be specified. When both @intent@ and @condition@ are specified, the transition can only happen when both are fulfilled.
+    condition :: (Core.Maybe Core.Text),
+    -- | Optional. The description of the transition route. The maximum length is 500 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | The unique identifier of an Intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@. Indicates that the transition can only happen when the given intent is matched. At least one of @intent@ or @condition@ must be specified. When both @intent@ and @condition@ are specified, the transition can only happen when both are fulfilled.
+    intent :: (Core.Maybe Core.Text),
+    -- | Output only. The unique identifier of this transition route.
+    name :: (Core.Maybe Core.Text),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text),
+    -- | The fulfillment to call when the condition is satisfied. At least one of @trigger_fulfillment@ and @target@ must be specified. When both are defined, @trigger_fulfillment@ is executed first.
+    triggerFulfillment :: (Core.Maybe GoogleCloudDialogflowCxV3beta1Fulfillment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TransitionRoute' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TransitionRoute ::
+  GoogleCloudDialogflowCxV3beta1TransitionRoute
+newGoogleCloudDialogflowCxV3beta1TransitionRoute =
+  GoogleCloudDialogflowCxV3beta1TransitionRoute
+    { condition =
+        Core.Nothing,
+      description = Core.Nothing,
+      intent = Core.Nothing,
+      name = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing,
+      triggerFulfillment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1TransitionRoute
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TransitionRoute"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TransitionRoute
+            Core.<$> (o Core..:? "condition")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+            Core.<*> (o Core..:? "triggerFulfillment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TransitionRoute where
+  toJSON GoogleCloudDialogflowCxV3beta1TransitionRoute {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("condition" Core..=) Core.<$> condition,
+            ("description" Core..=) Core.<$> description,
+            ("intent" Core..=) Core.<$> intent,
+            ("name" Core..=) Core.<$> name,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage,
+            ("triggerFulfillment" Core..=) Core.<$> triggerFulfillment
+          ]
+      )
+
+-- | Collection of all signals that were extracted for a single turn of the conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1TurnSignals' smart constructor.
+data GoogleCloudDialogflowCxV3beta1TurnSignals = GoogleCloudDialogflowCxV3beta1TurnSignals
+  { -- | Whether agent responded with LiveAgentHandoff fulfillment.
+    agentEscalated :: (Core.Maybe Core.Bool),
+    -- | Whether user was using DTMF input.
+    dtmfUsed :: (Core.Maybe Core.Bool),
+    -- | Failure reasons of the turn.
+    failureReasons ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem]
+      ),
+    -- | Whether NLU predicted NO_MATCH.
+    noMatch :: (Core.Maybe Core.Bool),
+    -- | Whether user provided no input.
+    noUserInput :: (Core.Maybe Core.Bool),
+    -- | Whether turn resulted in End Session page.
+    reachedEndPage :: (Core.Maybe Core.Bool),
+    -- | Sentiment magnitude of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentMagnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentScore :: (Core.Maybe Core.Double),
+    -- | Whether user was specifically asking for a live agent.
+    userEscalated :: (Core.Maybe Core.Bool),
+    -- | Human-readable statuses of the webhooks triggered during this turn.
+    webhookStatuses :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1TurnSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1TurnSignals ::
+  GoogleCloudDialogflowCxV3beta1TurnSignals
+newGoogleCloudDialogflowCxV3beta1TurnSignals =
+  GoogleCloudDialogflowCxV3beta1TurnSignals
+    { agentEscalated =
+        Core.Nothing,
+      dtmfUsed = Core.Nothing,
+      failureReasons = Core.Nothing,
+      noMatch = Core.Nothing,
+      noUserInput = Core.Nothing,
+      reachedEndPage = Core.Nothing,
+      sentimentMagnitude = Core.Nothing,
+      sentimentScore = Core.Nothing,
+      userEscalated = Core.Nothing,
+      webhookStatuses = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1TurnSignals where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1TurnSignals"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1TurnSignals
+            Core.<$> (o Core..:? "agentEscalated")
+            Core.<*> (o Core..:? "dtmfUsed")
+            Core.<*> (o Core..:? "failureReasons")
+            Core.<*> (o Core..:? "noMatch")
+            Core.<*> (o Core..:? "noUserInput")
+            Core.<*> (o Core..:? "reachedEndPage")
+            Core.<*> (o Core..:? "sentimentMagnitude")
+            Core.<*> (o Core..:? "sentimentScore")
+            Core.<*> (o Core..:? "userEscalated")
+            Core.<*> (o Core..:? "webhookStatuses")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1TurnSignals where
+  toJSON GoogleCloudDialogflowCxV3beta1TurnSignals {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentEscalated" Core..=) Core.<$> agentEscalated,
+            ("dtmfUsed" Core..=) Core.<$> dtmfUsed,
+            ("failureReasons" Core..=) Core.<$> failureReasons,
+            ("noMatch" Core..=) Core.<$> noMatch,
+            ("noUserInput" Core..=) Core.<$> noUserInput,
+            ("reachedEndPage" Core..=) Core.<$> reachedEndPage,
+            ("sentimentMagnitude" Core..=) Core.<$> sentimentMagnitude,
+            ("sentimentScore" Core..=) Core.<$> sentimentScore,
+            ("userEscalated" Core..=) Core.<$> userEscalated,
+            ("webhookStatuses" Core..=) Core.<$> webhookStatuses
+          ]
+      )
+
+-- | Webhooks host the developer\'s business logic. During a session, webhooks allow the developer to use the data extracted by Dialogflow\'s natural language processing to generate dynamic responses, validate collected data, or trigger actions on the backend.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1Webhook' smart constructor.
+data GoogleCloudDialogflowCxV3beta1Webhook = GoogleCloudDialogflowCxV3beta1Webhook
+  { -- | Indicates whether the webhook is disabled.
+    disabled :: (Core.Maybe Core.Bool),
+    -- | Required. The human-readable name of the webhook, unique within the agent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Configuration for a generic web service.
+    genericWebService :: (Core.Maybe GoogleCloudDialogflowCxV3beta1WebhookGenericWebService),
+    -- | The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Configuration for a <https://cloud.google.com/service-directory Service Directory> service.
+    serviceDirectory ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+      ),
+    -- | Webhook execution timeout. Execution is considered failed if Dialogflow doesn\'t receive a response from webhook at the end of the timeout period. Defaults to 5 seconds, maximum allowed timeout is 30 seconds.
+    timeout :: (Core.Maybe Core.Duration)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1Webhook' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1Webhook ::
+  GoogleCloudDialogflowCxV3beta1Webhook
+newGoogleCloudDialogflowCxV3beta1Webhook =
+  GoogleCloudDialogflowCxV3beta1Webhook
+    { disabled = Core.Nothing,
+      displayName = Core.Nothing,
+      genericWebService = Core.Nothing,
+      name = Core.Nothing,
+      serviceDirectory = Core.Nothing,
+      timeout = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1Webhook where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1Webhook"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1Webhook
+            Core.<$> (o Core..:? "disabled")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "genericWebService")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "serviceDirectory")
+            Core.<*> (o Core..:? "timeout")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1Webhook where
+  toJSON GoogleCloudDialogflowCxV3beta1Webhook {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("disabled" Core..=) Core.<$> disabled,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("genericWebService" Core..=) Core.<$> genericWebService,
+            ("name" Core..=) Core.<$> name,
+            ("serviceDirectory" Core..=) Core.<$> serviceDirectory,
+            ("timeout" Core..=) Core.<$> timeout
+          ]
+      )
+
+-- | Represents configuration for a generic web service.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookGenericWebService = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+  { -- | Optional. Specifies a list of allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, Dialogflow will use Google\'s default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command, @openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile \<(printf \"\\nsubjectAltName=\'DNS:www.example.com\'\")@
+    allowedCaCerts :: (Core.Maybe [Core.Base64]),
+    -- | Optional. HTTP method for the flexible webhook calls. Standard webhook always uses POST.
+    httpMethod ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+      ),
+    -- | Optional. The OAuth configuration of the webhook. If specified, Dialogflow will initiate the OAuth client credential flow to exchange an access token from the 3rd party platform and put it in the auth header.
+    oauthConfig ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+      ),
+    -- | Optional. Maps the values extracted from specific fields of the flexible webhook response into session parameters. - Key: session parameter name - Value: field path in the webhook response
+    parameterMapping ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+      ),
+    -- | The password for HTTP Basic authentication.
+    password :: (Core.Maybe Core.Text),
+    -- | Optional. Defines a custom JSON object as request body to send to flexible webhook.
+    requestBody :: (Core.Maybe Core.Text),
+    -- | The HTTP request headers to send together with webhook requests.
+    requestHeaders ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+      ),
+    -- | Optional. Indicate the auth token type generated from the <https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent Diglogflow service agent>. The generated token is sent in the Authorization header.
+    serviceAgentAuth ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+      ),
+    -- | Required. The webhook URI for receiving POST requests. It must use https protocol.
+    uri :: (Core.Maybe Core.Text),
+    -- | The user name for HTTP Basic authentication.
+    username :: (Core.Maybe Core.Text),
+    -- | Optional. Type of the webhook.
+    webhookType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookGenericWebService' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService ::
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService =
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+    { allowedCaCerts =
+        Core.Nothing,
+      httpMethod = Core.Nothing,
+      oauthConfig = Core.Nothing,
+      parameterMapping = Core.Nothing,
+      password = Core.Nothing,
+      requestBody = Core.Nothing,
+      requestHeaders = Core.Nothing,
+      serviceAgentAuth = Core.Nothing,
+      uri = Core.Nothing,
+      username = Core.Nothing,
+      webhookType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookGenericWebService"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+            Core.<$> (o Core..:? "allowedCaCerts")
+            Core.<*> (o Core..:? "httpMethod")
+            Core.<*> (o Core..:? "oauthConfig")
+            Core.<*> (o Core..:? "parameterMapping")
+            Core.<*> (o Core..:? "password")
+            Core.<*> (o Core..:? "requestBody")
+            Core.<*> (o Core..:? "requestHeaders")
+            Core.<*> (o Core..:? "serviceAgentAuth")
+            Core.<*> (o Core..:? "uri")
+            Core.<*> (o Core..:? "username")
+            Core.<*> (o Core..:? "webhookType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookGenericWebService {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allowedCaCerts" Core..=) Core.<$> allowedCaCerts,
+            ("httpMethod" Core..=) Core.<$> httpMethod,
+            ("oauthConfig" Core..=) Core.<$> oauthConfig,
+            ("parameterMapping" Core..=) Core.<$> parameterMapping,
+            ("password" Core..=) Core.<$> password,
+            ("requestBody" Core..=) Core.<$> requestBody,
+            ("requestHeaders" Core..=) Core.<$> requestHeaders,
+            ("serviceAgentAuth" Core..=) Core.<$> serviceAgentAuth,
+            ("uri" Core..=) Core.<$> uri,
+            ("username" Core..=) Core.<$> username,
+            ("webhookType" Core..=) Core.<$> webhookType
+          ]
+      )
+
+-- | Optional. Maps the values extracted from specific fields of the flexible webhook response into session parameters. - Key: session parameter name - Value: field path in the webhook response
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Text ->
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+  additional =
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping {..} =
+      Core.toJSON additional
+
+-- | The HTTP request headers to send together with webhook requests.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Text ->
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+  additional =
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders {..} =
+      Core.toJSON additional
+
+-- | Represents configuration of OAuth client credential flow for 3rd party API authentication.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig = GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+  { -- | Required. The client ID provided by the 3rd party platform.
+    clientId :: (Core.Maybe Core.Text),
+    -- | Optional. The client secret provided by the 3rd party platform.
+    clientSecret :: (Core.Maybe Core.Text),
+    -- | Optional. The OAuth scopes to grant.
+    scopes :: (Core.Maybe [Core.Text]),
+    -- | Required. The token endpoint provided by the 3rd party platform to exchange an access token.
+    tokenEndpoint :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig ::
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig =
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+    { clientId =
+        Core.Nothing,
+      clientSecret = Core.Nothing,
+      scopes = Core.Nothing,
+      tokenEndpoint = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+            Core.<$> (o Core..:? "clientId")
+            Core.<*> (o Core..:? "clientSecret")
+            Core.<*> (o Core..:? "scopes")
+            Core.<*> (o Core..:? "tokenEndpoint")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("clientId" Core..=) Core.<$> clientId,
+              ("clientSecret" Core..=) Core.<$> clientSecret,
+              ("scopes" Core..=) Core.<$> scopes,
+              ("tokenEndpoint" Core..=) Core.<$> tokenEndpoint
+            ]
+        )
+
+-- | The request message for a webhook call. The request is sent as a JSON object and the field names will be presented in camel cases. You may see undocumented fields in an actual request. These fields are used internally by Dialogflow and should be ignored.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequest' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookRequest = GoogleCloudDialogflowCxV3beta1WebhookRequest
+  { -- | Always present. The unique identifier of the DetectIntentResponse that will be returned to the API caller.
+    detectIntentResponseId :: (Core.Maybe Core.Text),
+    -- | If DTMF was provided as input, this field will contain the DTMF digits.
+    dtmfDigits :: (Core.Maybe Core.Text),
+    -- | Always present. Information about the fulfillment that triggered this webhook call.
+    fulfillmentInfo ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+      ),
+    -- | Information about the last matched intent.
+    intentInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo),
+    -- | The language code specified in the original request.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Information about the language of the request.
+    languageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1LanguageInfo),
+    -- | The list of rich message responses to present to the user. Webhook can choose to append or replace this list in WebhookResponse.fulfillment_response;
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ResponseMessage]),
+    -- | Information about page status.
+    pageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1PageInfo),
+    -- | Custom data set in QueryParameters.payload.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload),
+    -- | The sentiment analysis result of the current user request. The field is filled when sentiment analysis is configured to be enabled for the request.
+    sentimentAnalysisResult ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+      ),
+    -- | Information about session status.
+    sessionInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1SessionInfo),
+    -- | If natural language text was provided as input, this field will contain a copy of the text.
+    text :: (Core.Maybe Core.Text),
+    -- | If natural language speech audio was provided as input, this field will contain the transcript for the audio.
+    transcript :: (Core.Maybe Core.Text),
+    -- | If an event was provided as input, this field will contain the name of the event.
+    triggerEvent :: (Core.Maybe Core.Text),
+    -- | If an intent was provided as input, this field will contain a copy of the intent identifier. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    triggerIntent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequest ::
+  GoogleCloudDialogflowCxV3beta1WebhookRequest
+newGoogleCloudDialogflowCxV3beta1WebhookRequest =
+  GoogleCloudDialogflowCxV3beta1WebhookRequest
+    { detectIntentResponseId =
+        Core.Nothing,
+      dtmfDigits = Core.Nothing,
+      fulfillmentInfo = Core.Nothing,
+      intentInfo = Core.Nothing,
+      languageCode = Core.Nothing,
+      languageInfo = Core.Nothing,
+      messages = Core.Nothing,
+      pageInfo = Core.Nothing,
+      payload = Core.Nothing,
+      sentimentAnalysisResult = Core.Nothing,
+      sessionInfo = Core.Nothing,
+      text = Core.Nothing,
+      transcript = Core.Nothing,
+      triggerEvent = Core.Nothing,
+      triggerIntent = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowCxV3beta1WebhookRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequest"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequest
+            Core.<$> (o Core..:? "detectIntentResponseId")
+            Core.<*> (o Core..:? "dtmfDigits")
+            Core.<*> (o Core..:? "fulfillmentInfo")
+            Core.<*> (o Core..:? "intentInfo")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "languageInfo")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sentimentAnalysisResult")
+            Core.<*> (o Core..:? "sessionInfo")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "transcript")
+            Core.<*> (o Core..:? "triggerEvent")
+            Core.<*> (o Core..:? "triggerIntent")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1WebhookRequest where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("detectIntentResponseId" Core..=)
+              Core.<$> detectIntentResponseId,
+            ("dtmfDigits" Core..=) Core.<$> dtmfDigits,
+            ("fulfillmentInfo" Core..=) Core.<$> fulfillmentInfo,
+            ("intentInfo" Core..=) Core.<$> intentInfo,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("languageInfo" Core..=) Core.<$> languageInfo,
+            ("messages" Core..=) Core.<$> messages,
+            ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("payload" Core..=) Core.<$> payload,
+            ("sentimentAnalysisResult" Core..=)
+              Core.<$> sentimentAnalysisResult,
+            ("sessionInfo" Core..=) Core.<$> sessionInfo,
+            ("text" Core..=) Core.<$> text,
+            ("transcript" Core..=) Core.<$> transcript,
+            ("triggerEvent" Core..=) Core.<$> triggerEvent,
+            ("triggerIntent" Core..=) Core.<$> triggerIntent
+          ]
+      )
+
+-- | Custom data set in QueryParameters.payload.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload = GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload additional =
+  GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload {..} =
+    Core.toJSON additional
+
+-- | Represents fulfillment information communicated to the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo = GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+  { -- | Always present. The value of the Fulfillment.tag field will be populated in this field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes.
+    tag :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo ::
+  GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo =
+  GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+    { tag =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+            Core.<$> (o Core..:? "tag")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo {..} =
+      Core.object (Core.catMaybes [("tag" Core..=) Core.<$> tag])
+
+-- | Represents intent information communicated to the webhook.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo = GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+  { -- | The confidence of the matched intent. Values range from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | Always present. The display name of the last matched intent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Always present. The unique identifier of the last matched intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    lastMatchedIntent :: (Core.Maybe Core.Text),
+    -- | Parameters identified as a result of intent matching. This is a map of the name of the identified parameter to the value of the parameter identified from the user\'s utterance. All parameters defined in the matched intent that are identified will be surfaced here.
+    parameters ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo ::
+  GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo =
+  GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+    { confidence =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      lastMatchedIntent = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "lastMatchedIntent")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("lastMatchedIntent" Core..=) Core.<$> lastMatchedIntent,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | Parameters identified as a result of intent matching. This is a map of the name of the identified parameter to the value of the parameter identified from the user\'s utterance. All parameters defined in the matched intent that are identified will be surfaced here.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters = GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+  { additional ::
+      ( Core.HashMap
+          Core.Text
+          GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters ::
+  -- |  See 'additional'.
+  Core.HashMap
+    Core.Text
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue ->
+  GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+  additional =
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters {..} =
+      Core.toJSON additional
+
+-- | Represents a value for an intent parameter.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue = GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+  { -- | Always present. Original text value extracted from user utterance.
+    originalValue :: (Core.Maybe Core.Text),
+    -- | Always present. Structured value for the parameter extracted from user utterance.
+    resolvedValue :: (Core.Maybe Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue ::
+  GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue =
+  GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+    { originalValue =
+        Core.Nothing,
+      resolvedValue =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+            Core.<$> (o Core..:? "originalValue")
+            Core.<*> (o Core..:? "resolvedValue")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("originalValue" Core..=) Core.<$> originalValue,
+              ("resolvedValue" Core..=) Core.<$> resolvedValue
+            ]
+        )
+
+-- | Represents the result of sentiment analysis.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult = GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+  { -- | A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).
+    magnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).
+    score :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult ::
+  GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult =
+  GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+    { magnitude =
+        Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+            Core.<$> (o Core..:? "magnitude")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("magnitude" Core..=) Core.<$> magnitude,
+              ("score" Core..=) Core.<$> score
+            ]
+        )
+
+-- | The response message for a webhook call.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookResponse = GoogleCloudDialogflowCxV3beta1WebhookResponse
+  { -- | The fulfillment response to send to the user. This field can be omitted by the webhook if it does not intend to send any response to the user.
+    fulfillmentResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+      ),
+    -- | Information about page status. This field can be omitted by the webhook if it does not intend to modify page status.
+    pageInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1PageInfo),
+    -- | Value to append directly to QueryResult.webhook_payloads.
+    payload :: (Core.Maybe GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload),
+    -- | Information about session status. This field can be omitted by the webhook if it does not intend to modify session status.
+    sessionInfo :: (Core.Maybe GoogleCloudDialogflowCxV3beta1SessionInfo),
+    -- | The target flow to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    targetFlow :: (Core.Maybe Core.Text),
+    -- | The target page to transition to. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    targetPage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookResponse ::
+  GoogleCloudDialogflowCxV3beta1WebhookResponse
+newGoogleCloudDialogflowCxV3beta1WebhookResponse =
+  GoogleCloudDialogflowCxV3beta1WebhookResponse
+    { fulfillmentResponse =
+        Core.Nothing,
+      pageInfo = Core.Nothing,
+      payload = Core.Nothing,
+      sessionInfo = Core.Nothing,
+      targetFlow = Core.Nothing,
+      targetPage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookResponse
+            Core.<$> (o Core..:? "fulfillmentResponse")
+            Core.<*> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sessionInfo")
+            Core.<*> (o Core..:? "targetFlow")
+            Core.<*> (o Core..:? "targetPage")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowCxV3beta1WebhookResponse where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("fulfillmentResponse" Core..=) Core.<$> fulfillmentResponse,
+            ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("payload" Core..=) Core.<$> payload,
+            ("sessionInfo" Core..=) Core.<$> sessionInfo,
+            ("targetFlow" Core..=) Core.<$> targetFlow,
+            ("targetPage" Core..=) Core.<$> targetPage
+          ]
+      )
+
+-- | Value to append directly to QueryResult.webhook_payloads.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload' smart constructor.
+newtype GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload = GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload additional =
+  GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+  where
+  toJSON GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload {..} =
+    Core.toJSON additional
+
+-- | Represents a fulfillment response to the user.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse = GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+  { -- | Merge behavior for @messages@.
+    mergeBehavior ::
+      ( Core.Maybe
+          GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+      ),
+    -- | The list of rich message responses to present to the user.
+    messages :: (Core.Maybe [GoogleCloudDialogflowCxV3beta1ResponseMessage])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse ::
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse =
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+    { mergeBehavior =
+        Core.Nothing,
+      messages = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+            Core.<$> (o Core..:? "mergeBehavior")
+            Core.<*> (o Core..:? "messages")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("mergeBehavior" Core..=) Core.<$> mergeBehavior,
+              ("messages" Core..=) Core.<$> messages
+            ]
+        )
+
+-- | Represents configuration for a <https://cloud.google.com/service-directory Service Directory> service.
+--
+-- /See:/ 'newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig' smart constructor.
+data GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig = GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+  { -- | Generic Service configuration of this webhook.
+    genericWebService :: (Core.Maybe GoogleCloudDialogflowCxV3beta1WebhookGenericWebService),
+    -- | Required. The name of <https://cloud.google.com/service-directory Service Directory> service. Format: @projects\/\/locations\/\/namespaces\/\/services\/@. @Location ID@ of the service directory must be the same as the location of the agent.
+    service :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig' with the minimum fields required to make a request.
+newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig ::
+  GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig =
+  GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+    { genericWebService =
+        Core.Nothing,
+      service = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig"
+      ( \o ->
+          GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+            Core.<$> (o Core..:? "genericWebService")
+            Core.<*> (o Core..:? "service")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+  where
+  toJSON
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("genericWebService" Core..=) Core.<$> genericWebService,
+              ("service" Core..=) Core.<$> service
+            ]
+        )
+
+-- | Represents a part of a message possibly annotated with an entity. The part can be an entity or purely a part of the message between two entities or message start\/end.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2AnnotatedMessagePart' smart constructor.
+data GoogleCloudDialogflowV2AnnotatedMessagePart = GoogleCloudDialogflowV2AnnotatedMessagePart
+  { -- | The <https://cloud.google.com/dialogflow/docs/reference/system-entities Dialogflow system entity type> of this message part. If this is empty, Dialogflow could not annotate the phrase part with a system entity.
+    entityType :: (Core.Maybe Core.Text),
+    -- | The <https://cloud.google.com/dialogflow/docs/reference/system-entities Dialogflow system entity formatted value> of this message part. For example for a system entity of type @\@sys.unit-currency@, this may contain: { \"amount\": 5, \"currency\": \"USD\" }
+    formattedValue :: (Core.Maybe Core.Value),
+    -- | A part of a message possibly annotated with an entity.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2AnnotatedMessagePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2AnnotatedMessagePart ::
+  GoogleCloudDialogflowV2AnnotatedMessagePart
+newGoogleCloudDialogflowV2AnnotatedMessagePart =
+  GoogleCloudDialogflowV2AnnotatedMessagePart
+    { entityType =
+        Core.Nothing,
+      formattedValue = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2AnnotatedMessagePart where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2AnnotatedMessagePart"
+      ( \o ->
+          GoogleCloudDialogflowV2AnnotatedMessagePart
+            Core.<$> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "formattedValue")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2AnnotatedMessagePart where
+  toJSON GoogleCloudDialogflowV2AnnotatedMessagePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityType" Core..=) Core.<$> entityType,
+            ("formattedValue" Core..=) Core.<$> formattedValue,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Represents article answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ArticleAnswer' smart constructor.
+data GoogleCloudDialogflowV2ArticleAnswer = GoogleCloudDialogflowV2ArticleAnswer
+  { -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | Article match confidence. The system\'s confidence score that this article is a good match for this conversation, as a value from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | A map that contains metadata about the answer and the document from which it originates.
+    metadata :: (Core.Maybe GoogleCloudDialogflowV2ArticleAnswer_Metadata),
+    -- | Article snippets.
+    snippets :: (Core.Maybe [Core.Text]),
+    -- | The article title.
+    title :: (Core.Maybe Core.Text),
+    -- | The article URI.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ArticleAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ArticleAnswer ::
+  GoogleCloudDialogflowV2ArticleAnswer
+newGoogleCloudDialogflowV2ArticleAnswer =
+  GoogleCloudDialogflowV2ArticleAnswer
+    { answerRecord = Core.Nothing,
+      confidence = Core.Nothing,
+      metadata = Core.Nothing,
+      snippets = Core.Nothing,
+      title = Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2ArticleAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ArticleAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2ArticleAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "snippets")
+            Core.<*> (o Core..:? "title")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ArticleAnswer where
+  toJSON GoogleCloudDialogflowV2ArticleAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("confidence" Core..=) Core.<$> confidence,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("snippets" Core..=) Core.<$> snippets,
+            ("title" Core..=) Core.<$> title,
+            ("uri" Core..=) Core.<$> uri
+          ]
+      )
+
+-- | A map that contains metadata about the answer and the document from which it originates.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ArticleAnswer_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2ArticleAnswer_Metadata = GoogleCloudDialogflowV2ArticleAnswer_Metadata
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ArticleAnswer_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ArticleAnswer_Metadata ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowV2ArticleAnswer_Metadata
+newGoogleCloudDialogflowV2ArticleAnswer_Metadata additional =
+  GoogleCloudDialogflowV2ArticleAnswer_Metadata
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ArticleAnswer_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ArticleAnswer_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2ArticleAnswer_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ArticleAnswer_Metadata where
+  toJSON GoogleCloudDialogflowV2ArticleAnswer_Metadata {..} =
+    Core.toJSON additional
+
+-- | Metadata for article suggestion models.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2ArticleSuggestionModelMetadata = GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+  { -- | Optional. Type of the article suggestion model. If not provided, model_type is used.
+    trainingModelType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ArticleSuggestionModelMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata ::
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata =
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+    { trainingModelType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ArticleSuggestionModelMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+            Core.<$> (o Core..:? "trainingModelType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+  where
+  toJSON GoogleCloudDialogflowV2ArticleSuggestionModelMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [("trainingModelType" Core..=) Core.<$> trainingModelType]
+      )
+
+-- | The response message for EntityTypes.BatchUpdateEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse' smart constructor.
+newtype GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse = GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+  { -- | The collection of updated or created entity types.
+    entityTypes :: (Core.Maybe [GoogleCloudDialogflowV2EntityType])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse ::
+  GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse =
+  GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+    { entityTypes =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+            Core.<$> (o Core..:? "entityTypes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+  where
+  toJSON GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse {..} =
+    Core.object
+      (Core.catMaybes [("entityTypes" Core..=) Core.<$> entityTypes])
+
+-- | The response message for Intents.BatchUpdateIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2BatchUpdateIntentsResponse' smart constructor.
+newtype GoogleCloudDialogflowV2BatchUpdateIntentsResponse = GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+  { -- | The collection of updated or created intents.
+    intents :: (Core.Maybe [GoogleCloudDialogflowV2Intent])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2BatchUpdateIntentsResponse ::
+  GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+newGoogleCloudDialogflowV2BatchUpdateIntentsResponse =
+  GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+    { intents =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2BatchUpdateIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+            Core.<$> (o Core..:? "intents")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+  where
+  toJSON GoogleCloudDialogflowV2BatchUpdateIntentsResponse {..} =
+    Core.object
+      (Core.catMaybes [("intents" Core..=) Core.<$> intents])
+
+-- | Metadata for a ConversationProfiles.ClearSuggestionFeatureConfig operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+  { -- | The resource name of the conversation profile. Format: @projects\/\/locations\/\/conversationProfiles\/@
+    conversationProfile :: (Core.Maybe Core.Text),
+    -- | Timestamp whe the request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The participant role to remove the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+    participantRole ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ),
+    -- | Required. The type of the suggestion feature to remove.
+    suggestionFeatureType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata ::
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata =
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+    { conversationProfile =
+        Core.Nothing,
+      createTime = Core.Nothing,
+      participantRole =
+        Core.Nothing,
+      suggestionFeatureType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+            Core.<$> (o Core..:? "conversationProfile")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "suggestionFeatureType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationProfile" Core..=) Core.<$> conversationProfile,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("participantRole" Core..=) Core.<$> participantRole,
+              ("suggestionFeatureType" Core..=) Core.<$> suggestionFeatureType
+            ]
+        )
+
+-- | Dialogflow contexts are similar to natural language context. If a person says to you \"they are orange\", you need context in order to understand what \"they\" is referring to. Similarly, for Dialogflow to handle an end-user expression like that, it needs to be provided with context in order to correctly match an intent. Using contexts, you can control the flow of a conversation. You can configure contexts for an intent by setting input and output contexts, which are identified by string names. When an intent is matched, any configured output contexts for that intent become active. While any contexts are active, Dialogflow is more likely to match intents that are configured with input contexts that correspond to the currently active contexts. For more information about context, see the <https://cloud.google.com/dialogflow/docs/contexts-overview Contexts guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2Context' smart constructor.
+data GoogleCloudDialogflowV2Context = GoogleCloudDialogflowV2Context
+  { -- | Optional. The number of conversational query requests after which the context expires. The default is @0@. If set to @0@, the context expires immediately. Contexts expire automatically after 20 minutes if there are no matching queries.
+    lifespanCount :: (Core.Maybe Core.Int32),
+    -- | Required. The unique identifier of the context. Format: @projects\/\/agent\/sessions\/\/contexts\/@, or @projects\/\/agent\/environments\/\/users\/\/sessions\/\/contexts\/@. The @Context ID@ is always converted to lowercase, may only contain characters in @a-zA-Z0-9_-%@ and may be at most 250 bytes long. If @Environment ID@ is not specified, we assume default \'draft\' environment. If @User ID@ is not specified, we assume default \'-\' user. The following context names are reserved for internal use by Dialogflow. You should not use these contexts or create contexts with these names: * @__system_counters__@ * @*_id_dialog_context@ * @*_dialog_params_size@
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of parameters associated with this context. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2Context_Parameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2Context' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2Context ::
+  GoogleCloudDialogflowV2Context
+newGoogleCloudDialogflowV2Context =
+  GoogleCloudDialogflowV2Context
+    { lifespanCount = Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2Context where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2Context"
+      ( \o ->
+          GoogleCloudDialogflowV2Context
+            Core.<$> (o Core..:? "lifespanCount")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2Context where
+  toJSON GoogleCloudDialogflowV2Context {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("lifespanCount" Core..=) Core.<$> lifespanCount,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | Optional. The collection of parameters associated with this context. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2Context_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2Context_Parameters = GoogleCloudDialogflowV2Context_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2Context_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2Context_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2Context_Parameters
+newGoogleCloudDialogflowV2Context_Parameters additional =
+  GoogleCloudDialogflowV2Context_Parameters
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2Context_Parameters where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2Context_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2Context_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2Context_Parameters where
+  toJSON GoogleCloudDialogflowV2Context_Parameters {..} =
+    Core.toJSON additional
+
+-- | Represents a notification sent to Pub\/Sub subscribers for conversation lifecycle events.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ConversationEvent' smart constructor.
+data GoogleCloudDialogflowV2ConversationEvent = GoogleCloudDialogflowV2ConversationEvent
+  { -- | The unique identifier of the conversation this notification refers to. Format: @projects\/\/conversations\/@.
+    conversation :: (Core.Maybe Core.Text),
+    -- | More detailed information about an error. Only set for type UNRECOVERABLE/ERROR/IN/PHONE/CALL.
+    errorStatus :: (Core.Maybe GoogleRpcStatus),
+    -- | Payload of NEW_MESSAGE event.
+    newMessagePayload' :: (Core.Maybe GoogleCloudDialogflowV2Message),
+    -- | Payload of NEW/RECOGNITION/RESULT event.
+    newRecognitionResultPayload' :: (Core.Maybe GoogleCloudDialogflowV2StreamingRecognitionResult),
+    -- | The type of the event that this notification refers to.
+    type' :: (Core.Maybe GoogleCloudDialogflowV2ConversationEvent_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ConversationEvent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ConversationEvent ::
+  GoogleCloudDialogflowV2ConversationEvent
+newGoogleCloudDialogflowV2ConversationEvent =
+  GoogleCloudDialogflowV2ConversationEvent
+    { conversation =
+        Core.Nothing,
+      errorStatus = Core.Nothing,
+      newMessagePayload' = Core.Nothing,
+      newRecognitionResultPayload' = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2ConversationEvent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ConversationEvent"
+      ( \o ->
+          GoogleCloudDialogflowV2ConversationEvent
+            Core.<$> (o Core..:? "conversation")
+            Core.<*> (o Core..:? "errorStatus")
+            Core.<*> (o Core..:? "newMessagePayload")
+            Core.<*> (o Core..:? "newRecognitionResultPayload")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ConversationEvent where
+  toJSON GoogleCloudDialogflowV2ConversationEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversation" Core..=) Core.<$> conversation,
+            ("errorStatus" Core..=) Core.<$> errorStatus,
+            ("newMessagePayload" Core..=) Core.<$> newMessagePayload',
+            ("newRecognitionResultPayload" Core..=)
+              Core.<$> newRecognitionResultPayload',
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents a conversation model.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ConversationModel' smart constructor.
+data GoogleCloudDialogflowV2ConversationModel = GoogleCloudDialogflowV2ConversationModel
+  { -- | Metadata for article suggestion models.
+    articleSuggestionModelMetadata :: (Core.Maybe GoogleCloudDialogflowV2ArticleSuggestionModelMetadata),
+    -- | Output only. Creation time of this model.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Required. Datasets used to create model.
+    datasets :: (Core.Maybe [GoogleCloudDialogflowV2InputDataset]),
+    -- | Required. The display name of the model. At most 64 bytes long.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Language code for the conversation model. If not specified, the language is en-US. Language at ConversationModel should be set for all non en-us languages. This should be a <https://www.rfc-editor.org/rfc/bcp/bcp47.txt BCP-47> language tag. Example: \"en-US\".
+    languageCode :: (Core.Maybe Core.Text),
+    -- | ConversationModel resource name. Format: @projects\/\/conversationModels\/@
+    name :: (Core.Maybe Core.Text),
+    -- | Output only. A read only boolean field reflecting Zone Isolation status of the model.
+    satisfiesPzi :: (Core.Maybe Core.Bool),
+    -- | Output only. A read only boolean field reflecting Zone Separation status of the model.
+    satisfiesPzs :: (Core.Maybe Core.Bool),
+    -- | Metadata for smart reply models.
+    smartReplyModelMetadata :: (Core.Maybe GoogleCloudDialogflowV2SmartReplyModelMetadata),
+    -- | Output only. State of the model. A model can only serve prediction requests after it gets deployed.
+    state :: (Core.Maybe GoogleCloudDialogflowV2ConversationModel_State)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ConversationModel' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ConversationModel ::
+  GoogleCloudDialogflowV2ConversationModel
+newGoogleCloudDialogflowV2ConversationModel =
+  GoogleCloudDialogflowV2ConversationModel
+    { articleSuggestionModelMetadata =
+        Core.Nothing,
+      createTime = Core.Nothing,
+      datasets = Core.Nothing,
+      displayName = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = Core.Nothing,
+      satisfiesPzi = Core.Nothing,
+      satisfiesPzs = Core.Nothing,
+      smartReplyModelMetadata = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2ConversationModel where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ConversationModel"
+      ( \o ->
+          GoogleCloudDialogflowV2ConversationModel
+            Core.<$> (o Core..:? "articleSuggestionModelMetadata")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "datasets")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "satisfiesPzi")
+            Core.<*> (o Core..:? "satisfiesPzs")
+            Core.<*> (o Core..:? "smartReplyModelMetadata")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ConversationModel where
+  toJSON GoogleCloudDialogflowV2ConversationModel {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("articleSuggestionModelMetadata" Core..=)
+              Core.<$> articleSuggestionModelMetadata,
+            ("createTime" Core..=) Core.<$> createTime,
+            ("datasets" Core..=) Core.<$> datasets,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name,
+            ("satisfiesPzi" Core..=) Core.<$> satisfiesPzi,
+            ("satisfiesPzs" Core..=) Core.<$> satisfiesPzs,
+            ("smartReplyModelMetadata" Core..=)
+              Core.<$> smartReplyModelMetadata,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Metadata for CreateConversationDataset.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata = GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+  { -- | The resource name of the conversation dataset that will be created. Format: @projects\/\/locations\/\/conversationDatasets\/@
+    conversationDataset :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata ::
+  GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata =
+  GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+    { conversationDataset =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+            Core.<$> (o Core..:? "conversationDataset")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [("conversationDataset" Core..=) Core.<$> conversationDataset]
+        )
+
+-- | Metadata for a ConversationModels.CreateConversationModelEvaluation operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+  { -- | The resource name of the conversation model. Format: @projects\/\/locations\/\/conversationModels\/@
+    conversationModel :: (Core.Maybe Core.Text),
+    -- | The resource name of the conversation model. Format: @projects\/\/locations\/\/conversationModels\/\/evaluations\/@
+    conversationModelEvaluation :: (Core.Maybe Core.Text),
+    -- | Timestamp when the request to create conversation model was submitted. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | State of CreateConversationModel operation.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata ::
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata =
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+    { conversationModel =
+        Core.Nothing,
+      conversationModelEvaluation =
+        Core.Nothing,
+      createTime =
+        Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+            Core.<$> (o Core..:? "conversationModel")
+            Core.<*> (o Core..:? "conversationModelEvaluation")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationModel" Core..=) Core.<$> conversationModel,
+              ("conversationModelEvaluation" Core..=)
+                Core.<$> conversationModelEvaluation,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("state" Core..=) Core.<$> state
+            ]
+        )
+
+-- | Metadata for a ConversationModels.CreateConversationModel operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2CreateConversationModelOperationMetadata = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+  { -- | The resource name of the conversation model. Format: @projects\/\/conversationModels\/@
+    conversationModel :: (Core.Maybe Core.Text),
+    -- | Timestamp when the request to create conversation model is submitted. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | State of CreateConversationModel operation.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2CreateConversationModelOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata ::
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata =
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+    { conversationModel =
+        Core.Nothing,
+      createTime = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2CreateConversationModelOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+            Core.<$> (o Core..:? "conversationModel")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationModel" Core..=) Core.<$> conversationModel,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("state" Core..=) Core.<$> state
+            ]
+        )
+
+-- | Metadata for DeleteConversationDataset.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata = GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata ::
+  GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata =
+  GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Metadata for a ConversationModels.DeleteConversationModel operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata = GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+  { -- | The resource name of the conversation model. Format: @projects\/\/conversationModels\/@
+    conversationModel :: (Core.Maybe Core.Text),
+    -- | Timestamp when delete conversation model request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata ::
+  GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata =
+  GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+    { conversationModel =
+        Core.Nothing,
+      createTime = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+            Core.<$> (o Core..:? "conversationModel")
+            Core.<*> (o Core..:? "createTime")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationModel" Core..=) Core.<$> conversationModel,
+              ("createTime" Core..=) Core.<$> createTime
+            ]
+        )
+
+-- | Metadata for a ConversationModels.DeployConversationModel operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2DeployConversationModelOperationMetadata = GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+  { -- | The resource name of the conversation model. Format: @projects\/\/conversationModels\/@
+    conversationModel :: (Core.Maybe Core.Text),
+    -- | Timestamp when request to deploy conversation model was submitted. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2DeployConversationModelOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata ::
+  GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata =
+  GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+    { conversationModel =
+        Core.Nothing,
+      createTime = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2DeployConversationModelOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+            Core.<$> (o Core..:? "conversationModel")
+            Core.<*> (o Core..:? "createTime")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationModel" Core..=) Core.<$> conversationModel,
+              ("createTime" Core..=) Core.<$> createTime
+            ]
+        )
+
+-- | A customer-managed encryption key specification that can be applied to all created resources (e.g. Conversation).
+--
+-- /See:/ 'newGoogleCloudDialogflowV2EncryptionSpec' smart constructor.
+data GoogleCloudDialogflowV2EncryptionSpec = GoogleCloudDialogflowV2EncryptionSpec
+  { -- | Required. The name of customer-managed encryption key that is used to secure a resource and its sub-resources. If empty, the resource is secured by the default Google encryption key. Only the key in the same location as this resource is allowed to be used for encryption. Format: @projects\/{project}\/locations\/{location}\/keyRings\/{keyRing}\/cryptoKeys\/{key}@
+    kmsKey :: (Core.Maybe Core.Text),
+    -- | Immutable. The resource name of the encryption key specification resource. Format: projects\/{project}\/locations\/{location}\/encryptionSpec
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2EncryptionSpec' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2EncryptionSpec ::
+  GoogleCloudDialogflowV2EncryptionSpec
+newGoogleCloudDialogflowV2EncryptionSpec =
+  GoogleCloudDialogflowV2EncryptionSpec
+    { kmsKey = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2EncryptionSpec where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2EncryptionSpec"
+      ( \o ->
+          GoogleCloudDialogflowV2EncryptionSpec
+            Core.<$> (o Core..:? "kmsKey")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2EncryptionSpec where
+  toJSON GoogleCloudDialogflowV2EncryptionSpec {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kmsKey" Core..=) Core.<$> kmsKey,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Each intent parameter has a type, called the entity type, which dictates exactly how data from an end-user expression is extracted. Dialogflow provides predefined system entities that can match many common types of data. For example, there are system entities for matching dates, times, colors, email addresses, and so on. You can also create your own custom entities for matching custom data. For example, you could define a vegetable entity that can match the types of vegetables available for purchase with a grocery store agent. For more information, see the <https://cloud.google.com/dialogflow/docs/entities-overview Entity guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2EntityType' smart constructor.
+data GoogleCloudDialogflowV2EntityType = GoogleCloudDialogflowV2EntityType
+  { -- | Optional. Indicates whether the entity type can be automatically expanded.
+    autoExpansionMode :: (Core.Maybe GoogleCloudDialogflowV2EntityType_AutoExpansionMode),
+    -- | Required. The name of the entity type.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. Enables fuzzy entity extraction during classification.
+    enableFuzzyExtraction :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of entity entries associated with the entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowV2EntityTypeEntity]),
+    -- | Required. Indicates the kind of entity type.
+    kind :: (Core.Maybe GoogleCloudDialogflowV2EntityType_Kind),
+    -- | The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes methods. Format: @projects\/\/agent\/entityTypes\/@.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2EntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2EntityType ::
+  GoogleCloudDialogflowV2EntityType
+newGoogleCloudDialogflowV2EntityType =
+  GoogleCloudDialogflowV2EntityType
+    { autoExpansionMode =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      enableFuzzyExtraction = Core.Nothing,
+      entities = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2EntityType where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2EntityType"
+      ( \o ->
+          GoogleCloudDialogflowV2EntityType
+            Core.<$> (o Core..:? "autoExpansionMode")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "enableFuzzyExtraction")
+            Core.<*> (o Core..:? "entities")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2EntityType where
+  toJSON GoogleCloudDialogflowV2EntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("autoExpansionMode" Core..=) Core.<$> autoExpansionMode,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("enableFuzzyExtraction" Core..=) Core.<$> enableFuzzyExtraction,
+            ("entities" Core..=) Core.<$> entities,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | An __entity entry__ for an associated entity type.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2EntityTypeEntity' smart constructor.
+data GoogleCloudDialogflowV2EntityTypeEntity = GoogleCloudDialogflowV2EntityTypeEntity
+  { -- | Required. A collection of value synonyms. For example, if the entity type is /vegetable/, and @value@ is /scallions/, a synonym could be /green onions/. For @KIND_LIST@ entity types: * This collection must contain exactly one synonym equal to @value@.
+    synonyms :: (Core.Maybe [Core.Text]),
+    -- | Required. The primary value associated with this entity entry. For example, if the entity type is /vegetable/, the value could be /scallions/. For @KIND_MAP@ entity types: * A reference value to be used in place of synonyms. For @KIND_LIST@ entity types: * A string that can contain references to other entity types (with or without aliases).
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2EntityTypeEntity' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2EntityTypeEntity ::
+  GoogleCloudDialogflowV2EntityTypeEntity
+newGoogleCloudDialogflowV2EntityTypeEntity =
+  GoogleCloudDialogflowV2EntityTypeEntity
+    { synonyms = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2EntityTypeEntity where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2EntityTypeEntity"
+      ( \o ->
+          GoogleCloudDialogflowV2EntityTypeEntity
+            Core.<$> (o Core..:? "synonyms")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2EntityTypeEntity where
+  toJSON GoogleCloudDialogflowV2EntityTypeEntity {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("synonyms" Core..=) Core.<$> synonyms,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Events allow for matching intents by event name instead of the natural language input. For instance, input \`@can trigger a personalized welcome response. The parameter@name@may be used by the agent in the response:@\"Hello #welcome_event.name! What can I do for you today?\"\`.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2EventInput' smart constructor.
+data GoogleCloudDialogflowV2EventInput = GoogleCloudDialogflowV2EventInput
+  { -- | Required. The language of this query. See <https://cloud.google.com/dialogflow/docs/reference/language Language Support> for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language. This field is ignored when used in the context of a WebhookResponse.followup/event/input field, because the language was already defined in the originating detect intent request.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the event.
+    name :: (Core.Maybe Core.Text),
+    -- | The collection of parameters associated with the event. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2EventInput_Parameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2EventInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2EventInput ::
+  GoogleCloudDialogflowV2EventInput
+newGoogleCloudDialogflowV2EventInput =
+  GoogleCloudDialogflowV2EventInput
+    { languageCode = Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2EventInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2EventInput"
+      ( \o ->
+          GoogleCloudDialogflowV2EventInput
+            Core.<$> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2EventInput where
+  toJSON GoogleCloudDialogflowV2EventInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | The collection of parameters associated with the event. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2EventInput_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2EventInput_Parameters = GoogleCloudDialogflowV2EventInput_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2EventInput_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2EventInput_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2EventInput_Parameters
+newGoogleCloudDialogflowV2EventInput_Parameters additional =
+  GoogleCloudDialogflowV2EventInput_Parameters
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2EventInput_Parameters where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2EventInput_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2EventInput_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2EventInput_Parameters where
+  toJSON GoogleCloudDialogflowV2EventInput_Parameters {..} =
+    Core.toJSON additional
+
+-- | The response message for Agents.ExportAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ExportAgentResponse' smart constructor.
+data GoogleCloudDialogflowV2ExportAgentResponse = GoogleCloudDialogflowV2ExportAgentResponse
+  { -- | Zip compressed raw byte content for agent.
+    agentContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported agent. This field is populated only if @agent_uri@ is specified in @ExportAgentRequest@.
+    agentUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ExportAgentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ExportAgentResponse ::
+  GoogleCloudDialogflowV2ExportAgentResponse
+newGoogleCloudDialogflowV2ExportAgentResponse =
+  GoogleCloudDialogflowV2ExportAgentResponse
+    { agentContent =
+        Core.Nothing,
+      agentUri = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2ExportAgentResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ExportAgentResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2ExportAgentResponse
+            Core.<$> (o Core..:? "agentContent")
+            Core.<*> (o Core..:? "agentUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ExportAgentResponse where
+  toJSON GoogleCloudDialogflowV2ExportAgentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentContent" Core..=) Core.<$> agentContent,
+            ("agentUri" Core..=) Core.<$> agentUri
+          ]
+      )
+
+-- | Metadata related to the Export Data Operations (e.g. ExportDocument).
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ExportOperationMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2ExportOperationMetadata = GoogleCloudDialogflowV2ExportOperationMetadata
+  { -- | Cloud Storage file path of the exported data.
+    exportedGcsDestination :: (Core.Maybe GoogleCloudDialogflowV2GcsDestination)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ExportOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ExportOperationMetadata ::
+  GoogleCloudDialogflowV2ExportOperationMetadata
+newGoogleCloudDialogflowV2ExportOperationMetadata =
+  GoogleCloudDialogflowV2ExportOperationMetadata
+    { exportedGcsDestination =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ExportOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ExportOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2ExportOperationMetadata
+            Core.<$> (o Core..:? "exportedGcsDestination")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ExportOperationMetadata where
+  toJSON GoogleCloudDialogflowV2ExportOperationMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("exportedGcsDestination" Core..=)
+              Core.<$> exportedGcsDestination
+          ]
+      )
+
+-- | Represents answer from \"frequently asked questions\".
+--
+-- /See:/ 'newGoogleCloudDialogflowV2FaqAnswer' smart constructor.
+data GoogleCloudDialogflowV2FaqAnswer = GoogleCloudDialogflowV2FaqAnswer
+  { -- | The piece of text from the @source@ knowledge base document.
+    answer :: (Core.Maybe Core.Text),
+    -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | The system\'s confidence score that this Knowledge answer is a good match for this conversational query, range from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | A map that contains metadata about the answer and the document from which it originates.
+    metadata :: (Core.Maybe GoogleCloudDialogflowV2FaqAnswer_Metadata),
+    -- | The corresponding FAQ question.
+    question :: (Core.Maybe Core.Text),
+    -- | Indicates which Knowledge Document this answer was extracted from. Format: @projects\/\/locations\/\/agent\/knowledgeBases\/\/documents\/@.
+    source :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2FaqAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2FaqAnswer ::
+  GoogleCloudDialogflowV2FaqAnswer
+newGoogleCloudDialogflowV2FaqAnswer =
+  GoogleCloudDialogflowV2FaqAnswer
+    { answer = Core.Nothing,
+      answerRecord = Core.Nothing,
+      confidence = Core.Nothing,
+      metadata = Core.Nothing,
+      question = Core.Nothing,
+      source = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2FaqAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2FaqAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2FaqAnswer
+            Core.<$> (o Core..:? "answer")
+            Core.<*> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "question")
+            Core.<*> (o Core..:? "source")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2FaqAnswer where
+  toJSON GoogleCloudDialogflowV2FaqAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answer" Core..=) Core.<$> answer,
+            ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("confidence" Core..=) Core.<$> confidence,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("question" Core..=) Core.<$> question,
+            ("source" Core..=) Core.<$> source
+          ]
+      )
+
+-- | A map that contains metadata about the answer and the document from which it originates.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2FaqAnswer_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2FaqAnswer_Metadata = GoogleCloudDialogflowV2FaqAnswer_Metadata
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2FaqAnswer_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2FaqAnswer_Metadata ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowV2FaqAnswer_Metadata
+newGoogleCloudDialogflowV2FaqAnswer_Metadata additional =
+  GoogleCloudDialogflowV2FaqAnswer_Metadata
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2FaqAnswer_Metadata where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2FaqAnswer_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2FaqAnswer_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2FaqAnswer_Metadata where
+  toJSON GoogleCloudDialogflowV2FaqAnswer_Metadata {..} =
+    Core.toJSON additional
+
+-- | Google Cloud Storage location for the output.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2GcsDestination' smart constructor.
+newtype GoogleCloudDialogflowV2GcsDestination = GoogleCloudDialogflowV2GcsDestination
+  { -- | The Google Cloud Storage URIs for the output. A URI is of the form: @gs:\/\/bucket\/object-prefix-or-name@ Whether a prefix or name is used depends on the use case. The requesting user must have \"write-permission\" to the bucket.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2GcsDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2GcsDestination ::
+  GoogleCloudDialogflowV2GcsDestination
+newGoogleCloudDialogflowV2GcsDestination =
+  GoogleCloudDialogflowV2GcsDestination {uri = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowV2GcsDestination where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2GcsDestination"
+      ( \o ->
+          GoogleCloudDialogflowV2GcsDestination Core.<$> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2GcsDestination where
+  toJSON GoogleCloudDialogflowV2GcsDestination {..} =
+    Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Represents a notification sent to Cloud Pub\/Sub subscribers for human agent assistant events in a specific conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2HumanAgentAssistantEvent' smart constructor.
+data GoogleCloudDialogflowV2HumanAgentAssistantEvent = GoogleCloudDialogflowV2HumanAgentAssistantEvent
+  { -- | The conversation this notification refers to. Format: @projects\/\/conversations\/@.
+    conversation :: (Core.Maybe Core.Text),
+    -- | The participant that the suggestion is compiled for. Format: @projects\/\/conversations\/\/participants\/@. It will not be set in legacy workflow.
+    participant :: (Core.Maybe Core.Text),
+    -- | The suggestion results payload that this notification refers to.
+    suggestionResults :: (Core.Maybe [GoogleCloudDialogflowV2SuggestionResult])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2HumanAgentAssistantEvent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2HumanAgentAssistantEvent ::
+  GoogleCloudDialogflowV2HumanAgentAssistantEvent
+newGoogleCloudDialogflowV2HumanAgentAssistantEvent =
+  GoogleCloudDialogflowV2HumanAgentAssistantEvent
+    { conversation =
+        Core.Nothing,
+      participant = Core.Nothing,
+      suggestionResults = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2HumanAgentAssistantEvent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2HumanAgentAssistantEvent"
+      ( \o ->
+          GoogleCloudDialogflowV2HumanAgentAssistantEvent
+            Core.<$> (o Core..:? "conversation")
+            Core.<*> (o Core..:? "participant")
+            Core.<*> (o Core..:? "suggestionResults")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2HumanAgentAssistantEvent
+  where
+  toJSON GoogleCloudDialogflowV2HumanAgentAssistantEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversation" Core..=) Core.<$> conversation,
+            ("participant" Core..=) Core.<$> participant,
+            ("suggestionResults" Core..=) Core.<$> suggestionResults
+          ]
+      )
+
+-- | Metadata for a ConversationDatasets.ImportConversationData operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2ImportConversationDataOperationMetadata = GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+  { -- | The resource name of the imported conversation dataset. Format: @projects\/\/locations\/\/conversationDatasets\/@
+    conversationDataset :: (Core.Maybe Core.Text),
+    -- | Timestamp when import conversation data request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Partial failures are failures that don\'t fail the whole long running operation, e.g. single files that couldn\'t be read.
+    partialFailures :: (Core.Maybe [GoogleRpcStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ImportConversationDataOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata ::
+  GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata =
+  GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+    { conversationDataset =
+        Core.Nothing,
+      createTime = Core.Nothing,
+      partialFailures = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ImportConversationDataOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+            Core.<$> (o Core..:? "conversationDataset")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "partialFailures")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationDataset" Core..=) Core.<$> conversationDataset,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("partialFailures" Core..=) Core.<$> partialFailures
+            ]
+        )
+
+-- | Response used for ConversationDatasets.ImportConversationData long running operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ImportConversationDataOperationResponse' smart constructor.
+data GoogleCloudDialogflowV2ImportConversationDataOperationResponse = GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+  { -- | The resource name of the imported conversation dataset. Format: @projects\/\/locations\/\/conversationDatasets\/@
+    conversationDataset :: (Core.Maybe Core.Text),
+    -- | Number of conversations imported successfully.
+    importCount :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ImportConversationDataOperationResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ImportConversationDataOperationResponse ::
+  GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+newGoogleCloudDialogflowV2ImportConversationDataOperationResponse =
+  GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+    { conversationDataset =
+        Core.Nothing,
+      importCount = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ImportConversationDataOperationResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+            Core.<$> (o Core..:? "conversationDataset")
+            Core.<*> (o Core..:? "importCount")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+  where
+  toJSON
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationDataset" Core..=) Core.<$> conversationDataset,
+              ("importCount" Core..=) Core.<$> importCount
+            ]
+        )
+
+-- | Response message for Documents.ImportDocuments.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2ImportDocumentsResponse' smart constructor.
+newtype GoogleCloudDialogflowV2ImportDocumentsResponse = GoogleCloudDialogflowV2ImportDocumentsResponse
+  { -- | Includes details about skipped documents or any other warnings.
+    warnings :: (Core.Maybe [GoogleRpcStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2ImportDocumentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2ImportDocumentsResponse ::
+  GoogleCloudDialogflowV2ImportDocumentsResponse
+newGoogleCloudDialogflowV2ImportDocumentsResponse =
+  GoogleCloudDialogflowV2ImportDocumentsResponse
+    { warnings =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2ImportDocumentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2ImportDocumentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2ImportDocumentsResponse
+            Core.<$> (o Core..:? "warnings")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2ImportDocumentsResponse where
+  toJSON GoogleCloudDialogflowV2ImportDocumentsResponse {..} =
+    Core.object
+      (Core.catMaybes [("warnings" Core..=) Core.<$> warnings])
+
+-- | Metadata for initializing a location-level encryption specification.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata = GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+  { -- | Output only. The original request for initialization.
+    request' :: (Core.Maybe GoogleCloudDialogflowV2InitializeEncryptionSpecRequest)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata ::
+  GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata =
+  GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+    { request' =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+            Core.<$> (o Core..:? "request")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+  where
+  toJSON GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata {..} =
+    Core.object
+      (Core.catMaybes [("request" Core..=) Core.<$> request'])
+
+-- | The request to initialize a location-level encryption specification.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest' smart constructor.
+newtype GoogleCloudDialogflowV2InitializeEncryptionSpecRequest = GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+  { -- | Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. If the kms/key/name is left empty, no encryption will be enforced.
+    encryptionSpec :: (Core.Maybe GoogleCloudDialogflowV2EncryptionSpec)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2InitializeEncryptionSpecRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest ::
+  GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest =
+  GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+    { encryptionSpec =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2InitializeEncryptionSpecRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+            Core.<$> (o Core..:? "encryptionSpec")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+  where
+  toJSON GoogleCloudDialogflowV2InitializeEncryptionSpecRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [("encryptionSpec" Core..=) Core.<$> encryptionSpec]
+      )
+
+-- | InputDataset used to create model or do evaluation. NextID:5
+--
+-- /See:/ 'newGoogleCloudDialogflowV2InputDataset' smart constructor.
+newtype GoogleCloudDialogflowV2InputDataset = GoogleCloudDialogflowV2InputDataset
+  { -- | Required. ConversationDataset resource name. Format: @projects\/\/locations\/\/conversationDatasets\/@
+    dataset :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2InputDataset' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2InputDataset ::
+  GoogleCloudDialogflowV2InputDataset
+newGoogleCloudDialogflowV2InputDataset =
+  GoogleCloudDialogflowV2InputDataset {dataset = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowV2InputDataset where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2InputDataset"
+      ( \o ->
+          GoogleCloudDialogflowV2InputDataset
+            Core.<$> (o Core..:? "dataset")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2InputDataset where
+  toJSON GoogleCloudDialogflowV2InputDataset {..} =
+    Core.object
+      (Core.catMaybes [("dataset" Core..=) Core.<$> dataset])
+
+-- | An intent categorizes an end-user\'s intention for one conversation turn. For each agent, you define many intents, where your combined intents can handle a complete conversation. When an end-user writes or says something, referred to as an end-user expression or end-user input, Dialogflow matches the end-user input to the best intent in your agent. Matching an intent is also known as intent classification. For more information, see the <https://cloud.google.com/dialogflow/docs/intents-overview intent guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2Intent' smart constructor.
+data GoogleCloudDialogflowV2Intent = GoogleCloudDialogflowV2Intent
+  { -- | Optional. The name of the action associated with the intent. Note: The action name must not contain whitespaces.
+    action :: (Core.Maybe Core.Text),
+    -- | Optional. The list of platforms for which the first responses will be copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
+    defaultResponsePlatforms ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem]
+      ),
+    -- | Required. The name of this intent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates that this intent ends an interaction. Some integrations (e.g., Actions on Google or Dialogflow phone gateway) use this information to close interaction with an end user. Default is false.
+    endInteraction :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of event names that trigger the intent. If the collection of input contexts is not empty, all of the contexts must be present in the active user session for an event to trigger this intent. Event names are limited to 150 characters.
+    events :: (Core.Maybe [Core.Text]),
+    -- | Output only. Read-only. Information about all followup intents that have this intent as a direct or indirect parent. We populate this field only in the output.
+    followupIntentInfo :: (Core.Maybe [GoogleCloudDialogflowV2IntentFollowupIntentInfo]),
+    -- | Optional. The list of context names required for this intent to be triggered. Format: @projects\/\/agent\/sessions\/-\/contexts\/@.
+    inputContextNames :: (Core.Maybe [Core.Text]),
+    -- | Optional. Indicates whether this is a fallback intent.
+    isFallback :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates that a live agent should be brought in to handle the interaction with the user. In most cases, when you set this flag to true, you would also want to set end_interaction to true as well. Default is false.
+    liveAgentHandoff :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of rich messages corresponding to the @Response@ field in the Dialogflow console.
+    messages :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessage]),
+    -- | Optional. Indicates whether Machine Learning is disabled for the intent. Note: If @ml_disabled@ setting is set to true, then this intent is not taken into account during inference in @ML ONLY@ match mode. Also, auto-markup in the UI is turned off.
+    mlDisabled :: (Core.Maybe Core.Bool),
+    -- | Optional. The unique identifier of this intent. Required for Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Format: @projects\/\/agent\/intents\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of contexts that are activated when the intent is matched. Context messages in this collection should not set the parameters field. Setting the @lifespan_count@ to 0 will reset the context when the intent is matched. Format: @projects\/\/agent\/sessions\/-\/contexts\/@.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2Context]),
+    -- | Optional. The collection of parameters associated with the intent.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowV2IntentParameter]),
+    -- | Read-only after creation. The unique identifier of the parent intent in the chain of followup intents. You can set this field when creating an intent, for example with CreateIntent or BatchUpdateIntents, in order to make this intent a followup intent. It identifies the parent followup intent. Format: @projects\/\/agent\/intents\/@.
+    parentFollowupIntentName :: (Core.Maybe Core.Text),
+    -- | Optional. The priority of this intent. Higher numbers represent higher priorities. - If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the @Normal@ priority in the console. - If the supplied value is negative, the intent is ignored in runtime detect intent requests.
+    priority :: (Core.Maybe Core.Int32),
+    -- | Optional. Indicates whether to delete all contexts in the current session when this intent is matched.
+    resetContexts :: (Core.Maybe Core.Bool),
+    -- | Output only. Read-only. The unique identifier of the root intent in the chain of followup intents. It identifies the correct followup intents chain for this intent. We populate this field only in the output. Format: @projects\/\/agent\/intents\/@.
+    rootFollowupIntentName :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of examples that the agent is trained on.
+    trainingPhrases :: (Core.Maybe [GoogleCloudDialogflowV2IntentTrainingPhrase]),
+    -- | Optional. Indicates whether webhooks are enabled for the intent.
+    webhookState :: (Core.Maybe GoogleCloudDialogflowV2Intent_WebhookState)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2Intent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2Intent ::
+  GoogleCloudDialogflowV2Intent
+newGoogleCloudDialogflowV2Intent =
+  GoogleCloudDialogflowV2Intent
+    { action = Core.Nothing,
+      defaultResponsePlatforms = Core.Nothing,
+      displayName = Core.Nothing,
+      endInteraction = Core.Nothing,
+      events = Core.Nothing,
+      followupIntentInfo = Core.Nothing,
+      inputContextNames = Core.Nothing,
+      isFallback = Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      messages = Core.Nothing,
+      mlDisabled = Core.Nothing,
+      name = Core.Nothing,
+      outputContexts = Core.Nothing,
+      parameters = Core.Nothing,
+      parentFollowupIntentName = Core.Nothing,
+      priority = Core.Nothing,
+      resetContexts = Core.Nothing,
+      rootFollowupIntentName = Core.Nothing,
+      trainingPhrases = Core.Nothing,
+      webhookState = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2Intent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2Intent"
+      ( \o ->
+          GoogleCloudDialogflowV2Intent
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "defaultResponsePlatforms")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "events")
+            Core.<*> (o Core..:? "followupIntentInfo")
+            Core.<*> (o Core..:? "inputContextNames")
+            Core.<*> (o Core..:? "isFallback")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "mlDisabled")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "parentFollowupIntentName")
+            Core.<*> (o Core..:? "priority")
+            Core.<*> (o Core..:? "resetContexts")
+            Core.<*> (o Core..:? "rootFollowupIntentName")
+            Core.<*> (o Core..:? "trainingPhrases")
+            Core.<*> (o Core..:? "webhookState")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2Intent where
+  toJSON GoogleCloudDialogflowV2Intent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("defaultResponsePlatforms" Core..=)
+              Core.<$> defaultResponsePlatforms,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("events" Core..=) Core.<$> events,
+            ("followupIntentInfo" Core..=) Core.<$> followupIntentInfo,
+            ("inputContextNames" Core..=) Core.<$> inputContextNames,
+            ("isFallback" Core..=) Core.<$> isFallback,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("messages" Core..=) Core.<$> messages,
+            ("mlDisabled" Core..=) Core.<$> mlDisabled,
+            ("name" Core..=) Core.<$> name,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("parentFollowupIntentName" Core..=)
+              Core.<$> parentFollowupIntentName,
+            ("priority" Core..=) Core.<$> priority,
+            ("resetContexts" Core..=) Core.<$> resetContexts,
+            ("rootFollowupIntentName" Core..=) Core.<$> rootFollowupIntentName,
+            ("trainingPhrases" Core..=) Core.<$> trainingPhrases,
+            ("webhookState" Core..=) Core.<$> webhookState
+          ]
+      )
+
+-- | Represents a single followup intent in the chain.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentFollowupIntentInfo' smart constructor.
+data GoogleCloudDialogflowV2IntentFollowupIntentInfo = GoogleCloudDialogflowV2IntentFollowupIntentInfo
+  { -- | The unique identifier of the followup intent. Format: @projects\/\/agent\/intents\/@.
+    followupIntentName :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the followup intent\'s parent. Format: @projects\/\/agent\/intents\/@.
+    parentFollowupIntentName :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentFollowupIntentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentFollowupIntentInfo ::
+  GoogleCloudDialogflowV2IntentFollowupIntentInfo
+newGoogleCloudDialogflowV2IntentFollowupIntentInfo =
+  GoogleCloudDialogflowV2IntentFollowupIntentInfo
+    { followupIntentName =
+        Core.Nothing,
+      parentFollowupIntentName = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentFollowupIntentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentFollowupIntentInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentFollowupIntentInfo
+            Core.<$> (o Core..:? "followupIntentName")
+            Core.<*> (o Core..:? "parentFollowupIntentName")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentFollowupIntentInfo
+  where
+  toJSON GoogleCloudDialogflowV2IntentFollowupIntentInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("followupIntentName" Core..=) Core.<$> followupIntentName,
+            ("parentFollowupIntentName" Core..=)
+              Core.<$> parentFollowupIntentName
+          ]
+      )
+
+-- | A rich response message. Corresponds to the intent @Response@ field in the Dialogflow console. For more information, see <https://cloud.google.com/dialogflow/docs/intents-rich-messages Rich response messages>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessage' smart constructor.
+data GoogleCloudDialogflowV2IntentMessage = GoogleCloudDialogflowV2IntentMessage
+  { -- | The basic card response for Actions on Google.
+    basicCard :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageBasicCard),
+    -- | Browse carousel card for Actions on Google.
+    browseCarouselCard :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard),
+    -- | The card response.
+    card :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageCard),
+    -- | The carousel card response for Actions on Google.
+    carouselSelect :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageCarouselSelect),
+    -- | The image response.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | The link out suggestion chip for Actions on Google.
+    linkOutSuggestion :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion),
+    -- | The list card response for Actions on Google.
+    listSelect :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageListSelect),
+    -- | The media content card for Actions on Google.
+    mediaContent :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageMediaContent),
+    -- | A custom platform-specific response.
+    payload :: (Core.Maybe GoogleCloudDialogflowV2IntentMessage_Payload),
+    -- | Optional. The platform that this message is intended for.
+    platform :: (Core.Maybe GoogleCloudDialogflowV2IntentMessage_Platform),
+    -- | The quick replies response.
+    quickReplies :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageQuickReplies),
+    -- | The voice and text-only responses for Actions on Google.
+    simpleResponses :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageSimpleResponses),
+    -- | The suggestion chips for Actions on Google.
+    suggestions :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageSuggestions),
+    -- | Table card for Actions on Google.
+    tableCard :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageTableCard),
+    -- | The text response.
+    text :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageText)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessage ::
+  GoogleCloudDialogflowV2IntentMessage
+newGoogleCloudDialogflowV2IntentMessage =
+  GoogleCloudDialogflowV2IntentMessage
+    { basicCard = Core.Nothing,
+      browseCarouselCard = Core.Nothing,
+      card = Core.Nothing,
+      carouselSelect = Core.Nothing,
+      image = Core.Nothing,
+      linkOutSuggestion = Core.Nothing,
+      listSelect = Core.Nothing,
+      mediaContent = Core.Nothing,
+      payload = Core.Nothing,
+      platform = Core.Nothing,
+      quickReplies = Core.Nothing,
+      simpleResponses = Core.Nothing,
+      suggestions = Core.Nothing,
+      tableCard = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentMessage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessage"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessage
+            Core.<$> (o Core..:? "basicCard")
+            Core.<*> (o Core..:? "browseCarouselCard")
+            Core.<*> (o Core..:? "card")
+            Core.<*> (o Core..:? "carouselSelect")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "linkOutSuggestion")
+            Core.<*> (o Core..:? "listSelect")
+            Core.<*> (o Core..:? "mediaContent")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "platform")
+            Core.<*> (o Core..:? "quickReplies")
+            Core.<*> (o Core..:? "simpleResponses")
+            Core.<*> (o Core..:? "suggestions")
+            Core.<*> (o Core..:? "tableCard")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessage where
+  toJSON GoogleCloudDialogflowV2IntentMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("basicCard" Core..=) Core.<$> basicCard,
+            ("browseCarouselCard" Core..=) Core.<$> browseCarouselCard,
+            ("card" Core..=) Core.<$> card,
+            ("carouselSelect" Core..=) Core.<$> carouselSelect,
+            ("image" Core..=) Core.<$> image,
+            ("linkOutSuggestion" Core..=) Core.<$> linkOutSuggestion,
+            ("listSelect" Core..=) Core.<$> listSelect,
+            ("mediaContent" Core..=) Core.<$> mediaContent,
+            ("payload" Core..=) Core.<$> payload,
+            ("platform" Core..=) Core.<$> platform,
+            ("quickReplies" Core..=) Core.<$> quickReplies,
+            ("simpleResponses" Core..=) Core.<$> simpleResponses,
+            ("suggestions" Core..=) Core.<$> suggestions,
+            ("tableCard" Core..=) Core.<$> tableCard,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | A custom platform-specific response.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessage_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessage_Payload = GoogleCloudDialogflowV2IntentMessage_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessage_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessage_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2IntentMessage_Payload
+newGoogleCloudDialogflowV2IntentMessage_Payload additional =
+  GoogleCloudDialogflowV2IntentMessage_Payload
+    { additional =
+        additional
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentMessage_Payload where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessage_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessage_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessage_Payload where
+  toJSON GoogleCloudDialogflowV2IntentMessage_Payload {..} =
+    Core.toJSON additional
+
+-- | The basic card message. Useful for displaying information.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBasicCard' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageBasicCard = GoogleCloudDialogflowV2IntentMessageBasicCard
+  { -- | Optional. The collection of card buttons.
+    buttons :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageBasicCardButton]),
+    -- | Required, unless image is present. The body text of the card.
+    formattedText :: (Core.Maybe Core.Text),
+    -- | Optional. The image for the card.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Optional. The subtitle of the card.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBasicCard ::
+  GoogleCloudDialogflowV2IntentMessageBasicCard
+newGoogleCloudDialogflowV2IntentMessageBasicCard =
+  GoogleCloudDialogflowV2IntentMessageBasicCard
+    { buttons =
+        Core.Nothing,
+      formattedText = Core.Nothing,
+      image = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBasicCard"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBasicCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "formattedText")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageBasicCard where
+  toJSON GoogleCloudDialogflowV2IntentMessageBasicCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("formattedText" Core..=) Core.<$> formattedText,
+            ("image" Core..=) Core.<$> image,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | The button object that appears at the bottom of a card.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBasicCardButton' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageBasicCardButton = GoogleCloudDialogflowV2IntentMessageBasicCardButton
+  { -- | Required. Action to take when a user taps on the button.
+    openUriAction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+      ),
+    -- | Required. The title of the button.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCardButton' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBasicCardButton ::
+  GoogleCloudDialogflowV2IntentMessageBasicCardButton
+newGoogleCloudDialogflowV2IntentMessageBasicCardButton =
+  GoogleCloudDialogflowV2IntentMessageBasicCardButton
+    { openUriAction =
+        Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCardButton
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBasicCardButton"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBasicCardButton
+            Core.<$> (o Core..:? "openUriAction")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCardButton
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageBasicCardButton {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("openUriAction" Core..=) Core.<$> openUriAction,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Opens the given URI.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction = GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+  { -- | Required. The HTTP or HTTPS scheme URI.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction ::
+  GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction =
+  GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+    { uri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+  where
+  toJSON
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction {..} =
+      Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Browse Carousel Card for Actions on Google. https:\/\/developers.google.com\/actions\/assistant\/responses#browsing_carousel
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+  { -- | Optional. Settings for displaying the image. Applies to every image in items.
+    imageDisplayOptions ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+      ),
+    -- | Required. List of items in the Browse Carousel Card. Minimum of two items, maximum of ten.
+    items ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard ::
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard =
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+    { imageDisplayOptions =
+        Core.Nothing,
+      items = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+            Core.<$> (o Core..:? "imageDisplayOptions")
+            Core.<*> (o Core..:? "items")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("imageDisplayOptions" Core..=) Core.<$> imageDisplayOptions,
+            ("items" Core..=) Core.<$> items
+          ]
+      )
+
+-- | Browsing carousel tile
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  { -- | Optional. Description of the carousel item. Maximum of four lines of text.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. Text that appears at the bottom of the Browse Carousel Card. Maximum of one line of text.
+    footer :: (Core.Maybe Core.Text),
+    -- | Optional. Hero image for the carousel item.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Required. Action to present to the user.
+    openUriAction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+      ),
+    -- | Required. Title of the carousel item. Maximum of two lines of text.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem ::
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem =
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    { description =
+        Core.Nothing,
+      footer =
+        Core.Nothing,
+      image =
+        Core.Nothing,
+      openUriAction =
+        Core.Nothing,
+      title =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "footer")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "openUriAction")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  where
+  toJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("description" Core..=) Core.<$> description,
+              ("footer" Core..=) Core.<$> footer,
+              ("image" Core..=) Core.<$> image,
+              ("openUriAction" Core..=) Core.<$> openUriAction,
+              ("title" Core..=) Core.<$> title
+            ]
+        )
+
+-- | Actions on Google action to open a given url.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  { -- | Required. URL
+    url :: (Core.Maybe Core.Text),
+    -- | Optional. Specifies the type of viewer that is used when opening the URL. Defaults to opening via web browser.
+    urlTypeHint ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction ::
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction =
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    { url =
+        Core.Nothing,
+      urlTypeHint =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+            Core.<$> (o Core..:? "url")
+            Core.<*> (o Core..:? "urlTypeHint")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  where
+  toJSON
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("url" Core..=) Core.<$> url,
+              ("urlTypeHint" Core..=) Core.<$> urlTypeHint
+            ]
+        )
+
+-- | The card response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageCard' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageCard = GoogleCloudDialogflowV2IntentMessageCard
+  { -- | Optional. The collection of card buttons.
+    buttons :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageCardButton]),
+    -- | Optional. The public URI to an image file for the card.
+    imageUri :: (Core.Maybe Core.Text),
+    -- | Optional. The subtitle of the card.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageCard ::
+  GoogleCloudDialogflowV2IntentMessageCard
+newGoogleCloudDialogflowV2IntentMessageCard =
+  GoogleCloudDialogflowV2IntentMessageCard
+    { buttons = Core.Nothing,
+      imageUri = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentMessageCard where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageCard"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "imageUri")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageCard where
+  toJSON GoogleCloudDialogflowV2IntentMessageCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("imageUri" Core..=) Core.<$> imageUri,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Contains information about a button.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageCardButton' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageCardButton = GoogleCloudDialogflowV2IntentMessageCardButton
+  { -- | Optional. The text to send back to the Dialogflow API or a URI to open.
+    postback :: (Core.Maybe Core.Text),
+    -- | Optional. The text to show on the button.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCardButton' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageCardButton ::
+  GoogleCloudDialogflowV2IntentMessageCardButton
+newGoogleCloudDialogflowV2IntentMessageCardButton =
+  GoogleCloudDialogflowV2IntentMessageCardButton
+    { postback =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageCardButton
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageCardButton"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageCardButton
+            Core.<$> (o Core..:? "postback")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageCardButton where
+  toJSON GoogleCloudDialogflowV2IntentMessageCardButton {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("postback" Core..=) Core.<$> postback,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | The card for presenting a carousel of options to select from.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageCarouselSelect' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageCarouselSelect = GoogleCloudDialogflowV2IntentMessageCarouselSelect
+  { -- | Required. Carousel items.
+    items ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2IntentMessageCarouselSelectItem]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCarouselSelect' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageCarouselSelect ::
+  GoogleCloudDialogflowV2IntentMessageCarouselSelect
+newGoogleCloudDialogflowV2IntentMessageCarouselSelect =
+  GoogleCloudDialogflowV2IntentMessageCarouselSelect
+    { items =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageCarouselSelect
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageCarouselSelect"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageCarouselSelect
+            Core.<$> (o Core..:? "items")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageCarouselSelect
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageCarouselSelect {..} =
+    Core.object (Core.catMaybes [("items" Core..=) Core.<$> items])
+
+-- | An item in the carousel.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageCarouselSelectItem = GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+  { -- | Optional. The body text of the card.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. The image to display.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Required. Additional info about the option item.
+    info :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo),
+    -- | Required. Title of the carousel item.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCarouselSelectItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem ::
+  GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem =
+  GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+    { description =
+        Core.Nothing,
+      image = Core.Nothing,
+      info = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "info")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageCarouselSelectItem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("image" Core..=) Core.<$> image,
+            ("info" Core..=) Core.<$> info,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Column properties for TableCard.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageColumnProperties' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageColumnProperties = GoogleCloudDialogflowV2IntentMessageColumnProperties
+  { -- | Required. Column heading.
+    header :: (Core.Maybe Core.Text),
+    -- | Optional. Defines text alignment for all cells in this column.
+    horizontalAlignment ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageColumnProperties' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageColumnProperties ::
+  GoogleCloudDialogflowV2IntentMessageColumnProperties
+newGoogleCloudDialogflowV2IntentMessageColumnProperties =
+  GoogleCloudDialogflowV2IntentMessageColumnProperties
+    { header =
+        Core.Nothing,
+      horizontalAlignment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageColumnProperties
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageColumnProperties"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageColumnProperties
+            Core.<$> (o Core..:? "header")
+            Core.<*> (o Core..:? "horizontalAlignment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageColumnProperties
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageColumnProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("header" Core..=) Core.<$> header,
+            ("horizontalAlignment" Core..=) Core.<$> horizontalAlignment
+          ]
+      )
+
+-- | The image response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageImage' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageImage = GoogleCloudDialogflowV2IntentMessageImage
+  { -- | Optional. A text description of the image to be used for accessibility, e.g., screen readers.
+    accessibilityText :: (Core.Maybe Core.Text),
+    -- | Optional. The public URI to an image file.
+    imageUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageImage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageImage ::
+  GoogleCloudDialogflowV2IntentMessageImage
+newGoogleCloudDialogflowV2IntentMessageImage =
+  GoogleCloudDialogflowV2IntentMessageImage
+    { accessibilityText =
+        Core.Nothing,
+      imageUri = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentMessageImage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageImage"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageImage
+            Core.<$> (o Core..:? "accessibilityText")
+            Core.<*> (o Core..:? "imageUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageImage where
+  toJSON GoogleCloudDialogflowV2IntentMessageImage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accessibilityText" Core..=) Core.<$> accessibilityText,
+            ("imageUri" Core..=) Core.<$> imageUri
+          ]
+      )
+
+-- | The suggestion chip message that allows the user to jump out to the app or website associated with this agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion = GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+  { -- | Required. The name of the app or site this chip is linking to.
+    destinationName :: (Core.Maybe Core.Text),
+    -- | Required. The URI of the app or site to open when the user taps the suggestion chip.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion ::
+  GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion =
+  GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+    { destinationName =
+        Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+            Core.<$> (o Core..:? "destinationName")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("destinationName" Core..=) Core.<$> destinationName,
+            ("uri" Core..=) Core.<$> uri
+          ]
+      )
+
+-- | The card for presenting a list of options to select from.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageListSelect' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageListSelect = GoogleCloudDialogflowV2IntentMessageListSelect
+  { -- | Required. List items.
+    items :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageListSelectItem]),
+    -- | Optional. Subtitle of the list.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The overall title of the list.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageListSelect' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageListSelect ::
+  GoogleCloudDialogflowV2IntentMessageListSelect
+newGoogleCloudDialogflowV2IntentMessageListSelect =
+  GoogleCloudDialogflowV2IntentMessageListSelect
+    { items =
+        Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageListSelect
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageListSelect"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageListSelect
+            Core.<$> (o Core..:? "items")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageListSelect where
+  toJSON GoogleCloudDialogflowV2IntentMessageListSelect {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("items" Core..=) Core.<$> items,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | An item in the list.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageListSelectItem' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageListSelectItem = GoogleCloudDialogflowV2IntentMessageListSelectItem
+  { -- | Optional. The main text describing the item.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. The image to display.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Required. Additional information about this option.
+    info :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo),
+    -- | Required. The title of the list item.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageListSelectItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageListSelectItem ::
+  GoogleCloudDialogflowV2IntentMessageListSelectItem
+newGoogleCloudDialogflowV2IntentMessageListSelectItem =
+  GoogleCloudDialogflowV2IntentMessageListSelectItem
+    { description =
+        Core.Nothing,
+      image = Core.Nothing,
+      info = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageListSelectItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageListSelectItem"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageListSelectItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "info")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageListSelectItem
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageListSelectItem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("image" Core..=) Core.<$> image,
+            ("info" Core..=) Core.<$> info,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | The media content card for Actions on Google.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageMediaContent' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageMediaContent = GoogleCloudDialogflowV2IntentMessageMediaContent
+  { -- | Required. List of media objects.
+    mediaObjects ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject]
+      ),
+    -- | Optional. What type of media is the content (ie \"audio\").
+    mediaType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageMediaContent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageMediaContent ::
+  GoogleCloudDialogflowV2IntentMessageMediaContent
+newGoogleCloudDialogflowV2IntentMessageMediaContent =
+  GoogleCloudDialogflowV2IntentMessageMediaContent
+    { mediaObjects =
+        Core.Nothing,
+      mediaType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageMediaContent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageMediaContent"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageMediaContent
+            Core.<$> (o Core..:? "mediaObjects")
+            Core.<*> (o Core..:? "mediaType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageMediaContent
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageMediaContent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("mediaObjects" Core..=) Core.<$> mediaObjects,
+            ("mediaType" Core..=) Core.<$> mediaType
+          ]
+      )
+
+-- | Response media object for media content card.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject = GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+  { -- | Required. Url where the media is stored.
+    contentUrl :: (Core.Maybe Core.Text),
+    -- | Optional. Description of media card.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. Icon to display above media content.
+    icon :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Optional. Image to display above media content.
+    largeImage :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Required. Name of media card.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject ::
+  GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject =
+  GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+    { contentUrl =
+        Core.Nothing,
+      description = Core.Nothing,
+      icon = Core.Nothing,
+      largeImage = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+            Core.<$> (o Core..:? "contentUrl")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "icon")
+            Core.<*> (o Core..:? "largeImage")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+  where
+  toJSON
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("contentUrl" Core..=) Core.<$> contentUrl,
+              ("description" Core..=) Core.<$> description,
+              ("icon" Core..=) Core.<$> icon,
+              ("largeImage" Core..=) Core.<$> largeImage,
+              ("name" Core..=) Core.<$> name
+            ]
+        )
+
+-- | The quick replies response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageQuickReplies' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageQuickReplies = GoogleCloudDialogflowV2IntentMessageQuickReplies
+  { -- | Optional. The collection of quick replies.
+    quickReplies :: (Core.Maybe [Core.Text]),
+    -- | Optional. The title of the collection of quick replies.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageQuickReplies' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageQuickReplies ::
+  GoogleCloudDialogflowV2IntentMessageQuickReplies
+newGoogleCloudDialogflowV2IntentMessageQuickReplies =
+  GoogleCloudDialogflowV2IntentMessageQuickReplies
+    { quickReplies =
+        Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageQuickReplies
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageQuickReplies"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageQuickReplies
+            Core.<$> (o Core..:? "quickReplies")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageQuickReplies
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageQuickReplies {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("quickReplies" Core..=) Core.<$> quickReplies,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Additional info about the select item for when it is triggered in a dialog.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageSelectItemInfo' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageSelectItemInfo = GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+  { -- | Required. A unique key that will be sent back to the agent if this response is given.
+    key :: (Core.Maybe Core.Text),
+    -- | Optional. A list of synonyms that can also be used to trigger this item in dialog.
+    synonyms :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSelectItemInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageSelectItemInfo ::
+  GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+newGoogleCloudDialogflowV2IntentMessageSelectItemInfo =
+  GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+    { key =
+        Core.Nothing,
+      synonyms = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageSelectItemInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+            Core.<$> (o Core..:? "key")
+            Core.<*> (o Core..:? "synonyms")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageSelectItemInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("key" Core..=) Core.<$> key,
+            ("synonyms" Core..=) Core.<$> synonyms
+          ]
+      )
+
+-- | The simple response message containing speech or text.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageSimpleResponse' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageSimpleResponse = GoogleCloudDialogflowV2IntentMessageSimpleResponse
+  { -- | Optional. The text to display.
+    displayText :: (Core.Maybe Core.Text),
+    -- | One of text/to/speech or ssml must be provided. Structured spoken response to the user in the SSML format. Mutually exclusive with text/to/speech.
+    ssml :: (Core.Maybe Core.Text),
+    -- | One of text/to/speech or ssml must be provided. The plain text of the speech output. Mutually exclusive with ssml.
+    textToSpeech :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSimpleResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageSimpleResponse ::
+  GoogleCloudDialogflowV2IntentMessageSimpleResponse
+newGoogleCloudDialogflowV2IntentMessageSimpleResponse =
+  GoogleCloudDialogflowV2IntentMessageSimpleResponse
+    { displayText =
+        Core.Nothing,
+      ssml = Core.Nothing,
+      textToSpeech = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageSimpleResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageSimpleResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageSimpleResponse
+            Core.<$> (o Core..:? "displayText")
+            Core.<*> (o Core..:? "ssml")
+            Core.<*> (o Core..:? "textToSpeech")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageSimpleResponse
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageSimpleResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayText" Core..=) Core.<$> displayText,
+            ("ssml" Core..=) Core.<$> ssml,
+            ("textToSpeech" Core..=) Core.<$> textToSpeech
+          ]
+      )
+
+-- | The collection of simple response candidates. This message in @QueryResult.fulfillment_messages@ and @WebhookResponse.fulfillment_messages@ should contain only one @SimpleResponse@.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageSimpleResponses' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageSimpleResponses = GoogleCloudDialogflowV2IntentMessageSimpleResponses
+  { -- | Required. The list of simple responses.
+    simpleResponses :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageSimpleResponse])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSimpleResponses' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageSimpleResponses ::
+  GoogleCloudDialogflowV2IntentMessageSimpleResponses
+newGoogleCloudDialogflowV2IntentMessageSimpleResponses =
+  GoogleCloudDialogflowV2IntentMessageSimpleResponses
+    { simpleResponses =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageSimpleResponses
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageSimpleResponses"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageSimpleResponses
+            Core.<$> (o Core..:? "simpleResponses")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageSimpleResponses
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageSimpleResponses {..} =
+    Core.object
+      ( Core.catMaybes
+          [("simpleResponses" Core..=) Core.<$> simpleResponses]
+      )
+
+-- | The suggestion chip message that the user can tap to quickly post a reply to the conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageSuggestion' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageSuggestion = GoogleCloudDialogflowV2IntentMessageSuggestion
+  { -- | Required. The text shown the in the suggestion chip.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageSuggestion ::
+  GoogleCloudDialogflowV2IntentMessageSuggestion
+newGoogleCloudDialogflowV2IntentMessageSuggestion =
+  GoogleCloudDialogflowV2IntentMessageSuggestion
+    { title =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageSuggestion
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageSuggestion
+            Core.<$> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageSuggestion where
+  toJSON GoogleCloudDialogflowV2IntentMessageSuggestion {..} =
+    Core.object (Core.catMaybes [("title" Core..=) Core.<$> title])
+
+-- | The collection of suggestions.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageSuggestions' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageSuggestions = GoogleCloudDialogflowV2IntentMessageSuggestions
+  { -- | Required. The list of suggested replies.
+    suggestions :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageSuggestion])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSuggestions' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageSuggestions ::
+  GoogleCloudDialogflowV2IntentMessageSuggestions
+newGoogleCloudDialogflowV2IntentMessageSuggestions =
+  GoogleCloudDialogflowV2IntentMessageSuggestions
+    { suggestions =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageSuggestions
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageSuggestions"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageSuggestions
+            Core.<$> (o Core..:? "suggestions")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageSuggestions
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageSuggestions {..} =
+    Core.object
+      (Core.catMaybes [("suggestions" Core..=) Core.<$> suggestions])
+
+-- | Table card for Actions on Google.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageTableCard' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageTableCard = GoogleCloudDialogflowV2IntentMessageTableCard
+  { -- | Optional. List of buttons for the card.
+    buttons :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageBasicCardButton]),
+    -- | Optional. Display properties for the columns in this table.
+    columnProperties :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageColumnProperties]),
+    -- | Optional. Image which should be displayed on the card.
+    image :: (Core.Maybe GoogleCloudDialogflowV2IntentMessageImage),
+    -- | Optional. Rows in this table of data.
+    rows :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageTableCardRow]),
+    -- | Optional. Subtitle to the title.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Required. Title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageTableCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageTableCard ::
+  GoogleCloudDialogflowV2IntentMessageTableCard
+newGoogleCloudDialogflowV2IntentMessageTableCard =
+  GoogleCloudDialogflowV2IntentMessageTableCard
+    { buttons =
+        Core.Nothing,
+      columnProperties = Core.Nothing,
+      image = Core.Nothing,
+      rows = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageTableCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageTableCard"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageTableCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "columnProperties")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "rows")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageTableCard where
+  toJSON GoogleCloudDialogflowV2IntentMessageTableCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("columnProperties" Core..=) Core.<$> columnProperties,
+            ("image" Core..=) Core.<$> image,
+            ("rows" Core..=) Core.<$> rows,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Cell of TableCardRow.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageTableCardCell' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageTableCardCell = GoogleCloudDialogflowV2IntentMessageTableCardCell
+  { -- | Required. Text in this cell.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageTableCardCell' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageTableCardCell ::
+  GoogleCloudDialogflowV2IntentMessageTableCardCell
+newGoogleCloudDialogflowV2IntentMessageTableCardCell =
+  GoogleCloudDialogflowV2IntentMessageTableCardCell
+    { text =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageTableCardCell
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageTableCardCell"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageTableCardCell
+            Core.<$> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageTableCardCell
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageTableCardCell {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Row of TableCard.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageTableCardRow' smart constructor.
+data GoogleCloudDialogflowV2IntentMessageTableCardRow = GoogleCloudDialogflowV2IntentMessageTableCardRow
+  { -- | Optional. List of cells that make up this row.
+    cells :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessageTableCardCell]),
+    -- | Optional. Whether to add a visual divider after this row.
+    dividerAfter :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageTableCardRow' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageTableCardRow ::
+  GoogleCloudDialogflowV2IntentMessageTableCardRow
+newGoogleCloudDialogflowV2IntentMessageTableCardRow =
+  GoogleCloudDialogflowV2IntentMessageTableCardRow
+    { cells =
+        Core.Nothing,
+      dividerAfter = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentMessageTableCardRow
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageTableCardRow"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageTableCardRow
+            Core.<$> (o Core..:? "cells")
+            Core.<*> (o Core..:? "dividerAfter")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentMessageTableCardRow
+  where
+  toJSON GoogleCloudDialogflowV2IntentMessageTableCardRow {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("cells" Core..=) Core.<$> cells,
+            ("dividerAfter" Core..=) Core.<$> dividerAfter
+          ]
+      )
+
+-- | The text response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentMessageText' smart constructor.
+newtype GoogleCloudDialogflowV2IntentMessageText = GoogleCloudDialogflowV2IntentMessageText
+  { -- | Optional. The collection of the agent\'s responses.
+    text :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentMessageText ::
+  GoogleCloudDialogflowV2IntentMessageText
+newGoogleCloudDialogflowV2IntentMessageText =
+  GoogleCloudDialogflowV2IntentMessageText {text = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentMessageText where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentMessageText"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentMessageText
+            Core.<$> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentMessageText where
+  toJSON GoogleCloudDialogflowV2IntentMessageText {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Represents intent parameters.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentParameter' smart constructor.
+data GoogleCloudDialogflowV2IntentParameter = GoogleCloudDialogflowV2IntentParameter
+  { -- | Optional. The default value to use when the @value@ yields an empty result. Default values can be extracted from contexts by using the following syntax: @#context_name.parameter_name@.
+    defaultValue :: (Core.Maybe Core.Text),
+    -- | Required. The name of the parameter.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. The name of the entity type, prefixed with @\@@, that describes values of the parameter. If the parameter is required, this must be provided.
+    entityTypeDisplayName :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates whether the parameter is required. That is, whether the intent cannot be completed without collecting the parameter value.
+    mandatory :: (Core.Maybe Core.Bool),
+    -- | The unique identifier of this parameter.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of prompts that the agent can present to the user in order to collect a value for the parameter.
+    prompts :: (Core.Maybe [Core.Text]),
+    -- | Optional. The definition of the parameter value. It can be: - a constant string, - a parameter value defined as @$parameter_name@, - an original parameter value defined as @$parameter_name.original@, - a parameter value from some context defined as @#context_name.parameter_name@.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentParameter ::
+  GoogleCloudDialogflowV2IntentParameter
+newGoogleCloudDialogflowV2IntentParameter =
+  GoogleCloudDialogflowV2IntentParameter
+    { defaultValue =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      entityTypeDisplayName = Core.Nothing,
+      isList = Core.Nothing,
+      mandatory = Core.Nothing,
+      name = Core.Nothing,
+      prompts = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentParameter where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentParameter"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentParameter
+            Core.<$> (o Core..:? "defaultValue")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entityTypeDisplayName")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "mandatory")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "prompts")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentParameter where
+  toJSON GoogleCloudDialogflowV2IntentParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("defaultValue" Core..=) Core.<$> defaultValue,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entityTypeDisplayName" Core..=) Core.<$> entityTypeDisplayName,
+            ("isList" Core..=) Core.<$> isList,
+            ("mandatory" Core..=) Core.<$> mandatory,
+            ("name" Core..=) Core.<$> name,
+            ("prompts" Core..=) Core.<$> prompts,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Represents an example that the agent is trained on.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentTrainingPhrase' smart constructor.
+data GoogleCloudDialogflowV2IntentTrainingPhrase = GoogleCloudDialogflowV2IntentTrainingPhrase
+  { -- | Output only. The unique identifier of this training phrase.
+    name :: (Core.Maybe Core.Text),
+    -- | Required. The ordered list of training phrase parts. The parts are concatenated in order to form the training phrase. Note: The API does not automatically annotate training phrases like the Dialogflow Console does. Note: Do not forget to include whitespace at part boundaries, so the training phrase is well formatted when the parts are concatenated. If the training phrase does not need to be annotated with parameters, you just need a single part with only the Part.text field set. If you want to annotate the training phrase, you must create multiple parts, where the fields of each part are populated in one of two ways: - @Part.text@ is set to a part of the phrase that has no parameters. - @Part.text@ is set to a part of the phrase that you want to annotate, and the @entity_type@, @alias@, and @user_defined@ fields are all set.
+    parts :: (Core.Maybe [GoogleCloudDialogflowV2IntentTrainingPhrasePart]),
+    -- | Optional. Indicates how many times this example was added to the intent. Each time a developer adds an existing sample by editing an intent or training, this counter is increased.
+    timesAddedCount :: (Core.Maybe Core.Int32),
+    -- | Required. The type of the training phrase.
+    type' :: (Core.Maybe GoogleCloudDialogflowV2IntentTrainingPhrase_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentTrainingPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentTrainingPhrase ::
+  GoogleCloudDialogflowV2IntentTrainingPhrase
+newGoogleCloudDialogflowV2IntentTrainingPhrase =
+  GoogleCloudDialogflowV2IntentTrainingPhrase
+    { name = Core.Nothing,
+      parts = Core.Nothing,
+      timesAddedCount = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2IntentTrainingPhrase where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentTrainingPhrase"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentTrainingPhrase
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "parts")
+            Core.<*> (o Core..:? "timesAddedCount")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2IntentTrainingPhrase where
+  toJSON GoogleCloudDialogflowV2IntentTrainingPhrase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("parts" Core..=) Core.<$> parts,
+            ("timesAddedCount" Core..=) Core.<$> timesAddedCount,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents a part of a training phrase.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2IntentTrainingPhrasePart' smart constructor.
+data GoogleCloudDialogflowV2IntentTrainingPhrasePart = GoogleCloudDialogflowV2IntentTrainingPhrasePart
+  { -- | Optional. The parameter name for the value extracted from the annotated part of the example. This field is required for annotated parts of the training phrase.
+    alias :: (Core.Maybe Core.Text),
+    -- | Optional. The entity type name prefixed with @\@@. This field is required for annotated parts of the training phrase.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. The text for this part.
+    text :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates whether the text was manually annotated. This field is set to true when the Dialogflow Console is used to manually annotate the part. When creating an annotated part with the API, you must set this to true.
+    userDefined :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2IntentTrainingPhrasePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2IntentTrainingPhrasePart ::
+  GoogleCloudDialogflowV2IntentTrainingPhrasePart
+newGoogleCloudDialogflowV2IntentTrainingPhrasePart =
+  GoogleCloudDialogflowV2IntentTrainingPhrasePart
+    { alias =
+        Core.Nothing,
+      entityType = Core.Nothing,
+      text = Core.Nothing,
+      userDefined = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2IntentTrainingPhrasePart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2IntentTrainingPhrasePart"
+      ( \o ->
+          GoogleCloudDialogflowV2IntentTrainingPhrasePart
+            Core.<$> (o Core..:? "alias")
+            Core.<*> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "userDefined")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2IntentTrainingPhrasePart
+  where
+  toJSON GoogleCloudDialogflowV2IntentTrainingPhrasePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("alias" Core..=) Core.<$> alias,
+            ("entityType" Core..=) Core.<$> entityType,
+            ("text" Core..=) Core.<$> text,
+            ("userDefined" Core..=) Core.<$> userDefined
+          ]
+      )
+
+-- | Represents a Knowledge Assist answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswer' smart constructor.
+data GoogleCloudDialogflowV2KnowledgeAssistAnswer = GoogleCloudDialogflowV2KnowledgeAssistAnswer
+  { -- | The name of the answer record. Format: @projects\/\/locations\/\/answer Records\/@.
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | The query suggested based on the context. Suggestion is made only if it is different from the previous suggestion.
+    suggestedQuery ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+      ),
+    -- | The answer generated for the suggested query. Whether or not an answer is generated depends on how confident we are about the generated query.
+    suggestedQueryAnswer ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswer ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswer
+newGoogleCloudDialogflowV2KnowledgeAssistAnswer =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswer
+    { answerRecord =
+        Core.Nothing,
+      suggestedQuery = Core.Nothing,
+      suggestedQueryAnswer = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2KnowledgeAssistAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "suggestedQuery")
+            Core.<*> (o Core..:? "suggestedQueryAnswer")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2KnowledgeAssistAnswer where
+  toJSON GoogleCloudDialogflowV2KnowledgeAssistAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("suggestedQuery" Core..=) Core.<$> suggestedQuery,
+            ("suggestedQueryAnswer" Core..=) Core.<$> suggestedQueryAnswer
+          ]
+      )
+
+-- | Represents an answer from Knowledge. Currently supports FAQ and Generative answers.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer' smart constructor.
+data GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer = GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+  { -- | The piece of text from the @source@ that answers this suggested query.
+    answerText :: (Core.Maybe Core.Text),
+    -- | Populated if the prediction came from FAQ.
+    faqSource ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+      ),
+    -- | Populated if the prediction was Generative.
+    generativeSource ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+    { answerText =
+        Core.Nothing,
+      faqSource = Core.Nothing,
+      generativeSource = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+            Core.<$> (o Core..:? "answerText")
+            Core.<*> (o Core..:? "faqSource")
+            Core.<*> (o Core..:? "generativeSource")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("answerText" Core..=) Core.<$> answerText,
+              ("faqSource" Core..=) Core.<$> faqSource,
+              ("generativeSource" Core..=) Core.<$> generativeSource
+            ]
+        )
+
+-- | Details about source of FAQ answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource' smart constructor.
+newtype GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource = GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  { -- | The corresponding FAQ question.
+    question :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    { question =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+            Core.<$> (o Core..:? "question")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource {..} =
+      Core.object
+        (Core.catMaybes [("question" Core..=) Core.<$> question])
+
+-- | Details about source of Generative answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource' smart constructor.
+newtype GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource = GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  { -- | All snippets used for this Generative Prediction, with their source URI and data.
+    snippets ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    { snippets =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+            Core.<$> (o Core..:? "snippets")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource {..} =
+      Core.object
+        (Core.catMaybes [("snippets" Core..=) Core.<$> snippets])
+
+-- | Snippet Source for a Generative Prediction.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet' smart constructor.
+data GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet = GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  { -- | Metadata of the document.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+      ),
+    -- | Text taken from that URI.
+    text :: (Core.Maybe Core.Text),
+    -- | Title of the document.
+    title :: (Core.Maybe Core.Text),
+    -- | URI the data is sourced from.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    { metadata =
+        Core.Nothing,
+      text =
+        Core.Nothing,
+      title =
+        Core.Nothing,
+      uri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+            Core.<$> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "title")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("metadata" Core..=) Core.<$> metadata,
+              ("text" Core..=) Core.<$> text,
+              ("title" Core..=) Core.<$> title,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | Metadata of the document.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata = GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  additional =
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata {..} =
+      Core.toJSON additional
+
+-- | Represents a suggested query.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery' smart constructor.
+newtype GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery = GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+  { -- | Suggested query text.
+    queryText :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery ::
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery =
+  GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+    { queryText =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+            Core.<$> (o Core..:? "queryText")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+  where
+  toJSON
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery {..} =
+      Core.object
+        (Core.catMaybes [("queryText" Core..=) Core.<$> queryText])
+
+-- | Metadata in google::longrunning::Operation for Knowledge operations.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2KnowledgeOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2KnowledgeOperationMetadata = GoogleCloudDialogflowV2KnowledgeOperationMetadata
+  { -- | Metadata for the Export Data Operation such as the destination of export.
+    exportOperationMetadata :: (Core.Maybe GoogleCloudDialogflowV2ExportOperationMetadata),
+    -- | The name of the knowledge base interacted with during the operation.
+    knowledgeBase :: (Core.Maybe Core.Text),
+    -- | Output only. The current state of this operation.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2KnowledgeOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2KnowledgeOperationMetadata ::
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata
+newGoogleCloudDialogflowV2KnowledgeOperationMetadata =
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata
+    { exportOperationMetadata =
+        Core.Nothing,
+      knowledgeBase = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2KnowledgeOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2KnowledgeOperationMetadata
+            Core.<$> (o Core..:? "exportOperationMetadata")
+            Core.<*> (o Core..:? "knowledgeBase")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata
+  where
+  toJSON GoogleCloudDialogflowV2KnowledgeOperationMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("exportOperationMetadata" Core..=)
+              Core.<$> exportOperationMetadata,
+            ("knowledgeBase" Core..=) Core.<$> knowledgeBase,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Represents a message posted into a conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2Message' smart constructor.
+data GoogleCloudDialogflowV2Message = GoogleCloudDialogflowV2Message
+  { -- | Required. The message content.
+    content :: (Core.Maybe Core.Text),
+    -- | Output only. The time when the message was created in Contact Center AI.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Optional. The message language. This should be a <https://www.rfc-editor.org/rfc/bcp/bcp47.txt BCP-47> language tag. Example: \"en-US\".
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Output only. The annotation for the message.
+    messageAnnotation :: (Core.Maybe GoogleCloudDialogflowV2MessageAnnotation),
+    -- | Optional. The unique identifier of the message. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Output only. The participant that sends this message.
+    participant :: (Core.Maybe Core.Text),
+    -- | Output only. The role of the participant.
+    participantRole :: (Core.Maybe GoogleCloudDialogflowV2Message_ParticipantRole),
+    -- | Optional. The time when the message was sent. For voice messages, this is the time when an utterance started.
+    sendTime :: (Core.Maybe Core.DateTime),
+    -- | Output only. The sentiment analysis result for the message.
+    sentimentAnalysis :: (Core.Maybe GoogleCloudDialogflowV2SentimentAnalysisResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2Message' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2Message ::
+  GoogleCloudDialogflowV2Message
+newGoogleCloudDialogflowV2Message =
+  GoogleCloudDialogflowV2Message
+    { content = Core.Nothing,
+      createTime = Core.Nothing,
+      languageCode = Core.Nothing,
+      messageAnnotation = Core.Nothing,
+      name = Core.Nothing,
+      participant = Core.Nothing,
+      participantRole = Core.Nothing,
+      sendTime = Core.Nothing,
+      sentimentAnalysis = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2Message where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2Message"
+      ( \o ->
+          GoogleCloudDialogflowV2Message
+            Core.<$> (o Core..:? "content")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "messageAnnotation")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "participant")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "sendTime")
+            Core.<*> (o Core..:? "sentimentAnalysis")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2Message where
+  toJSON GoogleCloudDialogflowV2Message {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("content" Core..=) Core.<$> content,
+            ("createTime" Core..=) Core.<$> createTime,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("messageAnnotation" Core..=) Core.<$> messageAnnotation,
+            ("name" Core..=) Core.<$> name,
+            ("participant" Core..=) Core.<$> participant,
+            ("participantRole" Core..=) Core.<$> participantRole,
+            ("sendTime" Core..=) Core.<$> sendTime,
+            ("sentimentAnalysis" Core..=) Core.<$> sentimentAnalysis
+          ]
+      )
+
+-- | Represents the result of annotation for the message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2MessageAnnotation' smart constructor.
+data GoogleCloudDialogflowV2MessageAnnotation = GoogleCloudDialogflowV2MessageAnnotation
+  { -- | Indicates whether the text message contains entities.
+    containEntities :: (Core.Maybe Core.Bool),
+    -- | The collection of annotated message parts ordered by their position in the message. You can recover the annotated message by concatenating [AnnotatedMessagePart.text].
+    parts :: (Core.Maybe [GoogleCloudDialogflowV2AnnotatedMessagePart])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2MessageAnnotation' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2MessageAnnotation ::
+  GoogleCloudDialogflowV2MessageAnnotation
+newGoogleCloudDialogflowV2MessageAnnotation =
+  GoogleCloudDialogflowV2MessageAnnotation
+    { containEntities =
+        Core.Nothing,
+      parts = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2MessageAnnotation where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2MessageAnnotation"
+      ( \o ->
+          GoogleCloudDialogflowV2MessageAnnotation
+            Core.<$> (o Core..:? "containEntities")
+            Core.<*> (o Core..:? "parts")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2MessageAnnotation where
+  toJSON GoogleCloudDialogflowV2MessageAnnotation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("containEntities" Core..=) Core.<$> containEntities,
+            ("parts" Core..=) Core.<$> parts
+          ]
+      )
+
+-- | Represents the contents of the original request that was passed to the @[Streaming]DetectIntent@ call.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2OriginalDetectIntentRequest' smart constructor.
+data GoogleCloudDialogflowV2OriginalDetectIntentRequest = GoogleCloudDialogflowV2OriginalDetectIntentRequest
+  { -- | Optional. This field is set to the value of the @QueryParameters.payload@ field passed in the request. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { \"telephony\": { \"caller_id\": \"+18558363987\" } } Note: The caller ID field (@caller_id@) will be redacted for Trial Edition agents and populated with the caller ID in <https://en.wikipedia.org/wiki/E.164 E.164 format> for Essentials Edition agents.
+    payload ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+      ),
+    -- | The source of this request, e.g., @google@, @facebook@, @slack@. It is set by Dialogflow-owned servers.
+    source :: (Core.Maybe Core.Text),
+    -- | Optional. The version of the protocol used for this request. This field is AoG-specific.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2OriginalDetectIntentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2OriginalDetectIntentRequest ::
+  GoogleCloudDialogflowV2OriginalDetectIntentRequest
+newGoogleCloudDialogflowV2OriginalDetectIntentRequest =
+  GoogleCloudDialogflowV2OriginalDetectIntentRequest
+    { payload =
+        Core.Nothing,
+      source = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2OriginalDetectIntentRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2OriginalDetectIntentRequest
+            Core.<$> (o Core..:? "payload")
+            Core.<*> (o Core..:? "source")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest
+  where
+  toJSON GoogleCloudDialogflowV2OriginalDetectIntentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("payload" Core..=) Core.<$> payload,
+            ("source" Core..=) Core.<$> source,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | Optional. This field is set to the value of the @QueryParameters.payload@ field passed in the request. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { \"telephony\": { \"caller_id\": \"+18558363987\" } } Note: The caller ID field (@caller_id@) will be redacted for Trial Edition agents and populated with the caller ID in <https://en.wikipedia.org/wiki/E.164 E.164 format> for Essentials Edition agents.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload = GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+  additional =
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+  where
+  toJSON
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload {..} =
+      Core.toJSON additional
+
+-- | Represents the result of conversational query or event processing.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2QueryResult' smart constructor.
+data GoogleCloudDialogflowV2QueryResult = GoogleCloudDialogflowV2QueryResult
+  { -- | The action name from the matched intent.
+    action :: (Core.Maybe Core.Text),
+    -- | This field is set to: - @false@ if the matched intent has required parameters and not all of the required parameter values have been collected. - @true@ if all required parameter values have been collected, or if the matched intent doesn\'t contain any required parameters.
+    allRequiredParamsPresent :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the conversational query triggers a cancellation for slot filling. For more information, see the <https://cloud.google.com/dialogflow/es/docs/intents-actions-parameters#cancel cancel slot filling documentation>.
+    cancelsSlotFilling :: (Core.Maybe Core.Bool),
+    -- | Free-form diagnostic information for the associated detect intent request. The fields of this data can change without notice, so you should not write code that depends on its structure. The data may contain: - webhook call latency - webhook errors
+    diagnosticInfo :: (Core.Maybe GoogleCloudDialogflowV2QueryResult_DiagnosticInfo),
+    -- | The collection of rich messages to present to the user.
+    fulfillmentMessages :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessage]),
+    -- | The text to be pronounced to the user or shown on the screen. Note: This is a legacy field, @fulfillment_messages@ should be preferred.
+    fulfillmentText :: (Core.Maybe Core.Text),
+    -- | The intent that matched the conversational query. Some, not all fields are filled in this message, including but not limited to: @name@, @display_name@, @end_interaction@ and @is_fallback@.
+    intent :: (Core.Maybe GoogleCloudDialogflowV2Intent),
+    -- | The intent detection confidence. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation. If there are @multiple knowledge_answers@ messages, this value is set to the greatest @knowledgeAnswers.match_confidence@ value in the list.
+    intentDetectionConfidence :: (Core.Maybe Core.Double),
+    -- | The language that was triggered during intent detection. See <https://cloud.google.com/dialogflow/docs/reference/language Language Support> for a list of the currently supported language codes.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The collection of output contexts. If applicable, @output_contexts.parameters@ contains entries with name @.original@ containing the original parameter values before the query.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2Context]),
+    -- | The collection of extracted parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2QueryResult_Parameters),
+    -- | The original conversational query text: - If natural language text was provided as input, @query_text@ contains a copy of the input. - If natural language speech audio was provided as input, @query_text@ contains the speech recognition result. If speech recognizer produced multiple alternatives, a particular one is picked. - If automatic spell correction is enabled, @query_text@ will contain the corrected user input.
+    queryText :: (Core.Maybe Core.Text),
+    -- | The sentiment analysis result, which depends on the @sentiment_analysis_request_config@ specified in the request.
+    sentimentAnalysisResult :: (Core.Maybe GoogleCloudDialogflowV2SentimentAnalysisResult),
+    -- | The Speech recognition confidence between 0.0 and 1.0. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is not guaranteed to be accurate or set. In particular this field isn\'t set for StreamingDetectIntent since the streaming endpoint has separate confidence estimates per portion of the audio in StreamingRecognitionResult.
+    speechRecognitionConfidence :: (Core.Maybe Core.Double),
+    -- | If the query was fulfilled by a webhook call, this field is set to the value of the @payload@ field returned in the webhook response.
+    webhookPayload :: (Core.Maybe GoogleCloudDialogflowV2QueryResult_WebhookPayload),
+    -- | If the query was fulfilled by a webhook call, this field is set to the value of the @source@ field returned in the webhook response.
+    webhookSource :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2QueryResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2QueryResult ::
+  GoogleCloudDialogflowV2QueryResult
+newGoogleCloudDialogflowV2QueryResult =
+  GoogleCloudDialogflowV2QueryResult
+    { action = Core.Nothing,
+      allRequiredParamsPresent = Core.Nothing,
+      cancelsSlotFilling = Core.Nothing,
+      diagnosticInfo = Core.Nothing,
+      fulfillmentMessages = Core.Nothing,
+      fulfillmentText = Core.Nothing,
+      intent = Core.Nothing,
+      intentDetectionConfidence = Core.Nothing,
+      languageCode = Core.Nothing,
+      outputContexts = Core.Nothing,
+      parameters = Core.Nothing,
+      queryText = Core.Nothing,
+      sentimentAnalysisResult = Core.Nothing,
+      speechRecognitionConfidence = Core.Nothing,
+      webhookPayload = Core.Nothing,
+      webhookSource = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2QueryResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2QueryResult"
+      ( \o ->
+          GoogleCloudDialogflowV2QueryResult
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "allRequiredParamsPresent")
+            Core.<*> (o Core..:? "cancelsSlotFilling")
+            Core.<*> (o Core..:? "diagnosticInfo")
+            Core.<*> (o Core..:? "fulfillmentMessages")
+            Core.<*> (o Core..:? "fulfillmentText")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "intentDetectionConfidence")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "queryText")
+            Core.<*> (o Core..:? "sentimentAnalysisResult")
+            Core.<*> (o Core..:? "speechRecognitionConfidence")
+            Core.<*> (o Core..:? "webhookPayload")
+            Core.<*> (o Core..:? "webhookSource")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2QueryResult where
+  toJSON GoogleCloudDialogflowV2QueryResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("allRequiredParamsPresent" Core..=)
+              Core.<$> allRequiredParamsPresent,
+            ("cancelsSlotFilling" Core..=) Core.<$> cancelsSlotFilling,
+            ("diagnosticInfo" Core..=) Core.<$> diagnosticInfo,
+            ("fulfillmentMessages" Core..=) Core.<$> fulfillmentMessages,
+            ("fulfillmentText" Core..=) Core.<$> fulfillmentText,
+            ("intent" Core..=) Core.<$> intent,
+            ("intentDetectionConfidence" Core..=)
+              Core.<$> intentDetectionConfidence,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("queryText" Core..=) Core.<$> queryText,
+            ("sentimentAnalysisResult" Core..=)
+              Core.<$> sentimentAnalysisResult,
+            ("speechRecognitionConfidence" Core..=)
+              Core.<$> speechRecognitionConfidence,
+            ("webhookPayload" Core..=) Core.<$> webhookPayload,
+            ("webhookSource" Core..=) Core.<$> webhookSource
+          ]
+      )
+
+-- | Free-form diagnostic information for the associated detect intent request. The fields of this data can change without notice, so you should not write code that depends on its structure. The data may contain: - webhook call latency - webhook errors
+--
+-- /See:/ 'newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo' smart constructor.
+newtype GoogleCloudDialogflowV2QueryResult_DiagnosticInfo = GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2QueryResult_DiagnosticInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo additional =
+  GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2QueryResult_DiagnosticInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+  where
+  toJSON GoogleCloudDialogflowV2QueryResult_DiagnosticInfo {..} =
+    Core.toJSON additional
+
+-- | The collection of extracted parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2QueryResult_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2QueryResult_Parameters = GoogleCloudDialogflowV2QueryResult_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2QueryResult_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2QueryResult_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2QueryResult_Parameters
+newGoogleCloudDialogflowV2QueryResult_Parameters additional =
+  GoogleCloudDialogflowV2QueryResult_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2QueryResult_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2QueryResult_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2QueryResult_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2QueryResult_Parameters where
+  toJSON GoogleCloudDialogflowV2QueryResult_Parameters {..} =
+    Core.toJSON additional
+
+-- | If the query was fulfilled by a webhook call, this field is set to the value of the @payload@ field returned in the webhook response.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2QueryResult_WebhookPayload' smart constructor.
+newtype GoogleCloudDialogflowV2QueryResult_WebhookPayload = GoogleCloudDialogflowV2QueryResult_WebhookPayload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2QueryResult_WebhookPayload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2QueryResult_WebhookPayload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2QueryResult_WebhookPayload
+newGoogleCloudDialogflowV2QueryResult_WebhookPayload additional =
+  GoogleCloudDialogflowV2QueryResult_WebhookPayload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2QueryResult_WebhookPayload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2QueryResult_WebhookPayload"
+      ( \o ->
+          GoogleCloudDialogflowV2QueryResult_WebhookPayload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2QueryResult_WebhookPayload
+  where
+  toJSON GoogleCloudDialogflowV2QueryResult_WebhookPayload {..} =
+    Core.toJSON additional
+
+-- | The sentiment, such as positive\/negative feeling or association, for a unit of analysis, such as the query text. See: https:\/\/cloud.google.com\/natural-language\/docs\/basics#interpreting/sentiment/analysis_values for how to interpret the result.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2Sentiment' smart constructor.
+data GoogleCloudDialogflowV2Sentiment = GoogleCloudDialogflowV2Sentiment
+  { -- | A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).
+    magnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).
+    score :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2Sentiment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2Sentiment ::
+  GoogleCloudDialogflowV2Sentiment
+newGoogleCloudDialogflowV2Sentiment =
+  GoogleCloudDialogflowV2Sentiment
+    { magnitude = Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2Sentiment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2Sentiment"
+      ( \o ->
+          GoogleCloudDialogflowV2Sentiment
+            Core.<$> (o Core..:? "magnitude")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2Sentiment where
+  toJSON GoogleCloudDialogflowV2Sentiment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("magnitude" Core..=) Core.<$> magnitude,
+            ("score" Core..=) Core.<$> score
+          ]
+      )
+
+-- | The result of sentiment analysis. Sentiment analysis inspects user input and identifies the prevailing subjective opinion, especially to determine a user\'s attitude as positive, negative, or neutral. For DetectIntent, it needs to be configured in DetectIntentRequest.query/params. For StreamingDetectIntent, it needs to be configured in StreamingDetectIntentRequest.query/params. And for Participants.AnalyzeContent and Participants.StreamingAnalyzeContent, it needs to be configured in ConversationProfile.human/agent/assistant_config
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SentimentAnalysisResult' smart constructor.
+newtype GoogleCloudDialogflowV2SentimentAnalysisResult = GoogleCloudDialogflowV2SentimentAnalysisResult
+  { -- | The sentiment analysis result for @query_text@.
+    queryTextSentiment :: (Core.Maybe GoogleCloudDialogflowV2Sentiment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SentimentAnalysisResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SentimentAnalysisResult ::
+  GoogleCloudDialogflowV2SentimentAnalysisResult
+newGoogleCloudDialogflowV2SentimentAnalysisResult =
+  GoogleCloudDialogflowV2SentimentAnalysisResult
+    { queryTextSentiment =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SentimentAnalysisResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SentimentAnalysisResult"
+      ( \o ->
+          GoogleCloudDialogflowV2SentimentAnalysisResult
+            Core.<$> (o Core..:? "queryTextSentiment")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SentimentAnalysisResult where
+  toJSON GoogleCloudDialogflowV2SentimentAnalysisResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [("queryTextSentiment" Core..=) Core.<$> queryTextSentiment]
+      )
+
+-- | A session represents a conversation between a Dialogflow agent and an end-user. You can create special entities, called session entities, during a session. Session entities can extend or replace custom entity types and only exist during the session that they were created for. All session data, including session entities, is stored by Dialogflow for 20 minutes. For more information, see the <https://cloud.google.com/dialogflow/docs/entities-session session entity guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SessionEntityType' smart constructor.
+data GoogleCloudDialogflowV2SessionEntityType = GoogleCloudDialogflowV2SessionEntityType
+  { -- | Required. The collection of entities associated with this session entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowV2EntityTypeEntity]),
+    -- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+    entityOverrideMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+      ),
+    -- | Required. The unique identifier of this session entity type. Format: @projects\/\/agent\/sessions\/\/entityTypes\/@, or @projects\/\/agent\/environments\/\/users\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. If @User ID@ is not specified, we assume default \'-\' user. \`\` must be the display name of an existing entity type in the same agent that will be overridden or supplemented.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SessionEntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SessionEntityType ::
+  GoogleCloudDialogflowV2SessionEntityType
+newGoogleCloudDialogflowV2SessionEntityType =
+  GoogleCloudDialogflowV2SessionEntityType
+    { entities = Core.Nothing,
+      entityOverrideMode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2SessionEntityType where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SessionEntityType"
+      ( \o ->
+          GoogleCloudDialogflowV2SessionEntityType
+            Core.<$> (o Core..:? "entities")
+            Core.<*> (o Core..:? "entityOverrideMode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SessionEntityType where
+  toJSON GoogleCloudDialogflowV2SessionEntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entities" Core..=) Core.<$> entities,
+            ("entityOverrideMode" Core..=) Core.<$> entityOverrideMode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Metadata for a ConversationProfiles.SetSuggestionFeatureConfig operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+  { -- | The resource name of the conversation profile. Format: @projects\/\/locations\/\/conversationProfiles\/@
+    conversationProfile :: (Core.Maybe Core.Text),
+    -- | Timestamp whe the request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The participant role to add or update the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+    participantRole ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ),
+    -- | Required. The type of the suggestion feature to add or update.
+    suggestionFeatureType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata ::
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata =
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+    { conversationProfile =
+        Core.Nothing,
+      createTime = Core.Nothing,
+      participantRole =
+        Core.Nothing,
+      suggestionFeatureType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+            Core.<$> (o Core..:? "conversationProfile")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "suggestionFeatureType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationProfile" Core..=) Core.<$> conversationProfile,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("participantRole" Core..=) Core.<$> participantRole,
+              ("suggestionFeatureType" Core..=) Core.<$> suggestionFeatureType
+            ]
+        )
+
+-- | Represents a smart reply answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SmartReplyAnswer' smart constructor.
+data GoogleCloudDialogflowV2SmartReplyAnswer = GoogleCloudDialogflowV2SmartReplyAnswer
+  { -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | Smart reply confidence. The system\'s confidence score that this reply is a good match for this conversation, as a value from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | The content of the reply.
+    reply :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SmartReplyAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SmartReplyAnswer ::
+  GoogleCloudDialogflowV2SmartReplyAnswer
+newGoogleCloudDialogflowV2SmartReplyAnswer =
+  GoogleCloudDialogflowV2SmartReplyAnswer
+    { answerRecord =
+        Core.Nothing,
+      confidence = Core.Nothing,
+      reply = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2SmartReplyAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SmartReplyAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2SmartReplyAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "reply")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SmartReplyAnswer where
+  toJSON GoogleCloudDialogflowV2SmartReplyAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("confidence" Core..=) Core.<$> confidence,
+            ("reply" Core..=) Core.<$> reply
+          ]
+      )
+
+-- | Metadata for smart reply models.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SmartReplyModelMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2SmartReplyModelMetadata = GoogleCloudDialogflowV2SmartReplyModelMetadata
+  { -- | Optional. Type of the smart reply model. If not provided, model_type is used.
+    trainingModelType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SmartReplyModelMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SmartReplyModelMetadata ::
+  GoogleCloudDialogflowV2SmartReplyModelMetadata
+newGoogleCloudDialogflowV2SmartReplyModelMetadata =
+  GoogleCloudDialogflowV2SmartReplyModelMetadata
+    { trainingModelType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SmartReplyModelMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SmartReplyModelMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2SmartReplyModelMetadata
+            Core.<$> (o Core..:? "trainingModelType")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SmartReplyModelMetadata where
+  toJSON GoogleCloudDialogflowV2SmartReplyModelMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [("trainingModelType" Core..=) Core.<$> trainingModelType]
+      )
+
+-- | Information for a word recognized by the speech recognizer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SpeechWordInfo' smart constructor.
+data GoogleCloudDialogflowV2SpeechWordInfo = GoogleCloudDialogflowV2SpeechWordInfo
+  { -- | The Speech confidence between 0.0 and 1.0 for this word. A higher number indicates an estimated greater likelihood that the recognized word is correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is not guaranteed to be fully stable over time for the same audio input. Users should also not rely on it to always be provided.
+    confidence :: (Core.Maybe Core.Double),
+    -- | Time offset relative to the beginning of the audio that corresponds to the end of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.
+    endOffset :: (Core.Maybe Core.Duration),
+    -- | Time offset relative to the beginning of the audio that corresponds to the start of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.
+    startOffset :: (Core.Maybe Core.Duration),
+    -- | The word this info is for.
+    word :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SpeechWordInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SpeechWordInfo ::
+  GoogleCloudDialogflowV2SpeechWordInfo
+newGoogleCloudDialogflowV2SpeechWordInfo =
+  GoogleCloudDialogflowV2SpeechWordInfo
+    { confidence = Core.Nothing,
+      endOffset = Core.Nothing,
+      startOffset = Core.Nothing,
+      word = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2SpeechWordInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SpeechWordInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2SpeechWordInfo
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "endOffset")
+            Core.<*> (o Core..:? "startOffset")
+            Core.<*> (o Core..:? "word")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SpeechWordInfo where
+  toJSON GoogleCloudDialogflowV2SpeechWordInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("endOffset" Core..=) Core.<$> endOffset,
+            ("startOffset" Core..=) Core.<$> startOffset,
+            ("word" Core..=) Core.<$> word
+          ]
+      )
+
+-- | Contains a speech recognition result corresponding to a portion of the audio that is currently being processed or an indication that this is the end of the single requested utterance. While end-user audio is being processed, Dialogflow sends a series of results. Each result may contain a @transcript@ value. A transcript represents a portion of the utterance. While the recognizer is processing audio, transcript values may be interim values or finalized values. Once a transcript is finalized, the @is_final@ value is set to true and processing continues for the next transcript. If @StreamingDetectIntentRequest.query_input.audio_config.single_utterance@ was true, and the recognizer has completed processing audio, the @message_type@ value is set to
+-- @END_OF_SINGLE_UTTERANCE and the following (last) result contains the last finalized transcript. The complete end-user utterance is determined by concatenating the finalized transcript values received for the series of results. In the following example, single utterance is enabled. In the case where single utterance is not enabled, result 7 would not occur. \`\`\` Num | transcript | message_type | is_final --- | ----------------------- | ----------------------- | -------- 1 | \"tube\" | TRANSCRIPT | false 2 | \"to be a\" | TRANSCRIPT | false 3 | \"to be\" | TRANSCRIPT | false 4 | \"to be or not to be\" | TRANSCRIPT | true 5 | \"that\'s\" | TRANSCRIPT | false 6 | \"that is | TRANSCRIPT | false 7 | unset | END_OF_SINGLE_UTTERANCE | unset 8 | \" that is the question\" | TRANSCRIPT | true \`\`\` Concatenating the finalized transcripts with@is_final\` set to true, the complete utterance becomes \"to be or not to be that is the question\".
+--
+-- /See:/ 'newGoogleCloudDialogflowV2StreamingRecognitionResult' smart constructor.
+data GoogleCloudDialogflowV2StreamingRecognitionResult = GoogleCloudDialogflowV2StreamingRecognitionResult
+  { -- | The Speech confidence between 0.0 and 1.0 for the current portion of audio. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is typically only provided if @is_final@ is true and you should not rely on it being accurate or even set.
+    confidence :: (Core.Maybe Core.Double),
+    -- | If @false@, the @StreamingRecognitionResult@ represents an interim result that may change. If @true@, the recognizer will not return any further hypotheses about this piece of the audio. May only be populated for @message_type@ = @TRANSCRIPT@.
+    isFinal :: (Core.Maybe Core.Bool),
+    -- | Detected language code for the transcript.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Type of the result message.
+    messageType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+      ),
+    -- | Time offset of the end of this Speech recognition result relative to the beginning of the audio. Only populated for @message_type@ = @TRANSCRIPT@.
+    speechEndOffset :: (Core.Maybe Core.Duration),
+    -- | Word-specific information for the words recognized by Speech in transcript. Populated if and only if @message_type@ = @TRANSCRIPT@ and [InputAudioConfig.enable/word/info] is set.
+    speechWordInfo :: (Core.Maybe [GoogleCloudDialogflowV2SpeechWordInfo]),
+    -- | Transcript text representing the words that the user spoke. Populated if and only if @message_type@ = @TRANSCRIPT@.
+    transcript :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2StreamingRecognitionResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2StreamingRecognitionResult ::
+  GoogleCloudDialogflowV2StreamingRecognitionResult
+newGoogleCloudDialogflowV2StreamingRecognitionResult =
+  GoogleCloudDialogflowV2StreamingRecognitionResult
+    { confidence =
+        Core.Nothing,
+      isFinal = Core.Nothing,
+      languageCode = Core.Nothing,
+      messageType = Core.Nothing,
+      speechEndOffset = Core.Nothing,
+      speechWordInfo = Core.Nothing,
+      transcript = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2StreamingRecognitionResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2StreamingRecognitionResult"
+      ( \o ->
+          GoogleCloudDialogflowV2StreamingRecognitionResult
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "isFinal")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "messageType")
+            Core.<*> (o Core..:? "speechEndOffset")
+            Core.<*> (o Core..:? "speechWordInfo")
+            Core.<*> (o Core..:? "transcript")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2StreamingRecognitionResult
+  where
+  toJSON GoogleCloudDialogflowV2StreamingRecognitionResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("isFinal" Core..=) Core.<$> isFinal,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("messageType" Core..=) Core.<$> messageType,
+            ("speechEndOffset" Core..=) Core.<$> speechEndOffset,
+            ("speechWordInfo" Core..=) Core.<$> speechWordInfo,
+            ("transcript" Core..=) Core.<$> transcript
+          ]
+      )
+
+-- | The response message for Participants.SuggestArticles.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SuggestArticlesResponse' smart constructor.
+data GoogleCloudDialogflowV2SuggestArticlesResponse = GoogleCloudDialogflowV2SuggestArticlesResponse
+  { -- | Articles ordered by score in descending order.
+    articleAnswers :: (Core.Maybe [GoogleCloudDialogflowV2ArticleAnswer]),
+    -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestArticlesRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SuggestArticlesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SuggestArticlesResponse ::
+  GoogleCloudDialogflowV2SuggestArticlesResponse
+newGoogleCloudDialogflowV2SuggestArticlesResponse =
+  GoogleCloudDialogflowV2SuggestArticlesResponse
+    { articleAnswers =
+        Core.Nothing,
+      contextSize = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SuggestArticlesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SuggestArticlesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2SuggestArticlesResponse
+            Core.<$> (o Core..:? "articleAnswers")
+            Core.<*> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SuggestArticlesResponse where
+  toJSON GoogleCloudDialogflowV2SuggestArticlesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("articleAnswers" Core..=) Core.<$> articleAnswers,
+            ("contextSize" Core..=) Core.<$> contextSize,
+            ("latestMessage" Core..=) Core.<$> latestMessage
+          ]
+      )
+
+-- | The request message for Participants.SuggestFaqAnswers.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SuggestFaqAnswersResponse' smart constructor.
+data GoogleCloudDialogflowV2SuggestFaqAnswersResponse = GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestFaqAnswersRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | Answers extracted from FAQ documents.
+    faqAnswers :: (Core.Maybe [GoogleCloudDialogflowV2FaqAnswer]),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SuggestFaqAnswersResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SuggestFaqAnswersResponse ::
+  GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+newGoogleCloudDialogflowV2SuggestFaqAnswersResponse =
+  GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+    { contextSize =
+        Core.Nothing,
+      faqAnswers = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SuggestFaqAnswersResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "faqAnswers")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+  where
+  toJSON GoogleCloudDialogflowV2SuggestFaqAnswersResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contextSize" Core..=) Core.<$> contextSize,
+            ("faqAnswers" Core..=) Core.<$> faqAnswers,
+            ("latestMessage" Core..=) Core.<$> latestMessage
+          ]
+      )
+
+-- | The response message for Participants.SuggestKnowledgeAssist.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse' smart constructor.
+data GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse = GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestKnowledgeAssistRequest.context/size field in the request if there are fewer messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | Output only. Knowledge Assist suggestion.
+    knowledgeAssistAnswer :: (Core.Maybe GoogleCloudDialogflowV2KnowledgeAssistAnswer),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse ::
+  GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse =
+  GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+    { contextSize =
+        Core.Nothing,
+      knowledgeAssistAnswer = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "knowledgeAssistAnswer")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+  where
+  toJSON GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contextSize" Core..=) Core.<$> contextSize,
+            ("knowledgeAssistAnswer" Core..=) Core.<$> knowledgeAssistAnswer,
+            ("latestMessage" Core..=) Core.<$> latestMessage
+          ]
+      )
+
+-- | The response message for Participants.SuggestSmartReplies.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SuggestSmartRepliesResponse' smart constructor.
+data GoogleCloudDialogflowV2SuggestSmartRepliesResponse = GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestSmartRepliesRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text),
+    -- | Output only. Multiple reply options provided by smart reply service. The order is based on the rank of the model prediction. The maximum number of the returned replies is set in SmartReplyConfig.
+    smartReplyAnswers :: (Core.Maybe [GoogleCloudDialogflowV2SmartReplyAnswer])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SuggestSmartRepliesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SuggestSmartRepliesResponse ::
+  GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+newGoogleCloudDialogflowV2SuggestSmartRepliesResponse =
+  GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+    { contextSize =
+        Core.Nothing,
+      latestMessage = Core.Nothing,
+      smartReplyAnswers = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SuggestSmartRepliesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "latestMessage")
+            Core.<*> (o Core..:? "smartReplyAnswers")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+  where
+  toJSON GoogleCloudDialogflowV2SuggestSmartRepliesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contextSize" Core..=) Core.<$> contextSize,
+            ("latestMessage" Core..=) Core.<$> latestMessage,
+            ("smartReplyAnswers" Core..=) Core.<$> smartReplyAnswers
+          ]
+      )
+
+-- | One response of different type of suggestion response which is used in the response of Participants.AnalyzeContent and Participants.AnalyzeContent, as well as HumanAgentAssistantEvent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2SuggestionResult' smart constructor.
+data GoogleCloudDialogflowV2SuggestionResult = GoogleCloudDialogflowV2SuggestionResult
+  { -- | Error status if the request failed.
+    error :: (Core.Maybe GoogleRpcStatus),
+    -- | SuggestArticlesResponse if request is for ARTICLE_SUGGESTION.
+    suggestArticlesResponse :: (Core.Maybe GoogleCloudDialogflowV2SuggestArticlesResponse),
+    -- | SuggestFaqAnswersResponse if request is for FAQ_ANSWER.
+    suggestFaqAnswersResponse :: (Core.Maybe GoogleCloudDialogflowV2SuggestFaqAnswersResponse),
+    -- | SuggestKnowledgeAssistResponse if request is for KNOWLEDGE_ASSIST.
+    suggestKnowledgeAssistResponse :: (Core.Maybe GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse),
+    -- | SuggestSmartRepliesResponse if request is for SMART_REPLY.
+    suggestSmartRepliesResponse :: (Core.Maybe GoogleCloudDialogflowV2SuggestSmartRepliesResponse)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2SuggestionResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2SuggestionResult ::
+  GoogleCloudDialogflowV2SuggestionResult
+newGoogleCloudDialogflowV2SuggestionResult =
+  GoogleCloudDialogflowV2SuggestionResult
+    { error = Core.Nothing,
+      suggestArticlesResponse = Core.Nothing,
+      suggestFaqAnswersResponse = Core.Nothing,
+      suggestKnowledgeAssistResponse = Core.Nothing,
+      suggestSmartRepliesResponse = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2SuggestionResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2SuggestionResult"
+      ( \o ->
+          GoogleCloudDialogflowV2SuggestionResult
+            Core.<$> (o Core..:? "error")
+            Core.<*> (o Core..:? "suggestArticlesResponse")
+            Core.<*> (o Core..:? "suggestFaqAnswersResponse")
+            Core.<*> (o Core..:? "suggestKnowledgeAssistResponse")
+            Core.<*> (o Core..:? "suggestSmartRepliesResponse")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2SuggestionResult where
+  toJSON GoogleCloudDialogflowV2SuggestionResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("error" Core..=) Core.<$> error,
+            ("suggestArticlesResponse" Core..=)
+              Core.<$> suggestArticlesResponse,
+            ("suggestFaqAnswersResponse" Core..=)
+              Core.<$> suggestFaqAnswersResponse,
+            ("suggestKnowledgeAssistResponse" Core..=)
+              Core.<$> suggestKnowledgeAssistResponse,
+            ("suggestSmartRepliesResponse" Core..=)
+              Core.<$> suggestSmartRepliesResponse
+          ]
+      )
+
+-- | Metadata for a ConversationModels.UndeployConversationModel operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata = GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+  { -- | The resource name of the conversation model. Format: @projects\/\/conversationModels\/@
+    conversationModel :: (Core.Maybe Core.Text),
+    -- | Timestamp when the request to undeploy conversation model was submitted. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata ::
+  GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata =
+  GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+    { conversationModel =
+        Core.Nothing,
+      createTime = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+            Core.<$> (o Core..:? "conversationModel")
+            Core.<*> (o Core..:? "createTime")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationModel" Core..=) Core.<$> conversationModel,
+              ("createTime" Core..=) Core.<$> createTime
+            ]
+        )
+
+-- | The request message for a webhook call.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2WebhookRequest' smart constructor.
+data GoogleCloudDialogflowV2WebhookRequest = GoogleCloudDialogflowV2WebhookRequest
+  { -- | Optional. The contents of the original request that was passed to @[Streaming]DetectIntent@ call.
+    originalDetectIntentRequest :: (Core.Maybe GoogleCloudDialogflowV2OriginalDetectIntentRequest),
+    -- | The result of the conversational query or event processing. Contains the same value as @[Streaming]DetectIntentResponse.query_result@.
+    queryResult :: (Core.Maybe GoogleCloudDialogflowV2QueryResult),
+    -- | The unique identifier of the response. Contains the same value as @[Streaming]DetectIntentResponse.response_id@.
+    responseId :: (Core.Maybe Core.Text),
+    -- | The unique identifier of detectIntent request session. Can be used to identify end-user inside webhook implementation. Format: @projects\/\/agent\/sessions\/@, or @projects\/\/agent\/environments\/\/users\/\/sessions\/@.
+    session :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2WebhookRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2WebhookRequest ::
+  GoogleCloudDialogflowV2WebhookRequest
+newGoogleCloudDialogflowV2WebhookRequest =
+  GoogleCloudDialogflowV2WebhookRequest
+    { originalDetectIntentRequest =
+        Core.Nothing,
+      queryResult = Core.Nothing,
+      responseId = Core.Nothing,
+      session = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2WebhookRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2WebhookRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2WebhookRequest
+            Core.<$> (o Core..:? "originalDetectIntentRequest")
+            Core.<*> (o Core..:? "queryResult")
+            Core.<*> (o Core..:? "responseId")
+            Core.<*> (o Core..:? "session")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2WebhookRequest where
+  toJSON GoogleCloudDialogflowV2WebhookRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("originalDetectIntentRequest" Core..=)
+              Core.<$> originalDetectIntentRequest,
+            ("queryResult" Core..=) Core.<$> queryResult,
+            ("responseId" Core..=) Core.<$> responseId,
+            ("session" Core..=) Core.<$> session
+          ]
+      )
+
+-- | The response message for a webhook call. This response is validated by the Dialogflow server. If validation fails, an error will be returned in the QueryResult.diagnostic_info field. Setting JSON fields to an empty value with the wrong type is a common error. To avoid this error: - Use @\"\"@ for empty strings - Use @{}@ or @null@ for empty objects - Use @[]@ or @null@ for empty arrays For more information, see the <https://developers.google.com/protocol-buffers/docs/proto3#json Protocol Buffers Language Guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2WebhookResponse' smart constructor.
+data GoogleCloudDialogflowV2WebhookResponse = GoogleCloudDialogflowV2WebhookResponse
+  { -- | Optional. Invokes the supplied events. When this field is set, Dialogflow ignores the @fulfillment_text@, @fulfillment_messages@, and @payload@ fields.
+    followupEventInput :: (Core.Maybe GoogleCloudDialogflowV2EventInput),
+    -- | Optional. The rich response messages intended for the end-user. When provided, Dialogflow uses this field to populate QueryResult.fulfillment_messages sent to the integration or API caller.
+    fulfillmentMessages :: (Core.Maybe [GoogleCloudDialogflowV2IntentMessage]),
+    -- | Optional. The text response message intended for the end-user. It is recommended to use @fulfillment_messages.text.text[0]@ instead. When provided, Dialogflow uses this field to populate QueryResult.fulfillment_text sent to the integration or API caller.
+    fulfillmentText :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of output contexts that will overwrite currently active contexts for the session and reset their lifespans. When provided, Dialogflow uses this field to populate QueryResult.output_contexts sent to the integration or API caller.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2Context]),
+    -- | Optional. This field can be used to pass custom data from your webhook to the integration or API caller. Arbitrary JSON objects are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_payload sent to the integration or API caller. This field is also used by the <https://cloud.google.com/dialogflow/docs/integrations/aog Google Assistant integration> for rich response messages. See the format definition at <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Google Assistant Dialogflow webhook format>
+    payload :: (Core.Maybe GoogleCloudDialogflowV2WebhookResponse_Payload),
+    -- | Optional. Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session. Setting this data from a webhook overwrites the session entity types that have been set using @detectIntent@, @streamingDetectIntent@ or SessionEntityType management methods.
+    sessionEntityTypes :: (Core.Maybe [GoogleCloudDialogflowV2SessionEntityType]),
+    -- | Optional. A custom field used to identify the webhook source. Arbitrary strings are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_source sent to the integration or API caller.
+    source :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2WebhookResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2WebhookResponse ::
+  GoogleCloudDialogflowV2WebhookResponse
+newGoogleCloudDialogflowV2WebhookResponse =
+  GoogleCloudDialogflowV2WebhookResponse
+    { followupEventInput =
+        Core.Nothing,
+      fulfillmentMessages = Core.Nothing,
+      fulfillmentText = Core.Nothing,
+      outputContexts = Core.Nothing,
+      payload = Core.Nothing,
+      sessionEntityTypes = Core.Nothing,
+      source = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2WebhookResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2WebhookResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2WebhookResponse
+            Core.<$> (o Core..:? "followupEventInput")
+            Core.<*> (o Core..:? "fulfillmentMessages")
+            Core.<*> (o Core..:? "fulfillmentText")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sessionEntityTypes")
+            Core.<*> (o Core..:? "source")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2WebhookResponse where
+  toJSON GoogleCloudDialogflowV2WebhookResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("followupEventInput" Core..=) Core.<$> followupEventInput,
+            ("fulfillmentMessages" Core..=) Core.<$> fulfillmentMessages,
+            ("fulfillmentText" Core..=) Core.<$> fulfillmentText,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("payload" Core..=) Core.<$> payload,
+            ("sessionEntityTypes" Core..=) Core.<$> sessionEntityTypes,
+            ("source" Core..=) Core.<$> source
+          ]
+      )
+
+-- | Optional. This field can be used to pass custom data from your webhook to the integration or API caller. Arbitrary JSON objects are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_payload sent to the integration or API caller. This field is also used by the <https://cloud.google.com/dialogflow/docs/integrations/aog Google Assistant integration> for rich response messages. See the format definition at <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Google Assistant Dialogflow webhook format>
+--
+-- /See:/ 'newGoogleCloudDialogflowV2WebhookResponse_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2WebhookResponse_Payload = GoogleCloudDialogflowV2WebhookResponse_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2WebhookResponse_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2WebhookResponse_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2WebhookResponse_Payload
+newGoogleCloudDialogflowV2WebhookResponse_Payload additional =
+  GoogleCloudDialogflowV2WebhookResponse_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2WebhookResponse_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2WebhookResponse_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2WebhookResponse_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2WebhookResponse_Payload where
+  toJSON GoogleCloudDialogflowV2WebhookResponse_Payload {..} =
+    Core.toJSON additional
+
+-- | Represents a part of a message possibly annotated with an entity. The part can be an entity or purely a part of the message between two entities or message start\/end.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1AnnotatedMessagePart' smart constructor.
+data GoogleCloudDialogflowV2beta1AnnotatedMessagePart = GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+  { -- | Optional. The <https://cloud.google.com/dialogflow/docs/reference/system-entities Dialogflow system entity type> of this message part. If this is empty, Dialogflow could not annotate the phrase part with a system entity.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Optional. The <https://cloud.google.com/dialogflow/docs/reference/system-entities Dialogflow system entity formatted value> of this message part. For example for a system entity of type @\@sys.unit-currency@, this may contain: { \"amount\": 5, \"currency\": \"USD\" }
+    formattedValue :: (Core.Maybe Core.Value),
+    -- | Required. A part of a message possibly annotated with an entity.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1AnnotatedMessagePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1AnnotatedMessagePart ::
+  GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+newGoogleCloudDialogflowV2beta1AnnotatedMessagePart =
+  GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+    { entityType =
+        Core.Nothing,
+      formattedValue = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1AnnotatedMessagePart"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+            Core.<$> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "formattedValue")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+  where
+  toJSON GoogleCloudDialogflowV2beta1AnnotatedMessagePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entityType" Core..=) Core.<$> entityType,
+            ("formattedValue" Core..=) Core.<$> formattedValue,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Represents article answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ArticleAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1ArticleAnswer = GoogleCloudDialogflowV2beta1ArticleAnswer
+  { -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | A map that contains metadata about the answer and the document from which it originates.
+    metadata :: (Core.Maybe GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata),
+    -- | Output only. Article snippets.
+    snippets :: (Core.Maybe [Core.Text]),
+    -- | The article title.
+    title :: (Core.Maybe Core.Text),
+    -- | The article URI.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ArticleAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ArticleAnswer ::
+  GoogleCloudDialogflowV2beta1ArticleAnswer
+newGoogleCloudDialogflowV2beta1ArticleAnswer =
+  GoogleCloudDialogflowV2beta1ArticleAnswer
+    { answerRecord =
+        Core.Nothing,
+      metadata = Core.Nothing,
+      snippets = Core.Nothing,
+      title = Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1ArticleAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ArticleAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ArticleAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "snippets")
+            Core.<*> (o Core..:? "title")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1ArticleAnswer where
+  toJSON GoogleCloudDialogflowV2beta1ArticleAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("snippets" Core..=) Core.<$> snippets,
+            ("title" Core..=) Core.<$> title,
+            ("uri" Core..=) Core.<$> uri
+          ]
+      )
+
+-- | A map that contains metadata about the answer and the document from which it originates.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata = GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata additional =
+  GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+  where
+  toJSON GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata {..} =
+    Core.toJSON additional
+
+-- | The response message for EntityTypes.BatchUpdateEntityTypes.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse' smart constructor.
+newtype GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse = GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+  { -- | The collection of updated or created entity types.
+    entityTypes :: (Core.Maybe [GoogleCloudDialogflowV2beta1EntityType])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse ::
+  GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse =
+  GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+    { entityTypes =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+            Core.<$> (o Core..:? "entityTypes")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse {..} =
+      Core.object
+        (Core.catMaybes [("entityTypes" Core..=) Core.<$> entityTypes])
+
+-- | The response message for Intents.BatchUpdateIntents.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse' smart constructor.
+newtype GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse = GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+  { -- | The collection of updated or created intents.
+    intents :: (Core.Maybe [GoogleCloudDialogflowV2beta1Intent])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse ::
+  GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse =
+  GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+    { intents =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+            Core.<$> (o Core..:? "intents")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse {..} =
+    Core.object
+      (Core.catMaybes [("intents" Core..=) Core.<$> intents])
+
+-- | Metadata for a ConversationProfile.ClearSuggestionFeatureConfig operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+  { -- | The resource name of the conversation profile. Format: @projects\/\/locations\/\/conversationProfiles\/@
+    conversationProfile :: (Core.Maybe Core.Text),
+    -- | Timestamp whe the request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The participant role to remove the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+    participantRole ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ),
+    -- | Required. The type of the suggestion feature to remove.
+    suggestionFeatureType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata ::
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata =
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+    { conversationProfile =
+        Core.Nothing,
+      createTime =
+        Core.Nothing,
+      participantRole =
+        Core.Nothing,
+      suggestionFeatureType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+            Core.<$> (o Core..:? "conversationProfile")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "suggestionFeatureType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationProfile" Core..=) Core.<$> conversationProfile,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("participantRole" Core..=) Core.<$> participantRole,
+              ("suggestionFeatureType" Core..=) Core.<$> suggestionFeatureType
+            ]
+        )
+
+-- | Dialogflow contexts are similar to natural language context. If a person says to you \"they are orange\", you need context in order to understand what \"they\" is referring to. Similarly, for Dialogflow to handle an end-user expression like that, it needs to be provided with context in order to correctly match an intent. Using contexts, you can control the flow of a conversation. You can configure contexts for an intent by setting input and output contexts, which are identified by string names. When an intent is matched, any configured output contexts for that intent become active. While any contexts are active, Dialogflow is more likely to match intents that are configured with input contexts that correspond to the currently active contexts. For more information about context, see the <https://cloud.google.com/dialogflow/docs/contexts-overview Contexts guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1Context' smart constructor.
+data GoogleCloudDialogflowV2beta1Context = GoogleCloudDialogflowV2beta1Context
+  { -- | Optional. The number of conversational query requests after which the context expires. The default is @0@. If set to @0@, the context expires immediately. Contexts expire automatically after 20 minutes if there are no matching queries.
+    lifespanCount :: (Core.Maybe Core.Int32),
+    -- | Required. The unique identifier of the context. Supported formats: - @projects\/\/agent\/sessions\/\/contexts\/@, - @projects\/\/locations\/\/agent\/sessions\/\/contexts\/@, - @projects\/\/agent\/environments\/\/users\/\/sessions\/\/contexts\/@, - @projects\/\/locations\/\/agent\/environments\/\/users\/\/sessions\/\/contexts\/@, The @Context ID@ is always converted to lowercase, may only contain characters in @a-zA-Z0-9_-%@ and may be at most 250 bytes long. If @Environment ID@ is not specified, we assume default \'draft\' environment. If @User ID@ is not specified, we assume default \'-\' user. The following context names are reserved for internal use by Dialogflow. You should not use these contexts or create contexts with these names: * @__system_counters__@ * @*_id_dialog_context@ * @*_dialog_params_size@
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of parameters associated with this context. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2beta1Context_Parameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1Context' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1Context ::
+  GoogleCloudDialogflowV2beta1Context
+newGoogleCloudDialogflowV2beta1Context =
+  GoogleCloudDialogflowV2beta1Context
+    { lifespanCount = Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1Context where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1Context"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1Context
+            Core.<$> (o Core..:? "lifespanCount")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1Context where
+  toJSON GoogleCloudDialogflowV2beta1Context {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("lifespanCount" Core..=) Core.<$> lifespanCount,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | Optional. The collection of parameters associated with this context. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1Context_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2beta1Context_Parameters = GoogleCloudDialogflowV2beta1Context_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1Context_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1Context_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1Context_Parameters
+newGoogleCloudDialogflowV2beta1Context_Parameters additional =
+  GoogleCloudDialogflowV2beta1Context_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1Context_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1Context_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1Context_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1Context_Parameters where
+  toJSON GoogleCloudDialogflowV2beta1Context_Parameters {..} =
+    Core.toJSON additional
+
+-- | Represents a notification sent to Pub\/Sub subscribers for conversation lifecycle events.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ConversationEvent' smart constructor.
+data GoogleCloudDialogflowV2beta1ConversationEvent = GoogleCloudDialogflowV2beta1ConversationEvent
+  { -- | Required. The unique identifier of the conversation this notification refers to. Format: @projects\/\/conversations\/@.
+    conversation :: (Core.Maybe Core.Text),
+    -- | Optional. More detailed information about an error. Only set for type UNRECOVERABLE/ERROR/IN/PHONE/CALL.
+    errorStatus :: (Core.Maybe GoogleRpcStatus),
+    -- | Payload of NEW_MESSAGE event.
+    newMessagePayload' :: (Core.Maybe GoogleCloudDialogflowV2beta1Message),
+    -- | Payload of NEW/RECOGNITION/RESULT event.
+    newRecognitionResultPayload' :: (Core.Maybe GoogleCloudDialogflowV2beta1StreamingRecognitionResult),
+    -- | Required. The type of the event that this notification refers to.
+    type' :: (Core.Maybe GoogleCloudDialogflowV2beta1ConversationEvent_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ConversationEvent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ConversationEvent ::
+  GoogleCloudDialogflowV2beta1ConversationEvent
+newGoogleCloudDialogflowV2beta1ConversationEvent =
+  GoogleCloudDialogflowV2beta1ConversationEvent
+    { conversation =
+        Core.Nothing,
+      errorStatus = Core.Nothing,
+      newMessagePayload' = Core.Nothing,
+      newRecognitionResultPayload' = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ConversationEvent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ConversationEvent"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ConversationEvent
+            Core.<$> (o Core..:? "conversation")
+            Core.<*> (o Core..:? "errorStatus")
+            Core.<*> (o Core..:? "newMessagePayload")
+            Core.<*> (o Core..:? "newRecognitionResultPayload")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1ConversationEvent where
+  toJSON GoogleCloudDialogflowV2beta1ConversationEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversation" Core..=) Core.<$> conversation,
+            ("errorStatus" Core..=) Core.<$> errorStatus,
+            ("newMessagePayload" Core..=) Core.<$> newMessagePayload',
+            ("newRecognitionResultPayload" Core..=)
+              Core.<$> newRecognitionResultPayload',
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents a Dialogflow assist answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1DialogflowAssistAnswer = GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+  { -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | An intent suggestion generated from conversation.
+    intentSuggestion :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentSuggestion),
+    -- | Result from v2 agent.
+    queryResult :: (Core.Maybe GoogleCloudDialogflowV2beta1QueryResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1DialogflowAssistAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer ::
+  GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer =
+  GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+    { answerRecord =
+        Core.Nothing,
+      intentSuggestion = Core.Nothing,
+      queryResult = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1DialogflowAssistAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "intentSuggestion")
+            Core.<*> (o Core..:? "queryResult")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+  where
+  toJSON GoogleCloudDialogflowV2beta1DialogflowAssistAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("intentSuggestion" Core..=) Core.<$> intentSuggestion,
+            ("queryResult" Core..=) Core.<$> queryResult
+          ]
+      )
+
+-- | A customer-managed encryption key specification that can be applied to all created resources (e.g. Conversation).
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1EncryptionSpec' smart constructor.
+data GoogleCloudDialogflowV2beta1EncryptionSpec = GoogleCloudDialogflowV2beta1EncryptionSpec
+  { -- | Required. The name of customer-managed encryption key that is used to secure a resource and its sub-resources. If empty, the resource is secured by the default Google encryption key. Only the key in the same location as this resource is allowed to be used for encryption. Format: @projects\/{project}\/locations\/{location}\/keyRings\/{keyRing}\/cryptoKeys\/{key}@
+    kmsKey :: (Core.Maybe Core.Text),
+    -- | Immutable. The resource name of the encryption key specification resource. Format: projects\/{project}\/locations\/{location}\/encryptionSpec
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1EncryptionSpec' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1EncryptionSpec ::
+  GoogleCloudDialogflowV2beta1EncryptionSpec
+newGoogleCloudDialogflowV2beta1EncryptionSpec =
+  GoogleCloudDialogflowV2beta1EncryptionSpec
+    { kmsKey = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1EncryptionSpec where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1EncryptionSpec"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1EncryptionSpec
+            Core.<$> (o Core..:? "kmsKey")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1EncryptionSpec where
+  toJSON GoogleCloudDialogflowV2beta1EncryptionSpec {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kmsKey" Core..=) Core.<$> kmsKey,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Each intent parameter has a type, called the entity type, which dictates exactly how data from an end-user expression is extracted. Dialogflow provides predefined system entities that can match many common types of data. For example, there are system entities for matching dates, times, colors, email addresses, and so on. You can also create your own custom entities for matching custom data. For example, you could define a vegetable entity that can match the types of vegetables available for purchase with a grocery store agent. For more information, see the <https://cloud.google.com/dialogflow/docs/entities-overview Entity guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1EntityType' smart constructor.
+data GoogleCloudDialogflowV2beta1EntityType = GoogleCloudDialogflowV2beta1EntityType
+  { -- | Optional. Indicates whether the entity type can be automatically expanded.
+    autoExpansionMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+      ),
+    -- | Required. The name of the entity type.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. Enables fuzzy entity extraction during classification.
+    enableFuzzyExtraction :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of entity entries associated with the entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowV2beta1EntityTypeEntity]),
+    -- | Required. Indicates the kind of entity type.
+    kind :: (Core.Maybe GoogleCloudDialogflowV2beta1EntityType_Kind),
+    -- | The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes methods. Supported formats: - @projects\/\/agent\/entityTypes\/@ - @projects\/\/locations\/\/agent\/entityTypes\/@
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1EntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1EntityType ::
+  GoogleCloudDialogflowV2beta1EntityType
+newGoogleCloudDialogflowV2beta1EntityType =
+  GoogleCloudDialogflowV2beta1EntityType
+    { autoExpansionMode =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      enableFuzzyExtraction = Core.Nothing,
+      entities = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1EntityType where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1EntityType"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1EntityType
+            Core.<$> (o Core..:? "autoExpansionMode")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "enableFuzzyExtraction")
+            Core.<*> (o Core..:? "entities")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1EntityType where
+  toJSON GoogleCloudDialogflowV2beta1EntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("autoExpansionMode" Core..=) Core.<$> autoExpansionMode,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("enableFuzzyExtraction" Core..=) Core.<$> enableFuzzyExtraction,
+            ("entities" Core..=) Core.<$> entities,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | An __entity entry__ for an associated entity type.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1EntityTypeEntity' smart constructor.
+data GoogleCloudDialogflowV2beta1EntityTypeEntity = GoogleCloudDialogflowV2beta1EntityTypeEntity
+  { -- | Required. A collection of value synonyms. For example, if the entity type is /vegetable/, and @value@ is /scallions/, a synonym could be /green onions/. For @KIND_LIST@ entity types: * This collection must contain exactly one synonym equal to @value@.
+    synonyms :: (Core.Maybe [Core.Text]),
+    -- | Required. The primary value associated with this entity entry. For example, if the entity type is /vegetable/, the value could be /scallions/. For @KIND_MAP@ entity types: * A reference value to be used in place of synonyms. For @KIND_LIST@ entity types: * A string that can contain references to other entity types (with or without aliases).
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1EntityTypeEntity' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1EntityTypeEntity ::
+  GoogleCloudDialogflowV2beta1EntityTypeEntity
+newGoogleCloudDialogflowV2beta1EntityTypeEntity =
+  GoogleCloudDialogflowV2beta1EntityTypeEntity
+    { synonyms =
+        Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1EntityTypeEntity where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1EntityTypeEntity"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1EntityTypeEntity
+            Core.<$> (o Core..:? "synonyms")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1EntityTypeEntity where
+  toJSON GoogleCloudDialogflowV2beta1EntityTypeEntity {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("synonyms" Core..=) Core.<$> synonyms,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Events allow for matching intents by event name instead of the natural language input. For instance, input \`@can trigger a personalized welcome response. The parameter@name@may be used by the agent in the response:@\"Hello #welcome_event.name! What can I do for you today?\"\`.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1EventInput' smart constructor.
+data GoogleCloudDialogflowV2beta1EventInput = GoogleCloudDialogflowV2beta1EventInput
+  { -- | Required. The language of this query. See <https://cloud.google.com/dialogflow/docs/reference/language Language Support> for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language. This field is ignored when used in the context of a WebhookResponse.followup/event/input field, because the language was already defined in the originating detect intent request.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the event.
+    name :: (Core.Maybe Core.Text),
+    -- | The collection of parameters associated with the event. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2beta1EventInput_Parameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1EventInput' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1EventInput ::
+  GoogleCloudDialogflowV2beta1EventInput
+newGoogleCloudDialogflowV2beta1EventInput =
+  GoogleCloudDialogflowV2beta1EventInput
+    { languageCode =
+        Core.Nothing,
+      name = Core.Nothing,
+      parameters = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1EventInput where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1EventInput"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1EventInput
+            Core.<$> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parameters")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1EventInput where
+  toJSON GoogleCloudDialogflowV2beta1EventInput {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name,
+            ("parameters" Core..=) Core.<$> parameters
+          ]
+      )
+
+-- | The collection of parameters associated with the event. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1EventInput_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2beta1EventInput_Parameters = GoogleCloudDialogflowV2beta1EventInput_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1EventInput_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1EventInput_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1EventInput_Parameters
+newGoogleCloudDialogflowV2beta1EventInput_Parameters additional =
+  GoogleCloudDialogflowV2beta1EventInput_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1EventInput_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1EventInput_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1EventInput_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1EventInput_Parameters
+  where
+  toJSON GoogleCloudDialogflowV2beta1EventInput_Parameters {..} =
+    Core.toJSON additional
+
+-- | The response message for Agents.ExportAgent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ExportAgentResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1ExportAgentResponse = GoogleCloudDialogflowV2beta1ExportAgentResponse
+  { -- | Zip compressed raw byte content for agent.
+    agentContent :: (Core.Maybe Core.Base64),
+    -- | The URI to a file containing the exported agent. This field is populated only if @agent_uri@ is specified in @ExportAgentRequest@.
+    agentUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ExportAgentResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ExportAgentResponse ::
+  GoogleCloudDialogflowV2beta1ExportAgentResponse
+newGoogleCloudDialogflowV2beta1ExportAgentResponse =
+  GoogleCloudDialogflowV2beta1ExportAgentResponse
+    { agentContent =
+        Core.Nothing,
+      agentUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ExportAgentResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ExportAgentResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ExportAgentResponse
+            Core.<$> (o Core..:? "agentContent")
+            Core.<*> (o Core..:? "agentUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ExportAgentResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1ExportAgentResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentContent" Core..=) Core.<$> agentContent,
+            ("agentUri" Core..=) Core.<$> agentUri
+          ]
+      )
+
+-- | Metadata related to the Export Data Operations (e.g. ExportDocument).
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ExportOperationMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ExportOperationMetadata = GoogleCloudDialogflowV2beta1ExportOperationMetadata
+  { -- | Cloud Storage file path of the exported data.
+    exportedGcsDestination :: (Core.Maybe GoogleCloudDialogflowV2beta1GcsDestination)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ExportOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ExportOperationMetadata ::
+  GoogleCloudDialogflowV2beta1ExportOperationMetadata
+newGoogleCloudDialogflowV2beta1ExportOperationMetadata =
+  GoogleCloudDialogflowV2beta1ExportOperationMetadata
+    { exportedGcsDestination =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ExportOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ExportOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ExportOperationMetadata
+            Core.<$> (o Core..:? "exportedGcsDestination")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ExportOperationMetadata
+  where
+  toJSON GoogleCloudDialogflowV2beta1ExportOperationMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("exportedGcsDestination" Core..=)
+              Core.<$> exportedGcsDestination
+          ]
+      )
+
+-- | Represents answer from \"frequently asked questions\".
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1FaqAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1FaqAnswer = GoogleCloudDialogflowV2beta1FaqAnswer
+  { -- | The piece of text from the @source@ knowledge base document.
+    answer :: (Core.Maybe Core.Text),
+    -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | The system\'s confidence score that this Knowledge answer is a good match for this conversational query, range from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | A map that contains metadata about the answer and the document from which it originates.
+    metadata :: (Core.Maybe GoogleCloudDialogflowV2beta1FaqAnswer_Metadata),
+    -- | The corresponding FAQ question.
+    question :: (Core.Maybe Core.Text),
+    -- | Indicates which Knowledge Document this answer was extracted from. Format: @projects\/\/locations\/\/agent\/knowledgeBases\/\/documents\/@.
+    source :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1FaqAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1FaqAnswer ::
+  GoogleCloudDialogflowV2beta1FaqAnswer
+newGoogleCloudDialogflowV2beta1FaqAnswer =
+  GoogleCloudDialogflowV2beta1FaqAnswer
+    { answer = Core.Nothing,
+      answerRecord = Core.Nothing,
+      confidence = Core.Nothing,
+      metadata = Core.Nothing,
+      question = Core.Nothing,
+      source = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1FaqAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1FaqAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1FaqAnswer
+            Core.<$> (o Core..:? "answer")
+            Core.<*> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "question")
+            Core.<*> (o Core..:? "source")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1FaqAnswer where
+  toJSON GoogleCloudDialogflowV2beta1FaqAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answer" Core..=) Core.<$> answer,
+            ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("confidence" Core..=) Core.<$> confidence,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("question" Core..=) Core.<$> question,
+            ("source" Core..=) Core.<$> source
+          ]
+      )
+
+-- | A map that contains metadata about the answer and the document from which it originates.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1FaqAnswer_Metadata = GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1FaqAnswer_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata additional =
+  GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1FaqAnswer_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1FaqAnswer_Metadata where
+  toJSON GoogleCloudDialogflowV2beta1FaqAnswer_Metadata {..} =
+    Core.toJSON additional
+
+-- | Google Cloud Storage location for the output.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1GcsDestination' smart constructor.
+newtype GoogleCloudDialogflowV2beta1GcsDestination = GoogleCloudDialogflowV2beta1GcsDestination
+  { -- | Required. The Google Cloud Storage URIs for the output. A URI is of the form: @gs:\/\/bucket\/object-prefix-or-name@ Whether a prefix or name is used depends on the use case. The requesting user must have \"write-permission\" to the bucket.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1GcsDestination' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1GcsDestination ::
+  GoogleCloudDialogflowV2beta1GcsDestination
+newGoogleCloudDialogflowV2beta1GcsDestination =
+  GoogleCloudDialogflowV2beta1GcsDestination {uri = Core.Nothing}
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1GcsDestination where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1GcsDestination"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1GcsDestination
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1GcsDestination where
+  toJSON GoogleCloudDialogflowV2beta1GcsDestination {..} =
+    Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Output only. Represents a notification sent to Pub\/Sub subscribers for agent assistant events in a specific conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent' smart constructor.
+data GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent = GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+  { -- | The conversation this notification refers to. Format: @projects\/\/conversations\/@.
+    conversation :: (Core.Maybe Core.Text),
+    -- | The participant that the suggestion is compiled for. And This field is used to call Participants.ListSuggestions API. Format: @projects\/\/conversations\/\/participants\/@. It will not be set in legacy workflow. HumanAgentAssistantConfig.name for more information.
+    participant :: (Core.Maybe Core.Text),
+    -- | The suggestion results payload that this notification refers to. It will only be set when HumanAgentAssistantConfig.SuggestionConfig.group/suggestion/responses sets to true.
+    suggestionResults :: (Core.Maybe [GoogleCloudDialogflowV2beta1SuggestionResult])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent ::
+  GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent =
+  GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+    { conversation =
+        Core.Nothing,
+      participant = Core.Nothing,
+      suggestionResults = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+            Core.<$> (o Core..:? "conversation")
+            Core.<*> (o Core..:? "participant")
+            Core.<*> (o Core..:? "suggestionResults")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+  where
+  toJSON GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversation" Core..=) Core.<$> conversation,
+            ("participant" Core..=) Core.<$> participant,
+            ("suggestionResults" Core..=) Core.<$> suggestionResults
+          ]
+      )
+
+-- | Response message for Documents.ImportDocuments.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ImportDocumentsResponse' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ImportDocumentsResponse = GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+  { -- | Includes details about skipped documents or any other warnings.
+    warnings :: (Core.Maybe [GoogleRpcStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ImportDocumentsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ImportDocumentsResponse ::
+  GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+newGoogleCloudDialogflowV2beta1ImportDocumentsResponse =
+  GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+    { warnings =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ImportDocumentsResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+            Core.<$> (o Core..:? "warnings")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1ImportDocumentsResponse {..} =
+    Core.object
+      (Core.catMaybes [("warnings" Core..=) Core.<$> warnings])
+
+-- | Metadata for initializing a location-level encryption specification.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata = GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+  { -- | Output only. The original request for initialization.
+    request' ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata ::
+  GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata =
+  GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+    { request' =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+            Core.<$> (o Core..:? "request")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata {..} =
+      Core.object
+        (Core.catMaybes [("request" Core..=) Core.<$> request'])
+
+-- | The request to initialize a location-level encryption specification.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest' smart constructor.
+newtype GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest = GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+  { -- | Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. If the kms/key/name is left empty, no encryption will be enforced.
+    encryptionSpec :: (Core.Maybe GoogleCloudDialogflowV2beta1EncryptionSpec)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest ::
+  GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest =
+  GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+    { encryptionSpec =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+            Core.<$> (o Core..:? "encryptionSpec")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest {..} =
+      Core.object
+        ( Core.catMaybes
+            [("encryptionSpec" Core..=) Core.<$> encryptionSpec]
+        )
+
+-- | An intent categorizes an end-user\'s intention for one conversation turn. For each agent, you define many intents, where your combined intents can handle a complete conversation. When an end-user writes or says something, referred to as an end-user expression or end-user input, Dialogflow matches the end-user input to the best intent in your agent. Matching an intent is also known as intent classification. For more information, see the <https://cloud.google.com/dialogflow/docs/intents-overview intent guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1Intent' smart constructor.
+data GoogleCloudDialogflowV2beta1Intent = GoogleCloudDialogflowV2beta1Intent
+  { -- | Optional. The name of the action associated with the intent. Note: The action name must not contain whitespaces.
+    action :: (Core.Maybe Core.Text),
+    -- | Optional. The list of platforms for which the first responses will be copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
+    defaultResponsePlatforms ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem]
+      ),
+    -- | Required. The name of this intent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates that this intent ends an interaction. Some integrations (e.g., Actions on Google or Dialogflow phone gateway) use this information to close interaction with an end user. Default is false.
+    endInteraction :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of event names that trigger the intent. If the collection of input contexts is not empty, all of the contexts must be present in the active user session for an event to trigger this intent. Event names are limited to 150 characters.
+    events :: (Core.Maybe [Core.Text]),
+    -- | Output only. Information about all followup intents that have this intent as a direct or indirect parent. We populate this field only in the output.
+    followupIntentInfo :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo]),
+    -- | Optional. The list of context names required for this intent to be triggered. Formats: - @projects\/\/agent\/sessions\/-\/contexts\/@ - @projects\/\/locations\/\/agent\/sessions\/-\/contexts\/@
+    inputContextNames :: (Core.Maybe [Core.Text]),
+    -- | Optional. Indicates whether this is a fallback intent.
+    isFallback :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates that a live agent should be brought in to handle the interaction with the user. In most cases, when you set this flag to true, you would also want to set end_interaction to true as well. Default is false.
+    liveAgentHandoff :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of rich messages corresponding to the @Response@ field in the Dialogflow console.
+    messages :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentMessage]),
+    -- | Optional. Indicates whether Machine Learning is disabled for the intent. Note: If @ml_disabled@ setting is set to true, then this intent is not taken into account during inference in @ML ONLY@ match mode. Also, auto-markup in the UI is turned off.
+    mlDisabled :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates whether Machine Learning is enabled for the intent. Note: If @ml_enabled@ setting is set to false, then this intent is not taken into account during inference in @ML ONLY@ match mode. Also, auto-markup in the UI is turned off. DEPRECATED! Please use @ml_disabled@ field instead. NOTE: If both @ml_enabled@ and @ml_disabled@ are either not set or false, then the default value is determined as follows: - Before April 15th, 2018 the default is: ml/enabled = false \/ ml/disabled = true. - After April 15th, 2018 the default is: ml/enabled = true \/ ml/disabled = false.
+    mlEnabled :: (Core.Maybe Core.Bool),
+    -- | Optional. The unique identifier of this intent. Required for Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Supported formats: - @projects\/\/agent\/intents\/@ - @projects\/\/locations\/\/agent\/intents\/@
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of contexts that are activated when the intent is matched. Context messages in this collection should not set the parameters field. Setting the @lifespan_count@ to 0 will reset the context when the intent is matched. Format: @projects\/\/agent\/sessions\/-\/contexts\/@.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2beta1Context]),
+    -- | Optional. The collection of parameters associated with the intent.
+    parameters :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentParameter]),
+    -- | Optional. The unique identifier of the parent intent in the chain of followup intents. You can set this field when creating an intent, for example with CreateIntent or BatchUpdateIntents, in order to make this intent a followup intent. It identifies the parent followup intent. Format: @projects\/\/agent\/intents\/@.
+    parentFollowupIntentName :: (Core.Maybe Core.Text),
+    -- | Optional. The priority of this intent. Higher numbers represent higher priorities. - If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the @Normal@ priority in the console. - If the supplied value is negative, the intent is ignored in runtime detect intent requests.
+    priority :: (Core.Maybe Core.Int32),
+    -- | Optional. Indicates whether to delete all contexts in the current session when this intent is matched.
+    resetContexts :: (Core.Maybe Core.Bool),
+    -- | Output only. The unique identifier of the root intent in the chain of followup intents. It identifies the correct followup intents chain for this intent. Format: @projects\/\/agent\/intents\/@.
+    rootFollowupIntentName :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of examples that the agent is trained on.
+    trainingPhrases :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentTrainingPhrase]),
+    -- | Optional. Indicates whether webhooks are enabled for the intent.
+    webhookState :: (Core.Maybe GoogleCloudDialogflowV2beta1Intent_WebhookState)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1Intent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1Intent ::
+  GoogleCloudDialogflowV2beta1Intent
+newGoogleCloudDialogflowV2beta1Intent =
+  GoogleCloudDialogflowV2beta1Intent
+    { action = Core.Nothing,
+      defaultResponsePlatforms = Core.Nothing,
+      displayName = Core.Nothing,
+      endInteraction = Core.Nothing,
+      events = Core.Nothing,
+      followupIntentInfo = Core.Nothing,
+      inputContextNames = Core.Nothing,
+      isFallback = Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      messages = Core.Nothing,
+      mlDisabled = Core.Nothing,
+      mlEnabled = Core.Nothing,
+      name = Core.Nothing,
+      outputContexts = Core.Nothing,
+      parameters = Core.Nothing,
+      parentFollowupIntentName = Core.Nothing,
+      priority = Core.Nothing,
+      resetContexts = Core.Nothing,
+      rootFollowupIntentName = Core.Nothing,
+      trainingPhrases = Core.Nothing,
+      webhookState = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1Intent where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1Intent"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1Intent
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "defaultResponsePlatforms")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "events")
+            Core.<*> (o Core..:? "followupIntentInfo")
+            Core.<*> (o Core..:? "inputContextNames")
+            Core.<*> (o Core..:? "isFallback")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "messages")
+            Core.<*> (o Core..:? "mlDisabled")
+            Core.<*> (o Core..:? "mlEnabled")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "parentFollowupIntentName")
+            Core.<*> (o Core..:? "priority")
+            Core.<*> (o Core..:? "resetContexts")
+            Core.<*> (o Core..:? "rootFollowupIntentName")
+            Core.<*> (o Core..:? "trainingPhrases")
+            Core.<*> (o Core..:? "webhookState")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1Intent where
+  toJSON GoogleCloudDialogflowV2beta1Intent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("defaultResponsePlatforms" Core..=)
+              Core.<$> defaultResponsePlatforms,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("events" Core..=) Core.<$> events,
+            ("followupIntentInfo" Core..=) Core.<$> followupIntentInfo,
+            ("inputContextNames" Core..=) Core.<$> inputContextNames,
+            ("isFallback" Core..=) Core.<$> isFallback,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("messages" Core..=) Core.<$> messages,
+            ("mlDisabled" Core..=) Core.<$> mlDisabled,
+            ("mlEnabled" Core..=) Core.<$> mlEnabled,
+            ("name" Core..=) Core.<$> name,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("parentFollowupIntentName" Core..=)
+              Core.<$> parentFollowupIntentName,
+            ("priority" Core..=) Core.<$> priority,
+            ("resetContexts" Core..=) Core.<$> resetContexts,
+            ("rootFollowupIntentName" Core..=) Core.<$> rootFollowupIntentName,
+            ("trainingPhrases" Core..=) Core.<$> trainingPhrases,
+            ("webhookState" Core..=) Core.<$> webhookState
+          ]
+      )
+
+-- | Represents a single followup intent in the chain.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo = GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+  { -- | The unique identifier of the followup intent. Format: @projects\/\/agent\/intents\/@.
+    followupIntentName :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the followup intent\'s parent. Format: @projects\/\/agent\/intents\/@.
+    parentFollowupIntentName :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo ::
+  GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo =
+  GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+    { followupIntentName =
+        Core.Nothing,
+      parentFollowupIntentName = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+            Core.<$> (o Core..:? "followupIntentName")
+            Core.<*> (o Core..:? "parentFollowupIntentName")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("followupIntentName" Core..=) Core.<$> followupIntentName,
+            ("parentFollowupIntentName" Core..=)
+              Core.<$> parentFollowupIntentName
+          ]
+      )
+
+-- | Corresponds to the @Response@ field in the Dialogflow console.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessage' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessage = GoogleCloudDialogflowV2beta1IntentMessage
+  { -- | Displays a basic card for Actions on Google.
+    basicCard :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageBasicCard),
+    -- | Browse carousel card for Actions on Google.
+    browseCarouselCard ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+      ),
+    -- | Displays a card.
+    card :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageCard),
+    -- | Displays a carousel card for Actions on Google.
+    carouselSelect ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+      ),
+    -- | Displays an image.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Displays a link out suggestion chip for Actions on Google.
+    linkOutSuggestion ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+      ),
+    -- | Displays a list card for Actions on Google.
+    listSelect :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageListSelect),
+    -- | The media content card for Actions on Google.
+    mediaContent :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageMediaContent),
+    -- | A custom platform-specific response.
+    payload :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessage_Payload),
+    -- | Optional. The platform that this message is intended for.
+    platform :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessage_Platform),
+    -- | Displays quick replies.
+    quickReplies :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageQuickReplies),
+    -- | Rich Business Messaging (RBM) carousel rich card response.
+    rbmCarouselRichCard ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+      ),
+    -- | Standalone Rich Business Messaging (RBM) rich card response.
+    rbmStandaloneRichCard ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+      ),
+    -- | Rich Business Messaging (RBM) text response. RBM allows businesses to send enriched and branded versions of SMS. See https:\/\/jibe.google.com\/business-messaging.
+    rbmText :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageRbmText),
+    -- | Returns a voice or text-only response for Actions on Google.
+    simpleResponses ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+      ),
+    -- | Displays suggestion chips for Actions on Google.
+    suggestions :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageSuggestions),
+    -- | Table card for Actions on Google.
+    tableCard :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageTableCard),
+    -- | Plays audio from a file in Telephony Gateway.
+    telephonyPlayAudio ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+      ),
+    -- | Synthesizes speech in Telephony Gateway.
+    telephonySynthesizeSpeech ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+      ),
+    -- | Transfers the call in Telephony Gateway.
+    telephonyTransferCall ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+      ),
+    -- | Returns a text response.
+    text :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageText)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessage ::
+  GoogleCloudDialogflowV2beta1IntentMessage
+newGoogleCloudDialogflowV2beta1IntentMessage =
+  GoogleCloudDialogflowV2beta1IntentMessage
+    { basicCard =
+        Core.Nothing,
+      browseCarouselCard = Core.Nothing,
+      card = Core.Nothing,
+      carouselSelect = Core.Nothing,
+      image = Core.Nothing,
+      linkOutSuggestion = Core.Nothing,
+      listSelect = Core.Nothing,
+      mediaContent = Core.Nothing,
+      payload = Core.Nothing,
+      platform = Core.Nothing,
+      quickReplies = Core.Nothing,
+      rbmCarouselRichCard = Core.Nothing,
+      rbmStandaloneRichCard = Core.Nothing,
+      rbmText = Core.Nothing,
+      simpleResponses = Core.Nothing,
+      suggestions = Core.Nothing,
+      tableCard = Core.Nothing,
+      telephonyPlayAudio = Core.Nothing,
+      telephonySynthesizeSpeech = Core.Nothing,
+      telephonyTransferCall = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1IntentMessage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessage"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessage
+            Core.<$> (o Core..:? "basicCard")
+            Core.<*> (o Core..:? "browseCarouselCard")
+            Core.<*> (o Core..:? "card")
+            Core.<*> (o Core..:? "carouselSelect")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "linkOutSuggestion")
+            Core.<*> (o Core..:? "listSelect")
+            Core.<*> (o Core..:? "mediaContent")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "platform")
+            Core.<*> (o Core..:? "quickReplies")
+            Core.<*> (o Core..:? "rbmCarouselRichCard")
+            Core.<*> (o Core..:? "rbmStandaloneRichCard")
+            Core.<*> (o Core..:? "rbmText")
+            Core.<*> (o Core..:? "simpleResponses")
+            Core.<*> (o Core..:? "suggestions")
+            Core.<*> (o Core..:? "tableCard")
+            Core.<*> (o Core..:? "telephonyPlayAudio")
+            Core.<*> (o Core..:? "telephonySynthesizeSpeech")
+            Core.<*> (o Core..:? "telephonyTransferCall")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentMessage where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("basicCard" Core..=) Core.<$> basicCard,
+            ("browseCarouselCard" Core..=) Core.<$> browseCarouselCard,
+            ("card" Core..=) Core.<$> card,
+            ("carouselSelect" Core..=) Core.<$> carouselSelect,
+            ("image" Core..=) Core.<$> image,
+            ("linkOutSuggestion" Core..=) Core.<$> linkOutSuggestion,
+            ("listSelect" Core..=) Core.<$> listSelect,
+            ("mediaContent" Core..=) Core.<$> mediaContent,
+            ("payload" Core..=) Core.<$> payload,
+            ("platform" Core..=) Core.<$> platform,
+            ("quickReplies" Core..=) Core.<$> quickReplies,
+            ("rbmCarouselRichCard" Core..=) Core.<$> rbmCarouselRichCard,
+            ("rbmStandaloneRichCard" Core..=) Core.<$> rbmStandaloneRichCard,
+            ("rbmText" Core..=) Core.<$> rbmText,
+            ("simpleResponses" Core..=) Core.<$> simpleResponses,
+            ("suggestions" Core..=) Core.<$> suggestions,
+            ("tableCard" Core..=) Core.<$> tableCard,
+            ("telephonyPlayAudio" Core..=) Core.<$> telephonyPlayAudio,
+            ("telephonySynthesizeSpeech" Core..=)
+              Core.<$> telephonySynthesizeSpeech,
+            ("telephonyTransferCall" Core..=) Core.<$> telephonyTransferCall,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | A custom platform-specific response.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessage_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessage_Payload = GoogleCloudDialogflowV2beta1IntentMessage_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessage_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessage_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1IntentMessage_Payload
+newGoogleCloudDialogflowV2beta1IntentMessage_Payload additional =
+  GoogleCloudDialogflowV2beta1IntentMessage_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessage_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessage_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessage_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessage_Payload
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessage_Payload {..} =
+    Core.toJSON additional
+
+-- | The basic card message. Useful for displaying information.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBasicCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageBasicCard = GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+  { -- | Optional. The collection of card buttons.
+    buttons ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton]
+      ),
+    -- | Required, unless image is present. The body text of the card.
+    formattedText :: (Core.Maybe Core.Text),
+    -- | Optional. The image for the card.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Optional. The subtitle of the card.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCard =
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+    { buttons =
+        Core.Nothing,
+      formattedText = Core.Nothing,
+      image = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBasicCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "formattedText")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageBasicCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("formattedText" Core..=) Core.<$> formattedText,
+            ("image" Core..=) Core.<$> image,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | The button object that appears at the bottom of a card.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton = GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+  { -- | Required. Action to take when a user taps on the button.
+    openUriAction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+      ),
+    -- | Required. The title of the button.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton ::
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton =
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+    { openUriAction =
+        Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+            Core.<$> (o Core..:? "openUriAction")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("openUriAction" Core..=) Core.<$> openUriAction,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Opens the given URI.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction = GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+  { -- | Required. The HTTP or HTTPS scheme URI.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction ::
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction =
+  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+    { uri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction {..} =
+      Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Browse Carousel Card for Actions on Google. https:\/\/developers.google.com\/actions\/assistant\/responses#browsing_carousel
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+  { -- | Optional. Settings for displaying the image. Applies to every image in items.
+    imageDisplayOptions ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+      ),
+    -- | Required. List of items in the Browse Carousel Card. Minimum of two items, maximum of ten.
+    items ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard =
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+    { imageDisplayOptions =
+        Core.Nothing,
+      items = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+            Core.<$> (o Core..:? "imageDisplayOptions")
+            Core.<*> (o Core..:? "items")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("imageDisplayOptions" Core..=) Core.<$> imageDisplayOptions,
+              ("items" Core..=) Core.<$> items
+            ]
+        )
+
+-- | Browsing carousel tile
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  { -- | Optional. Description of the carousel item. Maximum of four lines of text.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. Text that appears at the bottom of the Browse Carousel Card. Maximum of one line of text.
+    footer :: (Core.Maybe Core.Text),
+    -- | Optional. Hero image for the carousel item.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Required. Action to present to the user.
+    openUriAction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+      ),
+    -- | Required. Title of the carousel item. Maximum of two lines of text.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem ::
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem =
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    { description =
+        Core.Nothing,
+      footer =
+        Core.Nothing,
+      image =
+        Core.Nothing,
+      openUriAction =
+        Core.Nothing,
+      title =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "footer")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "openUriAction")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("description" Core..=) Core.<$> description,
+              ("footer" Core..=) Core.<$> footer,
+              ("image" Core..=) Core.<$> image,
+              ("openUriAction" Core..=) Core.<$> openUriAction,
+              ("title" Core..=) Core.<$> title
+            ]
+        )
+
+-- | Actions on Google action to open a given url.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  { -- | Required. URL
+    url :: (Core.Maybe Core.Text),
+    -- | Optional. Specifies the type of viewer that is used when opening the URL. Defaults to opening via web browser.
+    urlTypeHint ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction ::
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction =
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    { url =
+        Core.Nothing,
+      urlTypeHint =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+            Core.<$> (o Core..:? "url")
+            Core.<*> (o Core..:? "urlTypeHint")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("url" Core..=) Core.<$> url,
+              ("urlTypeHint" Core..=) Core.<$> urlTypeHint
+            ]
+        )
+
+-- | The card response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageCard = GoogleCloudDialogflowV2beta1IntentMessageCard
+  { -- | Optional. The collection of card buttons.
+    buttons :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentMessageCardButton]),
+    -- | Optional. The public URI to an image file for the card.
+    imageUri :: (Core.Maybe Core.Text),
+    -- | Optional. The subtitle of the card.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageCard
+newGoogleCloudDialogflowV2beta1IntentMessageCard =
+  GoogleCloudDialogflowV2beta1IntentMessageCard
+    { buttons =
+        Core.Nothing,
+      imageUri = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "imageUri")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentMessageCard where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("imageUri" Core..=) Core.<$> imageUri,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Optional. Contains information about a button.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageCardButton' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageCardButton = GoogleCloudDialogflowV2beta1IntentMessageCardButton
+  { -- | Optional. The text to send back to the Dialogflow API or a URI to open.
+    postback :: (Core.Maybe Core.Text),
+    -- | Optional. The text to show on the button.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCardButton' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageCardButton ::
+  GoogleCloudDialogflowV2beta1IntentMessageCardButton
+newGoogleCloudDialogflowV2beta1IntentMessageCardButton =
+  GoogleCloudDialogflowV2beta1IntentMessageCardButton
+    { postback =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCardButton
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageCardButton"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageCardButton
+            Core.<$> (o Core..:? "postback")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCardButton
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageCardButton {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("postback" Core..=) Core.<$> postback,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | The card for presenting a carousel of options to select from.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect = GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+  { -- | Required. Carousel items.
+    items ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect ::
+  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect =
+  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+    { items =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+            Core.<$> (o Core..:? "items")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect {..} =
+    Core.object (Core.catMaybes [("items" Core..=) Core.<$> items])
+
+-- | An item in the carousel.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem = GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+  { -- | Optional. The body text of the card.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. The image to display.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Required. Additional info about the option item.
+    info ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+      ),
+    -- | Required. Title of the carousel item.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem ::
+  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem =
+  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+    { description =
+        Core.Nothing,
+      image = Core.Nothing,
+      info = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "info")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("description" Core..=) Core.<$> description,
+              ("image" Core..=) Core.<$> image,
+              ("info" Core..=) Core.<$> info,
+              ("title" Core..=) Core.<$> title
+            ]
+        )
+
+-- | Column properties for TableCard.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageColumnProperties = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+  { -- | Required. Column heading.
+    header :: (Core.Maybe Core.Text),
+    -- | Optional. Defines text alignment for all cells in this column.
+    horizontalAlignment ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageColumnProperties' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties ::
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties =
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+    { header =
+        Core.Nothing,
+      horizontalAlignment = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageColumnProperties"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+            Core.<$> (o Core..:? "header")
+            Core.<*> (o Core..:? "horizontalAlignment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("header" Core..=) Core.<$> header,
+              ("horizontalAlignment" Core..=) Core.<$> horizontalAlignment
+            ]
+        )
+
+-- | The image response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageImage' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageImage = GoogleCloudDialogflowV2beta1IntentMessageImage
+  { -- | A text description of the image to be used for accessibility, e.g., screen readers. Required if image_uri is set for CarouselSelect.
+    accessibilityText :: (Core.Maybe Core.Text),
+    -- | Optional. The public URI to an image file.
+    imageUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageImage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageImage ::
+  GoogleCloudDialogflowV2beta1IntentMessageImage
+newGoogleCloudDialogflowV2beta1IntentMessageImage =
+  GoogleCloudDialogflowV2beta1IntentMessageImage
+    { accessibilityText =
+        Core.Nothing,
+      imageUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageImage
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageImage"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageImage
+            Core.<$> (o Core..:? "accessibilityText")
+            Core.<*> (o Core..:? "imageUri")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentMessageImage where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageImage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accessibilityText" Core..=) Core.<$> accessibilityText,
+            ("imageUri" Core..=) Core.<$> imageUri
+          ]
+      )
+
+-- | The suggestion chip message that allows the user to jump out to the app or website associated with this agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion = GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+  { -- | Required. The name of the app or site this chip is linking to.
+    destinationName :: (Core.Maybe Core.Text),
+    -- | Required. The URI of the app or site to open when the user taps the suggestion chip.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion ::
+  GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion =
+  GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+    { destinationName =
+        Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+            Core.<$> (o Core..:? "destinationName")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("destinationName" Core..=) Core.<$> destinationName,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | The card for presenting a list of options to select from.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageListSelect' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageListSelect = GoogleCloudDialogflowV2beta1IntentMessageListSelect
+  { -- | Required. List items.
+    items ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageListSelectItem]
+      ),
+    -- | Optional. Subtitle of the list.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Optional. The overall title of the list.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageListSelect' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageListSelect ::
+  GoogleCloudDialogflowV2beta1IntentMessageListSelect
+newGoogleCloudDialogflowV2beta1IntentMessageListSelect =
+  GoogleCloudDialogflowV2beta1IntentMessageListSelect
+    { items =
+        Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageListSelect
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageListSelect"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageListSelect
+            Core.<$> (o Core..:? "items")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageListSelect
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageListSelect {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("items" Core..=) Core.<$> items,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | An item in the list.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageListSelectItem = GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+  { -- | Optional. The main text describing the item.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. The image to display.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Required. Additional information about this option.
+    info ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+      ),
+    -- | Required. The title of the list item.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageListSelectItem' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem ::
+  GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem =
+  GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+    { description =
+        Core.Nothing,
+      image = Core.Nothing,
+      info = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "info")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageListSelectItem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("image" Core..=) Core.<$> image,
+            ("info" Core..=) Core.<$> info,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | The media content card for Actions on Google.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageMediaContent' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageMediaContent = GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+  { -- | Required. List of media objects.
+    mediaObjects ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject]
+      ),
+    -- | Optional. What type of media is the content (ie \"audio\").
+    mediaType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageMediaContent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageMediaContent ::
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+newGoogleCloudDialogflowV2beta1IntentMessageMediaContent =
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+    { mediaObjects =
+        Core.Nothing,
+      mediaType = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageMediaContent"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+            Core.<$> (o Core..:? "mediaObjects")
+            Core.<*> (o Core..:? "mediaType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageMediaContent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("mediaObjects" Core..=) Core.<$> mediaObjects,
+            ("mediaType" Core..=) Core.<$> mediaType
+          ]
+      )
+
+-- | Response media object for media content card.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject = GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+  { -- | Required. Url where the media is stored.
+    contentUrl :: (Core.Maybe Core.Text),
+    -- | Optional. Description of media card.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. Icon to display above media content.
+    icon :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Optional. Image to display above media content.
+    largeImage :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Required. Name of media card.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject ::
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject =
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+    { contentUrl =
+        Core.Nothing,
+      description =
+        Core.Nothing,
+      icon = Core.Nothing,
+      largeImage =
+        Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+            Core.<$> (o Core..:? "contentUrl")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "icon")
+            Core.<*> (o Core..:? "largeImage")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("contentUrl" Core..=) Core.<$> contentUrl,
+              ("description" Core..=) Core.<$> description,
+              ("icon" Core..=) Core.<$> icon,
+              ("largeImage" Core..=) Core.<$> largeImage,
+              ("name" Core..=) Core.<$> name
+            ]
+        )
+
+-- | The quick replies response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageQuickReplies = GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+  { -- | Optional. The collection of quick replies.
+    quickReplies :: (Core.Maybe [Core.Text]),
+    -- | Optional. The title of the collection of quick replies.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageQuickReplies' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies ::
+  GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies =
+  GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+    { quickReplies =
+        Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+            Core.<$> (o Core..:? "quickReplies")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageQuickReplies {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("quickReplies" Core..=) Core.<$> quickReplies,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Rich Business Messaging (RBM) Card content
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+  { -- | Optional. Description of the card (at most 2000 bytes). At least one of the title, description or media must be set.
+    description :: (Core.Maybe Core.Text),
+    -- | Optional. However at least one of the title, description or media must be set. Media (image, GIF or a video) to include in the card.
+    media ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+      ),
+    -- | Optional. List of suggestions to include in the card.
+    suggestions ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion]
+      ),
+    -- | Optional. Title of the card (at most 200 bytes). At least one of the title, description or media must be set.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+    { description =
+        Core.Nothing,
+      media = Core.Nothing,
+      suggestions = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "media")
+            Core.<*> (o Core..:? "suggestions")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("media" Core..=) Core.<$> media,
+            ("suggestions" Core..=) Core.<$> suggestions,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Rich Business Messaging (RBM) Media displayed in Cards The following media-types are currently supported: Image Types * image\/jpeg * image\/jpg\' * image\/gif * image\/png Video Types * video\/h263 * video\/m4v * video\/mp4 * video\/mpeg * video\/mpeg4 * video\/webm
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+  { -- | Required. Publicly reachable URI of the file. The RBM platform determines the MIME type of the file from the content-type field in the HTTP headers when the platform fetches the file. The content-type field must be present and accurate in the HTTP response from the URL.
+    fileUri :: (Core.Maybe Core.Text),
+    -- | Required for cards with vertical orientation. The height of the media within a rich card with a vertical layout. For a standalone card with horizontal layout, height is not customizable, and this field is ignored.
+    height ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+      ),
+    -- | Optional. Publicly reachable URI of the thumbnail.If you don\'t provide a thumbnail URI, the RBM platform displays a blank placeholder thumbnail until the user\'s device downloads the file. Depending on the user\'s setting, the file may not download automatically and may require the user to tap a download button.
+    thumbnailUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+    { fileUri =
+        Core.Nothing,
+      height = Core.Nothing,
+      thumbnailUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+            Core.<$> (o Core..:? "fileUri")
+            Core.<*> (o Core..:? "height")
+            Core.<*> (o Core..:? "thumbnailUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("fileUri" Core..=) Core.<$> fileUri,
+              ("height" Core..=) Core.<$> height,
+              ("thumbnailUri" Core..=) Core.<$> thumbnailUri
+            ]
+        )
+
+-- | Carousel Rich Business Messaging (RBM) rich card. Rich cards allow you to respond to users with more vivid content, e.g. with media and suggestions. If you want to show a single card with more control over the layout, please use RbmStandaloneCard instead.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard = GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+  { -- | Required. The cards in the carousel. A carousel must have at least 2 cards and at most 10.
+    cardContents ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent]
+      ),
+    -- | Required. The width of the cards in the carousel.
+    cardWidth ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+    { cardContents =
+        Core.Nothing,
+      cardWidth = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+            Core.<$> (o Core..:? "cardContents")
+            Core.<*> (o Core..:? "cardWidth")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("cardContents" Core..=) Core.<$> cardContents,
+            ("cardWidth" Core..=) Core.<$> cardWidth
+          ]
+      )
+
+-- | Standalone Rich Business Messaging (RBM) rich card. Rich cards allow you to respond to users with more vivid content, e.g. with media and suggestions. You can group multiple rich cards into one using RbmCarouselCard but carousel cards will give you less control over the card layout.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+  { -- | Required. Card content.
+    cardContent ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+      ),
+    -- | Required. Orientation of the card.
+    cardOrientation ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+      ),
+    -- | Required if orientation is horizontal. Image preview alignment for standalone cards with horizontal layout.
+    thumbnailImageAlignment ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+    { cardContent =
+        Core.Nothing,
+      cardOrientation = Core.Nothing,
+      thumbnailImageAlignment =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+            Core.<$> (o Core..:? "cardContent")
+            Core.<*> (o Core..:? "cardOrientation")
+            Core.<*> (o Core..:? "thumbnailImageAlignment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("cardContent" Core..=) Core.<$> cardContent,
+              ("cardOrientation" Core..=) Core.<$> cardOrientation,
+              ("thumbnailImageAlignment" Core..=)
+                Core.<$> thumbnailImageAlignment
+            ]
+        )
+
+-- | Rich Business Messaging (RBM) suggested client-side action that the user can choose from the card.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+  { -- | Suggested client side action: Dial a phone number
+    dial ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+      ),
+    -- | Suggested client side action: Open a URI on device
+    openUrl ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+      ),
+    -- | Opaque payload that the Dialogflow receives in a user event when the user taps the suggested action. This data will be also forwarded to webhook to allow performing custom business logic.
+    postbackData :: (Core.Maybe Core.Text),
+    -- | Suggested client side action: Share user location
+    shareLocation ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+      ),
+    -- | Text to display alongside the action.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+    { dial =
+        Core.Nothing,
+      openUrl = Core.Nothing,
+      postbackData = Core.Nothing,
+      shareLocation = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+            Core.<$> (o Core..:? "dial")
+            Core.<*> (o Core..:? "openUrl")
+            Core.<*> (o Core..:? "postbackData")
+            Core.<*> (o Core..:? "shareLocation")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("dial" Core..=) Core.<$> dial,
+              ("openUrl" Core..=) Core.<$> openUrl,
+              ("postbackData" Core..=) Core.<$> postbackData,
+              ("shareLocation" Core..=) Core.<$> shareLocation,
+              ("text" Core..=) Core.<$> text
+            ]
+        )
+
+-- | Opens the user\'s default dialer app with the specified phone number but does not dial automatically.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+  { -- | Required. The phone number to fill in the default dialer app. This field should be in <https://en.wikipedia.org/wiki/E.164 E.164> format. An example of a correctly formatted phone number: +15556767888.
+    phoneNumber :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+    { phoneNumber =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+            Core.<$> (o Core..:? "phoneNumber")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial {..} =
+      Core.object
+        (Core.catMaybes [("phoneNumber" Core..=) Core.<$> phoneNumber])
+
+-- | Opens the user\'s default web browser app to the specified uri If the user has an app installed that is registered as the default handler for the URL, then this app will be opened instead, and its icon will be used in the suggested action UI.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+  { -- | Required. The uri to open on the user device
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+    { uri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+            Core.<$> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri {..} =
+      Core.object (Core.catMaybes [("uri" Core..=) Core.<$> uri])
+
+-- | Opens the device\'s location chooser so the user can pick a location to send back to the agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Rich Business Messaging (RBM) suggested reply that the user can click instead of typing in their own response.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+  { -- | Opaque payload that the Dialogflow receives in a user event when the user taps the suggested reply. This data will be also forwarded to webhook to allow performing custom business logic.
+    postbackData :: (Core.Maybe Core.Text),
+    -- | Suggested reply text.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+    { postbackData =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+            Core.<$> (o Core..:? "postbackData")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("postbackData" Core..=) Core.<$> postbackData,
+              ("text" Core..=) Core.<$> text
+            ]
+        )
+
+-- | Rich Business Messaging (RBM) suggestion. Suggestions allow user to easily select\/click a predefined response or perform an action (like opening a web uri).
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion = GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+  { -- | Predefined client side actions that user can choose
+    action ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+      ),
+    -- | Predefined replies for user to select instead of typing
+    reply ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+    { action =
+        Core.Nothing,
+      reply = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "reply")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("reply" Core..=) Core.<$> reply
+          ]
+      )
+
+-- | Rich Business Messaging (RBM) text response with suggestions.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageRbmText' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageRbmText = GoogleCloudDialogflowV2beta1IntentMessageRbmText
+  { -- | Optional. One or more suggestions to show to the user.
+    rbmSuggestion ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion]
+      ),
+    -- | Required. Text sent and displayed to the user.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageRbmText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageRbmText ::
+  GoogleCloudDialogflowV2beta1IntentMessageRbmText
+newGoogleCloudDialogflowV2beta1IntentMessageRbmText =
+  GoogleCloudDialogflowV2beta1IntentMessageRbmText
+    { rbmSuggestion =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageRbmText"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageRbmText
+            Core.<$> (o Core..:? "rbmSuggestion")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageRbmText
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageRbmText {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("rbmSuggestion" Core..=) Core.<$> rbmSuggestion,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Additional info about the select item for when it is triggered in a dialog.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo = GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+  { -- | Required. A unique key that will be sent back to the agent if this response is given.
+    key :: (Core.Maybe Core.Text),
+    -- | Optional. A list of synonyms that can also be used to trigger this item in dialog.
+    synonyms :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo ::
+  GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo =
+  GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+    { key =
+        Core.Nothing,
+      synonyms = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+            Core.<$> (o Core..:? "key")
+            Core.<*> (o Core..:? "synonyms")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("key" Core..=) Core.<$> key,
+            ("synonyms" Core..=) Core.<$> synonyms
+          ]
+      )
+
+-- | The simple response message containing speech or text.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse = GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+  { -- | Optional. The text to display.
+    displayText :: (Core.Maybe Core.Text),
+    -- | One of text/to/speech or ssml must be provided. Structured spoken response to the user in the SSML format. Mutually exclusive with text/to/speech.
+    ssml :: (Core.Maybe Core.Text),
+    -- | One of text/to/speech or ssml must be provided. The plain text of the speech output. Mutually exclusive with ssml.
+    textToSpeech :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse ::
+  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse =
+  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+    { displayText =
+        Core.Nothing,
+      ssml = Core.Nothing,
+      textToSpeech = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+            Core.<$> (o Core..:? "displayText")
+            Core.<*> (o Core..:? "ssml")
+            Core.<*> (o Core..:? "textToSpeech")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayText" Core..=) Core.<$> displayText,
+            ("ssml" Core..=) Core.<$> ssml,
+            ("textToSpeech" Core..=) Core.<$> textToSpeech
+          ]
+      )
+
+-- | The collection of simple response candidates. This message in @QueryResult.fulfillment_messages@ and @WebhookResponse.fulfillment_messages@ should contain only one @SimpleResponse@.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses = GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+  { -- | Required. The list of simple responses.
+    simpleResponses ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses ::
+  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses =
+  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+    { simpleResponses =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+            Core.<$> (o Core..:? "simpleResponses")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses {..} =
+    Core.object
+      ( Core.catMaybes
+          [("simpleResponses" Core..=) Core.<$> simpleResponses]
+      )
+
+-- | The suggestion chip message that the user can tap to quickly post a reply to the conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageSuggestion' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageSuggestion = GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+  { -- | Required. The text shown the in the suggestion chip.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageSuggestion ::
+  GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+newGoogleCloudDialogflowV2beta1IntentMessageSuggestion =
+  GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+    { title =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+            Core.<$> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageSuggestion {..} =
+    Core.object (Core.catMaybes [("title" Core..=) Core.<$> title])
+
+-- | The collection of suggestions.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageSuggestions' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageSuggestions = GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+  { -- | Required. The list of suggested replies.
+    suggestions :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentMessageSuggestion])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSuggestions' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageSuggestions ::
+  GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+newGoogleCloudDialogflowV2beta1IntentMessageSuggestions =
+  GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+    { suggestions =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageSuggestions"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+            Core.<$> (o Core..:? "suggestions")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageSuggestions {..} =
+    Core.object
+      (Core.catMaybes [("suggestions" Core..=) Core.<$> suggestions])
+
+-- | Table card for Actions on Google.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTableCard' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageTableCard = GoogleCloudDialogflowV2beta1IntentMessageTableCard
+  { -- | Optional. List of buttons for the card.
+    buttons ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton]
+      ),
+    -- | Optional. Display properties for the columns in this table.
+    columnProperties ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageColumnProperties]
+      ),
+    -- | Optional. Image which should be displayed on the card.
+    image :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentMessageImage),
+    -- | Optional. Rows in this table of data.
+    rows ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageTableCardRow]
+      ),
+    -- | Optional. Subtitle to the title.
+    subtitle :: (Core.Maybe Core.Text),
+    -- | Required. Title of the card.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTableCard' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTableCard ::
+  GoogleCloudDialogflowV2beta1IntentMessageTableCard
+newGoogleCloudDialogflowV2beta1IntentMessageTableCard =
+  GoogleCloudDialogflowV2beta1IntentMessageTableCard
+    { buttons =
+        Core.Nothing,
+      columnProperties = Core.Nothing,
+      image = Core.Nothing,
+      rows = Core.Nothing,
+      subtitle = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCard
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTableCard"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTableCard
+            Core.<$> (o Core..:? "buttons")
+            Core.<*> (o Core..:? "columnProperties")
+            Core.<*> (o Core..:? "image")
+            Core.<*> (o Core..:? "rows")
+            Core.<*> (o Core..:? "subtitle")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCard
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageTableCard {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("buttons" Core..=) Core.<$> buttons,
+            ("columnProperties" Core..=) Core.<$> columnProperties,
+            ("image" Core..=) Core.<$> image,
+            ("rows" Core..=) Core.<$> rows,
+            ("subtitle" Core..=) Core.<$> subtitle,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Cell of TableCardRow.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageTableCardCell = GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+  { -- | Required. Text in this cell.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTableCardCell' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell ::
+  GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell =
+  GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+    { text =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTableCardCell"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+            Core.<$> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageTableCardCell {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Row of TableCard.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageTableCardRow = GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+  { -- | Optional. List of cells that make up this row.
+    cells ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1IntentMessageTableCardCell]
+      ),
+    -- | Optional. Whether to add a visual divider after this row.
+    dividerAfter :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTableCardRow' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow ::
+  GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow =
+  GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+    { cells =
+        Core.Nothing,
+      dividerAfter = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTableCardRow"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+            Core.<$> (o Core..:? "cells")
+            Core.<*> (o Core..:? "dividerAfter")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageTableCardRow {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("cells" Core..=) Core.<$> cells,
+            ("dividerAfter" Core..=) Core.<$> dividerAfter
+          ]
+      )
+
+-- | Plays audio from a file in Telephony Gateway.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio = GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+  { -- | Required. URI to a Google Cloud Storage object containing the audio to play, e.g., \"gs:\/\/bucket\/object\". The object must contain a single channel (mono) of linear PCM audio (2 bytes \/ sample) at 8kHz. This object must be readable by the @service-\@gcp-sa-dialogflow.iam.gserviceaccount.com@ service account where is the number of the Telephony Gateway project (usually the same as the Dialogflow agent project). If the Google Cloud Storage bucket is in the Telephony Gateway project, this permission is added by default when enabling the Dialogflow V2 API. For audio from other sources, consider using the @TelephonySynthesizeSpeech@ message with SSML.
+    audioUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio ::
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio =
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+    { audioUri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+            Core.<$> (o Core..:? "audioUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio {..} =
+      Core.object
+        (Core.catMaybes [("audioUri" Core..=) Core.<$> audioUri])
+
+-- | Synthesizes speech and plays back the synthesized audio to the caller in Telephony Gateway. Telephony Gateway takes the synthesizer settings from @DetectIntentResponse.output_audio_config@ which can either be set at request-level or can come from the agent-level synthesizer config.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech = GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+  { -- | The SSML to be synthesized. For more information, see <https://developers.google.com/actions/reference/ssml SSML>.
+    ssml :: (Core.Maybe Core.Text),
+    -- | The raw text to be synthesized.
+    text :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech ::
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech =
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+    { ssml =
+        Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+            Core.<$> (o Core..:? "ssml")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech {..} =
+      Core.object
+        ( Core.catMaybes
+            [("ssml" Core..=) Core.<$> ssml, ("text" Core..=) Core.<$> text]
+        )
+
+-- | Transfers the call in Telephony Gateway.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall = GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+  { -- | Required. The phone number to transfer the call to in <https://en.wikipedia.org/wiki/E.164 E.164 format>. We currently only allow transferring to US numbers (+1xxxyyyzzzz).
+    phoneNumber :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall ::
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall =
+  GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+    { phoneNumber =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+            Core.<$> (o Core..:? "phoneNumber")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall {..} =
+      Core.object
+        (Core.catMaybes [("phoneNumber" Core..=) Core.<$> phoneNumber])
+
+-- | The text response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentMessageText' smart constructor.
+newtype GoogleCloudDialogflowV2beta1IntentMessageText = GoogleCloudDialogflowV2beta1IntentMessageText
+  { -- | Optional. The collection of the agent\'s responses.
+    text :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentMessageText ::
+  GoogleCloudDialogflowV2beta1IntentMessageText
+newGoogleCloudDialogflowV2beta1IntentMessageText =
+  GoogleCloudDialogflowV2beta1IntentMessageText
+    { text =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentMessageText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentMessageText"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentMessageText
+            Core.<$> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentMessageText where
+  toJSON GoogleCloudDialogflowV2beta1IntentMessageText {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | Represents intent parameters.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentParameter' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentParameter = GoogleCloudDialogflowV2beta1IntentParameter
+  { -- | Optional. The default value to use when the @value@ yields an empty result. Default values can be extracted from contexts by using the following syntax: @#context_name.parameter_name@.
+    defaultValue :: (Core.Maybe Core.Text),
+    -- | Required. The name of the parameter.
+    displayName :: (Core.Maybe Core.Text),
+    -- | Optional. The name of the entity type, prefixed with @\@@, that describes values of the parameter. If the parameter is required, this must be provided.
+    entityTypeDisplayName :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates whether the parameter represents a list of values.
+    isList :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates whether the parameter is required. That is, whether the intent cannot be completed without collecting the parameter value.
+    mandatory :: (Core.Maybe Core.Bool),
+    -- | The unique identifier of this parameter.
+    name :: (Core.Maybe Core.Text),
+    -- | Optional. The collection of prompts that the agent can present to the user in order to collect a value for the parameter.
+    prompts :: (Core.Maybe [Core.Text]),
+    -- | Optional. The definition of the parameter value. It can be: - a constant string, - a parameter value defined as @$parameter_name@, - an original parameter value defined as @$parameter_name.original@, - a parameter value from some context defined as @#context_name.parameter_name@.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentParameter' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentParameter ::
+  GoogleCloudDialogflowV2beta1IntentParameter
+newGoogleCloudDialogflowV2beta1IntentParameter =
+  GoogleCloudDialogflowV2beta1IntentParameter
+    { defaultValue =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      entityTypeDisplayName = Core.Nothing,
+      isList = Core.Nothing,
+      mandatory = Core.Nothing,
+      name = Core.Nothing,
+      prompts = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1IntentParameter where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentParameter"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentParameter
+            Core.<$> (o Core..:? "defaultValue")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "entityTypeDisplayName")
+            Core.<*> (o Core..:? "isList")
+            Core.<*> (o Core..:? "mandatory")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "prompts")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentParameter where
+  toJSON GoogleCloudDialogflowV2beta1IntentParameter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("defaultValue" Core..=) Core.<$> defaultValue,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("entityTypeDisplayName" Core..=) Core.<$> entityTypeDisplayName,
+            ("isList" Core..=) Core.<$> isList,
+            ("mandatory" Core..=) Core.<$> mandatory,
+            ("name" Core..=) Core.<$> name,
+            ("prompts" Core..=) Core.<$> prompts,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Represents an intent suggestion.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentSuggestion' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentSuggestion = GoogleCloudDialogflowV2beta1IntentSuggestion
+  { -- | Human readable description for better understanding an intent like its scope, content, result etc. Maximum character limit: 140 characters.
+    description :: (Core.Maybe Core.Text),
+    -- | The display name of the intent.
+    displayName :: (Core.Maybe Core.Text),
+    -- | The unique identifier of this intent. Format: @projects\/\/locations\/\/agent\/intents\/@.
+    intentV2 :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentSuggestion' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentSuggestion ::
+  GoogleCloudDialogflowV2beta1IntentSuggestion
+newGoogleCloudDialogflowV2beta1IntentSuggestion =
+  GoogleCloudDialogflowV2beta1IntentSuggestion
+    { description =
+        Core.Nothing,
+      displayName = Core.Nothing,
+      intentV2 = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1IntentSuggestion where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentSuggestion"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentSuggestion
+            Core.<$> (o Core..:? "description")
+            Core.<*> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "intentV2")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1IntentSuggestion where
+  toJSON GoogleCloudDialogflowV2beta1IntentSuggestion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("description" Core..=) Core.<$> description,
+            ("displayName" Core..=) Core.<$> displayName,
+            ("intentV2" Core..=) Core.<$> intentV2
+          ]
+      )
+
+-- | Represents an example that the agent is trained on.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentTrainingPhrase' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentTrainingPhrase = GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+  { -- | Output only. The unique identifier of this training phrase.
+    name :: (Core.Maybe Core.Text),
+    -- | Required. The ordered list of training phrase parts. The parts are concatenated in order to form the training phrase. Note: The API does not automatically annotate training phrases like the Dialogflow Console does. Note: Do not forget to include whitespace at part boundaries, so the training phrase is well formatted when the parts are concatenated. If the training phrase does not need to be annotated with parameters, you just need a single part with only the Part.text field set. If you want to annotate the training phrase, you must create multiple parts, where the fields of each part are populated in one of two ways: - @Part.text@ is set to a part of the phrase that has no parameters. - @Part.text@ is set to a part of the phrase that you want to annotate, and the @entity_type@, @alias@, and @user_defined@ fields are all set.
+    parts :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart]),
+    -- | Optional. Indicates how many times this example was added to the intent. Each time a developer adds an existing sample by editing an intent or training, this counter is increased.
+    timesAddedCount :: (Core.Maybe Core.Int32),
+    -- | Required. The type of the training phrase.
+    type' :: (Core.Maybe GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentTrainingPhrase' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentTrainingPhrase ::
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+newGoogleCloudDialogflowV2beta1IntentTrainingPhrase =
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+    { name =
+        Core.Nothing,
+      parts = Core.Nothing,
+      timesAddedCount = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentTrainingPhrase"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "parts")
+            Core.<*> (o Core..:? "timesAddedCount")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentTrainingPhrase {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("name" Core..=) Core.<$> name,
+            ("parts" Core..=) Core.<$> parts,
+            ("timesAddedCount" Core..=) Core.<$> timesAddedCount,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Represents a part of a training phrase.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart' smart constructor.
+data GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart = GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+  { -- | Optional. The parameter name for the value extracted from the annotated part of the example. This field is required for annotated parts of the training phrase.
+    alias :: (Core.Maybe Core.Text),
+    -- | Optional. The entity type name prefixed with @\@@. This field is required for annotated parts of the training phrase.
+    entityType :: (Core.Maybe Core.Text),
+    -- | Required. The text for this part.
+    text :: (Core.Maybe Core.Text),
+    -- | Optional. Indicates whether the text was manually annotated. This field is set to true when the Dialogflow Console is used to manually annotate the part. When creating an annotated part with the API, you must set this to true.
+    userDefined :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart ::
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart =
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+    { alias =
+        Core.Nothing,
+      entityType = Core.Nothing,
+      text = Core.Nothing,
+      userDefined = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+            Core.<$> (o Core..:? "alias")
+            Core.<*> (o Core..:? "entityType")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "userDefined")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+  where
+  toJSON GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("alias" Core..=) Core.<$> alias,
+            ("entityType" Core..=) Core.<$> entityType,
+            ("text" Core..=) Core.<$> text,
+            ("userDefined" Core..=) Core.<$> userDefined
+          ]
+      )
+
+-- | Represents the result of querying a Knowledge base.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAnswers' smart constructor.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAnswers = GoogleCloudDialogflowV2beta1KnowledgeAnswers
+  { -- | A list of answers from Knowledge Connector.
+    answers :: (Core.Maybe [GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAnswers' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAnswers ::
+  GoogleCloudDialogflowV2beta1KnowledgeAnswers
+newGoogleCloudDialogflowV2beta1KnowledgeAnswers =
+  GoogleCloudDialogflowV2beta1KnowledgeAnswers
+    { answers =
+        Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1KnowledgeAnswers where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAnswers"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAnswers
+            Core.<$> (o Core..:? "answers")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1KnowledgeAnswers where
+  toJSON GoogleCloudDialogflowV2beta1KnowledgeAnswers {..} =
+    Core.object
+      (Core.catMaybes [("answers" Core..=) Core.<$> answers])
+
+-- | An answer from Knowledge Connector.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+  { -- | The piece of text from the @source@ knowledge base document that answers this conversational query.
+    answer :: (Core.Maybe Core.Text),
+    -- | The corresponding FAQ question if the answer was extracted from a FAQ Document, empty otherwise.
+    faqQuestion :: (Core.Maybe Core.Text),
+    -- | The system\'s confidence score that this Knowledge answer is a good match for this conversational query. The range is from 0.0 (completely uncertain) to 1.0 (completely certain). Note: The confidence score is likely to vary somewhat (possibly even for identical requests), as the underlying model is under constant improvement. It may be deprecated in the future. We recommend using @match_confidence_level@ which should be generally more stable.
+    matchConfidence :: (Core.Maybe Core.Double),
+    -- | The system\'s confidence level that this knowledge answer is a good match for this conversational query. NOTE: The confidence level for a given \`\` pair may change without notice, as it depends on models that are constantly being improved. However, it will change less frequently than the confidence score below, and should be preferred for referencing the quality of an answer.
+    matchConfidenceLevel ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+      ),
+    -- | Indicates which Knowledge Document this answer was extracted from. Format: @projects\/\/knowledgeBases\/\/documents\/@.
+    source :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer ::
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer =
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+    { answer =
+        Core.Nothing,
+      faqQuestion = Core.Nothing,
+      matchConfidence = Core.Nothing,
+      matchConfidenceLevel = Core.Nothing,
+      source = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+            Core.<$> (o Core..:? "answer")
+            Core.<*> (o Core..:? "faqQuestion")
+            Core.<*> (o Core..:? "matchConfidence")
+            Core.<*> (o Core..:? "matchConfidenceLevel")
+            Core.<*> (o Core..:? "source")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+  where
+  toJSON GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answer" Core..=) Core.<$> answer,
+            ("faqQuestion" Core..=) Core.<$> faqQuestion,
+            ("matchConfidence" Core..=) Core.<$> matchConfidence,
+            ("matchConfidenceLevel" Core..=) Core.<$> matchConfidenceLevel,
+            ("source" Core..=) Core.<$> source
+          ]
+      )
+
+-- | Represents a Knowledge Assist answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+  { -- | The name of the answer record. Format: @projects\/\/locations\/\/answer Records\/@.
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | The query suggested based on the context. Suggestion is made only if it is different from the previous suggestion.
+    suggestedQuery ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+      ),
+    -- | The answer generated for the suggested query. Whether or not an answer is generated depends on how confident we are about the generated query.
+    suggestedQueryAnswer ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+    { answerRecord =
+        Core.Nothing,
+      suggestedQuery = Core.Nothing,
+      suggestedQueryAnswer = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "suggestedQuery")
+            Core.<*> (o Core..:? "suggestedQueryAnswer")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+  where
+  toJSON GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("suggestedQuery" Core..=) Core.<$> suggestedQuery,
+            ("suggestedQueryAnswer" Core..=) Core.<$> suggestedQueryAnswer
+          ]
+      )
+
+-- | Represents an answer from Knowledge. Currently supports FAQ and Generative answers.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+  { -- | The piece of text from the @source@ that answers this suggested query.
+    answerText :: (Core.Maybe Core.Text),
+    -- | Populated if the prediction came from FAQ.
+    faqSource ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+      ),
+    -- | Populated if the prediction was Generative.
+    generativeSource ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+    { answerText =
+        Core.Nothing,
+      faqSource = Core.Nothing,
+      generativeSource =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+            Core.<$> (o Core..:? "answerText")
+            Core.<*> (o Core..:? "faqSource")
+            Core.<*> (o Core..:? "generativeSource")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("answerText" Core..=) Core.<$> answerText,
+              ("faqSource" Core..=) Core.<$> faqSource,
+              ("generativeSource" Core..=) Core.<$> generativeSource
+            ]
+        )
+
+-- | Details about source of FAQ answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource' smart constructor.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  { -- | The corresponding FAQ question.
+    question :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    { question =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+            Core.<$> (o Core..:? "question")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource {..} =
+      Core.object
+        (Core.catMaybes [("question" Core..=) Core.<$> question])
+
+-- | Details about source of Generative answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource' smart constructor.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  { -- | All snippets used for this Generative Prediction, with their source URI and data.
+    snippets ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    { snippets =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+            Core.<$> (o Core..:? "snippets")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource {..} =
+      Core.object
+        (Core.catMaybes [("snippets" Core..=) Core.<$> snippets])
+
+-- | Snippet Source for a Generative Prediction.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet' smart constructor.
+data GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  { -- | Metadata of the document.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+      ),
+    -- | Text taken from that URI.
+    text :: (Core.Maybe Core.Text),
+    -- | Title of the document.
+    title :: (Core.Maybe Core.Text),
+    -- | URI the data is sourced from.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    { metadata =
+        Core.Nothing,
+      text =
+        Core.Nothing,
+      title =
+        Core.Nothing,
+      uri =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+            Core.<$> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "text")
+            Core.<*> (o Core..:? "title")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("metadata" Core..=) Core.<$> metadata,
+              ("text" Core..=) Core.<$> text,
+              ("title" Core..=) Core.<$> title,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | Metadata of the document.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  additional =
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata {..} =
+      Core.toJSON additional
+
+-- | Represents a suggested query.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery' smart constructor.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery = GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+  { -- | Suggested query text.
+    queryText :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery ::
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery =
+  GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+    { queryText =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+            Core.<$> (o Core..:? "queryText")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery {..} =
+      Core.object
+        (Core.catMaybes [("queryText" Core..=) Core.<$> queryText])
+
+-- | Metadata in google::longrunning::Operation for Knowledge operations.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+  { -- | Metadata for the Export Data Operation such as the destination of export.
+    exportOperationMetadata :: (Core.Maybe GoogleCloudDialogflowV2beta1ExportOperationMetadata),
+    -- | The name of the knowledge base interacted with during the operation.
+    knowledgeBase :: (Core.Maybe Core.Text),
+    -- | Required. Output only. The current state of this operation.
+    state ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata ::
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata =
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+    { exportOperationMetadata =
+        Core.Nothing,
+      knowledgeBase = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+            Core.<$> (o Core..:? "exportOperationMetadata")
+            Core.<*> (o Core..:? "knowledgeBase")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+  where
+  toJSON GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("exportOperationMetadata" Core..=)
+              Core.<$> exportOperationMetadata,
+            ("knowledgeBase" Core..=) Core.<$> knowledgeBase,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Represents a message posted into a conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1Message' smart constructor.
+data GoogleCloudDialogflowV2beta1Message = GoogleCloudDialogflowV2beta1Message
+  { -- | Required. The message content.
+    content :: (Core.Maybe Core.Text),
+    -- | Output only. The time when the message was created in Contact Center AI.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Optional. The message language. This should be a <https://www.rfc-editor.org/rfc/bcp/bcp47.txt BCP-47> language tag. Example: \"en-US\".
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Output only. The annotation for the message.
+    messageAnnotation :: (Core.Maybe GoogleCloudDialogflowV2beta1MessageAnnotation),
+    -- | Optional. The unique identifier of the message. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    name :: (Core.Maybe Core.Text),
+    -- | Output only. The participant that sends this message.
+    participant :: (Core.Maybe Core.Text),
+    -- | Output only. The role of the participant.
+    participantRole :: (Core.Maybe GoogleCloudDialogflowV2beta1Message_ParticipantRole),
+    -- | Optional. Automated agent responses.
+    responseMessages :: (Core.Maybe [GoogleCloudDialogflowV2beta1ResponseMessage]),
+    -- | Optional. The time when the message was sent. For voice messages, this is the time when an utterance started.
+    sendTime :: (Core.Maybe Core.DateTime),
+    -- | Output only. The sentiment analysis result for the message.
+    sentimentAnalysis :: (Core.Maybe GoogleCloudDialogflowV2beta1SentimentAnalysisResult)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1Message' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1Message ::
+  GoogleCloudDialogflowV2beta1Message
+newGoogleCloudDialogflowV2beta1Message =
+  GoogleCloudDialogflowV2beta1Message
+    { content = Core.Nothing,
+      createTime = Core.Nothing,
+      languageCode = Core.Nothing,
+      messageAnnotation = Core.Nothing,
+      name = Core.Nothing,
+      participant = Core.Nothing,
+      participantRole = Core.Nothing,
+      responseMessages = Core.Nothing,
+      sendTime = Core.Nothing,
+      sentimentAnalysis = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1Message where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1Message"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1Message
+            Core.<$> (o Core..:? "content")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "messageAnnotation")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "participant")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "responseMessages")
+            Core.<*> (o Core..:? "sendTime")
+            Core.<*> (o Core..:? "sentimentAnalysis")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1Message where
+  toJSON GoogleCloudDialogflowV2beta1Message {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("content" Core..=) Core.<$> content,
+            ("createTime" Core..=) Core.<$> createTime,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("messageAnnotation" Core..=) Core.<$> messageAnnotation,
+            ("name" Core..=) Core.<$> name,
+            ("participant" Core..=) Core.<$> participant,
+            ("participantRole" Core..=) Core.<$> participantRole,
+            ("responseMessages" Core..=) Core.<$> responseMessages,
+            ("sendTime" Core..=) Core.<$> sendTime,
+            ("sentimentAnalysis" Core..=) Core.<$> sentimentAnalysis
+          ]
+      )
+
+-- | Represents the result of annotation for the message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1MessageAnnotation' smart constructor.
+data GoogleCloudDialogflowV2beta1MessageAnnotation = GoogleCloudDialogflowV2beta1MessageAnnotation
+  { -- | Required. Indicates whether the text message contains entities.
+    containEntities :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of annotated message parts ordered by their position in the message. You can recover the annotated message by concatenating [AnnotatedMessagePart.text].
+    parts :: (Core.Maybe [GoogleCloudDialogflowV2beta1AnnotatedMessagePart])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1MessageAnnotation' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1MessageAnnotation ::
+  GoogleCloudDialogflowV2beta1MessageAnnotation
+newGoogleCloudDialogflowV2beta1MessageAnnotation =
+  GoogleCloudDialogflowV2beta1MessageAnnotation
+    { containEntities =
+        Core.Nothing,
+      parts = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1MessageAnnotation
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1MessageAnnotation"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1MessageAnnotation
+            Core.<$> (o Core..:? "containEntities")
+            Core.<*> (o Core..:? "parts")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1MessageAnnotation where
+  toJSON GoogleCloudDialogflowV2beta1MessageAnnotation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("containEntities" Core..=) Core.<$> containEntities,
+            ("parts" Core..=) Core.<$> parts
+          ]
+      )
+
+-- | Represents the contents of the original request that was passed to the @[Streaming]DetectIntent@ call.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest' smart constructor.
+data GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest = GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+  { -- | Optional. This field is set to the value of the @QueryParameters.payload@ field passed in the request. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { \"telephony\": { \"caller_id\": \"+18558363987\" } } Note: The caller ID field (@caller_id@) will be redacted for Trial Edition agents and populated with the caller ID in <https://en.wikipedia.org/wiki/E.164 E.164 format> for Essentials Edition agents.
+    payload ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+      ),
+    -- | The source of this request, e.g., @google@, @facebook@, @slack@. It is set by Dialogflow-owned servers.
+    source :: (Core.Maybe Core.Text),
+    -- | Optional. The version of the protocol used for this request. This field is AoG-specific.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest ::
+  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest =
+  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+    { payload =
+        Core.Nothing,
+      source = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+            Core.<$> (o Core..:? "payload")
+            Core.<*> (o Core..:? "source")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+  where
+  toJSON GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("payload" Core..=) Core.<$> payload,
+            ("source" Core..=) Core.<$> source,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | Optional. This field is set to the value of the @QueryParameters.payload@ field passed in the request. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { \"telephony\": { \"caller_id\": \"+18558363987\" } } Note: The caller ID field (@caller_id@) will be redacted for Trial Edition agents and populated with the caller ID in <https://en.wikipedia.org/wiki/E.164 E.164 format> for Essentials Edition agents.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload = GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+  additional =
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload {..} =
+      Core.toJSON additional
+
+-- | Represents the result of conversational query or event processing.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1QueryResult' smart constructor.
+data GoogleCloudDialogflowV2beta1QueryResult = GoogleCloudDialogflowV2beta1QueryResult
+  { -- | The action name from the matched intent.
+    action :: (Core.Maybe Core.Text),
+    -- | This field is set to: - @false@ if the matched intent has required parameters and not all of the required parameter values have been collected. - @true@ if all required parameter values have been collected, or if the matched intent doesn\'t contain any required parameters.
+    allRequiredParamsPresent :: (Core.Maybe Core.Bool),
+    -- | Indicates whether the conversational query triggers a cancellation for slot filling. For more information, see the <https://cloud.google.com/dialogflow/es/docs/intents-actions-parameters#cancel cancel slot filling documentation>.
+    cancelsSlotFilling :: (Core.Maybe Core.Bool),
+    -- | Free-form diagnostic information for the associated detect intent request. The fields of this data can change without notice, so you should not write code that depends on its structure. The data may contain: - webhook call latency - webhook errors
+    diagnosticInfo :: (Core.Maybe GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo),
+    -- | The collection of rich messages to present to the user.
+    fulfillmentMessages :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentMessage]),
+    -- | The text to be pronounced to the user or shown on the screen. Note: This is a legacy field, @fulfillment_messages@ should be preferred.
+    fulfillmentText :: (Core.Maybe Core.Text),
+    -- | The intent that matched the conversational query. Some, not all fields are filled in this message, including but not limited to: @name@, @display_name@, @end_interaction@ and @is_fallback@.
+    intent :: (Core.Maybe GoogleCloudDialogflowV2beta1Intent),
+    -- | The intent detection confidence. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation. If there are @multiple knowledge_answers@ messages, this value is set to the greatest @knowledgeAnswers.match_confidence@ value in the list.
+    intentDetectionConfidence :: (Core.Maybe Core.Double),
+    -- | The result from Knowledge Connector (if any), ordered by decreasing @KnowledgeAnswers.match_confidence@.
+    knowledgeAnswers :: (Core.Maybe GoogleCloudDialogflowV2beta1KnowledgeAnswers),
+    -- | The language that was triggered during intent detection. See <https://cloud.google.com/dialogflow/docs/reference/language Language Support> for a list of the currently supported language codes.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The collection of output contexts. If applicable, @output_contexts.parameters@ contains entries with name @.original@ containing the original parameter values before the query.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2beta1Context]),
+    -- | The collection of extracted parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+    parameters :: (Core.Maybe GoogleCloudDialogflowV2beta1QueryResult_Parameters),
+    -- | The original conversational query text: - If natural language text was provided as input, @query_text@ contains a copy of the input. - If natural language speech audio was provided as input, @query_text@ contains the speech recognition result. If speech recognizer produced multiple alternatives, a particular one is picked. - If automatic spell correction is enabled, @query_text@ will contain the corrected user input.
+    queryText :: (Core.Maybe Core.Text),
+    -- | The sentiment analysis result, which depends on the @sentiment_analysis_request_config@ specified in the request.
+    sentimentAnalysisResult :: (Core.Maybe GoogleCloudDialogflowV2beta1SentimentAnalysisResult),
+    -- | The Speech recognition confidence between 0.0 and 1.0. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is not guaranteed to be accurate or set. In particular this field isn\'t set for StreamingDetectIntent since the streaming endpoint has separate confidence estimates per portion of the audio in StreamingRecognitionResult.
+    speechRecognitionConfidence :: (Core.Maybe Core.Double),
+    -- | If the query was fulfilled by a webhook call, this field is set to the value of the @payload@ field returned in the webhook response.
+    webhookPayload :: (Core.Maybe GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload),
+    -- | If the query was fulfilled by a webhook call, this field is set to the value of the @source@ field returned in the webhook response.
+    webhookSource :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1QueryResult ::
+  GoogleCloudDialogflowV2beta1QueryResult
+newGoogleCloudDialogflowV2beta1QueryResult =
+  GoogleCloudDialogflowV2beta1QueryResult
+    { action = Core.Nothing,
+      allRequiredParamsPresent = Core.Nothing,
+      cancelsSlotFilling = Core.Nothing,
+      diagnosticInfo = Core.Nothing,
+      fulfillmentMessages = Core.Nothing,
+      fulfillmentText = Core.Nothing,
+      intent = Core.Nothing,
+      intentDetectionConfidence = Core.Nothing,
+      knowledgeAnswers = Core.Nothing,
+      languageCode = Core.Nothing,
+      outputContexts = Core.Nothing,
+      parameters = Core.Nothing,
+      queryText = Core.Nothing,
+      sentimentAnalysisResult = Core.Nothing,
+      speechRecognitionConfidence = Core.Nothing,
+      webhookPayload = Core.Nothing,
+      webhookSource = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1QueryResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1QueryResult"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1QueryResult
+            Core.<$> (o Core..:? "action")
+            Core.<*> (o Core..:? "allRequiredParamsPresent")
+            Core.<*> (o Core..:? "cancelsSlotFilling")
+            Core.<*> (o Core..:? "diagnosticInfo")
+            Core.<*> (o Core..:? "fulfillmentMessages")
+            Core.<*> (o Core..:? "fulfillmentText")
+            Core.<*> (o Core..:? "intent")
+            Core.<*> (o Core..:? "intentDetectionConfidence")
+            Core.<*> (o Core..:? "knowledgeAnswers")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "parameters")
+            Core.<*> (o Core..:? "queryText")
+            Core.<*> (o Core..:? "sentimentAnalysisResult")
+            Core.<*> (o Core..:? "speechRecognitionConfidence")
+            Core.<*> (o Core..:? "webhookPayload")
+            Core.<*> (o Core..:? "webhookSource")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1QueryResult where
+  toJSON GoogleCloudDialogflowV2beta1QueryResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("action" Core..=) Core.<$> action,
+            ("allRequiredParamsPresent" Core..=)
+              Core.<$> allRequiredParamsPresent,
+            ("cancelsSlotFilling" Core..=) Core.<$> cancelsSlotFilling,
+            ("diagnosticInfo" Core..=) Core.<$> diagnosticInfo,
+            ("fulfillmentMessages" Core..=) Core.<$> fulfillmentMessages,
+            ("fulfillmentText" Core..=) Core.<$> fulfillmentText,
+            ("intent" Core..=) Core.<$> intent,
+            ("intentDetectionConfidence" Core..=)
+              Core.<$> intentDetectionConfidence,
+            ("knowledgeAnswers" Core..=) Core.<$> knowledgeAnswers,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("parameters" Core..=) Core.<$> parameters,
+            ("queryText" Core..=) Core.<$> queryText,
+            ("sentimentAnalysisResult" Core..=)
+              Core.<$> sentimentAnalysisResult,
+            ("speechRecognitionConfidence" Core..=)
+              Core.<$> speechRecognitionConfidence,
+            ("webhookPayload" Core..=) Core.<$> webhookPayload,
+            ("webhookSource" Core..=) Core.<$> webhookSource
+          ]
+      )
+
+-- | Free-form diagnostic information for the associated detect intent request. The fields of this data can change without notice, so you should not write code that depends on its structure. The data may contain: - webhook call latency - webhook errors
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo' smart constructor.
+newtype GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo = GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+  additional =
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+  where
+  toJSON GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo {..} =
+    Core.toJSON additional
+
+-- | The collection of extracted parameters. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: * MapKey type: string * MapKey value: parameter name * MapValue type: If parameter\'s entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map. * MapValue value: If parameter\'s entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1QueryResult_Parameters' smart constructor.
+newtype GoogleCloudDialogflowV2beta1QueryResult_Parameters = GoogleCloudDialogflowV2beta1QueryResult_Parameters
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResult_Parameters' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1QueryResult_Parameters ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1QueryResult_Parameters
+newGoogleCloudDialogflowV2beta1QueryResult_Parameters additional =
+  GoogleCloudDialogflowV2beta1QueryResult_Parameters
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1QueryResult_Parameters
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1QueryResult_Parameters"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1QueryResult_Parameters
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1QueryResult_Parameters
+  where
+  toJSON GoogleCloudDialogflowV2beta1QueryResult_Parameters {..} =
+    Core.toJSON additional
+
+-- | If the query was fulfilled by a webhook call, this field is set to the value of the @payload@ field returned in the webhook response.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload' smart constructor.
+newtype GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload = GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+  additional =
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+  where
+  toJSON GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload {..} =
+    Core.toJSON additional
+
+-- | Response messages from an automated agent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessage' smart constructor.
+data GoogleCloudDialogflowV2beta1ResponseMessage = GoogleCloudDialogflowV2beta1ResponseMessage
+  { -- | A signal that indicates the interaction with the Dialogflow agent has ended.
+    endInteraction ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+      ),
+    -- | Hands off conversation to a live agent.
+    liveAgentHandoff ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+      ),
+    -- | An audio response message composed of both the synthesized Dialogflow agent responses and the audios hosted in places known to the client.
+    mixedAudio :: (Core.Maybe GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio),
+    -- | Returns a response containing a custom, platform-specific payload.
+    payload :: (Core.Maybe GoogleCloudDialogflowV2beta1ResponseMessage_Payload),
+    -- | A signal that the client should transfer the phone call connected to this agent to a third-party endpoint.
+    telephonyTransferCall ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+      ),
+    -- | Returns a text response.
+    text :: (Core.Maybe GoogleCloudDialogflowV2beta1ResponseMessageText)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessage' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessage ::
+  GoogleCloudDialogflowV2beta1ResponseMessage
+newGoogleCloudDialogflowV2beta1ResponseMessage =
+  GoogleCloudDialogflowV2beta1ResponseMessage
+    { endInteraction =
+        Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      mixedAudio = Core.Nothing,
+      payload = Core.Nothing,
+      telephonyTransferCall = Core.Nothing,
+      text = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1ResponseMessage where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessage"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessage
+            Core.<$> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "mixedAudio")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "telephonyTransferCall")
+            Core.<*> (o Core..:? "text")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1ResponseMessage where
+  toJSON GoogleCloudDialogflowV2beta1ResponseMessage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("mixedAudio" Core..=) Core.<$> mixedAudio,
+            ("payload" Core..=) Core.<$> payload,
+            ("telephonyTransferCall" Core..=) Core.<$> telephonyTransferCall,
+            ("text" Core..=) Core.<$> text
+          ]
+      )
+
+-- | Returns a response containing a custom, platform-specific payload.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessage_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ResponseMessage_Payload = GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessage_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessage_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+newGoogleCloudDialogflowV2beta1ResponseMessage_Payload additional =
+  GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessage_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+  where
+  toJSON GoogleCloudDialogflowV2beta1ResponseMessage_Payload {..} =
+    Core.toJSON additional
+
+-- | Indicates that interaction with the Dialogflow agent has ended.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction' smart constructor.
+data GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction = GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction ::
+  GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction =
+  GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction"
+      ( \o ->
+          Core.pure
+            GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+  where
+  toJSON = Core.const Core.emptyObject
+
+-- | Indicates that the conversation should be handed off to a human agent. Dialogflow only uses this to determine which conversations were handed off to a human agent for measurement purposes. What else to do with this signal is up to you and your handoff procedures. You may set this, for example: * In the entry fulfillment of a Dialogflow CX Page if entering the page indicates something went extremely wrong in the conversation. * In a webhook response when you determine that the customer issue can only be handled by a human.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff = GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+  { -- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+    metadata ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff ::
+  GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff =
+  GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+    { metadata =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+            Core.<$> (o Core..:? "metadata")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff {..} =
+      Core.object
+        (Core.catMaybes [("metadata" Core..=) Core.<$> metadata])
+
+-- | Custom metadata for your handoff procedure. Dialogflow doesn\'t impose any structure on this.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata = GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap
+    Core.Text
+    Core.Value ->
+  GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+  additional =
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+      { additional =
+          additional
+      }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata {..} =
+      Core.toJSON additional
+
+-- | Represents an audio message that is composed of both segments synthesized from the Dialogflow agent prompts and ones hosted externally at the specified URIs.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio = GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+  { -- | Segments this audio response is composed of.
+    segments ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio ::
+  GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio =
+  GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+    { segments =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+            Core.<$> (o Core..:? "segments")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+  where
+  toJSON GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio {..} =
+    Core.object
+      (Core.catMaybes [("segments" Core..=) Core.<$> segments])
+
+-- | Represents one segment of audio.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment' smart constructor.
+data GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment = GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+  { -- | Whether the playback of this segment can be interrupted by the end user\'s speech and the client should then start the next Dialogflow request.
+    allowPlaybackInterruption :: (Core.Maybe Core.Bool),
+    -- | Raw audio synthesized from the Dialogflow agent\'s response using the output config specified in the request.
+    audio :: (Core.Maybe Core.Base64),
+    -- | Client-specific URI that points to an audio clip accessible to the client.
+    uri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment ::
+  GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment =
+  GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+    { allowPlaybackInterruption =
+        Core.Nothing,
+      audio = Core.Nothing,
+      uri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+            Core.<$> (o Core..:? "allowPlaybackInterruption")
+            Core.<*> (o Core..:? "audio")
+            Core.<*> (o Core..:? "uri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("allowPlaybackInterruption" Core..=)
+                Core.<$> allowPlaybackInterruption,
+              ("audio" Core..=) Core.<$> audio,
+              ("uri" Core..=) Core.<$> uri
+            ]
+        )
+
+-- | Represents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall' smart constructor.
+data GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall = GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+  { -- | Transfer the call to a phone number in <https://en.wikipedia.org/wiki/E.164 E.164 format>.
+    phoneNumber :: (Core.Maybe Core.Text),
+    -- | Transfer the call to a SIP endpoint.
+    sipUri :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall ::
+  GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall =
+  GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+    { phoneNumber =
+        Core.Nothing,
+      sipUri = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+            Core.<$> (o Core..:? "phoneNumber")
+            Core.<*> (o Core..:? "sipUri")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("phoneNumber" Core..=) Core.<$> phoneNumber,
+              ("sipUri" Core..=) Core.<$> sipUri
+            ]
+        )
+
+-- | The text response message.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1ResponseMessageText' smart constructor.
+newtype GoogleCloudDialogflowV2beta1ResponseMessageText = GoogleCloudDialogflowV2beta1ResponseMessageText
+  { -- | A collection of text response variants. If multiple variants are defined, only one text response variant is returned at runtime.
+    text :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1ResponseMessageText' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1ResponseMessageText ::
+  GoogleCloudDialogflowV2beta1ResponseMessageText
+newGoogleCloudDialogflowV2beta1ResponseMessageText =
+  GoogleCloudDialogflowV2beta1ResponseMessageText
+    { text =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageText
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1ResponseMessageText"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1ResponseMessageText
+            Core.<$> (o Core..:? "text")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1ResponseMessageText
+  where
+  toJSON GoogleCloudDialogflowV2beta1ResponseMessageText {..} =
+    Core.object (Core.catMaybes [("text" Core..=) Core.<$> text])
+
+-- | The sentiment, such as positive\/negative feeling or association, for a unit of analysis, such as the query text. See: https:\/\/cloud.google.com\/natural-language\/docs\/basics#interpreting/sentiment/analysis_values for how to interpret the result.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1Sentiment' smart constructor.
+data GoogleCloudDialogflowV2beta1Sentiment = GoogleCloudDialogflowV2beta1Sentiment
+  { -- | A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).
+    magnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).
+    score :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1Sentiment' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1Sentiment ::
+  GoogleCloudDialogflowV2beta1Sentiment
+newGoogleCloudDialogflowV2beta1Sentiment =
+  GoogleCloudDialogflowV2beta1Sentiment
+    { magnitude = Core.Nothing,
+      score = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1Sentiment where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1Sentiment"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1Sentiment
+            Core.<$> (o Core..:? "magnitude")
+            Core.<*> (o Core..:? "score")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1Sentiment where
+  toJSON GoogleCloudDialogflowV2beta1Sentiment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("magnitude" Core..=) Core.<$> magnitude,
+            ("score" Core..=) Core.<$> score
+          ]
+      )
+
+-- | The result of sentiment analysis. Sentiment analysis inspects user input and identifies the prevailing subjective opinion, especially to determine a user\'s attitude as positive, negative, or neutral. For Participants.DetectIntent, it needs to be configured in DetectIntentRequest.query/params. For Participants.StreamingDetectIntent, it needs to be configured in StreamingDetectIntentRequest.query/params. And for Participants.AnalyzeContent and Participants.StreamingAnalyzeContent, it needs to be configured in ConversationProfile.human/agent/assistant_config
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SentimentAnalysisResult' smart constructor.
+newtype GoogleCloudDialogflowV2beta1SentimentAnalysisResult = GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+  { -- | The sentiment analysis result for @query_text@.
+    queryTextSentiment :: (Core.Maybe GoogleCloudDialogflowV2beta1Sentiment)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SentimentAnalysisResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SentimentAnalysisResult ::
+  GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+newGoogleCloudDialogflowV2beta1SentimentAnalysisResult =
+  GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+    { queryTextSentiment =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SentimentAnalysisResult"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+            Core.<$> (o Core..:? "queryTextSentiment")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+  where
+  toJSON GoogleCloudDialogflowV2beta1SentimentAnalysisResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [("queryTextSentiment" Core..=) Core.<$> queryTextSentiment]
+      )
+
+-- | A session represents a conversation between a Dialogflow agent and an end-user. You can create special entities, called session entities, during a session. Session entities can extend or replace custom entity types and only exist during the session that they were created for. All session data, including session entities, is stored by Dialogflow for 20 minutes. For more information, see the <https://cloud.google.com/dialogflow/docs/entities-session session entity guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SessionEntityType' smart constructor.
+data GoogleCloudDialogflowV2beta1SessionEntityType = GoogleCloudDialogflowV2beta1SessionEntityType
+  { -- | Required. The collection of entities associated with this session entity type.
+    entities :: (Core.Maybe [GoogleCloudDialogflowV2beta1EntityTypeEntity]),
+    -- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+    entityOverrideMode ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+      ),
+    -- | Required. The unique identifier of this session entity type. Supported formats: - @projects\/\/agent\/sessions\/\/entityTypes\/@ - @projects\/\/locations\/\/agent\/sessions\/\/entityTypes\/@ - @projects\/\/agent\/environments\/\/users\/\/sessions\/\/entityTypes\/@ - @projects\/\/locations\/\/agent\/environments\/ \/users\/\/sessions\/\/entityTypes\/@ If @Location ID@ is not specified we assume default \'us\' location. If @Environment ID@ is not specified, we assume default \'draft\' environment. If @User ID@ is not specified, we assume default \'-\' user. \`\` must be the display name of an existing entity type in the same agent that will be overridden or supplemented.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SessionEntityType' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SessionEntityType ::
+  GoogleCloudDialogflowV2beta1SessionEntityType
+newGoogleCloudDialogflowV2beta1SessionEntityType =
+  GoogleCloudDialogflowV2beta1SessionEntityType
+    { entities =
+        Core.Nothing,
+      entityOverrideMode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SessionEntityType
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SessionEntityType"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SessionEntityType
+            Core.<$> (o Core..:? "entities")
+            Core.<*> (o Core..:? "entityOverrideMode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1SessionEntityType where
+  toJSON GoogleCloudDialogflowV2beta1SessionEntityType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("entities" Core..=) Core.<$> entities,
+            ("entityOverrideMode" Core..=) Core.<$> entityOverrideMode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Metadata for a ConversationProfile.SetSuggestionFeatureConfig operation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata' smart constructor.
+data GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+  { -- | The resource name of the conversation profile. Format: @projects\/\/locations\/\/conversationProfiles\/@
+    conversationProfile :: (Core.Maybe Core.Text),
+    -- | Timestamp whe the request was created. The time is measured on server side.
+    createTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The participant role to add or update the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+    participantRole ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ),
+    -- | Required. The type of the suggestion feature to add or update.
+    suggestionFeatureType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata ::
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata =
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+    { conversationProfile =
+        Core.Nothing,
+      createTime =
+        Core.Nothing,
+      participantRole =
+        Core.Nothing,
+      suggestionFeatureType =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+            Core.<$> (o Core..:? "conversationProfile")
+            Core.<*> (o Core..:? "createTime")
+            Core.<*> (o Core..:? "participantRole")
+            Core.<*> (o Core..:? "suggestionFeatureType")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("conversationProfile" Core..=) Core.<$> conversationProfile,
+              ("createTime" Core..=) Core.<$> createTime,
+              ("participantRole" Core..=) Core.<$> participantRole,
+              ("suggestionFeatureType" Core..=) Core.<$> suggestionFeatureType
+            ]
+        )
+
+-- | Represents a smart reply answer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SmartReplyAnswer' smart constructor.
+data GoogleCloudDialogflowV2beta1SmartReplyAnswer = GoogleCloudDialogflowV2beta1SmartReplyAnswer
+  { -- | The name of answer record, in the format of \"projects\/\/locations\/\/answerRecords\/\"
+    answerRecord :: (Core.Maybe Core.Text),
+    -- | Smart reply confidence. The system\'s confidence score that this reply is a good match for this conversation, as a value from 0.0 (completely uncertain) to 1.0 (completely certain).
+    confidence :: (Core.Maybe Core.Double),
+    -- | The content of the reply.
+    reply :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SmartReplyAnswer' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SmartReplyAnswer ::
+  GoogleCloudDialogflowV2beta1SmartReplyAnswer
+newGoogleCloudDialogflowV2beta1SmartReplyAnswer =
+  GoogleCloudDialogflowV2beta1SmartReplyAnswer
+    { answerRecord =
+        Core.Nothing,
+      confidence = Core.Nothing,
+      reply = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1SmartReplyAnswer where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SmartReplyAnswer"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SmartReplyAnswer
+            Core.<$> (o Core..:? "answerRecord")
+            Core.<*> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "reply")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1SmartReplyAnswer where
+  toJSON GoogleCloudDialogflowV2beta1SmartReplyAnswer {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerRecord" Core..=) Core.<$> answerRecord,
+            ("confidence" Core..=) Core.<$> confidence,
+            ("reply" Core..=) Core.<$> reply
+          ]
+      )
+
+-- | Information for a word recognized by the speech recognizer.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SpeechWordInfo' smart constructor.
+data GoogleCloudDialogflowV2beta1SpeechWordInfo = GoogleCloudDialogflowV2beta1SpeechWordInfo
+  { -- | The Speech confidence between 0.0 and 1.0 for this word. A higher number indicates an estimated greater likelihood that the recognized word is correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is not guaranteed to be fully stable over time for the same audio input. Users should also not rely on it to always be provided.
+    confidence :: (Core.Maybe Core.Double),
+    -- | Time offset relative to the beginning of the audio that corresponds to the end of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.
+    endOffset :: (Core.Maybe Core.Duration),
+    -- | Time offset relative to the beginning of the audio that corresponds to the start of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.
+    startOffset :: (Core.Maybe Core.Duration),
+    -- | The word this info is for.
+    word :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SpeechWordInfo' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SpeechWordInfo ::
+  GoogleCloudDialogflowV2beta1SpeechWordInfo
+newGoogleCloudDialogflowV2beta1SpeechWordInfo =
+  GoogleCloudDialogflowV2beta1SpeechWordInfo
+    { confidence =
+        Core.Nothing,
+      endOffset = Core.Nothing,
+      startOffset = Core.Nothing,
+      word = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1SpeechWordInfo where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SpeechWordInfo"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SpeechWordInfo
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "endOffset")
+            Core.<*> (o Core..:? "startOffset")
+            Core.<*> (o Core..:? "word")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1SpeechWordInfo where
+  toJSON GoogleCloudDialogflowV2beta1SpeechWordInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("endOffset" Core..=) Core.<$> endOffset,
+            ("startOffset" Core..=) Core.<$> startOffset,
+            ("word" Core..=) Core.<$> word
+          ]
+      )
+
+-- | Contains a speech recognition result corresponding to a portion of the audio that is currently being processed or an indication that this is the end of the single requested utterance. While end-user audio is being processed, Dialogflow sends a series of results. Each result may contain a @transcript@ value. A transcript represents a portion of the utterance. While the recognizer is processing audio, transcript values may be interim values or finalized values. Once a transcript is finalized, the @is_final@ value is set to true and processing continues for the next transcript. If @StreamingDetectIntentRequest.query_input.audio_config.single_utterance@ was true, and the recognizer has completed processing audio, the @message_type@ value is set to
+-- @END_OF_SINGLE_UTTERANCE and the following (last) result contains the last finalized transcript. The complete end-user utterance is determined by concatenating the finalized transcript values received for the series of results. In the following example, single utterance is enabled. In the case where single utterance is not enabled, result 7 would not occur. \`\`\` Num | transcript | message_type | is_final --- | ----------------------- | ----------------------- | -------- 1 | \"tube\" | TRANSCRIPT | false 2 | \"to be a\" | TRANSCRIPT | false 3 | \"to be\" | TRANSCRIPT | false 4 | \"to be or not to be\" | TRANSCRIPT | true 5 | \"that\'s\" | TRANSCRIPT | false 6 | \"that is | TRANSCRIPT | false 7 | unset | END_OF_SINGLE_UTTERANCE | unset 8 | \" that is the question\" | TRANSCRIPT | true \`\`\` Concatenating the finalized transcripts with@is_final\` set to true, the complete utterance becomes \"to be or not to be that is the question\".
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1StreamingRecognitionResult' smart constructor.
+data GoogleCloudDialogflowV2beta1StreamingRecognitionResult = GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+  { -- | The Speech confidence between 0.0 and 1.0 for the current portion of audio. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set. This field is typically only provided if @is_final@ is true and you should not rely on it being accurate or even set.
+    confidence :: (Core.Maybe Core.Double),
+    -- | DTMF digits. Populated if and only if @message_type@ = @DTMF_DIGITS@.
+    dtmfDigits :: (Core.Maybe GoogleCloudDialogflowV2beta1TelephonyDtmfEvents),
+    -- | If @false@, the @StreamingRecognitionResult@ represents an interim result that may change. If @true@, the recognizer will not return any further hypotheses about this piece of the audio. May only be populated for @message_type@ = @TRANSCRIPT@.
+    isFinal :: (Core.Maybe Core.Bool),
+    -- | Detected language code for the transcript.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Type of the result message.
+    messageType ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+      ),
+    -- | Time offset of the end of this Speech recognition result relative to the beginning of the audio. Only populated for @message_type@ = @TRANSCRIPT@.
+    speechEndOffset :: (Core.Maybe Core.Duration),
+    -- | Word-specific information for the words recognized by Speech in transcript. Populated if and only if @message_type@ = @TRANSCRIPT@ and [InputAudioConfig.enable/word/info] is set.
+    speechWordInfo :: (Core.Maybe [GoogleCloudDialogflowV2beta1SpeechWordInfo]),
+    -- | An estimate of the likelihood that the speech recognizer will not change its guess about this interim recognition result: * If the value is unspecified or 0.0, Dialogflow didn\'t compute the stability. In particular, Dialogflow will only provide stability for @TRANSCRIPT@ results with @is_final = false@. * Otherwise, the value is in (0.0, 1.0] where 0.0 means completely unstable and 1.0 means completely stable.
+    stability :: (Core.Maybe Core.Double),
+    -- | Transcript text representing the words that the user spoke. Populated if and only if @message_type@ = @TRANSCRIPT@.
+    transcript :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1StreamingRecognitionResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1StreamingRecognitionResult ::
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+newGoogleCloudDialogflowV2beta1StreamingRecognitionResult =
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+    { confidence =
+        Core.Nothing,
+      dtmfDigits = Core.Nothing,
+      isFinal = Core.Nothing,
+      languageCode = Core.Nothing,
+      messageType = Core.Nothing,
+      speechEndOffset = Core.Nothing,
+      speechWordInfo = Core.Nothing,
+      stability = Core.Nothing,
+      transcript = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1StreamingRecognitionResult"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+            Core.<$> (o Core..:? "confidence")
+            Core.<*> (o Core..:? "dtmfDigits")
+            Core.<*> (o Core..:? "isFinal")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "messageType")
+            Core.<*> (o Core..:? "speechEndOffset")
+            Core.<*> (o Core..:? "speechWordInfo")
+            Core.<*> (o Core..:? "stability")
+            Core.<*> (o Core..:? "transcript")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+  where
+  toJSON GoogleCloudDialogflowV2beta1StreamingRecognitionResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("confidence" Core..=) Core.<$> confidence,
+            ("dtmfDigits" Core..=) Core.<$> dtmfDigits,
+            ("isFinal" Core..=) Core.<$> isFinal,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("messageType" Core..=) Core.<$> messageType,
+            ("speechEndOffset" Core..=) Core.<$> speechEndOffset,
+            ("speechWordInfo" Core..=) Core.<$> speechWordInfo,
+            ("stability" Core..=) Core.<$> stability,
+            ("transcript" Core..=) Core.<$> transcript
+          ]
+      )
+
+-- | The response message for Participants.SuggestArticles.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestArticlesResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestArticlesResponse = GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+  { -- | Output only. Articles ordered by score in descending order.
+    articleAnswers :: (Core.Maybe [GoogleCloudDialogflowV2beta1ArticleAnswer]),
+    -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestArticlesResponse.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestArticlesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestArticlesResponse ::
+  GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+newGoogleCloudDialogflowV2beta1SuggestArticlesResponse =
+  GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+    { articleAnswers =
+        Core.Nothing,
+      contextSize = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestArticlesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+            Core.<$> (o Core..:? "articleAnswers")
+            Core.<*> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1SuggestArticlesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("articleAnswers" Core..=) Core.<$> articleAnswers,
+            ("contextSize" Core..=) Core.<$> contextSize,
+            ("latestMessage" Core..=) Core.<$> latestMessage
+          ]
+      )
+
+-- | The response message for Participants.SuggestDialogflowAssists.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse = GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestDialogflowAssistsRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | Output only. Multiple reply options provided by Dialogflow assist service. The order is based on the rank of the model prediction.
+    dialogflowAssistAnswers :: (Core.Maybe [GoogleCloudDialogflowV2beta1DialogflowAssistAnswer]),
+    -- | The name of the latest conversation message used to suggest answer. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse ::
+  GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse =
+  GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+    { contextSize =
+        Core.Nothing,
+      dialogflowAssistAnswers =
+        Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "dialogflowAssistAnswers")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("contextSize" Core..=) Core.<$> contextSize,
+              ("dialogflowAssistAnswers" Core..=)
+                Core.<$> dialogflowAssistAnswers,
+              ("latestMessage" Core..=) Core.<$> latestMessage
+            ]
+        )
+
+-- | The request message for Participants.SuggestFaqAnswers.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse = GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestFaqAnswersRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | Output only. Answers extracted from FAQ documents.
+    faqAnswers :: (Core.Maybe [GoogleCloudDialogflowV2beta1FaqAnswer]),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse ::
+  GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse =
+  GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+    { contextSize =
+        Core.Nothing,
+      faqAnswers = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "faqAnswers")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contextSize" Core..=) Core.<$> contextSize,
+            ("faqAnswers" Core..=) Core.<$> faqAnswers,
+            ("latestMessage" Core..=) Core.<$> latestMessage
+          ]
+      )
+
+-- | The response message for Participants.SuggestKnowledgeAssist.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse = GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestKnowledgeAssistRequest.context/size field in the request if there are fewer messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | Output only. Knowledge Assist suggestion.
+    knowledgeAssistAnswer :: (Core.Maybe GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse ::
+  GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse =
+  GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+    { contextSize =
+        Core.Nothing,
+      knowledgeAssistAnswer = Core.Nothing,
+      latestMessage = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "knowledgeAssistAnswer")
+            Core.<*> (o Core..:? "latestMessage")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+  where
+  toJSON
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse {..} =
+      Core.object
+        ( Core.catMaybes
+            [ ("contextSize" Core..=) Core.<$> contextSize,
+              ("knowledgeAssistAnswer" Core..=) Core.<$> knowledgeAssistAnswer,
+              ("latestMessage" Core..=) Core.<$> latestMessage
+            ]
+        )
+
+-- | The response message for Participants.SuggestSmartReplies.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse = GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+  { -- | Number of messages prior to and including latest/message to compile the suggestion. It may be smaller than the SuggestSmartRepliesRequest.context/size field in the request if there aren\'t that many messages in the conversation.
+    contextSize :: (Core.Maybe Core.Int32),
+    -- | The name of the latest conversation message used to compile suggestion for. Format: @projects\/\/locations\/\/conversations\/\/messages\/@.
+    latestMessage :: (Core.Maybe Core.Text),
+    -- | Output only. Multiple reply options provided by smart reply service. The order is based on the rank of the model prediction. The maximum number of the returned replies is set in SmartReplyConfig.
+    smartReplyAnswers :: (Core.Maybe [GoogleCloudDialogflowV2beta1SmartReplyAnswer])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse ::
+  GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse =
+  GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+    { contextSize =
+        Core.Nothing,
+      latestMessage = Core.Nothing,
+      smartReplyAnswers = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+            Core.<$> (o Core..:? "contextSize")
+            Core.<*> (o Core..:? "latestMessage")
+            Core.<*> (o Core..:? "smartReplyAnswers")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+  where
+  toJSON GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contextSize" Core..=) Core.<$> contextSize,
+            ("latestMessage" Core..=) Core.<$> latestMessage,
+            ("smartReplyAnswers" Core..=) Core.<$> smartReplyAnswers
+          ]
+      )
+
+-- | One response of different type of suggestion response which is used in the response of Participants.AnalyzeContent and Participants.AnalyzeContent, as well as HumanAgentAssistantEvent.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1SuggestionResult' smart constructor.
+data GoogleCloudDialogflowV2beta1SuggestionResult = GoogleCloudDialogflowV2beta1SuggestionResult
+  { -- | Error status if the request failed.
+    error :: (Core.Maybe GoogleRpcStatus),
+    -- | SuggestArticlesResponse if request is for ARTICLE_SUGGESTION.
+    suggestArticlesResponse :: (Core.Maybe GoogleCloudDialogflowV2beta1SuggestArticlesResponse),
+    -- | SuggestDialogflowAssistsResponse if request is for DIALOGFLOW_ASSIST.
+    suggestDialogflowAssistsResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+      ),
+    -- | SuggestDialogflowAssistsResponse if request is for ENTITY_EXTRACTION.
+    suggestEntityExtractionResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+      ),
+    -- | SuggestFaqAnswersResponse if request is for FAQ_ANSWER.
+    suggestFaqAnswersResponse :: (Core.Maybe GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse),
+    -- | SuggestKnowledgeAssistResponse if request is for KNOWLEDGE_ASSIST.
+    suggestKnowledgeAssistResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+      ),
+    -- | SuggestSmartRepliesResponse if request is for SMART_REPLY.
+    suggestSmartRepliesResponse ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1SuggestionResult' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1SuggestionResult ::
+  GoogleCloudDialogflowV2beta1SuggestionResult
+newGoogleCloudDialogflowV2beta1SuggestionResult =
+  GoogleCloudDialogflowV2beta1SuggestionResult
+    { error =
+        Core.Nothing,
+      suggestArticlesResponse = Core.Nothing,
+      suggestDialogflowAssistsResponse = Core.Nothing,
+      suggestEntityExtractionResponse = Core.Nothing,
+      suggestFaqAnswersResponse = Core.Nothing,
+      suggestKnowledgeAssistResponse = Core.Nothing,
+      suggestSmartRepliesResponse = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1SuggestionResult where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1SuggestionResult"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1SuggestionResult
+            Core.<$> (o Core..:? "error")
+            Core.<*> (o Core..:? "suggestArticlesResponse")
+            Core.<*> (o Core..:? "suggestDialogflowAssistsResponse")
+            Core.<*> (o Core..:? "suggestEntityExtractionResponse")
+            Core.<*> (o Core..:? "suggestFaqAnswersResponse")
+            Core.<*> (o Core..:? "suggestKnowledgeAssistResponse")
+            Core.<*> (o Core..:? "suggestSmartRepliesResponse")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1SuggestionResult where
+  toJSON GoogleCloudDialogflowV2beta1SuggestionResult {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("error" Core..=) Core.<$> error,
+            ("suggestArticlesResponse" Core..=)
+              Core.<$> suggestArticlesResponse,
+            ("suggestDialogflowAssistsResponse" Core..=)
+              Core.<$> suggestDialogflowAssistsResponse,
+            ("suggestEntityExtractionResponse" Core..=)
+              Core.<$> suggestEntityExtractionResponse,
+            ("suggestFaqAnswersResponse" Core..=)
+              Core.<$> suggestFaqAnswersResponse,
+            ("suggestKnowledgeAssistResponse" Core..=)
+              Core.<$> suggestKnowledgeAssistResponse,
+            ("suggestSmartRepliesResponse" Core..=)
+              Core.<$> suggestSmartRepliesResponse
+          ]
+      )
+
+-- | A wrapper of repeated TelephonyDtmf digits.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents' smart constructor.
+newtype GoogleCloudDialogflowV2beta1TelephonyDtmfEvents = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+  { -- | A sequence of TelephonyDtmf digits.
+    dtmfEvents ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem]
+      )
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1TelephonyDtmfEvents' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents ::
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents =
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+    { dtmfEvents =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1TelephonyDtmfEvents"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+            Core.<$> (o Core..:? "dtmfEvents")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+  where
+  toJSON GoogleCloudDialogflowV2beta1TelephonyDtmfEvents {..} =
+    Core.object
+      (Core.catMaybes [("dtmfEvents" Core..=) Core.<$> dtmfEvents])
+
+-- | The request message for a webhook call.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1WebhookRequest' smart constructor.
+data GoogleCloudDialogflowV2beta1WebhookRequest = GoogleCloudDialogflowV2beta1WebhookRequest
+  { -- | Alternative query results from KnowledgeService.
+    alternativeQueryResults :: (Core.Maybe [GoogleCloudDialogflowV2beta1QueryResult]),
+    -- | Optional. The contents of the original request that was passed to @[Streaming]DetectIntent@ call.
+    originalDetectIntentRequest ::
+      ( Core.Maybe
+          GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+      ),
+    -- | The result of the conversational query or event processing. Contains the same value as @[Streaming]DetectIntentResponse.query_result@.
+    queryResult :: (Core.Maybe GoogleCloudDialogflowV2beta1QueryResult),
+    -- | The unique identifier of the response. Contains the same value as @[Streaming]DetectIntentResponse.response_id@.
+    responseId :: (Core.Maybe Core.Text),
+    -- | The unique identifier of detectIntent request session. Can be used to identify end-user inside webhook implementation. Supported formats: - @projects\/\/agent\/sessions\/, -@projects\/\/locations\/\/agent\/sessions\/@, -@projects\/\/agent\/environments\/\/users\/\/sessions\/@, -@projects\/\/locations\/\/agent\/environments\/\/users\/\/sessions\/\`,
+    session :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookRequest' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1WebhookRequest ::
+  GoogleCloudDialogflowV2beta1WebhookRequest
+newGoogleCloudDialogflowV2beta1WebhookRequest =
+  GoogleCloudDialogflowV2beta1WebhookRequest
+    { alternativeQueryResults =
+        Core.Nothing,
+      originalDetectIntentRequest = Core.Nothing,
+      queryResult = Core.Nothing,
+      responseId = Core.Nothing,
+      session = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1WebhookRequest where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1WebhookRequest"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1WebhookRequest
+            Core.<$> (o Core..:? "alternativeQueryResults")
+            Core.<*> (o Core..:? "originalDetectIntentRequest")
+            Core.<*> (o Core..:? "queryResult")
+            Core.<*> (o Core..:? "responseId")
+            Core.<*> (o Core..:? "session")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1WebhookRequest where
+  toJSON GoogleCloudDialogflowV2beta1WebhookRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("alternativeQueryResults" Core..=)
+              Core.<$> alternativeQueryResults,
+            ("originalDetectIntentRequest" Core..=)
+              Core.<$> originalDetectIntentRequest,
+            ("queryResult" Core..=) Core.<$> queryResult,
+            ("responseId" Core..=) Core.<$> responseId,
+            ("session" Core..=) Core.<$> session
+          ]
+      )
+
+-- | The response message for a webhook call. This response is validated by the Dialogflow server. If validation fails, an error will be returned in the QueryResult.diagnostic_info field. Setting JSON fields to an empty value with the wrong type is a common error. To avoid this error: - Use @\"\"@ for empty strings - Use @{}@ or @null@ for empty objects - Use @[]@ or @null@ for empty arrays For more information, see the <https://developers.google.com/protocol-buffers/docs/proto3#json Protocol Buffers Language Guide>.
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1WebhookResponse' smart constructor.
+data GoogleCloudDialogflowV2beta1WebhookResponse = GoogleCloudDialogflowV2beta1WebhookResponse
+  { -- | Optional. Indicates that this intent ends an interaction. Some integrations (e.g., Actions on Google or Dialogflow phone gateway) use this information to close interaction with an end user. Default is false.
+    endInteraction :: (Core.Maybe Core.Bool),
+    -- | Optional. Invokes the supplied events. When this field is set, Dialogflow ignores the @fulfillment_text@, @fulfillment_messages@, and @payload@ fields.
+    followupEventInput :: (Core.Maybe GoogleCloudDialogflowV2beta1EventInput),
+    -- | Optional. The rich response messages intended for the end-user. When provided, Dialogflow uses this field to populate QueryResult.fulfillment_messages sent to the integration or API caller.
+    fulfillmentMessages :: (Core.Maybe [GoogleCloudDialogflowV2beta1IntentMessage]),
+    -- | Optional. The text response message intended for the end-user. It is recommended to use @fulfillment_messages.text.text[0]@ instead. When provided, Dialogflow uses this field to populate QueryResult.fulfillment_text sent to the integration or API caller.
+    fulfillmentText :: (Core.Maybe Core.Text),
+    -- | Indicates that a live agent should be brought in to handle the interaction with the user. In most cases, when you set this flag to true, you would also want to set end_interaction to true as well. Default is false.
+    liveAgentHandoff :: (Core.Maybe Core.Bool),
+    -- | Optional. The collection of output contexts that will overwrite currently active contexts for the session and reset their lifespans. When provided, Dialogflow uses this field to populate QueryResult.output_contexts sent to the integration or API caller.
+    outputContexts :: (Core.Maybe [GoogleCloudDialogflowV2beta1Context]),
+    -- | Optional. This field can be used to pass custom data from your webhook to the integration or API caller. Arbitrary JSON objects are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_payload sent to the integration or API caller. This field is also used by the <https://cloud.google.com/dialogflow/docs/integrations/aog Google Assistant integration> for rich response messages. See the format definition at <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Google Assistant Dialogflow webhook format>
+    payload :: (Core.Maybe GoogleCloudDialogflowV2beta1WebhookResponse_Payload),
+    -- | Optional. Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session. Setting this data from a webhook overwrites the session entity types that have been set using @detectIntent@, @streamingDetectIntent@ or SessionEntityType management methods.
+    sessionEntityTypes :: (Core.Maybe [GoogleCloudDialogflowV2beta1SessionEntityType]),
+    -- | Optional. A custom field used to identify the webhook source. Arbitrary strings are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_source sent to the integration or API caller.
+    source :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookResponse' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1WebhookResponse ::
+  GoogleCloudDialogflowV2beta1WebhookResponse
+newGoogleCloudDialogflowV2beta1WebhookResponse =
+  GoogleCloudDialogflowV2beta1WebhookResponse
+    { endInteraction =
+        Core.Nothing,
+      followupEventInput = Core.Nothing,
+      fulfillmentMessages = Core.Nothing,
+      fulfillmentText = Core.Nothing,
+      liveAgentHandoff = Core.Nothing,
+      outputContexts = Core.Nothing,
+      payload = Core.Nothing,
+      sessionEntityTypes = Core.Nothing,
+      source = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV2beta1WebhookResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1WebhookResponse"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1WebhookResponse
+            Core.<$> (o Core..:? "endInteraction")
+            Core.<*> (o Core..:? "followupEventInput")
+            Core.<*> (o Core..:? "fulfillmentMessages")
+            Core.<*> (o Core..:? "fulfillmentText")
+            Core.<*> (o Core..:? "liveAgentHandoff")
+            Core.<*> (o Core..:? "outputContexts")
+            Core.<*> (o Core..:? "payload")
+            Core.<*> (o Core..:? "sessionEntityTypes")
+            Core.<*> (o Core..:? "source")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV2beta1WebhookResponse where
+  toJSON GoogleCloudDialogflowV2beta1WebhookResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endInteraction" Core..=) Core.<$> endInteraction,
+            ("followupEventInput" Core..=) Core.<$> followupEventInput,
+            ("fulfillmentMessages" Core..=) Core.<$> fulfillmentMessages,
+            ("fulfillmentText" Core..=) Core.<$> fulfillmentText,
+            ("liveAgentHandoff" Core..=) Core.<$> liveAgentHandoff,
+            ("outputContexts" Core..=) Core.<$> outputContexts,
+            ("payload" Core..=) Core.<$> payload,
+            ("sessionEntityTypes" Core..=) Core.<$> sessionEntityTypes,
+            ("source" Core..=) Core.<$> source
+          ]
+      )
+
+-- | Optional. This field can be used to pass custom data from your webhook to the integration or API caller. Arbitrary JSON objects are supported. When provided, Dialogflow uses this field to populate QueryResult.webhook_payload sent to the integration or API caller. This field is also used by the <https://cloud.google.com/dialogflow/docs/integrations/aog Google Assistant integration> for rich response messages. See the format definition at <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Google Assistant Dialogflow webhook format>
+--
+-- /See:/ 'newGoogleCloudDialogflowV2beta1WebhookResponse_Payload' smart constructor.
+newtype GoogleCloudDialogflowV2beta1WebhookResponse_Payload = GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+  { -- | Properties of the object.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookResponse_Payload' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV2beta1WebhookResponse_Payload ::
+  -- |  Properties of the object. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+newGoogleCloudDialogflowV2beta1WebhookResponse_Payload additional =
+  GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+    { additional =
+        additional
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV2beta1WebhookResponse_Payload"
+      ( \o ->
+          GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+  where
+  toJSON GoogleCloudDialogflowV2beta1WebhookResponse_Payload {..} =
+    Core.toJSON additional
+
+-- | This message is used to hold all the Conversation Signals data, which will be converted to JSON and exported to BigQuery.
+--
+-- /See:/ 'newGoogleCloudDialogflowV3alpha1ConversationSignals' smart constructor.
+newtype GoogleCloudDialogflowV3alpha1ConversationSignals = GoogleCloudDialogflowV3alpha1ConversationSignals
+  { -- | Required. Turn signals for the current turn.
+    turnSignals :: (Core.Maybe GoogleCloudDialogflowV3alpha1TurnSignals)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV3alpha1ConversationSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV3alpha1ConversationSignals ::
+  GoogleCloudDialogflowV3alpha1ConversationSignals
+newGoogleCloudDialogflowV3alpha1ConversationSignals =
+  GoogleCloudDialogflowV3alpha1ConversationSignals
+    { turnSignals =
+        Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    GoogleCloudDialogflowV3alpha1ConversationSignals
+  where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV3alpha1ConversationSignals"
+      ( \o ->
+          GoogleCloudDialogflowV3alpha1ConversationSignals
+            Core.<$> (o Core..:? "turnSignals")
+      )
+
+instance
+  Core.ToJSON
+    GoogleCloudDialogflowV3alpha1ConversationSignals
+  where
+  toJSON GoogleCloudDialogflowV3alpha1ConversationSignals {..} =
+    Core.object
+      (Core.catMaybes [("turnSignals" Core..=) Core.<$> turnSignals])
+
+-- | Collection of all signals that were extracted for a single turn of the conversation.
+--
+-- /See:/ 'newGoogleCloudDialogflowV3alpha1TurnSignals' smart constructor.
+data GoogleCloudDialogflowV3alpha1TurnSignals = GoogleCloudDialogflowV3alpha1TurnSignals
+  { -- | Whether agent responded with LiveAgentHandoff fulfillment.
+    agentEscalated :: (Core.Maybe Core.Bool),
+    -- | Whether user was using DTMF input.
+    dtmfUsed :: (Core.Maybe Core.Bool),
+    -- | Failure reasons of the turn.
+    failureReasons ::
+      ( Core.Maybe
+          [GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem]
+      ),
+    -- | Whether NLU predicted NO_MATCH.
+    noMatch :: (Core.Maybe Core.Bool),
+    -- | Whether user provided no input.
+    noUserInput :: (Core.Maybe Core.Bool),
+    -- | Whether turn resulted in End Session page.
+    reachedEndPage :: (Core.Maybe Core.Bool),
+    -- | Sentiment magnitude of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentMagnitude :: (Core.Maybe Core.Double),
+    -- | Sentiment score of the user utterance if <https://cloud.google.com/dialogflow/cx/docs/concept/sentiment sentiment> was enabled.
+    sentimentScore :: (Core.Maybe Core.Double),
+    -- | Whether agent has triggered the event corresponding to user abandoning the conversation.
+    triggeredAbandonmentEvent :: (Core.Maybe Core.Bool),
+    -- | Whether user was specifically asking for a live agent.
+    userEscalated :: (Core.Maybe Core.Bool),
+    -- | Human-readable statuses of the webhooks triggered during this turn.
+    webhookStatuses :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudDialogflowV3alpha1TurnSignals' with the minimum fields required to make a request.
+newGoogleCloudDialogflowV3alpha1TurnSignals ::
+  GoogleCloudDialogflowV3alpha1TurnSignals
+newGoogleCloudDialogflowV3alpha1TurnSignals =
+  GoogleCloudDialogflowV3alpha1TurnSignals
+    { agentEscalated =
+        Core.Nothing,
+      dtmfUsed = Core.Nothing,
+      failureReasons = Core.Nothing,
+      noMatch = Core.Nothing,
+      noUserInput = Core.Nothing,
+      reachedEndPage = Core.Nothing,
+      sentimentMagnitude = Core.Nothing,
+      sentimentScore = Core.Nothing,
+      triggeredAbandonmentEvent = Core.Nothing,
+      userEscalated = Core.Nothing,
+      webhookStatuses = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudDialogflowV3alpha1TurnSignals where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudDialogflowV3alpha1TurnSignals"
+      ( \o ->
+          GoogleCloudDialogflowV3alpha1TurnSignals
+            Core.<$> (o Core..:? "agentEscalated")
+            Core.<*> (o Core..:? "dtmfUsed")
+            Core.<*> (o Core..:? "failureReasons")
+            Core.<*> (o Core..:? "noMatch")
+            Core.<*> (o Core..:? "noUserInput")
+            Core.<*> (o Core..:? "reachedEndPage")
+            Core.<*> (o Core..:? "sentimentMagnitude")
+            Core.<*> (o Core..:? "sentimentScore")
+            Core.<*> (o Core..:? "triggeredAbandonmentEvent")
+            Core.<*> (o Core..:? "userEscalated")
+            Core.<*> (o Core..:? "webhookStatuses")
+      )
+
+instance Core.ToJSON GoogleCloudDialogflowV3alpha1TurnSignals where
+  toJSON GoogleCloudDialogflowV3alpha1TurnSignals {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("agentEscalated" Core..=) Core.<$> agentEscalated,
+            ("dtmfUsed" Core..=) Core.<$> dtmfUsed,
+            ("failureReasons" Core..=) Core.<$> failureReasons,
+            ("noMatch" Core..=) Core.<$> noMatch,
+            ("noUserInput" Core..=) Core.<$> noUserInput,
+            ("reachedEndPage" Core..=) Core.<$> reachedEndPage,
+            ("sentimentMagnitude" Core..=) Core.<$> sentimentMagnitude,
+            ("sentimentScore" Core..=) Core.<$> sentimentScore,
+            ("triggeredAbandonmentEvent" Core..=)
+              Core.<$> triggeredAbandonmentEvent,
+            ("userEscalated" Core..=) Core.<$> userEscalated,
+            ("webhookStatuses" Core..=) Core.<$> webhookStatuses
+          ]
+      )
+
+-- | The response message for Locations.ListLocations.
+--
+-- /See:/ 'newGoogleCloudLocationListLocationsResponse' smart constructor.
+data GoogleCloudLocationListLocationsResponse = GoogleCloudLocationListLocationsResponse
+  { -- | A list of locations that matches the specified filter in the request.
+    locations :: (Core.Maybe [GoogleCloudLocationLocation]),
+    -- | The standard List next-page token.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudLocationListLocationsResponse' with the minimum fields required to make a request.
+newGoogleCloudLocationListLocationsResponse ::
+  GoogleCloudLocationListLocationsResponse
+newGoogleCloudLocationListLocationsResponse =
+  GoogleCloudLocationListLocationsResponse
+    { locations =
+        Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudLocationListLocationsResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudLocationListLocationsResponse"
+      ( \o ->
+          GoogleCloudLocationListLocationsResponse
+            Core.<$> (o Core..:? "locations")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON GoogleCloudLocationListLocationsResponse where
+  toJSON GoogleCloudLocationListLocationsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("locations" Core..=) Core.<$> locations,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | A resource that represents a Google Cloud location.
+--
+-- /See:/ 'newGoogleCloudLocationLocation' smart constructor.
+data GoogleCloudLocationLocation = GoogleCloudLocationLocation
+  { -- | The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".
+    displayName :: (Core.Maybe Core.Text),
+    -- | Cross-service attributes for the location. For example {\"cloud.googleapis.com\/region\": \"us-east1\"}
+    labels :: (Core.Maybe GoogleCloudLocationLocation_Labels),
+    -- | The canonical id for this location. For example: @\"us-east1\"@.
+    locationId :: (Core.Maybe Core.Text),
+    -- | Service-specific metadata. For example the available capacity at the given location.
+    metadata :: (Core.Maybe GoogleCloudLocationLocation_Metadata),
+    -- | Resource name for the location, which may vary between implementations. For example: @\"projects\/example-project\/locations\/us-east1\"@
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudLocationLocation' with the minimum fields required to make a request.
+newGoogleCloudLocationLocation ::
+  GoogleCloudLocationLocation
+newGoogleCloudLocationLocation =
+  GoogleCloudLocationLocation
+    { displayName = Core.Nothing,
+      labels = Core.Nothing,
+      locationId = Core.Nothing,
+      metadata = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleCloudLocationLocation where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudLocationLocation"
+      ( \o ->
+          GoogleCloudLocationLocation
+            Core.<$> (o Core..:? "displayName")
+            Core.<*> (o Core..:? "labels")
+            Core.<*> (o Core..:? "locationId")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON GoogleCloudLocationLocation where
+  toJSON GoogleCloudLocationLocation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("displayName" Core..=) Core.<$> displayName,
+            ("labels" Core..=) Core.<$> labels,
+            ("locationId" Core..=) Core.<$> locationId,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Cross-service attributes for the location. For example {\"cloud.googleapis.com\/region\": \"us-east1\"}
+--
+-- /See:/ 'newGoogleCloudLocationLocation_Labels' smart constructor.
+newtype GoogleCloudLocationLocation_Labels = GoogleCloudLocationLocation_Labels
+  { additional :: (Core.HashMap Core.Text Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudLocationLocation_Labels' with the minimum fields required to make a request.
+newGoogleCloudLocationLocation_Labels ::
+  -- |  See 'additional'.
+  Core.HashMap Core.Text Core.Text ->
+  GoogleCloudLocationLocation_Labels
+newGoogleCloudLocationLocation_Labels additional =
+  GoogleCloudLocationLocation_Labels {additional = additional}
+
+instance Core.FromJSON GoogleCloudLocationLocation_Labels where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudLocationLocation_Labels"
+      ( \o ->
+          GoogleCloudLocationLocation_Labels
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudLocationLocation_Labels where
+  toJSON GoogleCloudLocationLocation_Labels {..} =
+    Core.toJSON additional
+
+-- | Service-specific metadata. For example the available capacity at the given location.
+--
+-- /See:/ 'newGoogleCloudLocationLocation_Metadata' smart constructor.
+newtype GoogleCloudLocationLocation_Metadata = GoogleCloudLocationLocation_Metadata
+  { -- | Properties of the object. Contains field \@type with type URL.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleCloudLocationLocation_Metadata' with the minimum fields required to make a request.
+newGoogleCloudLocationLocation_Metadata ::
+  -- |  Properties of the object. Contains field \@type with type URL. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleCloudLocationLocation_Metadata
+newGoogleCloudLocationLocation_Metadata additional =
+  GoogleCloudLocationLocation_Metadata {additional = additional}
+
+instance Core.FromJSON GoogleCloudLocationLocation_Metadata where
+  parseJSON =
+    Core.withObject
+      "GoogleCloudLocationLocation_Metadata"
+      ( \o ->
+          GoogleCloudLocationLocation_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleCloudLocationLocation_Metadata where
+  toJSON GoogleCloudLocationLocation_Metadata {..} =
+    Core.toJSON additional
+
+-- | The response message for Operations.ListOperations.
+--
+-- /See:/ 'newGoogleLongrunningListOperationsResponse' smart constructor.
+data GoogleLongrunningListOperationsResponse = GoogleLongrunningListOperationsResponse
+  { -- | The standard List next-page token.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | A list of operations that matches the specified filter in the request.
+    operations :: (Core.Maybe [GoogleLongrunningOperation])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleLongrunningListOperationsResponse' with the minimum fields required to make a request.
+newGoogleLongrunningListOperationsResponse ::
+  GoogleLongrunningListOperationsResponse
+newGoogleLongrunningListOperationsResponse =
+  GoogleLongrunningListOperationsResponse
+    { nextPageToken =
+        Core.Nothing,
+      operations = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleLongrunningListOperationsResponse where
+  parseJSON =
+    Core.withObject
+      "GoogleLongrunningListOperationsResponse"
+      ( \o ->
+          GoogleLongrunningListOperationsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "operations")
+      )
+
+instance Core.ToJSON GoogleLongrunningListOperationsResponse where
+  toJSON GoogleLongrunningListOperationsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("operations" Core..=) Core.<$> operations
+          ]
+      )
+
+-- | This resource represents a long-running operation that is the result of a network API call.
+--
+-- /See:/ 'newGoogleLongrunningOperation' smart constructor.
+data GoogleLongrunningOperation = GoogleLongrunningOperation
+  { -- | If the value is @false@, it means the operation is still in progress. If @true@, the operation is completed, and either @error@ or @response@ is available.
+    done :: (Core.Maybe Core.Bool),
+    -- | The error result of the operation in case of failure or cancellation.
+    error :: (Core.Maybe GoogleRpcStatus),
+    -- | Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    metadata :: (Core.Maybe GoogleLongrunningOperation_Metadata),
+    -- | The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the @name@ should be a resource name ending with @operations\/{unique_id}@.
+    name :: (Core.Maybe Core.Text),
+    -- | The normal, successful response of the operation. If the original method returns no data on success, such as @Delete@, the response is @google.protobuf.Empty@. If the original method is standard @Get@\/@Create@\/@Update@, the response should be the resource. For other methods, the response should have the type @XxxResponse@, where @Xxx@ is the original method name. For example, if the original method name is @TakeSnapshot()@, the inferred response type is @TakeSnapshotResponse@.
+    response :: (Core.Maybe GoogleLongrunningOperation_Response)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleLongrunningOperation' with the minimum fields required to make a request.
+newGoogleLongrunningOperation ::
+  GoogleLongrunningOperation
+newGoogleLongrunningOperation =
+  GoogleLongrunningOperation
+    { done = Core.Nothing,
+      error = Core.Nothing,
+      metadata = Core.Nothing,
+      name = Core.Nothing,
+      response = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleLongrunningOperation where
+  parseJSON =
+    Core.withObject
+      "GoogleLongrunningOperation"
+      ( \o ->
+          GoogleLongrunningOperation
+            Core.<$> (o Core..:? "done")
+            Core.<*> (o Core..:? "error")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "response")
+      )
+
+instance Core.ToJSON GoogleLongrunningOperation where
+  toJSON GoogleLongrunningOperation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("done" Core..=) Core.<$> done,
+            ("error" Core..=) Core.<$> error,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("name" Core..=) Core.<$> name,
+            ("response" Core..=) Core.<$> response
+          ]
+      )
+
+-- | Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+--
+-- /See:/ 'newGoogleLongrunningOperation_Metadata' smart constructor.
+newtype GoogleLongrunningOperation_Metadata = GoogleLongrunningOperation_Metadata
+  { -- | Properties of the object. Contains field \@type with type URL.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleLongrunningOperation_Metadata' with the minimum fields required to make a request.
+newGoogleLongrunningOperation_Metadata ::
+  -- |  Properties of the object. Contains field \@type with type URL. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleLongrunningOperation_Metadata
+newGoogleLongrunningOperation_Metadata additional =
+  GoogleLongrunningOperation_Metadata {additional = additional}
+
+instance Core.FromJSON GoogleLongrunningOperation_Metadata where
+  parseJSON =
+    Core.withObject
+      "GoogleLongrunningOperation_Metadata"
+      ( \o ->
+          GoogleLongrunningOperation_Metadata
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleLongrunningOperation_Metadata where
+  toJSON GoogleLongrunningOperation_Metadata {..} =
+    Core.toJSON additional
+
+-- | The normal, successful response of the operation. If the original method returns no data on success, such as @Delete@, the response is @google.protobuf.Empty@. If the original method is standard @Get@\/@Create@\/@Update@, the response should be the resource. For other methods, the response should have the type @XxxResponse@, where @Xxx@ is the original method name. For example, if the original method name is @TakeSnapshot()@, the inferred response type is @TakeSnapshotResponse@.
+--
+-- /See:/ 'newGoogleLongrunningOperation_Response' smart constructor.
+newtype GoogleLongrunningOperation_Response = GoogleLongrunningOperation_Response
+  { -- | Properties of the object. Contains field \@type with type URL.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleLongrunningOperation_Response' with the minimum fields required to make a request.
+newGoogleLongrunningOperation_Response ::
+  -- |  Properties of the object. Contains field \@type with type URL. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleLongrunningOperation_Response
+newGoogleLongrunningOperation_Response additional =
+  GoogleLongrunningOperation_Response {additional = additional}
+
+instance Core.FromJSON GoogleLongrunningOperation_Response where
+  parseJSON =
+    Core.withObject
+      "GoogleLongrunningOperation_Response"
+      ( \o ->
+          GoogleLongrunningOperation_Response
+            Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleLongrunningOperation_Response where
+  toJSON GoogleLongrunningOperation_Response {..} =
+    Core.toJSON additional
+
+-- | A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
+--
+-- /See:/ 'newGoogleProtobufEmpty' smart constructor.
+data GoogleProtobufEmpty = GoogleProtobufEmpty
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleProtobufEmpty' with the minimum fields required to make a request.
+newGoogleProtobufEmpty ::
+  GoogleProtobufEmpty
+newGoogleProtobufEmpty = GoogleProtobufEmpty
+
+instance Core.FromJSON GoogleProtobufEmpty where
+  parseJSON =
+    Core.withObject
+      "GoogleProtobufEmpty"
+      (\o -> Core.pure GoogleProtobufEmpty)
+
+instance Core.ToJSON GoogleProtobufEmpty where
+  toJSON = Core.const Core.emptyObject
+
+-- | The @Status@ type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by <https://github.com/grpc gRPC>. Each @Status@ message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the <https://cloud.google.com/apis/design/errors API Design Guide>.
+--
+-- /See:/ 'newGoogleRpcStatus' smart constructor.
+data GoogleRpcStatus = GoogleRpcStatus
+  { -- | The status code, which should be an enum value of google.rpc.Code.
+    code :: (Core.Maybe Core.Int32),
+    -- | A list of messages that carry the error details. There is a common set of message types for APIs to use.
+    details :: (Core.Maybe [GoogleRpcStatus_DetailsItem]),
+    -- | A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+    message :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleRpcStatus' with the minimum fields required to make a request.
+newGoogleRpcStatus ::
+  GoogleRpcStatus
+newGoogleRpcStatus =
+  GoogleRpcStatus
+    { code = Core.Nothing,
+      details = Core.Nothing,
+      message = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleRpcStatus where
+  parseJSON =
+    Core.withObject
+      "GoogleRpcStatus"
+      ( \o ->
+          GoogleRpcStatus
+            Core.<$> (o Core..:? "code")
+            Core.<*> (o Core..:? "details")
+            Core.<*> (o Core..:? "message")
+      )
+
+instance Core.ToJSON GoogleRpcStatus where
+  toJSON GoogleRpcStatus {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("code" Core..=) Core.<$> code,
+            ("details" Core..=) Core.<$> details,
+            ("message" Core..=) Core.<$> message
+          ]
+      )
+
+--
+-- /See:/ 'newGoogleRpcStatus_DetailsItem' smart constructor.
+newtype GoogleRpcStatus_DetailsItem = GoogleRpcStatus_DetailsItem
+  { -- | Properties of the object. Contains field \@type with type URL.
+    additional :: (Core.HashMap Core.Text Core.Value)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleRpcStatus_DetailsItem' with the minimum fields required to make a request.
+newGoogleRpcStatus_DetailsItem ::
+  -- |  Properties of the object. Contains field \@type with type URL. See 'additional'.
+  Core.HashMap Core.Text Core.Value ->
+  GoogleRpcStatus_DetailsItem
+newGoogleRpcStatus_DetailsItem additional =
+  GoogleRpcStatus_DetailsItem {additional = additional}
+
+instance Core.FromJSON GoogleRpcStatus_DetailsItem where
+  parseJSON =
+    Core.withObject
+      "GoogleRpcStatus_DetailsItem"
+      ( \o ->
+          GoogleRpcStatus_DetailsItem Core.<$> (Core.parseJSONObject o)
+      )
+
+instance Core.ToJSON GoogleRpcStatus_DetailsItem where
+  toJSON GoogleRpcStatus_DetailsItem {..} = Core.toJSON additional
+
+-- | An object that represents a latitude\/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges.
+--
+-- /See:/ 'newGoogleTypeLatLng' smart constructor.
+data GoogleTypeLatLng = GoogleTypeLatLng
+  { -- | The latitude in degrees. It must be in the range [-90.0, +90.0].
+    latitude :: (Core.Maybe Core.Double),
+    -- | The longitude in degrees. It must be in the range [-180.0, +180.0].
+    longitude :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GoogleTypeLatLng' with the minimum fields required to make a request.
+newGoogleTypeLatLng ::
+  GoogleTypeLatLng
+newGoogleTypeLatLng =
+  GoogleTypeLatLng
+    { latitude = Core.Nothing,
+      longitude = Core.Nothing
+    }
+
+instance Core.FromJSON GoogleTypeLatLng where
+  parseJSON =
+    Core.withObject
+      "GoogleTypeLatLng"
+      ( \o ->
+          GoogleTypeLatLng
+            Core.<$> (o Core..:? "latitude")
+            Core.<*> (o Core..:? "longitude")
+      )
+
+instance Core.ToJSON GoogleTypeLatLng where
+  toJSON GoogleTypeLatLng {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("latitude" Core..=) Core.<$> latitude,
+            ("longitude" Core..=) Core.<$> longitude
+          ]
+      )
diff --git a/gen/Gogol/DialogFlow/Internal/Sum.hs b/gen/Gogol/DialogFlow/Internal/Sum.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Internal/Sum.hs
@@ -0,0 +1,5816 @@
+{-# 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.DialogFlow.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.DialogFlow.Internal.Sum
+  ( -- * Xgafv
+    Xgafv
+      ( Xgafv_1,
+        Xgafv_2,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+    GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+      ( GoogleCloudDialogflowCxV3AnswerFeedback_Rating_RATINGUNSPECIFIED,
+        GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSUP,
+        GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSDOWN,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+      ( GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_ATTRIBUTETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Numerical,
+        GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Freshness,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+      ( GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_INTERPOLATIONTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_Linear,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+      ( GoogleCloudDialogflowCxV3ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Passed,
+        GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+      ( GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_PUBLICWEB,
+        GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Unstructured,
+        GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Structured,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+      ( GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Documents,
+        GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Chunks,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+      ( GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_GROUNDINGDECISIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_ACCEPTEDBYGROUNDING,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_REJECTEDBYGROUNDING,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+      ( GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_GROUNDINGSCOREBUCKETUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYLOW,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Low,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Medium,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_High,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYHIGH,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+      ( GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHNONE,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHQUERY,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHRESPONSE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+      ( GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_SAFETYDECISIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_ACCEPTEDBYSAFETYCHECK,
+        GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_REJECTEDBYSAFETYCHECK,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3Deployment_State
+    GoogleCloudDialogflowCxV3Deployment_State
+      ( GoogleCloudDialogflowCxV3Deployment_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3Deployment_State_Running,
+        GoogleCloudDialogflowCxV3Deployment_State_Succeeded,
+        GoogleCloudDialogflowCxV3Deployment_State_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+    GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+      ( GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_RESPONSETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Partial,
+        GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Final,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+    GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+      ( GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3EntityType_Kind
+    GoogleCloudDialogflowCxV3EntityType_Kind
+      ( GoogleCloudDialogflowCxV3EntityType_Kind_KINDUNSPECIFIED,
+        GoogleCloudDialogflowCxV3EntityType_Kind_KINDMAP,
+        GoogleCloudDialogflowCxV3EntityType_Kind_KINDLIST,
+        GoogleCloudDialogflowCxV3EntityType_Kind_KINDREGEXP,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3Experiment_State
+    GoogleCloudDialogflowCxV3Experiment_State
+      ( GoogleCloudDialogflowCxV3Experiment_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3Experiment_State_Draft,
+        GoogleCloudDialogflowCxV3Experiment_State_Running,
+        GoogleCloudDialogflowCxV3Experiment_State_Done,
+        GoogleCloudDialogflowCxV3Experiment_State_ROLLOUTFAILED,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+      ( GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_COUNTTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALNOMATCHCOUNT,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALTURNCOUNT,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_AVERAGETURNCOUNT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+      ( GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_METRICUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CONTAINEDSESSIONNOCALLBACKRATE,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_LIVEAGENTHANDOFFRATE,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CALLBACKSESSIONRATE,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_ABANDONEDSESSIONRATE,
+        GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_SESSIONENDRATE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+      ( GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_DATAFORMATUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_Blob,
+        GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_JSONPACKAGE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+      ( GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_DATAFORMATUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_Blob,
+        GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_JSONPACKAGE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+      ( GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_DATAFORMATUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Blob,
+        GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Json,
+        GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Csv,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+      ( GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_DATAFORMATUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Blob,
+        GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Json,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+      ( GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYUNSPECIFIED,
+        GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYCREATENEW,
+        GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYREPLACE,
+        GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYKEEP,
+        GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYMERGE,
+        GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYTHROWERROR,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+      ( GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_MERGEOPTIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Replace,
+        GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Merge,
+        GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Rename,
+        GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_REPORTCONFLICT,
+        GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Keep,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+    GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+      ( GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_IMPORTOPTIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Keep,
+        GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Fallback,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+      ( GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_MERGEOPTIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Reject,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Replace,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Merge,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Rename,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_REPORTCONFLICT,
+        GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Keep,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+      ( GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE,
+        GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+      ( GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEBESTAVAILABLE,
+        GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USESTANDARD,
+        GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEENHANCED,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3Match_MatchType
+    GoogleCloudDialogflowCxV3Match_MatchType
+      ( GoogleCloudDialogflowCxV3Match_MatchType_MATCHTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3Match_MatchType_Intent,
+        GoogleCloudDialogflowCxV3Match_MatchType_DIRECTINTENT,
+        GoogleCloudDialogflowCxV3Match_MatchType_PARAMETERFILLING,
+        GoogleCloudDialogflowCxV3Match_MatchType_NOMATCH,
+        GoogleCloudDialogflowCxV3Match_MatchType_NOINPUT,
+        GoogleCloudDialogflowCxV3Match_MatchType_Event,
+        GoogleCloudDialogflowCxV3Match_MatchType_KNOWLEDGECONNECTOR,
+        GoogleCloudDialogflowCxV3Match_MatchType_Playbook,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+    GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+      ( GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEAUTOMATIC,
+        GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEMANUAL,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3NluSettings_ModelType
+    GoogleCloudDialogflowCxV3NluSettings_ModelType
+      ( GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPESTANDARD,
+        GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEADVANCED,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+      ( GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGUNSPECIFIED,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_LINEAR_16,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_MP3,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMP364KBPS,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGOGGOPUS,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMULAW,
+        GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGALAW,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+      ( GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Empty,
+        GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Invalid,
+        GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Filled,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+    GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+      ( GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_RESPONSETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_ENTRYPROMPT,
+        GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_PARAMETERPROMPT,
+        GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_HANDLERPROMPT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+    GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+      ( GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_RESTOREOPTIONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Keep,
+        GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Fallback,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+    GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+      ( GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_PURGEDATATYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_DIALOGFLOWHISTORY,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+      ( GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTIONSCOPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTDISKSTORAGE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+      ( GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTIONSTRATEGYUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTWITHSERVICE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+      ( GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_RETENTIONSTRATEGYUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_REMOVEAFTERCONVERSATION,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+      ( GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_AUDIOFORMATUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Mulaw,
+        GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_MP3,
+        GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Ogg,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+      ( GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+        GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+      ( GoogleCloudDialogflowCxV3TestCaseResult_TestResult_TESTRESULTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Passed,
+        GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3TestRunDifference_Type
+    GoogleCloudDialogflowCxV3TestRunDifference_Type
+      ( GoogleCloudDialogflowCxV3TestRunDifference_Type_DIFFTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3TestRunDifference_Type_Intent,
+        GoogleCloudDialogflowCxV3TestRunDifference_Type_Page,
+        GoogleCloudDialogflowCxV3TestRunDifference_Type_Parameters,
+        GoogleCloudDialogflowCxV3TestRunDifference_Type_Utterance,
+        GoogleCloudDialogflowCxV3TestRunDifference_Type_Flow,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+      ( GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDINTENT,
+        GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+    GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+      ( GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_RESOURCETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Agent,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intent,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASE,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTPARAMETER,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intents,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASES,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPE,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPES,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Webhook,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Flow,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Page,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Pages,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_TRANSITIONROUTEGROUP,
+        GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_AGENTTRANSITIONROUTEGROUP,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3ValidationMessage_Severity
+    GoogleCloudDialogflowCxV3ValidationMessage_Severity
+      ( GoogleCloudDialogflowCxV3ValidationMessage_Severity_SEVERITYUNSPECIFIED,
+        GoogleCloudDialogflowCxV3ValidationMessage_Severity_Info,
+        GoogleCloudDialogflowCxV3ValidationMessage_Severity_Warning,
+        GoogleCloudDialogflowCxV3ValidationMessage_Severity_Error',
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3Version_State
+    GoogleCloudDialogflowCxV3Version_State
+      ( GoogleCloudDialogflowCxV3Version_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3Version_State_Running,
+        GoogleCloudDialogflowCxV3Version_State_Succeeded,
+        GoogleCloudDialogflowCxV3Version_State_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+    GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+      ( GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERUNSPECIFIED,
+        GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERMALE,
+        GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERFEMALE,
+        GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERNEUTRAL,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+      ( GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Post',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Get',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Head',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Put',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Delete',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Patch',
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Options,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+      ( GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_None,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_IDTOKEN,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+      ( GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Standard,
+        GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Flexible,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+      ( GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED,
+        GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Append,
+        GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Replace,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+      ( GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Passed,
+        GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+      ( GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_PUBLICWEB,
+        GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Unstructured,
+        GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Structured,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+      ( GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Documents,
+        GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Chunks,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+      ( GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+      ( GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEBESTAVAILABLE,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USESTANDARD,
+        GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEENHANCED,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+      ( GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Empty,
+        GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Invalid,
+        GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Filled,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+      ( GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_TESTRESULTUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Passed,
+        GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+    GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+      ( GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_DIFFTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Intent,
+        GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Page,
+        GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Parameters,
+        GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Utterance,
+        GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Flow,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+      ( GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDINTENT,
+        GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+      ( GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Post',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Get',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Head',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Put',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Delete',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Patch',
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Options,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+      ( GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_None,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_IDTOKEN,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+      ( GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Standard,
+        GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Flexible,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+      ( GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED,
+        GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Append,
+        GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Replace,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+      ( GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL,
+        GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ( GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      ( GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+        GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2ConversationEvent_Type
+    GoogleCloudDialogflowV2ConversationEvent_Type
+      ( GoogleCloudDialogflowV2ConversationEvent_Type_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONSTARTED,
+        GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONFINISHED,
+        GoogleCloudDialogflowV2ConversationEvent_Type_HUMANINTERVENTIONNEEDED,
+        GoogleCloudDialogflowV2ConversationEvent_Type_NEWMESSAGE,
+        GoogleCloudDialogflowV2ConversationEvent_Type_NEWRECOGNITIONRESULT,
+        GoogleCloudDialogflowV2ConversationEvent_Type_UNRECOVERABLEERROR,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2ConversationModel_State
+    GoogleCloudDialogflowV2ConversationModel_State
+      ( GoogleCloudDialogflowV2ConversationModel_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowV2ConversationModel_State_Creating,
+        GoogleCloudDialogflowV2ConversationModel_State_Undeployed,
+        GoogleCloudDialogflowV2ConversationModel_State_Deploying,
+        GoogleCloudDialogflowV2ConversationModel_State_Deployed,
+        GoogleCloudDialogflowV2ConversationModel_State_Undeploying,
+        GoogleCloudDialogflowV2ConversationModel_State_Deleting,
+        GoogleCloudDialogflowV2ConversationModel_State_Failed,
+        GoogleCloudDialogflowV2ConversationModel_State_Pending,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+      ( GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Initializing,
+        GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Running,
+        GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Cancelled,
+        GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Succeeded,
+        GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Failed,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+      ( GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Pending,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Succeeded,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Failed,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelled,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelling,
+        GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Training,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+      ( GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+        GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2EntityType_Kind
+    GoogleCloudDialogflowV2EntityType_Kind
+      ( GoogleCloudDialogflowV2EntityType_Kind_KINDUNSPECIFIED,
+        GoogleCloudDialogflowV2EntityType_Kind_KINDMAP,
+        GoogleCloudDialogflowV2EntityType_Kind_KINDLIST,
+        GoogleCloudDialogflowV2EntityType_Kind_KINDREGEXP,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+      ( GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Facebook,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Slack,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Telegram,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Kik,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Skype,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Line,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Viber,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE,
+        GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2Intent_WebhookState
+    GoogleCloudDialogflowV2Intent_WebhookState
+      ( GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED,
+        GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLED,
+        GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentMessage_Platform
+    GoogleCloudDialogflowV2IntentMessage_Platform
+      ( GoogleCloudDialogflowV2IntentMessage_Platform_PLATFORMUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Facebook,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Slack,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Telegram,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Kik,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Skype,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Line,
+        GoogleCloudDialogflowV2IntentMessage_Platform_Viber,
+        GoogleCloudDialogflowV2IntentMessage_Platform_ACTIONSONGOOGLE,
+        GoogleCloudDialogflowV2IntentMessage_Platform_GOOGLEHANGOUTS,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+      ( GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_White,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+      ( GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION,
+        GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+      ( GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Leading,
+        GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Center,
+        GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Trailing,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+      ( GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_Audio,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+      ( GoogleCloudDialogflowV2IntentTrainingPhrase_Type_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Example,
+        GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Template,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+      ( GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Pending,
+        GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Running,
+        GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Done,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2Message_ParticipantRole
+    GoogleCloudDialogflowV2Message_ParticipantRole
+      ( GoogleCloudDialogflowV2Message_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2Message_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2Message_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2Message_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+      ( GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+        GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+        GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ( GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      ( GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+        GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+      ( GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL,
+        GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+      ( GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_Transcript,
+        GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ( GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      ( GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+        GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1ConversationEvent_Type
+    GoogleCloudDialogflowV2beta1ConversationEvent_Type
+      ( GoogleCloudDialogflowV2beta1ConversationEvent_Type_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONSTARTED,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONFINISHED,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_HUMANINTERVENTIONNEEDED,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWMESSAGE,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWRECOGNITIONRESULT,
+        GoogleCloudDialogflowV2beta1ConversationEvent_Type_UNRECOVERABLEERROR,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+      ( GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1EntityType_Kind
+    GoogleCloudDialogflowV2beta1EntityType_Kind
+      ( GoogleCloudDialogflowV2beta1EntityType_Kind_KINDUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1EntityType_Kind_KINDMAP,
+        GoogleCloudDialogflowV2beta1EntityType_Kind_KINDLIST,
+        GoogleCloudDialogflowV2beta1EntityType_Kind_KINDREGEXP,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+      ( GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Facebook,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Slack,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telegram,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Kik,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Skype,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Line,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Viber,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telephony,
+        GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1Intent_WebhookState
+    GoogleCloudDialogflowV2beta1Intent_WebhookState
+      ( GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLED,
+        GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessage_Platform
+    GoogleCloudDialogflowV2beta1IntentMessage_Platform
+      ( GoogleCloudDialogflowV2beta1IntentMessage_Platform_PLATFORMUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Facebook,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Slack,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telegram,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Kik,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Skype,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Line,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Viber,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_ACTIONSONGOOGLE,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telephony,
+        GoogleCloudDialogflowV2beta1IntentMessage_Platform_GOOGLEHANGOUTS,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+      ( GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_White,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+      ( GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION,
+        GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+      ( GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Leading,
+        GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Center,
+        GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Trailing,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+      ( GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_Audio,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+      ( GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_HEIGHTUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Short,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Medium,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Tall,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+      ( GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_CARDWIDTHUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Small,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Medium,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+      ( GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_CARDORIENTATIONUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Horizontal,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Vertical,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+      ( GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_THUMBNAILIMAGEALIGNMENTUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Left',
+        GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Right',
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+      ( GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Example,
+        GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Template,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+      ( GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_MATCHCONFIDENCELEVELUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Low,
+        GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Medium,
+        GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_High,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+      ( GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_STATEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Pending,
+        GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Running,
+        GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Done,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1Message_ParticipantRole
+    GoogleCloudDialogflowV2beta1Message_ParticipantRole
+      ( GoogleCloudDialogflowV2beta1Message_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1Message_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2beta1Message_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2beta1Message_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+      ( GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+        GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+      ( GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+      ( GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+        GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+      ( GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_Transcript,
+        GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_DTMFDIGITS,
+        GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE,
+        GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_PARTIALDTMFDIGITS,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+      ( GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_TELEPHONYDTMFUNSPECIFIED,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFONE,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTWO,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTHREE,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFOUR,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFIVE,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSIX,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSEVEN,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFEIGHT,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFNINE,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFZERO,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFA,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFB,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFC,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFD,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSTAR,
+        GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFPOUND,
+        ..
+      ),
+
+    -- * GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+      ( GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+        GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDINTENT,
+        GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+        ..
+      ),
+
+    -- * ProjectsLocationsAgentsIntentsListIntentView
+    ProjectsLocationsAgentsIntentsListIntentView
+      ( ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWUNSPECIFIED,
+        ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWPARTIAL,
+        ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWFULL,
+        ..
+      ),
+
+    -- * ProjectsLocationsAgentsTestCasesCalculateCoverageType
+    ProjectsLocationsAgentsTestCasesCalculateCoverageType
+      ( ProjectsLocationsAgentsTestCasesCalculateCoverageType_COVERAGETYPEUNSPECIFIED,
+        ProjectsLocationsAgentsTestCasesCalculateCoverageType_Intent,
+        ProjectsLocationsAgentsTestCasesCalculateCoverageType_PAGETRANSITION,
+        ProjectsLocationsAgentsTestCasesCalculateCoverageType_TRANSITIONROUTEGROUP,
+        ..
+      ),
+
+    -- * ProjectsLocationsAgentsTestCasesListView
+    ProjectsLocationsAgentsTestCasesListView
+      ( ProjectsLocationsAgentsTestCasesListView_TESTCASEVIEWUNSPECIFIED,
+        ProjectsLocationsAgentsTestCasesListView_Basic,
+        ProjectsLocationsAgentsTestCasesListView_Full,
+        ..
+      ),
+  )
+where
+
+import Gogol.Prelude qualified as Core
+
+-- | V1 error format.
+newtype Xgafv = Xgafv {fromXgafv :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | v1 error format
+pattern Xgafv_1 :: Xgafv
+pattern Xgafv_1 = Xgafv "1"
+
+-- | v2 error format
+pattern Xgafv_2 :: Xgafv
+pattern Xgafv_2 = Xgafv "2"
+
+{-# COMPLETE
+  Xgafv_1,
+  Xgafv_2,
+  Xgafv
+  #-}
+
+-- | Optional. Rating from user for the specific Dialogflow response.
+newtype GoogleCloudDialogflowCxV3AnswerFeedback_Rating = GoogleCloudDialogflowCxV3AnswerFeedback_Rating {fromGoogleCloudDialogflowCxV3AnswerFeedback_Rating :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Rating not specified.
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_RATINGUNSPECIFIED :: GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_RATINGUNSPECIFIED = GoogleCloudDialogflowCxV3AnswerFeedback_Rating "RATING_UNSPECIFIED"
+
+-- | Thumbs up feedback from user.
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSUP :: GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSUP = GoogleCloudDialogflowCxV3AnswerFeedback_Rating "THUMBS_UP"
+
+-- | Thumbs down feedback from user.
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSDOWN :: GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+pattern GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSDOWN = GoogleCloudDialogflowCxV3AnswerFeedback_Rating "THUMBS_DOWN"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3AnswerFeedback_Rating_RATINGUNSPECIFIED,
+  GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSUP,
+  GoogleCloudDialogflowCxV3AnswerFeedback_Rating_THUMBSDOWN,
+  GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+  #-}
+
+-- | Optional. The attribute type to be used to determine the boost amount. The attribute value can be derived from the field value of the specified field/name. In the case of numerical it is straightforward i.e. attribute/value = numerical/field/value. In the case of freshness however, attribute/value = (time.now() - datetime/field_value).
+newtype GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType {fromGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified AttributeType.
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_ATTRIBUTETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_ATTRIBUTETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType "ATTRIBUTE_TYPE_UNSPECIFIED"
+
+-- | The value of the numerical field will be used to dynamically update the boost amount. In this case, the attribute/value (the x value) of the control point will be the actual value of the numerical field for which the boost/amount is specified.
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Numerical :: GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Numerical = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType "NUMERICAL"
+
+-- | For the freshness use case the attribute value will be the duration between the current time and the date in the datetime field specified. The value must be formatted as an XSD @dayTimeDuration@ value (a restricted subset of an ISO 8601 duration value). The pattern for this is: @nDnM]@. E.g. @5D@, @3DT12H30M@, @T24H@.
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Freshness :: GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Freshness = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType "FRESHNESS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_ATTRIBUTETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Numerical,
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType_Freshness,
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+  #-}
+
+-- | Optional. The interpolation type to be applied to connect the control points listed below.
+newtype GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType {fromGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Interpolation type is unspecified. In this case, it defaults to Linear.
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_INTERPOLATIONTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_INTERPOLATIONTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType "INTERPOLATION_TYPE_UNSPECIFIED"
+
+-- | Piecewise linear interpolation will be applied.
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_Linear :: GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+pattern GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_Linear = GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType "LINEAR"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_INTERPOLATIONTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType_Linear,
+  GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+  #-}
+
+-- | The result of this continuous test run, i.e. whether all the tests in this continuous test run pass or not.
+newtype GoogleCloudDialogflowCxV3ContinuousTestResult_Result = GoogleCloudDialogflowCxV3ContinuousTestResult_Result {fromGoogleCloudDialogflowCxV3ContinuousTestResult_Result :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED :: GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED = GoogleCloudDialogflowCxV3ContinuousTestResult_Result "AGGREGATED_TEST_RESULT_UNSPECIFIED"
+
+-- | All the tests passed.
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Passed :: GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Passed = GoogleCloudDialogflowCxV3ContinuousTestResult_Result "PASSED"
+
+-- | At least one test did not pass.
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Failed :: GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Failed = GoogleCloudDialogflowCxV3ContinuousTestResult_Result "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Passed,
+  GoogleCloudDialogflowCxV3ContinuousTestResult_Result_Failed,
+  GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+  #-}
+
+-- | The type of the connected data store.
+newtype GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType = GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType {fromGoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value indicates that the data store type is not specified, so it will not be used during search.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType "DATA_STORE_TYPE_UNSPECIFIED"
+
+-- | A data store that contains public web content.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_PUBLICWEB :: GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_PUBLICWEB = GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType "PUBLIC_WEB"
+
+-- | A data store that contains unstructured private data.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Unstructured :: GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Unstructured = GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType "UNSTRUCTURED"
+
+-- | A data store that contains structured data (for example FAQ).
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Structured :: GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Structured = GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType "STRUCTURED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_PUBLICWEB,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Unstructured,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType_Structured,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+  #-}
+
+-- | The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode.
+newtype GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode = GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode {fromGoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This should be set for STRUCTURED type data stores. Due to legacy reasons this is considered as DOCUMENTS for STRUCTURED and PUBLIC_WEB data stores.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode "DOCUMENT_PROCESSING_MODE_UNSPECIFIED"
+
+-- | Documents are processed as documents.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Documents :: GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Documents = GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode "DOCUMENTS"
+
+-- | Documents are converted to chunks.
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Chunks :: GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Chunks = GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode "CHUNKS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Documents,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode_Chunks,
+  GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+  #-}
+
+-- | Represents the decision of the grounding check.
+newtype GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision {fromGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Decision not specified.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_GROUNDINGDECISIONUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_GROUNDINGDECISIONUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision "GROUNDING_DECISION_UNSPECIFIED"
+
+-- | Grounding have accepted the answer.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_ACCEPTEDBYGROUNDING :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_ACCEPTEDBYGROUNDING = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision "ACCEPTED_BY_GROUNDING"
+
+-- | Grounding have rejected the answer.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_REJECTEDBYGROUNDING :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_REJECTEDBYGROUNDING = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision "REJECTED_BY_GROUNDING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_GROUNDINGDECISIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_ACCEPTEDBYGROUNDING,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision_REJECTEDBYGROUNDING,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+  #-}
+
+-- | Grounding score bucket setting.
+newtype GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score {fromGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Score not specified.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_GROUNDINGSCOREBUCKETUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_GROUNDINGSCOREBUCKETUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "GROUNDING_SCORE_BUCKET_UNSPECIFIED"
+
+-- | We have very low confidence that the answer is grounded.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYLOW :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYLOW = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "VERY_LOW"
+
+-- | We have low confidence that the answer is grounded.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Low :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Low = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "LOW"
+
+-- | We have medium confidence that the answer is grounded.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Medium :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Medium = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "MEDIUM"
+
+-- | We have high confidence that the answer is grounded.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_High :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_High = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "HIGH"
+
+-- | We have very high confidence that the answer is grounded.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYHIGH :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYHIGH = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score "VERY_HIGH"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_GROUNDINGSCOREBUCKETUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYLOW,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Low,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_Medium,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_High,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score_VERYHIGH,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+  #-}
+
+-- | Specifies banned phrase match subject.
+newtype GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch {fromGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No banned phrase check was executed.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch "BANNED_PHRASE_MATCH_UNSPECIFIED"
+
+-- | All banned phrase checks led to no match.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHNONE :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHNONE = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch "BANNED_PHRASE_MATCH_NONE"
+
+-- | A banned phrase matched the query.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHQUERY :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHQUERY = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch "BANNED_PHRASE_MATCH_QUERY"
+
+-- | A banned phrase matched the response.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHRESPONSE :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHRESPONSE = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch "BANNED_PHRASE_MATCH_RESPONSE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHNONE,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHQUERY,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch_BANNEDPHRASEMATCHRESPONSE,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+  #-}
+
+-- | Safety decision.
+newtype GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision {fromGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Decision not specified.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_SAFETYDECISIONUNSPECIFIED :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_SAFETYDECISIONUNSPECIFIED = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision "SAFETY_DECISION_UNSPECIFIED"
+
+-- | No manual or automatic safety check fired.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_ACCEPTEDBYSAFETYCHECK :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_ACCEPTEDBYSAFETYCHECK = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision "ACCEPTED_BY_SAFETY_CHECK"
+
+-- | One ore more safety checks fired.
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_REJECTEDBYSAFETYCHECK :: GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+pattern GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_REJECTEDBYSAFETYCHECK = GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision "REJECTED_BY_SAFETY_CHECK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_SAFETYDECISIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_ACCEPTEDBYSAFETYCHECK,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision_REJECTEDBYSAFETYCHECK,
+  GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+  #-}
+
+-- | The current state of the deployment.
+newtype GoogleCloudDialogflowCxV3Deployment_State = GoogleCloudDialogflowCxV3Deployment_State {fromGoogleCloudDialogflowCxV3Deployment_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | State unspecified.
+pattern GoogleCloudDialogflowCxV3Deployment_State_STATEUNSPECIFIED :: GoogleCloudDialogflowCxV3Deployment_State
+pattern GoogleCloudDialogflowCxV3Deployment_State_STATEUNSPECIFIED = GoogleCloudDialogflowCxV3Deployment_State "STATE_UNSPECIFIED"
+
+-- | The deployment is running.
+pattern GoogleCloudDialogflowCxV3Deployment_State_Running :: GoogleCloudDialogflowCxV3Deployment_State
+pattern GoogleCloudDialogflowCxV3Deployment_State_Running = GoogleCloudDialogflowCxV3Deployment_State "RUNNING"
+
+-- | The deployment succeeded.
+pattern GoogleCloudDialogflowCxV3Deployment_State_Succeeded :: GoogleCloudDialogflowCxV3Deployment_State
+pattern GoogleCloudDialogflowCxV3Deployment_State_Succeeded = GoogleCloudDialogflowCxV3Deployment_State "SUCCEEDED"
+
+-- | The deployment failed.
+pattern GoogleCloudDialogflowCxV3Deployment_State_Failed :: GoogleCloudDialogflowCxV3Deployment_State
+pattern GoogleCloudDialogflowCxV3Deployment_State_Failed = GoogleCloudDialogflowCxV3Deployment_State "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3Deployment_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3Deployment_State_Running,
+  GoogleCloudDialogflowCxV3Deployment_State_Succeeded,
+  GoogleCloudDialogflowCxV3Deployment_State_Failed,
+  GoogleCloudDialogflowCxV3Deployment_State
+  #-}
+
+-- | Response type.
+newtype GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType = GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType {fromGoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This should never happen.
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_RESPONSETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_RESPONSETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType "RESPONSE_TYPE_UNSPECIFIED"
+
+-- | Partial response. e.g. Aggregated responses in a Fulfillment that enables @return_partial_response@ can be returned as partial response. WARNING: partial response is not eligible for barge-in.
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Partial :: GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Partial = GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType "PARTIAL"
+
+-- | Final response.
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Final :: GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+pattern GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Final = GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType "FINAL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_RESPONSETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Partial,
+  GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType_Final,
+  GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+  #-}
+
+-- | Indicates whether the entity type can be automatically expanded.
+newtype GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode = GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode {fromGoogleCloudDialogflowCxV3EntityType_AutoExpansionMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Auto expansion disabled for the entity.
+pattern GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED :: GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED = GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_UNSPECIFIED"
+
+-- | Allows an agent to recognize values that have not been explicitly listed in the entity.
+pattern GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT :: GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT = GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_DEFAULT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+  GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+  #-}
+
+-- | Required. Indicates the kind of entity type.
+newtype GoogleCloudDialogflowCxV3EntityType_Kind = GoogleCloudDialogflowCxV3EntityType_Kind {fromGoogleCloudDialogflowCxV3EntityType_Kind :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDUNSPECIFIED :: GoogleCloudDialogflowCxV3EntityType_Kind
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDUNSPECIFIED = GoogleCloudDialogflowCxV3EntityType_Kind "KIND_UNSPECIFIED"
+
+-- | Map entity types allow mapping of a group of synonyms to a canonical value.
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDMAP :: GoogleCloudDialogflowCxV3EntityType_Kind
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDMAP = GoogleCloudDialogflowCxV3EntityType_Kind "KIND_MAP"
+
+-- | List entity types contain a set of entries that do not map to canonical values. However, list entity types can contain references to other entity types (with or without aliases).
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDLIST :: GoogleCloudDialogflowCxV3EntityType_Kind
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDLIST = GoogleCloudDialogflowCxV3EntityType_Kind "KIND_LIST"
+
+-- | Regexp entity types allow to specify regular expressions in entries values.
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDREGEXP :: GoogleCloudDialogflowCxV3EntityType_Kind
+pattern GoogleCloudDialogflowCxV3EntityType_Kind_KINDREGEXP = GoogleCloudDialogflowCxV3EntityType_Kind "KIND_REGEXP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3EntityType_Kind_KINDUNSPECIFIED,
+  GoogleCloudDialogflowCxV3EntityType_Kind_KINDMAP,
+  GoogleCloudDialogflowCxV3EntityType_Kind_KINDLIST,
+  GoogleCloudDialogflowCxV3EntityType_Kind_KINDREGEXP,
+  GoogleCloudDialogflowCxV3EntityType_Kind
+  #-}
+
+-- | The current state of the experiment. Transition triggered by Experiments.StartExperiment: DRAFT->RUNNING. Transition triggered by Experiments.CancelExperiment: DRAFT->DONE or RUNNING->DONE.
+newtype GoogleCloudDialogflowCxV3Experiment_State = GoogleCloudDialogflowCxV3Experiment_State {fromGoogleCloudDialogflowCxV3Experiment_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | State unspecified.
+pattern GoogleCloudDialogflowCxV3Experiment_State_STATEUNSPECIFIED :: GoogleCloudDialogflowCxV3Experiment_State
+pattern GoogleCloudDialogflowCxV3Experiment_State_STATEUNSPECIFIED = GoogleCloudDialogflowCxV3Experiment_State "STATE_UNSPECIFIED"
+
+-- | The experiment is created but not started yet.
+pattern GoogleCloudDialogflowCxV3Experiment_State_Draft :: GoogleCloudDialogflowCxV3Experiment_State
+pattern GoogleCloudDialogflowCxV3Experiment_State_Draft = GoogleCloudDialogflowCxV3Experiment_State "DRAFT"
+
+-- | The experiment is running.
+pattern GoogleCloudDialogflowCxV3Experiment_State_Running :: GoogleCloudDialogflowCxV3Experiment_State
+pattern GoogleCloudDialogflowCxV3Experiment_State_Running = GoogleCloudDialogflowCxV3Experiment_State "RUNNING"
+
+-- | The experiment is done.
+pattern GoogleCloudDialogflowCxV3Experiment_State_Done :: GoogleCloudDialogflowCxV3Experiment_State
+pattern GoogleCloudDialogflowCxV3Experiment_State_Done = GoogleCloudDialogflowCxV3Experiment_State "DONE"
+
+-- | The experiment with auto-rollout enabled has failed.
+pattern GoogleCloudDialogflowCxV3Experiment_State_ROLLOUTFAILED :: GoogleCloudDialogflowCxV3Experiment_State
+pattern GoogleCloudDialogflowCxV3Experiment_State_ROLLOUTFAILED = GoogleCloudDialogflowCxV3Experiment_State "ROLLOUT_FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3Experiment_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3Experiment_State_Draft,
+  GoogleCloudDialogflowCxV3Experiment_State_Running,
+  GoogleCloudDialogflowCxV3Experiment_State_Done,
+  GoogleCloudDialogflowCxV3Experiment_State_ROLLOUTFAILED,
+  GoogleCloudDialogflowCxV3Experiment_State
+  #-}
+
+-- | Count-based metric type. Only one of type or count_type is specified in each Metric.
+newtype GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType = GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType {fromGoogleCloudDialogflowCxV3ExperimentResultMetric_CountType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Count type unspecified.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_COUNTTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_COUNTTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType "COUNT_TYPE_UNSPECIFIED"
+
+-- | Total number of occurrences of a \'NO_MATCH\'.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALNOMATCHCOUNT :: GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALNOMATCHCOUNT = GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType "TOTAL_NO_MATCH_COUNT"
+
+-- | Total number of turn counts.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALTURNCOUNT :: GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALTURNCOUNT = GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType "TOTAL_TURN_COUNT"
+
+-- | Average turn count in a session.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_AVERAGETURNCOUNT :: GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_AVERAGETURNCOUNT = GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType "AVERAGE_TURN_COUNT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_COUNTTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALNOMATCHCOUNT,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_TOTALTURNCOUNT,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType_AVERAGETURNCOUNT,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+  #-}
+
+-- | Ratio-based metric type. Only one of type or count_type is specified in each Metric.
+newtype GoogleCloudDialogflowCxV3ExperimentResultMetric_Type = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type {fromGoogleCloudDialogflowCxV3ExperimentResultMetric_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Metric unspecified.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_METRICUNSPECIFIED :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_METRICUNSPECIFIED = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "METRIC_UNSPECIFIED"
+
+-- | Percentage of contained sessions without user calling back in 24 hours.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CONTAINEDSESSIONNOCALLBACKRATE :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CONTAINEDSESSIONNOCALLBACKRATE = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "CONTAINED_SESSION_NO_CALLBACK_RATE"
+
+-- | Percentage of sessions that were handed to a human agent.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_LIVEAGENTHANDOFFRATE :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_LIVEAGENTHANDOFFRATE = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "LIVE_AGENT_HANDOFF_RATE"
+
+-- | Percentage of sessions with the same user calling back.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CALLBACKSESSIONRATE :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CALLBACKSESSIONRATE = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "CALLBACK_SESSION_RATE"
+
+-- | Percentage of sessions where user hung up.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_ABANDONEDSESSIONRATE :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_ABANDONEDSESSIONRATE = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "ABANDONED_SESSION_RATE"
+
+-- | Percentage of sessions reached Dialogflow \'END/PAGE\' or \'END/SESSION\'.
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_SESSIONENDRATE :: GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+pattern GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_SESSIONENDRATE = GoogleCloudDialogflowCxV3ExperimentResultMetric_Type "SESSION_END_RATE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_METRICUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CONTAINEDSESSIONNOCALLBACKRATE,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_LIVEAGENTHANDOFFRATE,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_CALLBACKSESSIONRATE,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_ABANDONEDSESSIONRATE,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type_SESSIONENDRATE,
+  GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+  #-}
+
+-- | Optional. The data format of the exported agent. If not specified, @BLOB@ is assumed.
+newtype GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat = GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat {fromGoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified format.
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_DATAFORMATUNSPECIFIED :: GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_DATAFORMATUNSPECIFIED = GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat "DATA_FORMAT_UNSPECIFIED"
+
+-- | Agent content will be exported as raw bytes.
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_Blob :: GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_Blob = GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat "BLOB"
+
+-- | Agent content will be exported in JSON Package format.
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_JSONPACKAGE :: GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_JSONPACKAGE = GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat "JSON_PACKAGE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_DATAFORMATUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_Blob,
+  GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat_JSONPACKAGE,
+  GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+  #-}
+
+-- | Optional. The data format of the exported entity types. If not specified, @BLOB@ is assumed.
+newtype GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat = GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat {fromGoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified format. Treated as @BLOB@.
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_DATAFORMATUNSPECIFIED :: GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_DATAFORMATUNSPECIFIED = GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat "DATA_FORMAT_UNSPECIFIED"
+
+-- | EntityTypes will be exported as raw bytes.
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_Blob :: GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_Blob = GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat "BLOB"
+
+-- | EntityTypes will be exported in JSON Package format.
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_JSONPACKAGE :: GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_JSONPACKAGE = GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat "JSON_PACKAGE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_DATAFORMATUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_Blob,
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat_JSONPACKAGE,
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+  #-}
+
+-- | Optional. The data format of the exported intents. If not specified, @BLOB@ is assumed.
+newtype GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat = GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat {fromGoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified format. Treated as @BLOB@.
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_DATAFORMATUNSPECIFIED :: GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_DATAFORMATUNSPECIFIED = GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat "DATA_FORMAT_UNSPECIFIED"
+
+-- | Intents will be exported as raw bytes.
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Blob :: GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Blob = GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat "BLOB"
+
+-- | Intents will be exported in JSON format.
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Json :: GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Json = GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat "JSON"
+
+-- | Intents will be exported in CSV format.
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Csv :: GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Csv = GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat "CSV"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_DATAFORMATUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Blob,
+  GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Json,
+  GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat_Csv,
+  GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+  #-}
+
+-- | The data format of the exported test cases. If not specified, @BLOB@ is assumed.
+newtype GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat = GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat {fromGoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified format.
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_DATAFORMATUNSPECIFIED :: GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_DATAFORMATUNSPECIFIED = GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat "DATA_FORMAT_UNSPECIFIED"
+
+-- | Raw bytes.
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Blob :: GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Blob = GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat "BLOB"
+
+-- | JSON format.
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Json :: GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+pattern GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Json = GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat "JSON"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_DATAFORMATUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Blob,
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat_Json,
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+  #-}
+
+-- | Optional. Import strategy for resource conflict resolution, applied globally throughout the flow. It will be applied for all display name conflicts in the imported content. If not specified, \'CREATE_NEW\' is assumed.
+newtype GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy {fromGoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Treated as \'CREATE_NEW\'.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYUNSPECIFIED :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYUNSPECIFIED = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_UNSPECIFIED"
+
+-- | Create a new resource with a numeric suffix appended to the end of the existing display name.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYCREATENEW :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYCREATENEW = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_CREATE_NEW"
+
+-- | Replace existing resource with incoming resource in the content to be imported.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYREPLACE :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYREPLACE = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_REPLACE"
+
+-- | Keep existing resource and discard incoming resource in the content to be imported.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYKEEP :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYKEEP = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_KEEP"
+
+-- | Combine existing and incoming resources when a conflict is encountered.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYMERGE :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYMERGE = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_MERGE"
+
+-- | Throw error if a conflict is encountered.
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYTHROWERROR :: GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+pattern GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYTHROWERROR = GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy "IMPORT_STRATEGY_THROW_ERROR"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYUNSPECIFIED,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYCREATENEW,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYREPLACE,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYKEEP,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYMERGE,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy_IMPORTSTRATEGYTHROWERROR,
+  GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+  #-}
+
+-- | Required. Merge option for importing entity types.
+newtype GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption {fromGoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. If used, system uses REPORT_CONFLICT as default.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_MERGEOPTIONUNSPECIFIED :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_MERGEOPTIONUNSPECIFIED = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "MERGE_OPTION_UNSPECIFIED"
+
+-- | Replace the original entity type in the agent with the new entity type when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Replace :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Replace = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "REPLACE"
+
+-- | Merge the original entity type with the new entity type when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Merge :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Merge = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "MERGE"
+
+-- | Create new entity types with new display names to differentiate them from the existing entity types when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Rename :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Rename = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "RENAME"
+
+-- | Report conflict information if display names conflict is detected. Otherwise, import entity types.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_REPORTCONFLICT :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_REPORTCONFLICT = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "REPORT_CONFLICT"
+
+-- | Keep the original entity type and discard the conflicting new entity type when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Keep :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Keep = GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption "KEEP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_MERGEOPTIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Replace,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Merge,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Rename,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_REPORTCONFLICT,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption_Keep,
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+  #-}
+
+-- | Flow import mode. If not specified, @KEEP@ is assumed.
+newtype GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption = GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption {fromGoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Treated as @KEEP@.
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_IMPORTOPTIONUNSPECIFIED :: GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_IMPORTOPTIONUNSPECIFIED = GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption "IMPORT_OPTION_UNSPECIFIED"
+
+-- | Always respect settings in exported flow content. It may cause a import failure if some settings (e.g. custom NLU) are not supported in the agent to import into.
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Keep :: GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Keep = GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption "KEEP"
+
+-- | Fallback to default settings if some settings are not supported in the agent to import into. E.g. Standard NLU will be used if custom NLU is not available.
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Fallback :: GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+pattern GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Fallback = GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption "FALLBACK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_IMPORTOPTIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Keep,
+  GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption_Fallback,
+  GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+  #-}
+
+-- | Merge option for importing intents. If not specified, @REJECT@ is assumed.
+newtype GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption {fromGoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Should not be used.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_MERGEOPTIONUNSPECIFIED :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_MERGEOPTIONUNSPECIFIED = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "MERGE_OPTION_UNSPECIFIED"
+
+-- | DEPRECATED: Please use REPORT_CONFLICT instead. Fail the request if there are intents whose display names conflict with the display names of intents in the agent.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Reject :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Reject = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "REJECT"
+
+-- | Replace the original intent in the agent with the new intent when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Replace :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Replace = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "REPLACE"
+
+-- | Merge the original intent with the new intent when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Merge :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Merge = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "MERGE"
+
+-- | Create new intents with new display names to differentiate them from the existing intents when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Rename :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Rename = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "RENAME"
+
+-- | Report conflict information if display names conflict is detected. Otherwise, import intents.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_REPORTCONFLICT :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_REPORTCONFLICT = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "REPORT_CONFLICT"
+
+-- | Keep the original intent and discard the conflicting new intent when display name conflicts exist.
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Keep :: GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+pattern GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Keep = GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption "KEEP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_MERGEOPTIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Reject,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Replace,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Merge,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Rename,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_REPORTCONFLICT,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption_Keep,
+  GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+  #-}
+
+-- | Required. Audio encoding of the audio content to process.
+newtype GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding {fromGoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_UNSPECIFIED"
+
+-- | Uncompressed 16-bit signed little-endian samples (Linear PCM).
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16 :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16 = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_LINEAR_16"
+
+-- | <https://xiph.org/flac/documentation.html FLAC> (Free Lossless Audio Codec) is the recommended encoding because it is lossless (therefore recognition is not compromised) and requires only about half the bandwidth of @LINEAR16@. @FLAC@ stream encoding supports 16-bit and 24-bit samples, however, not all fields in @STREAMINFO@ are supported.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_FLAC"
+
+-- | 8-bit samples that compand 14-bit audio samples using G.711 PCMU\/mu-law.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_MULAW"
+
+-- | Adaptive Multi-Rate Narrowband codec. @sample_rate_hertz@ must be 8000.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_AMR"
+
+-- | Adaptive Multi-Rate Wideband codec. @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_AMR_WB"
+
+-- | Opus encoded audio frames in Ogg container (<https://wiki.xiph.org/OggOpus OggOpus>). @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_OGG_OPUS"
+
+-- | Although the use of lossy encodings is not recommended, if a very low bitrate encoding is required, @OGG_OPUS@ is highly preferred over Speex encoding. The <https://speex.org/ Speex> encoding supported by Dialogflow API has a header byte in each block, as in MIME type @audio\/x-speex-with-header-byte@. It is a variant of the RTP Speex encoding defined in <https://tools.ietf.org/html/rfc5574 RFC 5574>. The stream is a sequence of blocks, one block per RTP packet. Each block starts with a byte containing the length of the block, in bytes, followed by one or more frames of Speex data, padded to an integral number of bytes (octets) as specified in RFC 5574. In other words, each RTP header is replaced with a single byte containing the block length. Only Speex wideband is supported. @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE"
+
+-- | 8-bit samples that compand 13-bit audio samples using G.711 PCMU\/a-law.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW :: GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW = GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding "AUDIO_ENCODING_ALAW"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW,
+  GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+  #-}
+
+-- | Optional. Which variant of the Speech model to use.
+newtype GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant = GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant {fromGoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No model variant specified. In this case Dialogflow defaults to USE/BEST/AVAILABLE.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED :: GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED = GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant "SPEECH_MODEL_VARIANT_UNSPECIFIED"
+
+-- | Use the best available variant of the Speech model that the caller is eligible for.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEBESTAVAILABLE :: GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEBESTAVAILABLE = GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant "USE_BEST_AVAILABLE"
+
+-- | Use standard model variant even if an enhanced model is available. See the <https://cloud.google.com/speech-to-text/docs/enhanced-models Cloud Speech documentation> for details about enhanced models.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USESTANDARD :: GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USESTANDARD = GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant "USE_STANDARD"
+
+-- | Use an enhanced model variant: * If an enhanced variant does not exist for the given model and request language, Dialogflow falls back to the standard variant. The <https://cloud.google.com/speech-to-text/docs/enhanced-models Cloud Speech documentation> describes which models have enhanced variants.
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEENHANCED :: GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEENHANCED = GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant "USE_ENHANCED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEBESTAVAILABLE,
+  GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USESTANDARD,
+  GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant_USEENHANCED,
+  GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+  #-}
+
+-- | Type of this Match.
+newtype GoogleCloudDialogflowCxV3Match_MatchType = GoogleCloudDialogflowCxV3Match_MatchType {fromGoogleCloudDialogflowCxV3Match_MatchType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_MATCHTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_MATCHTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3Match_MatchType "MATCH_TYPE_UNSPECIFIED"
+
+-- | The query was matched to an intent.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Intent :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Intent = GoogleCloudDialogflowCxV3Match_MatchType "INTENT"
+
+-- | The query directly triggered an intent.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_DIRECTINTENT :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_DIRECTINTENT = GoogleCloudDialogflowCxV3Match_MatchType "DIRECT_INTENT"
+
+-- | The query was used for parameter filling.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_PARAMETERFILLING :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_PARAMETERFILLING = GoogleCloudDialogflowCxV3Match_MatchType "PARAMETER_FILLING"
+
+-- | No match was found for the query.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_NOMATCH :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_NOMATCH = GoogleCloudDialogflowCxV3Match_MatchType "NO_MATCH"
+
+-- | Indicates an empty query.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_NOINPUT :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_NOINPUT = GoogleCloudDialogflowCxV3Match_MatchType "NO_INPUT"
+
+-- | The query directly triggered an event.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Event :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Event = GoogleCloudDialogflowCxV3Match_MatchType "EVENT"
+
+-- | The query was matched to a Knowledge Connector answer.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_KNOWLEDGECONNECTOR :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_KNOWLEDGECONNECTOR = GoogleCloudDialogflowCxV3Match_MatchType "KNOWLEDGE_CONNECTOR"
+
+-- | The query was handled by a @Playbook@.
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Playbook :: GoogleCloudDialogflowCxV3Match_MatchType
+pattern GoogleCloudDialogflowCxV3Match_MatchType_Playbook = GoogleCloudDialogflowCxV3Match_MatchType "PLAYBOOK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3Match_MatchType_MATCHTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3Match_MatchType_Intent,
+  GoogleCloudDialogflowCxV3Match_MatchType_DIRECTINTENT,
+  GoogleCloudDialogflowCxV3Match_MatchType_PARAMETERFILLING,
+  GoogleCloudDialogflowCxV3Match_MatchType_NOMATCH,
+  GoogleCloudDialogflowCxV3Match_MatchType_NOINPUT,
+  GoogleCloudDialogflowCxV3Match_MatchType_Event,
+  GoogleCloudDialogflowCxV3Match_MatchType_KNOWLEDGECONNECTOR,
+  GoogleCloudDialogflowCxV3Match_MatchType_Playbook,
+  GoogleCloudDialogflowCxV3Match_MatchType
+  #-}
+
+-- | Indicates NLU model training mode.
+newtype GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode = GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode {fromGoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. @MODEL_TRAINING_MODE_AUTOMATIC@ will be used.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEUNSPECIFIED :: GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEUNSPECIFIED = GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode "MODEL_TRAINING_MODE_UNSPECIFIED"
+
+-- | NLU model training is automatically triggered when a flow gets modified. User can also manually trigger model training in this mode.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEAUTOMATIC :: GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEAUTOMATIC = GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode "MODEL_TRAINING_MODE_AUTOMATIC"
+
+-- | User needs to manually trigger NLU model training. Best for large flows whose models take long time to train.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEMANUAL :: GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEMANUAL = GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode "MODEL_TRAINING_MODE_MANUAL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEAUTOMATIC,
+  GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode_MODELTRAININGMODEMANUAL,
+  GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+  #-}
+
+-- | Indicates the type of NLU model.
+newtype GoogleCloudDialogflowCxV3NluSettings_ModelType = GoogleCloudDialogflowCxV3NluSettings_ModelType {fromGoogleCloudDialogflowCxV3NluSettings_ModelType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. @MODEL_TYPE_STANDARD@ will be used.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3NluSettings_ModelType
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3NluSettings_ModelType "MODEL_TYPE_UNSPECIFIED"
+
+-- | Use standard NLU model.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPESTANDARD :: GoogleCloudDialogflowCxV3NluSettings_ModelType
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPESTANDARD = GoogleCloudDialogflowCxV3NluSettings_ModelType "MODEL_TYPE_STANDARD"
+
+-- | Use advanced NLU model.
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEADVANCED :: GoogleCloudDialogflowCxV3NluSettings_ModelType
+pattern GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEADVANCED = GoogleCloudDialogflowCxV3NluSettings_ModelType "MODEL_TYPE_ADVANCED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPESTANDARD,
+  GoogleCloudDialogflowCxV3NluSettings_ModelType_MODELTYPEADVANCED,
+  GoogleCloudDialogflowCxV3NluSettings_ModelType
+  #-}
+
+-- | Required. Audio encoding of the synthesized audio content.
+newtype GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding {fromGoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGUNSPECIFIED :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGUNSPECIFIED = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_UNSPECIFIED"
+
+-- | Uncompressed 16-bit signed little-endian samples (Linear PCM). Audio content returned as LINEAR16 also contains a WAV header.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_LINEAR_16 :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_LINEAR_16 = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_LINEAR_16"
+
+-- | MP3 audio at 32kbps.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_MP3 :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_MP3 = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_MP3"
+
+-- | MP3 audio at 64kbps.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMP364KBPS :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMP364KBPS = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS"
+
+-- | Opus encoded audio wrapped in an ogg container. The result will be a file which can be played natively on Android, and in browsers (at least Chrome and Firefox). The quality of the encoding is considerably higher than MP3 while using approximately the same bitrate.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGOGGOPUS :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGOGGOPUS = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_OGG_OPUS"
+
+-- | 8-bit samples that compand 14-bit audio samples using G.711 PCMU\/mu-law.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMULAW :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMULAW = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_MULAW"
+
+-- | 8-bit samples that compand 13-bit audio samples using G.711 PCMU\/a-law.
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGALAW :: GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGALAW = GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding "OUTPUT_AUDIO_ENCODING_ALAW"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGUNSPECIFIED,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_LINEAR_16,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUT_AUDIO_ENCODING_MP3,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMP364KBPS,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGOGGOPUS,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGMULAW,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding_OUTPUTAUDIOENCODINGALAW,
+  GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+  #-}
+
+-- | Always present for WebhookRequest. Required for WebhookResponse. The state of the parameter. This field can be set to INVALID by the webhook to invalidate the parameter; other values set by the webhook will be ignored.
+newtype GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State {fromGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED :: GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State "PARAMETER_STATE_UNSPECIFIED"
+
+-- | Indicates that the parameter does not have a value.
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Empty :: GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Empty = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State "EMPTY"
+
+-- | Indicates that the parameter value is invalid. This field can be used by the webhook to invalidate the parameter and ask the server to collect it from the user again.
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Invalid :: GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Invalid = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State "INVALID"
+
+-- | Indicates that the parameter has a value.
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Filled :: GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Filled = GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State "FILLED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Empty,
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Invalid,
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State_Filled,
+  GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+  #-}
+
+-- | Response type.
+newtype GoogleCloudDialogflowCxV3ResponseMessage_ResponseType = GoogleCloudDialogflowCxV3ResponseMessage_ResponseType {fromGoogleCloudDialogflowCxV3ResponseMessage_ResponseType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_RESPONSETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_RESPONSETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3ResponseMessage_ResponseType "RESPONSE_TYPE_UNSPECIFIED"
+
+-- | The response is from an entry prompt in the page.
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_ENTRYPROMPT :: GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_ENTRYPROMPT = GoogleCloudDialogflowCxV3ResponseMessage_ResponseType "ENTRY_PROMPT"
+
+-- | The response is from form-filling prompt in the page.
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_PARAMETERPROMPT :: GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_PARAMETERPROMPT = GoogleCloudDialogflowCxV3ResponseMessage_ResponseType "PARAMETER_PROMPT"
+
+-- | The response is from a transition route or an event handler in the page or flow or transition route group.
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_HANDLERPROMPT :: GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+pattern GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_HANDLERPROMPT = GoogleCloudDialogflowCxV3ResponseMessage_ResponseType "HANDLER_PROMPT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_RESPONSETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_ENTRYPROMPT,
+  GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_PARAMETERPROMPT,
+  GoogleCloudDialogflowCxV3ResponseMessage_ResponseType_HANDLERPROMPT,
+  GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+  #-}
+
+-- | Agent restore mode. If not specified, @KEEP@ is assumed.
+newtype GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption = GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption {fromGoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Treated as KEEP.
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_RESTOREOPTIONUNSPECIFIED :: GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_RESTOREOPTIONUNSPECIFIED = GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption "RESTORE_OPTION_UNSPECIFIED"
+
+-- | Always respect the settings from the exported agent file. It may cause a restoration failure if some settings (e.g. model type) are not supported in the target agent.
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Keep :: GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Keep = GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption "KEEP"
+
+-- | Fallback to default settings if some settings are not supported in the target agent.
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Fallback :: GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+pattern GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Fallback = GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption "FALLBACK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_RESTOREOPTIONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Keep,
+  GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption_Fallback,
+  GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+  #-}
+
+newtype GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem = GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem {fromGoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Do not use.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_PURGEDATATYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+pattern GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_PURGEDATATYPEUNSPECIFIED = GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem "PURGE_DATA_TYPE_UNSPECIFIED"
+
+-- | Dialogflow history. This does not include Cloud logging, which is owned by the user - not Dialogflow.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_DIALOGFLOWHISTORY :: GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+pattern GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_DIALOGFLOWHISTORY = GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem "DIALOGFLOW_HISTORY"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_PURGEDATATYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem_DIALOGFLOWHISTORY,
+  GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+  #-}
+
+-- | Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.
+newtype GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope = GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope {fromGoogleCloudDialogflowCxV3SecuritySettings_RedactionScope :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Don\'t redact any kind of data.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTIONSCOPEUNSPECIFIED :: GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTIONSCOPEUNSPECIFIED = GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope "REDACTION_SCOPE_UNSPECIFIED"
+
+-- | On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTDISKSTORAGE :: GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTDISKSTORAGE = GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope "REDACT_DISK_STORAGE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTIONSCOPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope_REDACTDISKSTORAGE,
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+  #-}
+
+-- | Strategy that defines how we do redaction.
+newtype GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy = GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy {fromGoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Do not redact.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTIONSTRATEGYUNSPECIFIED :: GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTIONSTRATEGYUNSPECIFIED = GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy "REDACTION_STRATEGY_UNSPECIFIED"
+
+-- | Call redaction service to clean up the data to be persisted.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTWITHSERVICE :: GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTWITHSERVICE = GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy "REDACT_WITH_SERVICE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTIONSTRATEGYUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy_REDACTWITHSERVICE,
+  GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+  #-}
+
+-- | Specifies the retention behavior defined by SecuritySettings.RetentionStrategy.
+newtype GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy = GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy {fromGoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Retains the persisted data with Dialogflow\'s internal default 365d TTLs.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_RETENTIONSTRATEGYUNSPECIFIED :: GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_RETENTIONSTRATEGYUNSPECIFIED = GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy "RETENTION_STRATEGY_UNSPECIFIED"
+
+-- | Removes data when the conversation ends. If there is no Conversation explicitly established, a default conversation ends when the corresponding Dialogflow session ends.
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_REMOVEAFTERCONVERSATION :: GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+pattern GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_REMOVEAFTERCONVERSATION = GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy "REMOVE_AFTER_CONVERSATION"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_RETENTIONSTRATEGYUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy_REMOVEAFTERCONVERSATION,
+  GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+  #-}
+
+-- | File format for exported audio file. Currently only in telephony recordings.
+newtype GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat {fromGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified. Do not use.
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_AUDIOFORMATUNSPECIFIED :: GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_AUDIOFORMATUNSPECIFIED = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat "AUDIO_FORMAT_UNSPECIFIED"
+
+-- | G.711 mu-law PCM with 8kHz sample rate.
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Mulaw :: GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Mulaw = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat "MULAW"
+
+-- | MP3 file format.
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_MP3 :: GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_MP3 = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat "MP3"
+
+-- | OGG Vorbis.
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Ogg :: GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+pattern GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Ogg = GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat "OGG"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_AUDIOFORMATUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Mulaw,
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_MP3,
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat_Ogg,
+  GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+  #-}
+
+-- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+newtype GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode = GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode {fromGoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED :: GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED = GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_UNSPECIFIED"
+
+-- | The collection of session entities overrides the collection of entities in the corresponding custom entity type.
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE :: GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE = GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_OVERRIDE"
+
+-- | The collection of session entities extends the collection of entities in the corresponding custom entity type. Note: Even in this override mode calls to @ListSessionEntityTypes@, @GetSessionEntityType@, @CreateSessionEntityType@ and @UpdateSessionEntityType@ only return the additional entities added in this session entity type. If you want to get the supplemented list, please call EntityTypes.GetEntityType on the custom entity type and merge.
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT :: GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT = GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_SUPPLEMENT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+  GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+  GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+  #-}
+
+-- | Whether the test case passed in the agent environment.
+newtype GoogleCloudDialogflowCxV3TestCaseResult_TestResult = GoogleCloudDialogflowCxV3TestCaseResult_TestResult {fromGoogleCloudDialogflowCxV3TestCaseResult_TestResult :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_TESTRESULTUNSPECIFIED :: GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_TESTRESULTUNSPECIFIED = GoogleCloudDialogflowCxV3TestCaseResult_TestResult "TEST_RESULT_UNSPECIFIED"
+
+-- | The test passed.
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Passed :: GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Passed = GoogleCloudDialogflowCxV3TestCaseResult_TestResult "PASSED"
+
+-- | The test did not pass.
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Failed :: GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Failed = GoogleCloudDialogflowCxV3TestCaseResult_TestResult "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3TestCaseResult_TestResult_TESTRESULTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Passed,
+  GoogleCloudDialogflowCxV3TestCaseResult_TestResult_Failed,
+  GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+  #-}
+
+-- | The type of diff.
+newtype GoogleCloudDialogflowCxV3TestRunDifference_Type = GoogleCloudDialogflowCxV3TestRunDifference_Type {fromGoogleCloudDialogflowCxV3TestRunDifference_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Should never be used.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_DIFFTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_DIFFTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3TestRunDifference_Type "DIFF_TYPE_UNSPECIFIED"
+
+-- | The intent.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Intent :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Intent = GoogleCloudDialogflowCxV3TestRunDifference_Type "INTENT"
+
+-- | The page.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Page :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Page = GoogleCloudDialogflowCxV3TestRunDifference_Type "PAGE"
+
+-- | The parameters.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Parameters :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Parameters = GoogleCloudDialogflowCxV3TestRunDifference_Type "PARAMETERS"
+
+-- | The message utterance.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Utterance :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Utterance = GoogleCloudDialogflowCxV3TestRunDifference_Type "UTTERANCE"
+
+-- | The flow.
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Flow :: GoogleCloudDialogflowCxV3TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3TestRunDifference_Type_Flow = GoogleCloudDialogflowCxV3TestRunDifference_Type "FLOW"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_DIFFTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_Intent,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_Page,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_Parameters,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_Utterance,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type_Flow,
+  GoogleCloudDialogflowCxV3TestRunDifference_Type
+  #-}
+
+newtype GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem = GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem {fromGoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Failure reason is not assigned.
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED :: GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED = GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem "FAILURE_REASON_UNSPECIFIED"
+
+-- | Whether NLU failed to recognize user intent.
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDINTENT :: GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDINTENT = GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem "FAILED_INTENT"
+
+-- | Whether webhook failed during the turn.
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDWEBHOOK :: GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDWEBHOOK = GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem "FAILED_WEBHOOK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDINTENT,
+  GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+  GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+  #-}
+
+-- | The type of the resources where the message is found.
+newtype GoogleCloudDialogflowCxV3ValidationMessage_ResourceType = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType {fromGoogleCloudDialogflowCxV3ValidationMessage_ResourceType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_RESOURCETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_RESOURCETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "RESOURCE_TYPE_UNSPECIFIED"
+
+-- | Agent.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Agent :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Agent = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "AGENT"
+
+-- | Intent.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intent :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intent = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "INTENT"
+
+-- | Intent training phrase.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASE :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASE = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "INTENT_TRAINING_PHRASE"
+
+-- | Intent parameter.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTPARAMETER :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTPARAMETER = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "INTENT_PARAMETER"
+
+-- | Multiple intents.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intents :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intents = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "INTENTS"
+
+-- | Multiple training phrases.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASES :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASES = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "INTENT_TRAINING_PHRASES"
+
+-- | Entity type.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPE :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPE = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "ENTITY_TYPE"
+
+-- | Multiple entity types.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPES :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPES = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "ENTITY_TYPES"
+
+-- | Webhook.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Webhook :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Webhook = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "WEBHOOK"
+
+-- | Flow.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Flow :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Flow = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "FLOW"
+
+-- | Page.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Page :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Page = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "PAGE"
+
+-- | Multiple pages.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Pages :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Pages = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "PAGES"
+
+-- | Transition route group.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_TRANSITIONROUTEGROUP :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_TRANSITIONROUTEGROUP = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "TRANSITION_ROUTE_GROUP"
+
+-- | Agent transition route group.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_AGENTTRANSITIONROUTEGROUP :: GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+pattern GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_AGENTTRANSITIONROUTEGROUP = GoogleCloudDialogflowCxV3ValidationMessage_ResourceType "AGENT_TRANSITION_ROUTE_GROUP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_RESOURCETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Agent,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intent,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASE,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTPARAMETER,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Intents,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_INTENTTRAININGPHRASES,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPE,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_ENTITYTYPES,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Webhook,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Flow,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Page,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_Pages,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_TRANSITIONROUTEGROUP,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType_AGENTTRANSITIONROUTEGROUP,
+  GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+  #-}
+
+-- | Indicates the severity of the message.
+newtype GoogleCloudDialogflowCxV3ValidationMessage_Severity = GoogleCloudDialogflowCxV3ValidationMessage_Severity {fromGoogleCloudDialogflowCxV3ValidationMessage_Severity :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_SEVERITYUNSPECIFIED :: GoogleCloudDialogflowCxV3ValidationMessage_Severity
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_SEVERITYUNSPECIFIED = GoogleCloudDialogflowCxV3ValidationMessage_Severity "SEVERITY_UNSPECIFIED"
+
+-- | The agent doesn\'t follow Dialogflow best practices.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Info :: GoogleCloudDialogflowCxV3ValidationMessage_Severity
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Info = GoogleCloudDialogflowCxV3ValidationMessage_Severity "INFO"
+
+-- | The agent may not behave as expected.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Warning :: GoogleCloudDialogflowCxV3ValidationMessage_Severity
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Warning = GoogleCloudDialogflowCxV3ValidationMessage_Severity "WARNING"
+
+-- | The agent may experience failures.
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Error' :: GoogleCloudDialogflowCxV3ValidationMessage_Severity
+pattern GoogleCloudDialogflowCxV3ValidationMessage_Severity_Error' = GoogleCloudDialogflowCxV3ValidationMessage_Severity "ERROR"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3ValidationMessage_Severity_SEVERITYUNSPECIFIED,
+  GoogleCloudDialogflowCxV3ValidationMessage_Severity_Info,
+  GoogleCloudDialogflowCxV3ValidationMessage_Severity_Warning,
+  GoogleCloudDialogflowCxV3ValidationMessage_Severity_Error',
+  GoogleCloudDialogflowCxV3ValidationMessage_Severity
+  #-}
+
+-- | Output only. The state of this version. This field is read-only and cannot be set by create and update methods.
+newtype GoogleCloudDialogflowCxV3Version_State = GoogleCloudDialogflowCxV3Version_State {fromGoogleCloudDialogflowCxV3Version_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value is not used.
+pattern GoogleCloudDialogflowCxV3Version_State_STATEUNSPECIFIED :: GoogleCloudDialogflowCxV3Version_State
+pattern GoogleCloudDialogflowCxV3Version_State_STATEUNSPECIFIED = GoogleCloudDialogflowCxV3Version_State "STATE_UNSPECIFIED"
+
+-- | Version is not ready to serve (e.g. training is running).
+pattern GoogleCloudDialogflowCxV3Version_State_Running :: GoogleCloudDialogflowCxV3Version_State
+pattern GoogleCloudDialogflowCxV3Version_State_Running = GoogleCloudDialogflowCxV3Version_State "RUNNING"
+
+-- | Training has succeeded and this version is ready to serve.
+pattern GoogleCloudDialogflowCxV3Version_State_Succeeded :: GoogleCloudDialogflowCxV3Version_State
+pattern GoogleCloudDialogflowCxV3Version_State_Succeeded = GoogleCloudDialogflowCxV3Version_State "SUCCEEDED"
+
+-- | Version training failed.
+pattern GoogleCloudDialogflowCxV3Version_State_Failed :: GoogleCloudDialogflowCxV3Version_State
+pattern GoogleCloudDialogflowCxV3Version_State_Failed = GoogleCloudDialogflowCxV3Version_State "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3Version_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3Version_State_Running,
+  GoogleCloudDialogflowCxV3Version_State_Succeeded,
+  GoogleCloudDialogflowCxV3Version_State_Failed,
+  GoogleCloudDialogflowCxV3Version_State
+  #-}
+
+-- | Optional. The preferred gender of the voice. If not set, the service will choose a voice based on the other parameters such as language_code and name. Note that this is only a preference, not requirement. If a voice of the appropriate gender is not available, the synthesizer substitutes a voice with a different gender rather than failing the request.
+newtype GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender = GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender {fromGoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | An unspecified gender, which means that the client doesn\'t care which gender the selected voice will have.
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERUNSPECIFIED :: GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERUNSPECIFIED = GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender "SSML_VOICE_GENDER_UNSPECIFIED"
+
+-- | A male voice.
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERMALE :: GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERMALE = GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender "SSML_VOICE_GENDER_MALE"
+
+-- | A female voice.
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERFEMALE :: GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERFEMALE = GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender "SSML_VOICE_GENDER_FEMALE"
+
+-- | A gender-neutral voice.
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERNEUTRAL :: GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+pattern GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERNEUTRAL = GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender "SSML_VOICE_GENDER_NEUTRAL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERUNSPECIFIED,
+  GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERMALE,
+  GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERFEMALE,
+  GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender_SSMLVOICEGENDERNEUTRAL,
+  GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+  #-}
+
+-- | Optional. HTTP method for the flexible webhook calls. Standard webhook always uses POST.
+newtype GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod {fromGoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | HTTP method not specified.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "HTTP_METHOD_UNSPECIFIED"
+
+-- | HTTP POST Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Post' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Post' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "POST"
+
+-- | HTTP GET Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Get' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Get' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "GET"
+
+-- | HTTP HEAD Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Head' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Head' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "HEAD"
+
+-- | HTTP PUT Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Put' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Put' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "PUT"
+
+-- | HTTP DELETE Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Delete' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Delete' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "DELETE"
+
+-- | HTTP PATCH Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Patch' :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Patch' = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "PATCH"
+
+-- | HTTP OPTIONS Method.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Options :: GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Options = GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod "OPTIONS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Post',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Get',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Head',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Put',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Delete',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Patch',
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod_Options,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+  #-}
+
+-- | Optional. Indicate the auth token type generated from the <https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent Diglogflow service agent>. The generated token is sent in the Authorization header.
+newtype GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth = GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth {fromGoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Service agent auth type unspecified. Default to ID_TOKEN.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED :: GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED = GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth "SERVICE_AGENT_AUTH_UNSPECIFIED"
+
+-- | No token used.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_None :: GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_None = GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth "NONE"
+
+-- | Use <https://cloud.google.com/docs/authentication/token-types#id ID token> generated from service agent. This can be used to access Cloud Function and Cloud Run after you grant Invoker role to @service-\@gcp-sa-dialogflow.iam.gserviceaccount.com@.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_IDTOKEN :: GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_IDTOKEN = GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth "ID_TOKEN"
+
+-- | Use <https://cloud.google.com/docs/authentication/token-types#access access token> generated from service agent. This can be used to access other Google Cloud APIs after you grant required roles to @service-\@gcp-sa-dialogflow.iam.gserviceaccount.com@.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN :: GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN = GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth "ACCESS_TOKEN"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_None,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_IDTOKEN,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+  #-}
+
+-- | Optional. Type of the webhook.
+newtype GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType = GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType {fromGoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Default value. This value is unused.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType "WEBHOOK_TYPE_UNSPECIFIED"
+
+-- | Represents a standard webhook.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Standard :: GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Standard = GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType "STANDARD"
+
+-- | Represents a flexible webhook.
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Flexible :: GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Flexible = GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType "FLEXIBLE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Standard,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType_Flexible,
+  GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+  #-}
+
+-- | Merge behavior for @messages@.
+newtype GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior = GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior {fromGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. @APPEND@ will be used.
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED :: GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED = GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior "MERGE_BEHAVIOR_UNSPECIFIED"
+
+-- | @messages@ will be appended to the list of messages waiting to be sent to the user.
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Append :: GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Append = GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior "APPEND"
+
+-- | @messages@ will replace the list of messages waiting to be sent to the user.
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Replace :: GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Replace = GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior "REPLACE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED,
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Append,
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior_Replace,
+  GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+  #-}
+
+-- | The result of this continuous test run, i.e. whether all the tests in this continuous test run pass or not.
+newtype GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result = GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result {fromGoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED = GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result "AGGREGATED_TEST_RESULT_UNSPECIFIED"
+
+-- | All the tests passed.
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Passed :: GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Passed = GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result "PASSED"
+
+-- | At least one test did not pass.
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Failed :: GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+pattern GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Failed = GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_AGGREGATEDTESTRESULTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Passed,
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result_Failed,
+  GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+  #-}
+
+-- | The type of the connected data store.
+newtype GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType {fromGoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value indicates that the data store type is not specified, so it will not be used during search.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType "DATA_STORE_TYPE_UNSPECIFIED"
+
+-- | A data store that contains public web content.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_PUBLICWEB :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_PUBLICWEB = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType "PUBLIC_WEB"
+
+-- | A data store that contains unstructured private data.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Unstructured :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Unstructured = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType "UNSTRUCTURED"
+
+-- | A data store that contains structured data (for example FAQ).
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Structured :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Structured = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType "STRUCTURED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_DATASTORETYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_PUBLICWEB,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Unstructured,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType_Structured,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+  #-}
+
+-- | The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode.
+newtype GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode {fromGoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This should be set for STRUCTURED type data stores. Due to legacy reasons this is considered as DOCUMENTS for STRUCTURED and PUBLIC_WEB data stores.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode "DOCUMENT_PROCESSING_MODE_UNSPECIFIED"
+
+-- | Documents are processed as documents.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Documents :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Documents = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode "DOCUMENTS"
+
+-- | Documents are converted to chunks.
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Chunks :: GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+pattern GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Chunks = GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode "CHUNKS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_DOCUMENTPROCESSINGMODEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Documents,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode_Chunks,
+  GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+  #-}
+
+-- | Required. Audio encoding of the audio content to process.
+newtype GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding {fromGoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_UNSPECIFIED"
+
+-- | Uncompressed 16-bit signed little-endian samples (Linear PCM).
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16 :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16 = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_LINEAR_16"
+
+-- | <https://xiph.org/flac/documentation.html FLAC> (Free Lossless Audio Codec) is the recommended encoding because it is lossless (therefore recognition is not compromised) and requires only about half the bandwidth of @LINEAR16@. @FLAC@ stream encoding supports 16-bit and 24-bit samples, however, not all fields in @STREAMINFO@ are supported.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_FLAC"
+
+-- | 8-bit samples that compand 14-bit audio samples using G.711 PCMU\/mu-law.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_MULAW"
+
+-- | Adaptive Multi-Rate Narrowband codec. @sample_rate_hertz@ must be 8000.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_AMR"
+
+-- | Adaptive Multi-Rate Wideband codec. @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_AMR_WB"
+
+-- | Opus encoded audio frames in Ogg container (<https://wiki.xiph.org/OggOpus OggOpus>). @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_OGG_OPUS"
+
+-- | Although the use of lossy encodings is not recommended, if a very low bitrate encoding is required, @OGG_OPUS@ is highly preferred over Speex encoding. The <https://speex.org/ Speex> encoding supported by Dialogflow API has a header byte in each block, as in MIME type @audio\/x-speex-with-header-byte@. It is a variant of the RTP Speex encoding defined in <https://tools.ietf.org/html/rfc5574 RFC 5574>. The stream is a sequence of blocks, one block per RTP packet. Each block starts with a byte containing the length of the block, in bytes, followed by one or more frames of Speex data, padded to an integral number of bytes (octets) as specified in RFC 5574. In other words, each RTP header is replaced with a single byte containing the block length. Only Speex wideband is supported. @sample_rate_hertz@ must be 16000.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE"
+
+-- | 8-bit samples that compand 13-bit audio samples using G.711 PCMU\/a-law.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW = GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding "AUDIO_ENCODING_ALAW"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIO_ENCODING_LINEAR_16,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGFLAC,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGMULAW,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMR,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGAMRWB,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGOGGOPUS,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGSPEEXWITHHEADERBYTE,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding_AUDIOENCODINGALAW,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+  #-}
+
+-- | Optional. Which variant of the Speech model to use.
+newtype GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant = GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant {fromGoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No model variant specified. In this case Dialogflow defaults to USE/BEST/AVAILABLE.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED = GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant "SPEECH_MODEL_VARIANT_UNSPECIFIED"
+
+-- | Use the best available variant of the Speech model that the caller is eligible for.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEBESTAVAILABLE :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEBESTAVAILABLE = GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant "USE_BEST_AVAILABLE"
+
+-- | Use standard model variant even if an enhanced model is available. See the <https://cloud.google.com/speech-to-text/docs/enhanced-models Cloud Speech documentation> for details about enhanced models.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USESTANDARD :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USESTANDARD = GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant "USE_STANDARD"
+
+-- | Use an enhanced model variant: * If an enhanced variant does not exist for the given model and request language, Dialogflow falls back to the standard variant. The <https://cloud.google.com/speech-to-text/docs/enhanced-models Cloud Speech documentation> describes which models have enhanced variants.
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEENHANCED :: GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+pattern GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEENHANCED = GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant "USE_ENHANCED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_SPEECHMODELVARIANTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEBESTAVAILABLE,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USESTANDARD,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant_USEENHANCED,
+  GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+  #-}
+
+-- | Always present for WebhookRequest. Required for WebhookResponse. The state of the parameter. This field can be set to INVALID by the webhook to invalidate the parameter; other values set by the webhook will be ignored.
+newtype GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State {fromGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State "PARAMETER_STATE_UNSPECIFIED"
+
+-- | Indicates that the parameter does not have a value.
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Empty :: GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Empty = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State "EMPTY"
+
+-- | Indicates that the parameter value is invalid. This field can be used by the webhook to invalidate the parameter and ask the server to collect it from the user again.
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Invalid :: GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Invalid = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State "INVALID"
+
+-- | Indicates that the parameter has a value.
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Filled :: GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+pattern GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Filled = GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State "FILLED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_PARAMETERSTATEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Empty,
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Invalid,
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State_Filled,
+  GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+  #-}
+
+-- | Whether the test case passed in the agent environment.
+newtype GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult = GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult {fromGoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_TESTRESULTUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_TESTRESULTUNSPECIFIED = GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult "TEST_RESULT_UNSPECIFIED"
+
+-- | The test passed.
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Passed :: GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Passed = GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult "PASSED"
+
+-- | The test did not pass.
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Failed :: GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+pattern GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Failed = GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_TESTRESULTUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Passed,
+  GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult_Failed,
+  GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+  #-}
+
+-- | The type of diff.
+newtype GoogleCloudDialogflowCxV3beta1TestRunDifference_Type = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type {fromGoogleCloudDialogflowCxV3beta1TestRunDifference_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Should never be used.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_DIFFTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_DIFFTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "DIFF_TYPE_UNSPECIFIED"
+
+-- | The intent.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Intent :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Intent = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "INTENT"
+
+-- | The page.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Page :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Page = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "PAGE"
+
+-- | The parameters.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Parameters :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Parameters = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "PARAMETERS"
+
+-- | The message utterance.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Utterance :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Utterance = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "UTTERANCE"
+
+-- | The flow.
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Flow :: GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+pattern GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Flow = GoogleCloudDialogflowCxV3beta1TestRunDifference_Type "FLOW"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_DIFFTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Intent,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Page,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Parameters,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Utterance,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type_Flow,
+  GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+  #-}
+
+newtype GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem = GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem {fromGoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Failure reason is not assigned.
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED = GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem "FAILURE_REASON_UNSPECIFIED"
+
+-- | Whether NLU failed to recognize user intent.
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDINTENT :: GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDINTENT = GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem "FAILED_INTENT"
+
+-- | Whether webhook failed during the turn.
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK :: GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK = GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem "FAILED_WEBHOOK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDINTENT,
+  GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+  GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+  #-}
+
+-- | Optional. HTTP method for the flexible webhook calls. Standard webhook always uses POST.
+newtype GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod {fromGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | HTTP method not specified.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "HTTP_METHOD_UNSPECIFIED"
+
+-- | HTTP POST Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Post' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Post' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "POST"
+
+-- | HTTP GET Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Get' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Get' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "GET"
+
+-- | HTTP HEAD Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Head' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Head' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "HEAD"
+
+-- | HTTP PUT Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Put' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Put' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "PUT"
+
+-- | HTTP DELETE Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Delete' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Delete' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "DELETE"
+
+-- | HTTP PATCH Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Patch' :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Patch' = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "PATCH"
+
+-- | HTTP OPTIONS Method.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Options :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Options = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod "OPTIONS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_HTTPMETHODUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Post',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Get',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Head',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Put',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Delete',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Patch',
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod_Options,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+  #-}
+
+-- | Optional. Indicate the auth token type generated from the <https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent Diglogflow service agent>. The generated token is sent in the Authorization header.
+newtype GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth {fromGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Service agent auth type unspecified. Default to ID_TOKEN.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth "SERVICE_AGENT_AUTH_UNSPECIFIED"
+
+-- | No token used.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_None :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_None = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth "NONE"
+
+-- | Use <https://cloud.google.com/docs/authentication/token-types#id ID token> generated from service agent. This can be used to access Cloud Function and Cloud Run after you grant Invoker role to @service-\@gcp-sa-dialogflow.iam.gserviceaccount.com@.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_IDTOKEN :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_IDTOKEN = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth "ID_TOKEN"
+
+-- | Use <https://cloud.google.com/docs/authentication/token-types#access access token> generated from service agent. This can be used to access other Google Cloud APIs after you grant required roles to @service-\@gcp-sa-dialogflow.iam.gserviceaccount.com@.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth "ACCESS_TOKEN"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_SERVICEAGENTAUTHUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_None,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_IDTOKEN,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth_ACCESSTOKEN,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+  #-}
+
+-- | Optional. Type of the webhook.
+newtype GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType {fromGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Default value. This value is unused.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType "WEBHOOK_TYPE_UNSPECIFIED"
+
+-- | Represents a standard webhook.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Standard :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Standard = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType "STANDARD"
+
+-- | Represents a flexible webhook.
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Flexible :: GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+pattern GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Flexible = GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType "FLEXIBLE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_WEBHOOKTYPEUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Standard,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType_Flexible,
+  GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+  #-}
+
+-- | Merge behavior for @messages@.
+newtype GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior = GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior {fromGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. @APPEND@ will be used.
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED :: GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED = GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior "MERGE_BEHAVIOR_UNSPECIFIED"
+
+-- | @messages@ will be appended to the list of messages waiting to be sent to the user.
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Append :: GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Append = GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior "APPEND"
+
+-- | @messages@ will replace the list of messages waiting to be sent to the user.
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Replace :: GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+pattern GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Replace = GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior "REPLACE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_MERGEBEHAVIORUNSPECIFIED,
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Append,
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior_Replace,
+  GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+  #-}
+
+-- | Optional. Type of the article suggestion model. If not provided, model_type is used.
+newtype GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType = GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType {fromGoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | ModelType unspecified.
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED :: GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED = GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType "MODEL_TYPE_UNSPECIFIED"
+
+-- | ModelType smart reply dual encoder model.
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL :: GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL = GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType "SMART_REPLY_DUAL_ENCODER_MODEL"
+
+-- | ModelType smart reply bert model.
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL :: GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL = GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType "SMART_REPLY_BERT_MODEL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL,
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL,
+  GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+  #-}
+
+-- | Required. The participant role to remove the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+newtype GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole {fromGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+  #-}
+
+-- | Required. The type of the suggestion feature to remove.
+newtype GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType {fromGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified feature type.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "TYPE_UNSPECIFIED"
+
+-- | Run article suggestion model for chat.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "ARTICLE_SUGGESTION"
+
+-- | Run FAQ model for chat.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "FAQ"
+
+-- | Run smart reply model for chat.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "SMART_REPLY"
+
+-- | Run conversation summarization model for chat.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "CONVERSATION_SUMMARIZATION"
+
+-- | Run knowledge search with text input from agent or text generated query.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_SEARCH"
+
+-- | Run knowledge assist with automatic query generation.
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST :: GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST = GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_ASSIST"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+  GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+  #-}
+
+-- | The type of the event that this notification refers to.
+newtype GoogleCloudDialogflowV2ConversationEvent_Type = GoogleCloudDialogflowV2ConversationEvent_Type {fromGoogleCloudDialogflowV2ConversationEvent_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Type not set.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_TYPEUNSPECIFIED = GoogleCloudDialogflowV2ConversationEvent_Type "TYPE_UNSPECIFIED"
+
+-- | A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONSTARTED :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONSTARTED = GoogleCloudDialogflowV2ConversationEvent_Type "CONVERSATION_STARTED"
+
+-- | An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONFINISHED :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONFINISHED = GoogleCloudDialogflowV2ConversationEvent_Type "CONVERSATION_FINISHED"
+
+-- | An existing conversation has received notification from Dialogflow that human intervention is required.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_HUMANINTERVENTIONNEEDED :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_HUMANINTERVENTIONNEEDED = GoogleCloudDialogflowV2ConversationEvent_Type "HUMAN_INTERVENTION_NEEDED"
+
+-- | An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new/message/event/notification/config
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_NEWMESSAGE :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_NEWMESSAGE = GoogleCloudDialogflowV2ConversationEvent_Type "NEW_MESSAGE"
+
+-- | An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new/recognition/event/notification/config.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_NEWRECOGNITIONRESULT :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_NEWRECOGNITIONRESULT = GoogleCloudDialogflowV2ConversationEvent_Type "NEW_RECOGNITION_RESULT"
+
+-- | Unrecoverable error during a telephone call. In general non-recoverable errors only occur if something was misconfigured in the ConversationProfile corresponding to the call. After a non-recoverable error, Dialogflow may stop responding. We don\'t fire this event: * in an API call because we can directly return the error, or, * when we can recover from an error.
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_UNRECOVERABLEERROR :: GoogleCloudDialogflowV2ConversationEvent_Type
+pattern GoogleCloudDialogflowV2ConversationEvent_Type_UNRECOVERABLEERROR = GoogleCloudDialogflowV2ConversationEvent_Type "UNRECOVERABLE_ERROR"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2ConversationEvent_Type_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONSTARTED,
+  GoogleCloudDialogflowV2ConversationEvent_Type_CONVERSATIONFINISHED,
+  GoogleCloudDialogflowV2ConversationEvent_Type_HUMANINTERVENTIONNEEDED,
+  GoogleCloudDialogflowV2ConversationEvent_Type_NEWMESSAGE,
+  GoogleCloudDialogflowV2ConversationEvent_Type_NEWRECOGNITIONRESULT,
+  GoogleCloudDialogflowV2ConversationEvent_Type_UNRECOVERABLEERROR,
+  GoogleCloudDialogflowV2ConversationEvent_Type
+  #-}
+
+-- | Output only. State of the model. A model can only serve prediction requests after it gets deployed.
+newtype GoogleCloudDialogflowV2ConversationModel_State = GoogleCloudDialogflowV2ConversationModel_State {fromGoogleCloudDialogflowV2ConversationModel_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Should not be used, an un-set enum has this value by default.
+pattern GoogleCloudDialogflowV2ConversationModel_State_STATEUNSPECIFIED :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_STATEUNSPECIFIED = GoogleCloudDialogflowV2ConversationModel_State "STATE_UNSPECIFIED"
+
+-- | Model being created.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Creating :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Creating = GoogleCloudDialogflowV2ConversationModel_State "CREATING"
+
+-- | Model is not deployed but ready to deploy.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Undeployed :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Undeployed = GoogleCloudDialogflowV2ConversationModel_State "UNDEPLOYED"
+
+-- | Model is deploying.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deploying :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deploying = GoogleCloudDialogflowV2ConversationModel_State "DEPLOYING"
+
+-- | Model is deployed and ready to use.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deployed :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deployed = GoogleCloudDialogflowV2ConversationModel_State "DEPLOYED"
+
+-- | Model is undeploying.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Undeploying :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Undeploying = GoogleCloudDialogflowV2ConversationModel_State "UNDEPLOYING"
+
+-- | Model is deleting.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deleting :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Deleting = GoogleCloudDialogflowV2ConversationModel_State "DELETING"
+
+-- | Model is in error state. Not ready to deploy and use.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Failed :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Failed = GoogleCloudDialogflowV2ConversationModel_State "FAILED"
+
+-- | Model is being created but the training has not started, The model may remain in this state until there is enough capacity to start training.
+pattern GoogleCloudDialogflowV2ConversationModel_State_Pending :: GoogleCloudDialogflowV2ConversationModel_State
+pattern GoogleCloudDialogflowV2ConversationModel_State_Pending = GoogleCloudDialogflowV2ConversationModel_State "PENDING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2ConversationModel_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowV2ConversationModel_State_Creating,
+  GoogleCloudDialogflowV2ConversationModel_State_Undeployed,
+  GoogleCloudDialogflowV2ConversationModel_State_Deploying,
+  GoogleCloudDialogflowV2ConversationModel_State_Deployed,
+  GoogleCloudDialogflowV2ConversationModel_State_Undeploying,
+  GoogleCloudDialogflowV2ConversationModel_State_Deleting,
+  GoogleCloudDialogflowV2ConversationModel_State_Failed,
+  GoogleCloudDialogflowV2ConversationModel_State_Pending,
+  GoogleCloudDialogflowV2ConversationModel_State
+  #-}
+
+-- | State of CreateConversationModel operation.
+newtype GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State {fromGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Operation status not specified.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_STATEUNSPECIFIED :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_STATEUNSPECIFIED = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "STATE_UNSPECIFIED"
+
+-- | The operation is being prepared.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Initializing :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Initializing = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "INITIALIZING"
+
+-- | The operation is running.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Running :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Running = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "RUNNING"
+
+-- | The operation is cancelled.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Cancelled :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Cancelled = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "CANCELLED"
+
+-- | The operation has succeeded.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Succeeded :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Succeeded = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "SUCCEEDED"
+
+-- | The operation has failed.
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Failed :: GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Failed = GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State "FAILED"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Initializing,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Running,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Cancelled,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Succeeded,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State_Failed,
+  GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+  #-}
+
+-- | State of CreateConversationModel operation.
+newtype GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State {fromGoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Invalid.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_STATEUNSPECIFIED :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_STATEUNSPECIFIED = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "STATE_UNSPECIFIED"
+
+-- | Request is submitted, but training has not started yet. The model may remain in this state until there is enough capacity to start training.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Pending :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Pending = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "PENDING"
+
+-- | The training has succeeded.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Succeeded :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Succeeded = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "SUCCEEDED"
+
+-- | The training has succeeded.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Failed :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Failed = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "FAILED"
+
+-- | The training has been cancelled.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelled :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelled = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "CANCELLED"
+
+-- | The training is in cancelling state.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelling :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelling = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "CANCELLING"
+
+-- | Custom model is training.
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Training :: GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+pattern GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Training = GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State "TRAINING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Pending,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Succeeded,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Failed,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelled,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Cancelling,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State_Training,
+  GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+  #-}
+
+-- | Optional. Indicates whether the entity type can be automatically expanded.
+newtype GoogleCloudDialogflowV2EntityType_AutoExpansionMode = GoogleCloudDialogflowV2EntityType_AutoExpansionMode {fromGoogleCloudDialogflowV2EntityType_AutoExpansionMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Auto expansion disabled for the entity.
+pattern GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED :: GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED = GoogleCloudDialogflowV2EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_UNSPECIFIED"
+
+-- | Allows an agent to recognize values that have not been explicitly listed in the entity.
+pattern GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT :: GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT = GoogleCloudDialogflowV2EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_DEFAULT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+  GoogleCloudDialogflowV2EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+  GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+  #-}
+
+-- | Required. Indicates the kind of entity type.
+newtype GoogleCloudDialogflowV2EntityType_Kind = GoogleCloudDialogflowV2EntityType_Kind {fromGoogleCloudDialogflowV2EntityType_Kind :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDUNSPECIFIED :: GoogleCloudDialogflowV2EntityType_Kind
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDUNSPECIFIED = GoogleCloudDialogflowV2EntityType_Kind "KIND_UNSPECIFIED"
+
+-- | Map entity types allow mapping of a group of synonyms to a reference value.
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDMAP :: GoogleCloudDialogflowV2EntityType_Kind
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDMAP = GoogleCloudDialogflowV2EntityType_Kind "KIND_MAP"
+
+-- | List entity types contain a set of entries that do not map to reference values. However, list entity types can contain references to other entity types (with or without aliases).
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDLIST :: GoogleCloudDialogflowV2EntityType_Kind
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDLIST = GoogleCloudDialogflowV2EntityType_Kind "KIND_LIST"
+
+-- | Regexp entity types allow to specify regular expressions in entries values.
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDREGEXP :: GoogleCloudDialogflowV2EntityType_Kind
+pattern GoogleCloudDialogflowV2EntityType_Kind_KINDREGEXP = GoogleCloudDialogflowV2EntityType_Kind "KIND_REGEXP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2EntityType_Kind_KINDUNSPECIFIED,
+  GoogleCloudDialogflowV2EntityType_Kind_KINDMAP,
+  GoogleCloudDialogflowV2EntityType_Kind_KINDLIST,
+  GoogleCloudDialogflowV2EntityType_Kind_KINDREGEXP,
+  GoogleCloudDialogflowV2EntityType_Kind
+  #-}
+
+newtype GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem {fromGoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Default platform.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "PLATFORM_UNSPECIFIED"
+
+-- | Facebook.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Facebook :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Facebook = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "FACEBOOK"
+
+-- | Slack.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Slack :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Slack = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "SLACK"
+
+-- | Telegram.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Telegram :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Telegram = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "TELEGRAM"
+
+-- | Kik.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Kik :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Kik = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "KIK"
+
+-- | Skype.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Skype :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Skype = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "SKYPE"
+
+-- | Line.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Line :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Line = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "LINE"
+
+-- | Viber.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Viber :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Viber = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "VIBER"
+
+-- | Google Assistant See <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Dialogflow webhook format>
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "ACTIONS_ON_GOOGLE"
+
+-- | Google Hangouts.
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS :: GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS = GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem "GOOGLE_HANGOUTS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Facebook,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Slack,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Telegram,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Kik,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Skype,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Line,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_Viber,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS,
+  GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+  #-}
+
+-- | Optional. Indicates whether webhooks are enabled for the intent.
+newtype GoogleCloudDialogflowV2Intent_WebhookState = GoogleCloudDialogflowV2Intent_WebhookState {fromGoogleCloudDialogflowV2Intent_WebhookState :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Webhook is disabled in the agent and in the intent.
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED :: GoogleCloudDialogflowV2Intent_WebhookState
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED = GoogleCloudDialogflowV2Intent_WebhookState "WEBHOOK_STATE_UNSPECIFIED"
+
+-- | Webhook is enabled in the agent and in the intent.
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLED :: GoogleCloudDialogflowV2Intent_WebhookState
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLED = GoogleCloudDialogflowV2Intent_WebhookState "WEBHOOK_STATE_ENABLED"
+
+-- | Webhook is enabled in the agent and in the intent. Also, each slot filling prompt is forwarded to the webhook.
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING :: GoogleCloudDialogflowV2Intent_WebhookState
+pattern GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING = GoogleCloudDialogflowV2Intent_WebhookState "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED,
+  GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLED,
+  GoogleCloudDialogflowV2Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING,
+  GoogleCloudDialogflowV2Intent_WebhookState
+  #-}
+
+-- | Optional. The platform that this message is intended for.
+newtype GoogleCloudDialogflowV2IntentMessage_Platform = GoogleCloudDialogflowV2IntentMessage_Platform {fromGoogleCloudDialogflowV2IntentMessage_Platform :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Default platform.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_PLATFORMUNSPECIFIED :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_PLATFORMUNSPECIFIED = GoogleCloudDialogflowV2IntentMessage_Platform "PLATFORM_UNSPECIFIED"
+
+-- | Facebook.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Facebook :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Facebook = GoogleCloudDialogflowV2IntentMessage_Platform "FACEBOOK"
+
+-- | Slack.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Slack :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Slack = GoogleCloudDialogflowV2IntentMessage_Platform "SLACK"
+
+-- | Telegram.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Telegram :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Telegram = GoogleCloudDialogflowV2IntentMessage_Platform "TELEGRAM"
+
+-- | Kik.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Kik :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Kik = GoogleCloudDialogflowV2IntentMessage_Platform "KIK"
+
+-- | Skype.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Skype :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Skype = GoogleCloudDialogflowV2IntentMessage_Platform "SKYPE"
+
+-- | Line.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Line :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Line = GoogleCloudDialogflowV2IntentMessage_Platform "LINE"
+
+-- | Viber.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Viber :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_Viber = GoogleCloudDialogflowV2IntentMessage_Platform "VIBER"
+
+-- | Google Assistant See <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Dialogflow webhook format>
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_ACTIONSONGOOGLE :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_ACTIONSONGOOGLE = GoogleCloudDialogflowV2IntentMessage_Platform "ACTIONS_ON_GOOGLE"
+
+-- | Google Hangouts.
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_GOOGLEHANGOUTS :: GoogleCloudDialogflowV2IntentMessage_Platform
+pattern GoogleCloudDialogflowV2IntentMessage_Platform_GOOGLEHANGOUTS = GoogleCloudDialogflowV2IntentMessage_Platform "GOOGLE_HANGOUTS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentMessage_Platform_PLATFORMUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Facebook,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Slack,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Telegram,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Kik,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Skype,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Line,
+  GoogleCloudDialogflowV2IntentMessage_Platform_Viber,
+  GoogleCloudDialogflowV2IntentMessage_Platform_ACTIONSONGOOGLE,
+  GoogleCloudDialogflowV2IntentMessage_Platform_GOOGLEHANGOUTS,
+  GoogleCloudDialogflowV2IntentMessage_Platform
+  #-}
+
+-- | Optional. Settings for displaying the image. Applies to every image in items.
+newtype GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions {fromGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Fill the gaps between the image and the image container with gray bars.
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED"
+
+-- | Fill the gaps between the image and the image container with gray bars.
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions "GRAY"
+
+-- | Fill the gaps between the image and the image container with white bars.
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_White :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_White = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions "WHITE"
+
+-- | Image is scaled such that the image width and height match or exceed the container dimensions. This may crop the top and bottom of the image if the scaled image height is greater than the container height, or crop the left and right of the image if the scaled image width is greater than the container width. This is similar to \"Zoom Mode\" on a widescreen TV when playing a 4:3 video.
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions "CROPPED"
+
+-- | Pad the gaps between image and image frame with a blurred copy of the same image.
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions "BLURRED_BACKGROUND"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_White,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+  #-}
+
+-- | Optional. Specifies the type of viewer that is used when opening the URL. Defaults to opening via web browser.
+newtype GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint {fromGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "URL_TYPE_HINT_UNSPECIFIED"
+
+-- | Url would be an amp action
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "AMP_ACTION"
+
+-- | URL that points directly to AMP content, or to a canonical URL which refers to AMP content via .
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT :: GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT = GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "AMP_CONTENT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT,
+  GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+  #-}
+
+-- | Optional. Defines text alignment for all cells in this column.
+newtype GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment = GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment {fromGoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Text is aligned to the leading edge of the column.
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED :: GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED = GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment "HORIZONTAL_ALIGNMENT_UNSPECIFIED"
+
+-- | Text is aligned to the leading edge of the column.
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Leading :: GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Leading = GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment "LEADING"
+
+-- | Text is centered in the column.
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Center :: GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Center = GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment "CENTER"
+
+-- | Text is aligned to the trailing edge of the column.
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Trailing :: GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Trailing = GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment "TRAILING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Leading,
+  GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Center,
+  GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment_Trailing,
+  GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+  #-}
+
+-- | Optional. What type of media is the content (ie \"audio\").
+newtype GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType = GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType {fromGoogleCloudDialogflowV2IntentMessageMediaContent_MediaType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified.
+pattern GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED :: GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+pattern GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED = GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType "RESPONSE_MEDIA_TYPE_UNSPECIFIED"
+
+-- | Response media type is audio.
+pattern GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_Audio :: GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+pattern GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_Audio = GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType "AUDIO"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType_Audio,
+  GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+  #-}
+
+-- | Required. The type of the training phrase.
+newtype GoogleCloudDialogflowV2IntentTrainingPhrase_Type = GoogleCloudDialogflowV2IntentTrainingPhrase_Type {fromGoogleCloudDialogflowV2IntentTrainingPhrase_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should never be used.
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_TYPEUNSPECIFIED = GoogleCloudDialogflowV2IntentTrainingPhrase_Type "TYPE_UNSPECIFIED"
+
+-- | Examples do not contain \@-prefixed entity type names, but example parts can be annotated with entity types.
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Example :: GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Example = GoogleCloudDialogflowV2IntentTrainingPhrase_Type "EXAMPLE"
+
+-- | Templates are not annotated with entity types, but they can contain \@-prefixed entity type names as substrings. Template mode has been deprecated. Example mode is the only supported way to create new training phrases. If you have existing training phrases that you\'ve created in template mode, those will continue to work.
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Template :: GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Template = GoogleCloudDialogflowV2IntentTrainingPhrase_Type "TEMPLATE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2IntentTrainingPhrase_Type_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Example,
+  GoogleCloudDialogflowV2IntentTrainingPhrase_Type_Template,
+  GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+  #-}
+
+-- | Output only. The current state of this operation.
+newtype GoogleCloudDialogflowV2KnowledgeOperationMetadata_State = GoogleCloudDialogflowV2KnowledgeOperationMetadata_State {fromGoogleCloudDialogflowV2KnowledgeOperationMetadata_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | State unspecified.
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_STATEUNSPECIFIED :: GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_STATEUNSPECIFIED = GoogleCloudDialogflowV2KnowledgeOperationMetadata_State "STATE_UNSPECIFIED"
+
+-- | The operation has been created.
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Pending :: GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Pending = GoogleCloudDialogflowV2KnowledgeOperationMetadata_State "PENDING"
+
+-- | The operation is currently running.
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Running :: GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Running = GoogleCloudDialogflowV2KnowledgeOperationMetadata_State "RUNNING"
+
+-- | The operation is done, either cancelled or completed.
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Done :: GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Done = GoogleCloudDialogflowV2KnowledgeOperationMetadata_State "DONE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Pending,
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Running,
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata_State_Done,
+  GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+  #-}
+
+-- | Output only. The role of the participant.
+newtype GoogleCloudDialogflowV2Message_ParticipantRole = GoogleCloudDialogflowV2Message_ParticipantRole {fromGoogleCloudDialogflowV2Message_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2Message_ParticipantRole
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2Message_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2Message_ParticipantRole
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2Message_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2Message_ParticipantRole
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2Message_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2Message_ParticipantRole
+pattern GoogleCloudDialogflowV2Message_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2Message_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2Message_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2Message_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2Message_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2Message_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2Message_ParticipantRole
+  #-}
+
+-- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+newtype GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode = GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode {fromGoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED :: GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED = GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_UNSPECIFIED"
+
+-- | The collection of session entities overrides the collection of entities in the corresponding custom entity type.
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE :: GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE = GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_OVERRIDE"
+
+-- | The collection of session entities extends the collection of entities in the corresponding custom entity type. Note: Even in this override mode calls to @ListSessionEntityTypes@, @GetSessionEntityType@, @CreateSessionEntityType@ and @UpdateSessionEntityType@ only return the additional entities added in this session entity type. If you want to get the supplemented list, please call EntityTypes.GetEntityType on the custom entity type and merge.
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT :: GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT = GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_SUPPLEMENT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+  GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+  GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+  GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+  #-}
+
+-- | Required. The participant role to add or update the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+newtype GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole {fromGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+  #-}
+
+-- | Required. The type of the suggestion feature to add or update.
+newtype GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType {fromGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified feature type.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "TYPE_UNSPECIFIED"
+
+-- | Run article suggestion model for chat.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "ARTICLE_SUGGESTION"
+
+-- | Run FAQ model for chat.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "FAQ"
+
+-- | Run smart reply model for chat.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "SMART_REPLY"
+
+-- | Run conversation summarization model for chat.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "CONVERSATION_SUMMARIZATION"
+
+-- | Run knowledge search with text input from agent or text generated query.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_SEARCH"
+
+-- | Run knowledge assist with automatic query generation.
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST :: GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST = GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_ASSIST"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+  GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+  #-}
+
+-- | Optional. Type of the smart reply model. If not provided, model_type is used.
+newtype GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType = GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType {fromGoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | ModelType unspecified.
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED :: GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED = GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType "MODEL_TYPE_UNSPECIFIED"
+
+-- | ModelType smart reply dual encoder model.
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL :: GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL = GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType "SMART_REPLY_DUAL_ENCODER_MODEL"
+
+-- | ModelType smart reply bert model.
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL :: GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+pattern GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL = GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType "SMART_REPLY_BERT_MODEL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_MODELTYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYDUALENCODERMODEL,
+  GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType_SMARTREPLYBERTMODEL,
+  GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+  #-}
+
+-- | Type of the result message.
+newtype GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType = GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType {fromGoogleCloudDialogflowV2StreamingRecognitionResult_MessageType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED :: GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED = GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType "MESSAGE_TYPE_UNSPECIFIED"
+
+-- | Message contains a (possibly partial) transcript.
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_Transcript :: GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_Transcript = GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType "TRANSCRIPT"
+
+-- | This event indicates that the server has detected the end of the user\'s speech utterance and expects no additional inputs. Therefore, the server will not process additional audio (although it may subsequently return additional results). The client should stop sending additional audio data, half-close the gRPC connection, and wait for any additional results until the server closes the gRPC connection. This message is only sent if @single_utterance@ was set to @true@, and is not used otherwise.
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE :: GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE = GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType "END_OF_SINGLE_UTTERANCE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_Transcript,
+  GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE,
+  GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+  #-}
+
+-- | Required. The participant role to remove the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+newtype GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole {fromGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+  #-}
+
+-- | Required. The type of the suggestion feature to remove.
+newtype GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType {fromGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified feature type.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "TYPE_UNSPECIFIED"
+
+-- | Run article suggestion model for chat.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "ARTICLE_SUGGESTION"
+
+-- | Run FAQ model.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "FAQ"
+
+-- | Run smart reply model for chat.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "SMART_REPLY"
+
+-- | Run Dialogflow assist model for chat, which will return automated agent response as suggestion.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "DIALOGFLOW_ASSIST"
+
+-- | Run conversation summarization model for chat.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "CONVERSATION_SUMMARIZATION"
+
+-- | Run knowledge search with text input from agent or text generated query.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_SEARCH"
+
+-- | Run knowledge assist with automatic query generation.
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST :: GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST = GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_ASSIST"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+  GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+  #-}
+
+-- | Required. The type of the event that this notification refers to.
+newtype GoogleCloudDialogflowV2beta1ConversationEvent_Type = GoogleCloudDialogflowV2beta1ConversationEvent_Type {fromGoogleCloudDialogflowV2beta1ConversationEvent_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Type not set.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_TYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1ConversationEvent_Type "TYPE_UNSPECIFIED"
+
+-- | A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONSTARTED :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONSTARTED = GoogleCloudDialogflowV2beta1ConversationEvent_Type "CONVERSATION_STARTED"
+
+-- | An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONFINISHED :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONFINISHED = GoogleCloudDialogflowV2beta1ConversationEvent_Type "CONVERSATION_FINISHED"
+
+-- | An existing conversation has received notification from Dialogflow that human intervention is required.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_HUMANINTERVENTIONNEEDED :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_HUMANINTERVENTIONNEEDED = GoogleCloudDialogflowV2beta1ConversationEvent_Type "HUMAN_INTERVENTION_NEEDED"
+
+-- | An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new/message/event/notification/config
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWMESSAGE :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWMESSAGE = GoogleCloudDialogflowV2beta1ConversationEvent_Type "NEW_MESSAGE"
+
+-- | An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new/recognition/event/notification/config.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWRECOGNITIONRESULT :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWRECOGNITIONRESULT = GoogleCloudDialogflowV2beta1ConversationEvent_Type "NEW_RECOGNITION_RESULT"
+
+-- | Unrecoverable error during a telephone call. In general non-recoverable errors only occur if something was misconfigured in the ConversationProfile corresponding to the call. After a non-recoverable error, Dialogflow may stop responding. We don\'t fire this event: * in an API call because we can directly return the error, or, * when we can recover from an error.
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_UNRECOVERABLEERROR :: GoogleCloudDialogflowV2beta1ConversationEvent_Type
+pattern GoogleCloudDialogflowV2beta1ConversationEvent_Type_UNRECOVERABLEERROR = GoogleCloudDialogflowV2beta1ConversationEvent_Type "UNRECOVERABLE_ERROR"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONSTARTED,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_CONVERSATIONFINISHED,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_HUMANINTERVENTIONNEEDED,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWMESSAGE,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_NEWRECOGNITIONRESULT,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type_UNRECOVERABLEERROR,
+  GoogleCloudDialogflowV2beta1ConversationEvent_Type
+  #-}
+
+-- | Optional. Indicates whether the entity type can be automatically expanded.
+newtype GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode = GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode {fromGoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Auto expansion disabled for the entity.
+pattern GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED :: GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED = GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_UNSPECIFIED"
+
+-- | Allows an agent to recognize values that have not been explicitly listed in the entity.
+pattern GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT :: GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+pattern GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT = GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode "AUTO_EXPANSION_MODE_DEFAULT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode_AUTOEXPANSIONMODEDEFAULT,
+  GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+  #-}
+
+-- | Required. Indicates the kind of entity type.
+newtype GoogleCloudDialogflowV2beta1EntityType_Kind = GoogleCloudDialogflowV2beta1EntityType_Kind {fromGoogleCloudDialogflowV2beta1EntityType_Kind :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDUNSPECIFIED :: GoogleCloudDialogflowV2beta1EntityType_Kind
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDUNSPECIFIED = GoogleCloudDialogflowV2beta1EntityType_Kind "KIND_UNSPECIFIED"
+
+-- | Map entity types allow mapping of a group of synonyms to a reference value.
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDMAP :: GoogleCloudDialogflowV2beta1EntityType_Kind
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDMAP = GoogleCloudDialogflowV2beta1EntityType_Kind "KIND_MAP"
+
+-- | List entity types contain a set of entries that do not map to reference values. However, list entity types can contain references to other entity types (with or without aliases).
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDLIST :: GoogleCloudDialogflowV2beta1EntityType_Kind
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDLIST = GoogleCloudDialogflowV2beta1EntityType_Kind "KIND_LIST"
+
+-- | Regexp entity types allow to specify regular expressions in entries values.
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDREGEXP :: GoogleCloudDialogflowV2beta1EntityType_Kind
+pattern GoogleCloudDialogflowV2beta1EntityType_Kind_KINDREGEXP = GoogleCloudDialogflowV2beta1EntityType_Kind "KIND_REGEXP"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1EntityType_Kind_KINDUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1EntityType_Kind_KINDMAP,
+  GoogleCloudDialogflowV2beta1EntityType_Kind_KINDLIST,
+  GoogleCloudDialogflowV2beta1EntityType_Kind_KINDREGEXP,
+  GoogleCloudDialogflowV2beta1EntityType_Kind
+  #-}
+
+newtype GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem {fromGoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "PLATFORM_UNSPECIFIED"
+
+-- | Facebook.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Facebook :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Facebook = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "FACEBOOK"
+
+-- | Slack.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Slack :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Slack = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "SLACK"
+
+-- | Telegram.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telegram :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telegram = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "TELEGRAM"
+
+-- | Kik.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Kik :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Kik = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "KIK"
+
+-- | Skype.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Skype :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Skype = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "SKYPE"
+
+-- | Line.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Line :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Line = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "LINE"
+
+-- | Viber.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Viber :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Viber = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "VIBER"
+
+-- | Google Assistant See <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Dialogflow webhook format>
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "ACTIONS_ON_GOOGLE"
+
+-- | Telephony Gateway.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telephony :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telephony = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "TELEPHONY"
+
+-- | Google Hangouts.
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS :: GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+pattern GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS = GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem "GOOGLE_HANGOUTS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_PLATFORMUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Facebook,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Slack,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telegram,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Kik,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Skype,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Line,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Viber,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_ACTIONSONGOOGLE,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_Telephony,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem_GOOGLEHANGOUTS,
+  GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+  #-}
+
+-- | Optional. Indicates whether webhooks are enabled for the intent.
+newtype GoogleCloudDialogflowV2beta1Intent_WebhookState = GoogleCloudDialogflowV2beta1Intent_WebhookState {fromGoogleCloudDialogflowV2beta1Intent_WebhookState :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Webhook is disabled in the agent and in the intent.
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED :: GoogleCloudDialogflowV2beta1Intent_WebhookState
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED = GoogleCloudDialogflowV2beta1Intent_WebhookState "WEBHOOK_STATE_UNSPECIFIED"
+
+-- | Webhook is enabled in the agent and in the intent.
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLED :: GoogleCloudDialogflowV2beta1Intent_WebhookState
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLED = GoogleCloudDialogflowV2beta1Intent_WebhookState "WEBHOOK_STATE_ENABLED"
+
+-- | Webhook is enabled in the agent and in the intent. Also, each slot filling prompt is forwarded to the webhook.
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING :: GoogleCloudDialogflowV2beta1Intent_WebhookState
+pattern GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING = GoogleCloudDialogflowV2beta1Intent_WebhookState "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLED,
+  GoogleCloudDialogflowV2beta1Intent_WebhookState_WEBHOOKSTATEENABLEDFORSLOTFILLING,
+  GoogleCloudDialogflowV2beta1Intent_WebhookState
+  #-}
+
+-- | Optional. The platform that this message is intended for.
+newtype GoogleCloudDialogflowV2beta1IntentMessage_Platform = GoogleCloudDialogflowV2beta1IntentMessage_Platform {fromGoogleCloudDialogflowV2beta1IntentMessage_Platform :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_PLATFORMUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_PLATFORMUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessage_Platform "PLATFORM_UNSPECIFIED"
+
+-- | Facebook.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Facebook :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Facebook = GoogleCloudDialogflowV2beta1IntentMessage_Platform "FACEBOOK"
+
+-- | Slack.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Slack :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Slack = GoogleCloudDialogflowV2beta1IntentMessage_Platform "SLACK"
+
+-- | Telegram.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telegram :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telegram = GoogleCloudDialogflowV2beta1IntentMessage_Platform "TELEGRAM"
+
+-- | Kik.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Kik :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Kik = GoogleCloudDialogflowV2beta1IntentMessage_Platform "KIK"
+
+-- | Skype.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Skype :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Skype = GoogleCloudDialogflowV2beta1IntentMessage_Platform "SKYPE"
+
+-- | Line.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Line :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Line = GoogleCloudDialogflowV2beta1IntentMessage_Platform "LINE"
+
+-- | Viber.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Viber :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Viber = GoogleCloudDialogflowV2beta1IntentMessage_Platform "VIBER"
+
+-- | Google Assistant See <https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json Dialogflow webhook format>
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_ACTIONSONGOOGLE :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_ACTIONSONGOOGLE = GoogleCloudDialogflowV2beta1IntentMessage_Platform "ACTIONS_ON_GOOGLE"
+
+-- | Telephony Gateway.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telephony :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telephony = GoogleCloudDialogflowV2beta1IntentMessage_Platform "TELEPHONY"
+
+-- | Google Hangouts.
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_GOOGLEHANGOUTS :: GoogleCloudDialogflowV2beta1IntentMessage_Platform
+pattern GoogleCloudDialogflowV2beta1IntentMessage_Platform_GOOGLEHANGOUTS = GoogleCloudDialogflowV2beta1IntentMessage_Platform "GOOGLE_HANGOUTS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_PLATFORMUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Facebook,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Slack,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telegram,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Kik,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Skype,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Line,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Viber,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_ACTIONSONGOOGLE,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_Telephony,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform_GOOGLEHANGOUTS,
+  GoogleCloudDialogflowV2beta1IntentMessage_Platform
+  #-}
+
+-- | Optional. Settings for displaying the image. Applies to every image in items.
+newtype GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions {fromGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Fill the gaps between the image and the image container with gray bars.
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED"
+
+-- | Fill the gaps between the image and the image container with gray bars.
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions "GRAY"
+
+-- | Fill the gaps between the image and the image container with white bars.
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_White :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_White = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions "WHITE"
+
+-- | Image is scaled such that the image width and height match or exceed the container dimensions. This may crop the top and bottom of the image if the scaled image height is greater than the container height, or crop the left and right of the image if the scaled image width is greater than the container width. This is similar to \"Zoom Mode\" on a widescreen TV when playing a 4:3 video.
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions "CROPPED"
+
+-- | Pad the gaps between image and image frame with a blurred copy of the same image.
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions "BLURRED_BACKGROUND"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_IMAGEDISPLAYOPTIONSUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Gray,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_White,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_Cropped,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions_BLURREDBACKGROUND,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+  #-}
+
+-- | Optional. Specifies the type of viewer that is used when opening the URL. Defaults to opening via web browser.
+newtype GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint {fromGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "URL_TYPE_HINT_UNSPECIFIED"
+
+-- | Url would be an amp action
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "AMP_ACTION"
+
+-- | URL that points directly to AMP content, or to a canonical URL which refers to AMP content via .
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT :: GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+pattern GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT = GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint "AMP_CONTENT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_URLTYPEHINTUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPACTION,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint_AMPCONTENT,
+  GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+  #-}
+
+-- | Optional. Defines text alignment for all cells in this column.
+newtype GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment {fromGoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Text is aligned to the leading edge of the column.
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment "HORIZONTAL_ALIGNMENT_UNSPECIFIED"
+
+-- | Text is aligned to the leading edge of the column.
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Leading :: GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Leading = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment "LEADING"
+
+-- | Text is centered in the column.
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Center :: GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Center = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment "CENTER"
+
+-- | Text is aligned to the trailing edge of the column.
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Trailing :: GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Trailing = GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment "TRAILING"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_HORIZONTALALIGNMENTUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Leading,
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Center,
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment_Trailing,
+  GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+  #-}
+
+-- | Optional. What type of media is the content (ie \"audio\").
+newtype GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType = GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType {fromGoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified.
+pattern GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+pattern GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType "RESPONSE_MEDIA_TYPE_UNSPECIFIED"
+
+-- | Response media type is audio.
+pattern GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_Audio :: GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+pattern GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_Audio = GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType "AUDIO"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_RESPONSEMEDIATYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType_Audio,
+  GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+  #-}
+
+-- | Required for cards with vertical orientation. The height of the media within a rich card with a vertical layout. For a standalone card with horizontal layout, height is not customizable, and this field is ignored.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height {fromGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_HEIGHTUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_HEIGHTUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height "HEIGHT_UNSPECIFIED"
+
+-- | 112 DP.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Short :: GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Short = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height "SHORT"
+
+-- | 168 DP.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Medium :: GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Medium = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height "MEDIUM"
+
+-- | 264 DP. Not available for rich card carousels when the card width is set to small.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Tall :: GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Tall = GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height "TALL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_HEIGHTUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Short,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Medium,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height_Tall,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+  #-}
+
+-- | Required. The width of the cards in the carousel.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth = GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth {fromGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_CARDWIDTHUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_CARDWIDTHUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth "CARD_WIDTH_UNSPECIFIED"
+
+-- | 120 DP. Note that tall media cannot be used.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Small :: GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Small = GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth "SMALL"
+
+-- | 232 DP.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Medium :: GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Medium = GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth "MEDIUM"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_CARDWIDTHUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Small,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth_Medium,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+  #-}
+
+-- | Required. Orientation of the card.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation {fromGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_CARDORIENTATIONUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_CARDORIENTATIONUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation "CARD_ORIENTATION_UNSPECIFIED"
+
+-- | Horizontal layout.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Horizontal :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Horizontal = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation "HORIZONTAL"
+
+-- | Vertical layout.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Vertical :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Vertical = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation "VERTICAL"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_CARDORIENTATIONUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Horizontal,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation_Vertical,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+  #-}
+
+-- | Required if orientation is horizontal. Image preview alignment for standalone cards with horizontal layout.
+newtype GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment {fromGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_THUMBNAILIMAGEALIGNMENTUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_THUMBNAILIMAGEALIGNMENTUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED"
+
+-- | Thumbnail preview is left-aligned.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Left' :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Left' = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment "LEFT"
+
+-- | Thumbnail preview is right-aligned.
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Right' :: GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+pattern GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Right' = GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment "RIGHT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_THUMBNAILIMAGEALIGNMENTUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Left',
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment_Right',
+  GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+  #-}
+
+-- | Required. The type of the training phrase.
+newtype GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type = GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type {fromGoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should never be used.
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_TYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type "TYPE_UNSPECIFIED"
+
+-- | Examples do not contain \@-prefixed entity type names, but example parts can be annotated with entity types.
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Example :: GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Example = GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type "EXAMPLE"
+
+-- | Templates are not annotated with entity types, but they can contain \@-prefixed entity type names as substrings. Note: Template mode has been deprecated. Example mode is the only supported way to create new training phrases. If you have existing training phrases in template mode, they will be removed during training and it can cause a drop in agent performance.
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Template :: GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+pattern GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Template = GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type "TEMPLATE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Example,
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type_Template,
+  GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+  #-}
+
+-- | The system\'s confidence level that this knowledge answer is a good match for this conversational query. NOTE: The confidence level for a given \`\` pair may change without notice, as it depends on models that are constantly being improved. However, it will change less frequently than the confidence score below, and should be preferred for referencing the quality of an answer.
+newtype GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel {fromGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified.
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_MATCHCONFIDENCELEVELUNSPECIFIED :: GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_MATCHCONFIDENCELEVELUNSPECIFIED = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED"
+
+-- | Indicates that the confidence is low.
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Low :: GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Low = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel "LOW"
+
+-- | Indicates our confidence is medium.
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Medium :: GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Medium = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel "MEDIUM"
+
+-- | Indicates our confidence is high.
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_High :: GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+pattern GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_High = GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel "HIGH"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_MATCHCONFIDENCELEVELUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Low,
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_Medium,
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel_High,
+  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+  #-}
+
+-- | Required. Output only. The current state of this operation.
+newtype GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State {fromGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | State unspecified.
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_STATEUNSPECIFIED :: GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_STATEUNSPECIFIED = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State "STATE_UNSPECIFIED"
+
+-- | The operation has been created.
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Pending :: GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Pending = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State "PENDING"
+
+-- | The operation is currently running.
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Running :: GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Running = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State "RUNNING"
+
+-- | The operation is done, either cancelled or completed.
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Done :: GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+pattern GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Done = GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State "DONE"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_STATEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Pending,
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Running,
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State_Done,
+  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+  #-}
+
+-- | Output only. The role of the participant.
+newtype GoogleCloudDialogflowV2beta1Message_ParticipantRole = GoogleCloudDialogflowV2beta1Message_ParticipantRole {fromGoogleCloudDialogflowV2beta1Message_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2beta1Message_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2beta1Message_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2beta1Message_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2beta1Message_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2beta1Message_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2beta1Message_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2beta1Message_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1Message_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2beta1Message_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1Message_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1Message_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2beta1Message_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2beta1Message_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2beta1Message_ParticipantRole
+  #-}
+
+-- | Required. Indicates whether the additional data should override or supplement the custom entity type definition.
+newtype GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode = GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode {fromGoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value should be never used.
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED :: GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED = GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_UNSPECIFIED"
+
+-- | The collection of session entities overrides the collection of entities in the corresponding custom entity type.
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE :: GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE = GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_OVERRIDE"
+
+-- | The collection of session entities extends the collection of entities in the corresponding custom entity type. Note: Even in this override mode calls to @ListSessionEntityTypes@, @GetSessionEntityType@, @CreateSessionEntityType@ and @UpdateSessionEntityType@ only return the additional entities added in this session entity type. If you want to get the supplemented list, please call EntityTypes.GetEntityType on the custom entity type and merge.
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT :: GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+pattern GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT = GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode "ENTITY_OVERRIDE_MODE_SUPPLEMENT"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODEOVERRIDE,
+  GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode_ENTITYOVERRIDEMODESUPPLEMENT,
+  GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+  #-}
+
+-- | Required. The participant role to add or update the suggestion feature config. Only HUMAN/AGENT or END/USER can be used.
+newtype GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole {fromGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Participant role not set.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "ROLE_UNSPECIFIED"
+
+-- | Participant is a human agent.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "HUMAN_AGENT"
+
+-- | Participant is an automated agent, such as a Dialogflow agent.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "AUTOMATED_AGENT"
+
+-- | Participant is an end user that has called or chatted with Dialogflow services.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole "END_USER"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ROLEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_HUMANAGENT,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_AUTOMATEDAGENT,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole_ENDUSER,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+  #-}
+
+-- | Required. The type of the suggestion feature to add or update.
+newtype GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType {fromGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Unspecified feature type.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "TYPE_UNSPECIFIED"
+
+-- | Run article suggestion model for chat.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "ARTICLE_SUGGESTION"
+
+-- | Run FAQ model.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "FAQ"
+
+-- | Run smart reply model for chat.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "SMART_REPLY"
+
+-- | Run Dialogflow assist model for chat, which will return automated agent response as suggestion.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "DIALOGFLOW_ASSIST"
+
+-- | Run conversation summarization model for chat.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "CONVERSATION_SUMMARIZATION"
+
+-- | Run knowledge search with text input from agent or text generated query.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_SEARCH"
+
+-- | Run knowledge assist with automatic query generation.
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST :: GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+pattern GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST = GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType "KNOWLEDGE_ASSIST"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_TYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_ARTICLESUGGESTION,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_Faq,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_SMARTREPLY,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_DIALOGFLOWASSIST,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_CONVERSATIONSUMMARIZATION,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGESEARCH,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType_KNOWLEDGEASSIST,
+  GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+  #-}
+
+-- | Type of the result message.
+newtype GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType {fromGoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Should never be used.
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED :: GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType "MESSAGE_TYPE_UNSPECIFIED"
+
+-- | Message contains a (possibly partial) transcript.
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_Transcript :: GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_Transcript = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType "TRANSCRIPT"
+
+-- | Message contains DTMF digits.
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_DTMFDIGITS :: GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_DTMFDIGITS = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType "DTMF_DIGITS"
+
+-- | This event indicates that the server has detected the end of the user\'s speech utterance and expects no additional speech. Therefore, the server will not process additional audio (although it may subsequently return additional results). The client should stop sending additional audio data, half-close the gRPC connection, and wait for any additional results until the server closes the gRPC connection. This message is only sent if @single_utterance@ was set to @true@, and is not used otherwise.
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE :: GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType "END_OF_SINGLE_UTTERANCE"
+
+-- | Message contains DTMF digits. Before a message with DTMF/DIGITS is sent, a message with PARTIAL/DTMF_DIGITS may be sent with DTMF digits collected up to the time of sending, which represents an intermediate result.
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_PARTIALDTMFDIGITS :: GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+pattern GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_PARTIALDTMFDIGITS = GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType "PARTIAL_DTMF_DIGITS"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_MESSAGETYPEUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_Transcript,
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_DTMFDIGITS,
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_ENDOFSINGLEUTTERANCE,
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType_PARTIALDTMFDIGITS,
+  GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+  #-}
+
+newtype GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem {fromGoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. This value may be used to indicate an absent digit.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_TELEPHONYDTMFUNSPECIFIED :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_TELEPHONYDTMFUNSPECIFIED = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "TELEPHONY_DTMF_UNSPECIFIED"
+
+-- | Number: \'1\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFONE :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFONE = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_ONE"
+
+-- | Number: \'2\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTWO :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTWO = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_TWO"
+
+-- | Number: \'3\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTHREE :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTHREE = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_THREE"
+
+-- | Number: \'4\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFOUR :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFOUR = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_FOUR"
+
+-- | Number: \'5\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFIVE :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFIVE = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_FIVE"
+
+-- | Number: \'6\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSIX :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSIX = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_SIX"
+
+-- | Number: \'7\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSEVEN :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSEVEN = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_SEVEN"
+
+-- | Number: \'8\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFEIGHT :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFEIGHT = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_EIGHT"
+
+-- | Number: \'9\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFNINE :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFNINE = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_NINE"
+
+-- | Number: \'0\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFZERO :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFZERO = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_ZERO"
+
+-- | Letter: \'A\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFA :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFA = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_A"
+
+-- | Letter: \'B\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFB :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFB = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_B"
+
+-- | Letter: \'C\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFC :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFC = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_C"
+
+-- | Letter: \'D\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFD :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFD = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_D"
+
+-- | Asterisk\/star: \'*\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSTAR :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSTAR = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_STAR"
+
+-- | Pound\/diamond\/hash\/square\/gate\/octothorpe: \'#\'.
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFPOUND :: GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+pattern GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFPOUND = GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem "DTMF_POUND"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_TELEPHONYDTMFUNSPECIFIED,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFONE,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTWO,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFTHREE,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFOUR,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFFIVE,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSIX,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSEVEN,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFEIGHT,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFNINE,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFZERO,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFA,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFB,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFC,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFD,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFSTAR,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem_DTMFPOUND,
+  GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+  #-}
+
+newtype GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem = GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem {fromGoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Failure reason is not assigned.
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED :: GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED = GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem "FAILURE_REASON_UNSPECIFIED"
+
+-- | Whether NLU failed to recognize user intent.
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDINTENT :: GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDINTENT = GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem "FAILED_INTENT"
+
+-- | Whether webhook failed during the turn.
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK :: GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+pattern GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK = GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem "FAILED_WEBHOOK"
+
+{-# COMPLETE
+  GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILUREREASONUNSPECIFIED,
+  GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDINTENT,
+  GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem_FAILEDWEBHOOK,
+  GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+  #-}
+
+-- | The resource view to apply to the returned intent.
+newtype ProjectsLocationsAgentsIntentsListIntentView = ProjectsLocationsAgentsIntentsListIntentView {fromProjectsLocationsAgentsIntentsListIntentView :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not specified. Treated as INTENT/VIEW/FULL.
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWUNSPECIFIED :: ProjectsLocationsAgentsIntentsListIntentView
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWUNSPECIFIED = ProjectsLocationsAgentsIntentsListIntentView "INTENT_VIEW_UNSPECIFIED"
+
+-- | Training phrases field is not populated in the response.
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWPARTIAL :: ProjectsLocationsAgentsIntentsListIntentView
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWPARTIAL = ProjectsLocationsAgentsIntentsListIntentView "INTENT_VIEW_PARTIAL"
+
+-- | All fields are populated.
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWFULL :: ProjectsLocationsAgentsIntentsListIntentView
+pattern ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWFULL = ProjectsLocationsAgentsIntentsListIntentView "INTENT_VIEW_FULL"
+
+{-# COMPLETE
+  ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWUNSPECIFIED,
+  ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWPARTIAL,
+  ProjectsLocationsAgentsIntentsListIntentView_INTENTVIEWFULL,
+  ProjectsLocationsAgentsIntentsListIntentView
+  #-}
+
+-- | Required. The type of coverage requested.
+newtype ProjectsLocationsAgentsTestCasesCalculateCoverageType = ProjectsLocationsAgentsTestCasesCalculateCoverageType {fromProjectsLocationsAgentsTestCasesCalculateCoverageType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Should never be used.
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_COVERAGETYPEUNSPECIFIED :: ProjectsLocationsAgentsTestCasesCalculateCoverageType
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_COVERAGETYPEUNSPECIFIED = ProjectsLocationsAgentsTestCasesCalculateCoverageType "COVERAGE_TYPE_UNSPECIFIED"
+
+-- | Intent coverage.
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_Intent :: ProjectsLocationsAgentsTestCasesCalculateCoverageType
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_Intent = ProjectsLocationsAgentsTestCasesCalculateCoverageType "INTENT"
+
+-- | Page transition coverage.
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_PAGETRANSITION :: ProjectsLocationsAgentsTestCasesCalculateCoverageType
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_PAGETRANSITION = ProjectsLocationsAgentsTestCasesCalculateCoverageType "PAGE_TRANSITION"
+
+-- | Transition route group coverage.
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_TRANSITIONROUTEGROUP :: ProjectsLocationsAgentsTestCasesCalculateCoverageType
+pattern ProjectsLocationsAgentsTestCasesCalculateCoverageType_TRANSITIONROUTEGROUP = ProjectsLocationsAgentsTestCasesCalculateCoverageType "TRANSITION_ROUTE_GROUP"
+
+{-# COMPLETE
+  ProjectsLocationsAgentsTestCasesCalculateCoverageType_COVERAGETYPEUNSPECIFIED,
+  ProjectsLocationsAgentsTestCasesCalculateCoverageType_Intent,
+  ProjectsLocationsAgentsTestCasesCalculateCoverageType_PAGETRANSITION,
+  ProjectsLocationsAgentsTestCasesCalculateCoverageType_TRANSITIONROUTEGROUP,
+  ProjectsLocationsAgentsTestCasesCalculateCoverageType
+  #-}
+
+-- | Specifies whether response should include all fields or just the metadata.
+newtype ProjectsLocationsAgentsTestCasesListView = ProjectsLocationsAgentsTestCasesListView {fromProjectsLocationsAgentsTestCasesListView :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The default \/ unset value. The API will default to the BASIC view.
+pattern ProjectsLocationsAgentsTestCasesListView_TESTCASEVIEWUNSPECIFIED :: ProjectsLocationsAgentsTestCasesListView
+pattern ProjectsLocationsAgentsTestCasesListView_TESTCASEVIEWUNSPECIFIED = ProjectsLocationsAgentsTestCasesListView "TEST_CASE_VIEW_UNSPECIFIED"
+
+-- | Include basic metadata about the test case, but not the conversation turns. This is the default value.
+pattern ProjectsLocationsAgentsTestCasesListView_Basic :: ProjectsLocationsAgentsTestCasesListView
+pattern ProjectsLocationsAgentsTestCasesListView_Basic = ProjectsLocationsAgentsTestCasesListView "BASIC"
+
+-- | Include everything.
+pattern ProjectsLocationsAgentsTestCasesListView_Full :: ProjectsLocationsAgentsTestCasesListView
+pattern ProjectsLocationsAgentsTestCasesListView_Full = ProjectsLocationsAgentsTestCasesListView "FULL"
+
+{-# COMPLETE
+  ProjectsLocationsAgentsTestCasesListView_TESTCASEVIEWUNSPECIFIED,
+  ProjectsLocationsAgentsTestCasesListView_Basic,
+  ProjectsLocationsAgentsTestCasesListView_Full,
+  ProjectsLocationsAgentsTestCasesListView
+  #-}
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/Get.hs
@@ -0,0 +1,117 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Changelogs.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 the specified Changelog.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.changelogs.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsChangelogsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsChangelogsGet (..),
+    newDialogFlowProjectsLocationsAgentsChangelogsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.changelogs.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsChangelogsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsChangelogsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Changelog
+
+-- | Retrieves the specified Changelog.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsChangelogsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsChangelogsGet = DialogFlowProjectsLocationsAgentsChangelogsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the changelog to get. Format: @projects\/\/locations\/\/agents\/\/changelogs\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsChangelogsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsChangelogsGet ::
+  -- |  Required. The name of the changelog to get. Format: @projects\/\/locations\/\/agents\/\/changelogs\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsChangelogsGet
+newDialogFlowProjectsLocationsAgentsChangelogsGet name =
+  DialogFlowProjectsLocationsAgentsChangelogsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsChangelogsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsChangelogsGet =
+      GoogleCloudDialogflowCxV3Changelog
+  type
+    Scopes DialogFlowProjectsLocationsAgentsChangelogsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsChangelogsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsChangelogsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Changelogs/List.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Changelogs.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)
+--
+-- Returns the list of Changelogs.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.changelogs.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsChangelogsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsChangelogsList (..),
+    newDialogFlowProjectsLocationsAgentsChangelogsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.changelogs.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsChangelogsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsChangelogsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "changelogs"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "filter" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListChangelogsResponse
+
+-- | Returns the list of Changelogs.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsChangelogsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsChangelogsList = DialogFlowProjectsLocationsAgentsChangelogsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The filter string. Supports filter by user/email, resource, type and create/time. Some examples: 1. By user email: user/email = \"someone\@google.com\" 2. By resource name: resource = \"projects\/123\/locations\/global\/agents\/456\/flows\/789\" 3. By resource display name: display/name = \"my agent\" 4. By action: action = \"Create\" 5. By type: type = \"flows\" 6. By create time. Currently predicates on @create_time@ and @create_time_epoch_seconds@ are supported: create/time/epoch/seconds > 1551790877 AND create/time \<= 2017-01-15T01:30:15.01Z 7. Combination of above filters: resource = \"projects\/123\/locations\/global\/agents\/456\/flows\/789\" AND user/email = \"someone\@google.com\" AND create/time \<= 2017-01-15T01:30:15.01Z
+    filter :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent containing the changelogs. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsChangelogsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsChangelogsList ::
+  -- |  Required. The agent containing the changelogs. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsChangelogsList
+newDialogFlowProjectsLocationsAgentsChangelogsList parent =
+  DialogFlowProjectsLocationsAgentsChangelogsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      filter = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsChangelogsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsChangelogsList =
+      GoogleCloudDialogflowCxV3ListChangelogsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsChangelogsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsChangelogsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      filter
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsChangelogsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Create.hs
@@ -0,0 +1,121 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Create
+-- 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 an agent in the specified location. Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "agents"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Agent
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Agent
+
+-- | Creates an agent in the specified location. Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsCreate = DialogFlowProjectsLocationsAgentsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The location to create a agent for. Format: @projects\/\/locations\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Agent,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsCreate ::
+  -- |  Required. The location to create a agent for. Format: @projects\/\/locations\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Agent ->
+  DialogFlowProjectsLocationsAgentsCreate
+newDialogFlowProjectsLocationsAgentsCreate parent payload =
+  DialogFlowProjectsLocationsAgentsCreate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsCreate where
+  type
+    Rs DialogFlowProjectsLocationsAgentsCreate =
+      GoogleCloudDialogflowCxV3Agent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Delete.hs
@@ -0,0 +1,113 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.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)
+--
+-- Deletes the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsDelete = DialogFlowProjectsLocationsAgentsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the agent to delete. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsDelete ::
+  -- |  Required. The name of the agent to delete. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsDelete
+newDialogFlowProjectsLocationsAgentsDelete name =
+  DialogFlowProjectsLocationsAgentsDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsDelete where
+  type
+    Rs DialogFlowProjectsLocationsAgentsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Create.hs
@@ -0,0 +1,134 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.EntityTypes.Create
+-- 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 an entity type in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3EntityType
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3EntityType
+
+-- | Creates an entity type in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesCreate = DialogFlowProjectsLocationsAgentsEntityTypesCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @entity_type@: * @EntityType.entities.value@ * @EntityType.entities.synonyms@ * @EntityType.excluded_phrases.value@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create a entity type for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3EntityType,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesCreate ::
+  -- |  Required. The agent to create a entity type for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3EntityType ->
+  DialogFlowProjectsLocationsAgentsEntityTypesCreate
+newDialogFlowProjectsLocationsAgentsEntityTypesCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEntityTypesCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesCreate =
+      GoogleCloudDialogflowCxV3EntityType
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEntityTypesCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEntityTypesCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Delete.hs
@@ -0,0 +1,124 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.EntityTypes.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)
+--
+-- Deletes the specified entity type. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified entity type. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesDelete = DialogFlowProjectsLocationsAgentsEntityTypesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for entity type not being used. For entity types that are used by intents or pages: * If @force@ is set to false, an error will be returned with message indicating the referencing resources. * If @force@ is set to true, Dialogflow will remove the entity type, as well as any references to the entity type (i.e. Page parameter of the entity type will be changed to \'\@sys.any\' and intent parameter of the entity type will be removed).
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the entity type to delete. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesDelete ::
+  -- |  Required. The name of the entity type to delete. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEntityTypesDelete
+newDialogFlowProjectsLocationsAgentsEntityTypesDelete name =
+  DialogFlowProjectsLocationsAgentsEntityTypesDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      force = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEntityTypesDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        force
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEntityTypesDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Export.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Export.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Export.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.EntityTypes.Export
+-- 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)
+--
+-- Exports the selected entity types.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.export@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Export
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesExportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesExport (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesExport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.export@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesExport' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesExportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes:export"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Exports the selected entity types.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesExport' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesExport = DialogFlowProjectsLocationsAgentsEntityTypesExport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the parent agent to export entity types. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ExportEntityTypesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesExport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesExport ::
+  -- |  Required. The name of the parent agent to export entity types. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ExportEntityTypesRequest ->
+  DialogFlowProjectsLocationsAgentsEntityTypesExport
+newDialogFlowProjectsLocationsAgentsEntityTypesExport
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEntityTypesExport
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesExport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesExport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesExport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEntityTypesExport {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEntityTypesExportResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/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.DialogFlow.Projects.Locations.Agents.EntityTypes.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 the specified entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3EntityType
+
+-- | Retrieves the specified entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesGet = DialogFlowProjectsLocationsAgentsEntityTypesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the entity type for. The following fields are language dependent: * @EntityType.entities.value@ * @EntityType.entities.synonyms@ * @EntityType.excluded_phrases.value@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the entity type. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesGet ::
+  -- |  Required. The name of the entity type. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEntityTypesGet
+newDialogFlowProjectsLocationsAgentsEntityTypesGet name =
+  DialogFlowProjectsLocationsAgentsEntityTypesGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesGet =
+      GoogleCloudDialogflowCxV3EntityType
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsEntityTypesGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsEntityTypesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Import.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Import.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Import.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.EntityTypes.Import
+-- 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)
+--
+-- Imports the specified entitytypes into the agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.import@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Import
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesImportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesImport (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesImport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.import@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesImport' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesImportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes:import"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Imports the specified entitytypes into the agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesImport' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesImport = DialogFlowProjectsLocationsAgentsEntityTypesImport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to import the entity types into. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ImportEntityTypesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesImport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesImport ::
+  -- |  Required. The agent to import the entity types into. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ImportEntityTypesRequest ->
+  DialogFlowProjectsLocationsAgentsEntityTypesImport
+newDialogFlowProjectsLocationsAgentsEntityTypesImport
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEntityTypesImport
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesImport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesImport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesImport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEntityTypesImport {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEntityTypesImportResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/List.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.DialogFlow.Projects.Locations.Agents.EntityTypes.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)
+--
+-- Returns the list of all entity types in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListEntityTypesResponse
+
+-- | Returns the list of all entity types in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesList = DialogFlowProjectsLocationsAgentsEntityTypesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list entity types for. The following fields are language dependent: * @EntityType.entities.value@ * @EntityType.entities.synonyms@ * @EntityType.excluded_phrases.value@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to list all entity types for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesList ::
+  -- |  Required. The agent to list all entity types for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEntityTypesList
+newDialogFlowProjectsLocationsAgentsEntityTypesList parent =
+  DialogFlowProjectsLocationsAgentsEntityTypesList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesList =
+      GoogleCloudDialogflowCxV3ListEntityTypesResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsEntityTypesList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsEntityTypesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/EntityTypes/Patch.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.EntityTypes.Patch
+-- 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 the specified entity type. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.entityTypes.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEntityTypesPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsEntityTypesPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.entityTypes.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEntityTypesPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsEntityTypesPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3EntityType
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3EntityType
+
+-- | Updates the specified entity type. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEntityTypesPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsEntityTypesPatch = DialogFlowProjectsLocationsAgentsEntityTypesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @entity_type@: * @EntityType.entities.value@ * @EntityType.entities.synonyms@ * @EntityType.excluded_phrases.value@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3EntityType,
+    -- | The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEntityTypesPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEntityTypesPatch ::
+  -- |  The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: @projects\/\/locations\/\/agents\/\/entityTypes\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3EntityType ->
+  DialogFlowProjectsLocationsAgentsEntityTypesPatch
+newDialogFlowProjectsLocationsAgentsEntityTypesPatch name payload =
+  DialogFlowProjectsLocationsAgentsEntityTypesPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEntityTypesPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEntityTypesPatch =
+      GoogleCloudDialogflowCxV3EntityType
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEntityTypesPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsEntityTypesPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsEntityTypesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/ContinuousTestResults/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/ContinuousTestResults/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/ContinuousTestResults/List.hs
@@ -0,0 +1,138 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.ContinuousTestResults.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)
+--
+-- Fetches a list of continuous test results for a given environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.continuousTestResults.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.ContinuousTestResults.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.continuousTestResults.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "continuousTestResults"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+
+-- | Fetches a list of continuous test results for a given environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList = DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The environment to list results for. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList ::
+  -- |  Required. The environment to list results for. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList
+newDialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList
+  parent =
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType =
+          Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList =
+      GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsContinuousTestResultsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Create.hs
@@ -0,0 +1,129 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Create
+-- 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 an Environment in the specified Agent. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: Environment
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "environments"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Environment
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Creates an Environment in the specified Agent. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: Environment
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsCreate = DialogFlowProjectsLocationsAgentsEnvironmentsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The Agent to create an Environment for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Environment,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsCreate ::
+  -- |  Required. The Agent to create an Environment for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Environment ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsCreate
+newDialogFlowProjectsLocationsAgentsEnvironmentsCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsCreate =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Delete.hs
@@ -0,0 +1,119 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.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)
+--
+-- Deletes the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsDelete = DialogFlowProjectsLocationsAgentsEnvironmentsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Environment to delete. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsDelete ::
+  -- |  Required. The name of the Environment to delete. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsDelete
+newDialogFlowProjectsLocationsAgentsEnvironmentsDelete name =
+  DialogFlowProjectsLocationsAgentsEnvironmentsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/DeployFlow.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/DeployFlow.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/DeployFlow.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.DeployFlow
+-- 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)
+--
+-- Deploys a flow to the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: DeployFlowMetadata - @response@: DeployFlowResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.deployFlow@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.DeployFlow
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlowResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.deployFlow@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlowResource =
+  "v3"
+    Core.:> Core.CaptureMode "environment" "deployFlow" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DeployFlowRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Deploys a flow to the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: DeployFlowMetadata - @response@: DeployFlowResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow = DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The environment to deploy the flow to. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    environment :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3DeployFlowRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow ::
+  -- |  Required. The environment to deploy the flow to. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'environment'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3DeployFlowRequest ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow
+  environment
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        environment = environment,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlow {..} =
+      go
+        environment
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsDeployFlowResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/Get.hs
@@ -0,0 +1,120 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Deployments.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 the specified Deployment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.deployments.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.deployments.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Deployment
+
+-- | Retrieves the specified Deployment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet = DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Deployment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/deployments\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet ::
+  -- |  Required. The name of the Deployment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/deployments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet name =
+  DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet =
+      GoogleCloudDialogflowCxV3Deployment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Deployments/List.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Deployments.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)
+--
+-- Returns the list of all deployments in the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.deployments.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.deployments.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "deployments"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListDeploymentsResponse
+
+-- | Returns the list of all deployments in the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList = DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20 and at most 100.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The Environment to list all environments for. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList ::
+  -- |  Required. The Environment to list all environments for. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList
+newDialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList
+  parent =
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList =
+      GoogleCloudDialogflowCxV3ListDeploymentsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsDeploymentsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Create.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Create
+-- 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 an Experiment in the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "experiments"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+
+-- | Creates an Experiment in the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The Agent to create an Environment for. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Experiment,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate ::
+  -- |  Required. The Agent to create an Environment for. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Experiment ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate =
+      GoogleCloudDialogflowCxV3Experiment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Delete.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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.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)
+--
+-- Deletes the specified Experiment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified Experiment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Environment to delete. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete ::
+  -- |  Required. The name of the Environment to delete. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete
+  name =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Get.hs
@@ -0,0 +1,120 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.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 the specified Experiment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+
+-- | Retrieves the specified Experiment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Environment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet ::
+  -- |  Required. The name of the Environment. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet name =
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet =
+      GoogleCloudDialogflowCxV3Experiment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/List.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.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)
+--
+-- Returns the list of all experiments in the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "experiments"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListExperimentsResponse
+
+-- | Returns the list of all experiments in the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20 and at most 100.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The Environment to list all environments for. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList ::
+  -- |  Required. The Environment to list all environments for. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList
+  parent =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList =
+      GoogleCloudDialogflowCxV3ListExperimentsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Patch.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Patch
+-- 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 the specified Experiment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+
+-- | Updates the specified Experiment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the experiment. Format: projects\/\/locations\/\/agents\/\/environments\/\/experiments\/.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Experiment,
+    -- | Required. The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch ::
+  -- |  The name of the experiment. Format: projects\/\/locations\/\/agents\/\/environments\/\/experiments\/. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Experiment ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch =
+      GoogleCloudDialogflowCxV3Experiment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Start.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Start.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Start.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.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)
+--
+-- Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.start@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Start
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStartResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.start@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStartResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "start" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3StartExperimentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+
+-- | Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Resource name of the experiment to start. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3StartExperimentRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart ::
+  -- |  Required. Resource name of the experiment to start. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3StartExperimentRequest ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart =
+      GoogleCloudDialogflowCxV3Experiment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStart {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStartResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Stop.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Stop.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Experiments/Stop.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Experiments.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 the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.experiments.stop@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Stop
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStopResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.experiments.stop@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStopResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "stop" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3StopExperimentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Experiment
+
+-- | Stops the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop = DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Resource name of the experiment to stop. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3StopExperimentRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop ::
+  -- |  Required. Resource name of the experiment to stop. Format: @projects\/\/locations\/\/agents\/\/environments\/\/experiments\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3StopExperimentRequest ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop
+newDialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop =
+      GoogleCloudDialogflowCxV3Experiment
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStop {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsExperimentsStopResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Get.hs
@@ -0,0 +1,118 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.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 the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Environment
+
+-- | Retrieves the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsGet = DialogFlowProjectsLocationsAgentsEnvironmentsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsGet ::
+  -- |  Required. The name of the Environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsGet
+newDialogFlowProjectsLocationsAgentsEnvironmentsGet name =
+  DialogFlowProjectsLocationsAgentsEnvironmentsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsGet =
+      GoogleCloudDialogflowCxV3Environment
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsEnvironmentsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsEnvironmentsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/List.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.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)
+--
+-- Returns the list of all environments in the specified Agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "environments"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+
+-- | Returns the list of all environments in the specified Agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsList = DialogFlowProjectsLocationsAgentsEnvironmentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20 and at most 100.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The Agent to list all environments for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsList ::
+  -- |  Required. The Agent to list all environments for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsList
+newDialogFlowProjectsLocationsAgentsEnvironmentsList parent =
+  DialogFlowProjectsLocationsAgentsEnvironmentsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsList =
+      GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsEnvironmentsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsEnvironmentsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/LookupEnvironmentHistory.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/LookupEnvironmentHistory.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/LookupEnvironmentHistory.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.DialogFlow.Projects.Locations.Agents.Environments.LookupEnvironmentHistory
+-- 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)
+--
+-- Looks up the history of the specified Environment.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.LookupEnvironmentHistory
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "lookupEnvironmentHistory" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+
+-- | Looks up the history of the specified Environment.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory = DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Resource name of the environment to look up the history for. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: Core.Text,
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory ::
+  -- |  Required. Resource name of the environment to look up the history for. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory
+newDialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory
+  name =
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory =
+      GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistory {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Patch.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Patch
+-- 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 the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: Environment
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Environment
+    Core.:> Core.Patch '[Core.JSON] GoogleLongrunningOperation
+
+-- | Updates the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: Environment
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsPatch = DialogFlowProjectsLocationsAgentsEnvironmentsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Environment,
+    -- | Required. The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsPatch ::
+  -- |  The name of the environment. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Environment ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsPatch
+newDialogFlowProjectsLocationsAgentsEnvironmentsPatch name payload =
+  DialogFlowProjectsLocationsAgentsEnvironmentsPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsEnvironmentsPatch =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsEnvironmentsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/RunContinuousTest.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/RunContinuousTest.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/RunContinuousTest.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.RunContinuousTest
+-- 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)
+--
+-- Kicks off a continuous test under the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: RunContinuousTestMetadata - @response@: RunContinuousTestResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.runContinuousTest@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.RunContinuousTest
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTestResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.runContinuousTest@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTestResource =
+  "v3"
+    Core.:> Core.CaptureMode "environment" "runContinuousTest" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3RunContinuousTestRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Kicks off a continuous test under the specified Environment. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: RunContinuousTestMetadata - @response@: RunContinuousTestResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest = DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Format: @projects\/\/locations\/\/agents\/\/environments\/@.
+    environment :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3RunContinuousTestRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest ::
+  -- |  Required. Format: @projects\/\/locations\/\/agents\/\/environments\/@. See 'environment'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3RunContinuousTestRequest ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest
+newDialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest
+  environment
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        environment = environment,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest =
+      GoogleLongrunningOperation
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTest {..} =
+      go
+        environment
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsRunContinuousTestResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/DetectIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/DetectIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/DetectIntent.hs
@@ -0,0 +1,134 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.DetectIntent
+-- 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)
+--
+-- Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.detectIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.DetectIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.detectIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "detectIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentResponse
+
+-- | Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3DetectIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3DetectIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent =
+      GoogleCloudDialogflowCxV3DetectIntentResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsDetectIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Create.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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Create
+-- 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 session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3SessionEntityType
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Creates a session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The session to create a session entity type for. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SessionEntityType,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate ::
+  -- |  Required. The session to create a session entity type for. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SessionEntityType ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType =
+          Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Delete.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.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)
+--
+-- Deletes the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the session entity type to delete. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete ::
+  -- |  Required. The name of the session entity type to delete. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete
+  name =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        uploadType =
+          Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Get.hs
@@ -0,0 +1,123 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.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 the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Retrieves the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet ::
+  -- |  Required. The name of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet
+  name =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/List.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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.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)
+--
+-- Returns the list of all session entity types in the specified session.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+
+-- | Returns the list of all session entity types in the specified session.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The session to list all session entity types from. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList ::
+  -- |  Required. The session to list all session entity types from. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList
+  parent =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList =
+      GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/EntityTypes/Patch.hs
@@ -0,0 +1,139 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Patch
+-- 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 the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3SessionEntityType
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Updates the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SessionEntityType,
+    -- | The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch ::
+  -- |  Required. The unique identifier of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SessionEntityType ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/FulfillIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/FulfillIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/FulfillIntent.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.FulfillIntent
+-- 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)
+--
+-- Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.fulfillIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.FulfillIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.fulfillIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "fulfillIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3FulfillIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3FulfillIntentResponse
+
+-- | Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3FulfillIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3FulfillIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent =
+      GoogleCloudDialogflowCxV3FulfillIntentResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/MatchIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/MatchIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/MatchIntent.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.MatchIntent
+-- 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)
+--
+-- Returns preliminary intent match results, doesn\'t change the session status.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.matchIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.MatchIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.matchIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "matchIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3MatchIntentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3MatchIntentResponse
+
+-- | Returns preliminary intent match results, doesn\'t change the session status.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3MatchIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3MatchIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent =
+      GoogleCloudDialogflowCxV3MatchIntentResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsMatchIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/ServerStreamingDetectIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/ServerStreamingDetectIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Environments/Sessions/ServerStreamingDetectIntent.hs
@@ -0,0 +1,140 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Environments.Sessions.ServerStreamingDetectIntent
+-- 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)
+--
+-- Processes a natural language query and returns structured, actionable data as a result through server-side streaming. Server-side streaming allows Dialogflow to send <https://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#partial-response partial responses> earlier in a single request.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.environments.sessions.serverStreamingDetectIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.ServerStreamingDetectIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.environments.sessions.serverStreamingDetectIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "serverStreamingDetectIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentResponse
+
+-- | Processes a natural language query and returns structured, actionable data as a result through server-side streaming. Server-side streaming allows Dialogflow to send <https://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#partial-response partial responses> earlier in a single request.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent = DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3DetectIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3DetectIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent
+newDialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken =
+          Core.Nothing,
+        callback =
+          Core.Nothing,
+        payload =
+          payload,
+        session =
+          session,
+        uploadType =
+          Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent =
+      GoogleCloudDialogflowCxV3DetectIntentResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsEnvironmentsSessionsServerStreamingDetectIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Export.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Export.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Export.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.DialogFlow.Projects.Locations.Agents.Export
+-- 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)
+--
+-- Exports the specified agent to a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ExportAgentResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.export@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Export
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsExportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsExport (..),
+    newDialogFlowProjectsLocationsAgentsExport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.export@ method which the
+-- 'DialogFlowProjectsLocationsAgentsExport' request conforms to.
+type DialogFlowProjectsLocationsAgentsExportResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "export" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ExportAgentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Exports the specified agent to a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ExportAgentResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsExport' smart constructor.
+data DialogFlowProjectsLocationsAgentsExport = DialogFlowProjectsLocationsAgentsExport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the agent to export. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ExportAgentRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsExport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsExport ::
+  -- |  Required. The name of the agent to export. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ExportAgentRequest ->
+  DialogFlowProjectsLocationsAgentsExport
+newDialogFlowProjectsLocationsAgentsExport name payload =
+  DialogFlowProjectsLocationsAgentsExport
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsExport where
+  type
+    Rs DialogFlowProjectsLocationsAgentsExport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsExport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsExport {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsExportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Create.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Create
+-- 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 flow in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "flows"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Flow
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Flow
+
+-- | Creates a flow in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsCreate = DialogFlowProjectsLocationsAgentsFlowsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @flow@: * @Flow.event_handlers.trigger_fulfillment.messages@ * @Flow.event_handlers.trigger_fulfillment.conditional_cases@ * @Flow.transition_routes.trigger_fulfillment.messages@ * @Flow.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create a flow for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Flow,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsCreate ::
+  -- |  Required. The agent to create a flow for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Flow ->
+  DialogFlowProjectsLocationsAgentsFlowsCreate
+newDialogFlowProjectsLocationsAgentsFlowsCreate parent payload =
+  DialogFlowProjectsLocationsAgentsFlowsCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsCreate =
+      GoogleCloudDialogflowCxV3Flow
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Delete.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.DialogFlow.Projects.Locations.Agents.Flows.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)
+--
+-- Deletes a specified flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes a specified flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsDelete = DialogFlowProjectsLocationsAgentsFlowsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for flows with no incoming transitions. For flows with incoming transitions: * If @force@ is set to false, an error will be returned with message indicating the incoming transitions. * If @force@ is set to true, Dialogflow will remove the flow, as well as any transitions to the flow (i.e. Target flow in event handlers or Target flow in transition routes that point to this flow will be cleared).
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the flow to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsDelete ::
+  -- |  Required. The name of the flow to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsDelete
+newDialogFlowProjectsLocationsAgentsFlowsDelete name =
+  DialogFlowProjectsLocationsAgentsFlowsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      force = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      force
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Export.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Export.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Export.hs
@@ -0,0 +1,126 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Export
+-- 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)
+--
+-- Exports the specified flow to a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ExportFlowResponse Note that resources (e.g. intents, entities, webhooks) that the flow references will also be exported.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.export@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Export
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsExportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsExport (..),
+    newDialogFlowProjectsLocationsAgentsFlowsExport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.export@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsExport' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsExportResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "export" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ExportFlowRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Exports the specified flow to a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ExportFlowResponse Note that resources (e.g. intents, entities, webhooks) that the flow references will also be exported.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsExport' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsExport = DialogFlowProjectsLocationsAgentsFlowsExport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the flow to export. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ExportFlowRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsExport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsExport ::
+  -- |  Required. The name of the flow to export. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ExportFlowRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsExport
+newDialogFlowProjectsLocationsAgentsFlowsExport name payload =
+  DialogFlowProjectsLocationsAgentsFlowsExport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsExport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsExport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsExport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsExport {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsExportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Get.hs
@@ -0,0 +1,121 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.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 the specified flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Flow
+
+-- | Retrieves the specified flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsGet = DialogFlowProjectsLocationsAgentsFlowsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the flow for. The following fields are language dependent: * @Flow.event_handlers.trigger_fulfillment.messages@ * @Flow.event_handlers.trigger_fulfillment.conditional_cases@ * @Flow.transition_routes.trigger_fulfillment.messages@ * @Flow.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the flow to get. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsGet ::
+  -- |  Required. The name of the flow to get. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsGet
+newDialogFlowProjectsLocationsAgentsFlowsGet name =
+  DialogFlowProjectsLocationsAgentsFlowsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsGet =
+      GoogleCloudDialogflowCxV3Flow
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/GetValidationResult.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/GetValidationResult.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/GetValidationResult.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.GetValidationResult
+-- 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)
+--
+-- Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.getValidationResult@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.GetValidationResult
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResultResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResult (..),
+    newDialogFlowProjectsLocationsAgentsFlowsGetValidationResult,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.getValidationResult@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsGetValidationResult' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsGetValidationResultResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3FlowValidationResult
+
+-- | Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsGetValidationResult' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsGetValidationResult = DialogFlowProjectsLocationsAgentsFlowsGetValidationResult
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | If not specified, the agent\'s default language is used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The flow name. Format: @projects\/\/locations\/\/agents\/\/flows\/\/validationResult@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsGetValidationResult' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsGetValidationResult ::
+  -- |  Required. The flow name. Format: @projects\/\/locations\/\/agents\/\/flows\/\/validationResult@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsGetValidationResult
+newDialogFlowProjectsLocationsAgentsFlowsGetValidationResult name =
+  DialogFlowProjectsLocationsAgentsFlowsGetValidationResult
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResult
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsGetValidationResult =
+      GoogleCloudDialogflowCxV3FlowValidationResult
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsGetValidationResult =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsGetValidationResult {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsGetValidationResultResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Import.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Import.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Import.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Import
+-- 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)
+--
+-- Imports the specified flow to the specified agent from a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ImportFlowResponse Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.import@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Import
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsImportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsImport (..),
+    newDialogFlowProjectsLocationsAgentsFlowsImport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.import@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsImport' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsImportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "flows:import"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ImportFlowRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Imports the specified flow to the specified agent from a binary file. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: ImportFlowResponse Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsImport' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsImport = DialogFlowProjectsLocationsAgentsFlowsImport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to import the flow into. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ImportFlowRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsImport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsImport ::
+  -- |  Required. The agent to import the flow into. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ImportFlowRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsImport
+newDialogFlowProjectsLocationsAgentsFlowsImport parent payload =
+  DialogFlowProjectsLocationsAgentsFlowsImport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsImport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsImport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsImport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsImport {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsImportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/List.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.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)
+--
+-- Returns the list of all flows in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "flows"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListFlowsResponse
+
+-- | Returns the list of all flows in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsList = DialogFlowProjectsLocationsAgentsFlowsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list flows for. The following fields are language dependent: * @Flow.event_handlers.trigger_fulfillment.messages@ * @Flow.event_handlers.trigger_fulfillment.conditional_cases@ * @Flow.transition_routes.trigger_fulfillment.messages@ * @Flow.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent containing the flows. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsList ::
+  -- |  Required. The agent containing the flows. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsList
+newDialogFlowProjectsLocationsAgentsFlowsList parent =
+  DialogFlowProjectsLocationsAgentsFlowsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsList =
+      GoogleCloudDialogflowCxV3ListFlowsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Create.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Pages.Create
+-- 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 page in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.pages.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPagesCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPagesCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.pages.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPagesCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPagesCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "pages"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Page
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Page
+
+-- | Creates a page in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPagesCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPagesCreate = DialogFlowProjectsLocationsAgentsFlowsPagesCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @page@: * @Page.entry_fulfillment.messages@ * @Page.entry_fulfillment.conditional_cases@ * @Page.event_handlers.trigger_fulfillment.messages@ * @Page.event_handlers.trigger_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.messages@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases@ * @Page.transition_routes.trigger_fulfillment.messages@ * @Page.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The flow to create a page for. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Page,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPagesCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPagesCreate ::
+  -- |  Required. The flow to create a page for. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Page ->
+  DialogFlowProjectsLocationsAgentsFlowsPagesCreate
+newDialogFlowProjectsLocationsAgentsFlowsPagesCreate parent payload =
+  DialogFlowProjectsLocationsAgentsFlowsPagesCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPagesCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPagesCreate =
+      GoogleCloudDialogflowCxV3Page
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPagesCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPagesCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsFlowsPagesCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Delete.hs
@@ -0,0 +1,123 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Pages.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)
+--
+-- Deletes the specified page. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.pages.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPagesDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPagesDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.pages.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPagesDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPagesDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified page. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPagesDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPagesDelete = DialogFlowProjectsLocationsAgentsFlowsPagesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for pages with no incoming transitions. For pages with incoming transitions: * If @force@ is set to false, an error will be returned with message indicating the incoming transitions. * If @force@ is set to true, Dialogflow will remove the page, as well as any transitions to the page (i.e. Target page in event handlers or Target page in transition routes that point to this page will be cleared).
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the page to delete. Format: @projects\/\/locations\/\/agents\/\/Flows\/\/pages\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPagesDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPagesDelete ::
+  -- |  Required. The name of the page to delete. Format: @projects\/\/locations\/\/agents\/\/Flows\/\/pages\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsPagesDelete
+newDialogFlowProjectsLocationsAgentsFlowsPagesDelete name =
+  DialogFlowProjectsLocationsAgentsFlowsPagesDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      force = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPagesDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPagesDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPagesDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPagesDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      force
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsFlowsPagesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/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.DialogFlow.Projects.Locations.Agents.Flows.Pages.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 the specified page.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.pages.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPagesGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPagesGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.pages.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPagesGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPagesGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Page
+
+-- | Retrieves the specified page.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPagesGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPagesGet = DialogFlowProjectsLocationsAgentsFlowsPagesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the page for. The following fields are language dependent: * @Page.entry_fulfillment.messages@ * @Page.entry_fulfillment.conditional_cases@ * @Page.event_handlers.trigger_fulfillment.messages@ * @Page.event_handlers.trigger_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.messages@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases@ * @Page.transition_routes.trigger_fulfillment.messages@ * @Page.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the page. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPagesGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPagesGet ::
+  -- |  Required. The name of the page. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsPagesGet
+newDialogFlowProjectsLocationsAgentsFlowsPagesGet name =
+  DialogFlowProjectsLocationsAgentsFlowsPagesGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPagesGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPagesGet =
+      GoogleCloudDialogflowCxV3Page
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPagesGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPagesGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsPagesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/List.hs
@@ -0,0 +1,133 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Pages.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)
+--
+-- Returns the list of all pages in the specified flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.pages.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPagesListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPagesList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.pages.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPagesList' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPagesListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "pages"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListPagesResponse
+
+-- | Returns the list of all pages in the specified flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPagesList' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPagesList = DialogFlowProjectsLocationsAgentsFlowsPagesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list pages for. The following fields are language dependent: * @Page.entry_fulfillment.messages@ * @Page.entry_fulfillment.conditional_cases@ * @Page.event_handlers.trigger_fulfillment.messages@ * @Page.event_handlers.trigger_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.messages@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases@ * @Page.transition_routes.trigger_fulfillment.messages@ * @Page.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The flow to list all pages for. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPagesList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPagesList ::
+  -- |  Required. The flow to list all pages for. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsPagesList
+newDialogFlowProjectsLocationsAgentsFlowsPagesList parent =
+  DialogFlowProjectsLocationsAgentsFlowsPagesList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPagesList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPagesList =
+      GoogleCloudDialogflowCxV3ListPagesResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPagesList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPagesList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsPagesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Pages/Patch.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Pages.Patch
+-- 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 the specified page. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.pages.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPagesPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPagesPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPagesPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.pages.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPagesPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPagesPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Page
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Page
+
+-- | Updates the specified page. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPagesPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPagesPatch = DialogFlowProjectsLocationsAgentsFlowsPagesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @page@: * @Page.entry_fulfillment.messages@ * @Page.entry_fulfillment.conditional_cases@ * @Page.event_handlers.trigger_fulfillment.messages@ * @Page.event_handlers.trigger_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages@ * @Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.messages@ * @Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases@ * @Page.transition_routes.trigger_fulfillment.messages@ * @Page.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Page,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPagesPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPagesPatch ::
+  -- |  The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/pages\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Page ->
+  DialogFlowProjectsLocationsAgentsFlowsPagesPatch
+newDialogFlowProjectsLocationsAgentsFlowsPagesPatch name payload =
+  DialogFlowProjectsLocationsAgentsFlowsPagesPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPagesPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPagesPatch =
+      GoogleCloudDialogflowCxV3Page
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPagesPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPagesPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsFlowsPagesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Patch.hs
@@ -0,0 +1,133 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Patch
+-- 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 the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Flow
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Flow
+
+-- | Updates the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsPatch = DialogFlowProjectsLocationsAgentsFlowsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @flow@: * @Flow.event_handlers.trigger_fulfillment.messages@ * @Flow.event_handlers.trigger_fulfillment.conditional_cases@ * @Flow.transition_routes.trigger_fulfillment.messages@ * @Flow.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the flow. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Flow,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsPatch ::
+  -- |  The unique identifier of the flow. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Flow ->
+  DialogFlowProjectsLocationsAgentsFlowsPatch
+newDialogFlowProjectsLocationsAgentsFlowsPatch name payload =
+  DialogFlowProjectsLocationsAgentsFlowsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsPatch =
+      GoogleCloudDialogflowCxV3Flow
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Train.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Train.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Train.hs
@@ -0,0 +1,123 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Train
+-- 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)
+--
+-- Trains the specified flow. Note that only the flow in \'draft\' environment is trained. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message> Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.train@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Train
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTrainResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTrain (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTrain,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.train@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTrain' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTrainResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "train" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3TrainFlowRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Trains the specified flow. Note that only the flow in \'draft\' environment is trained. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message> Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTrain' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTrain = DialogFlowProjectsLocationsAgentsFlowsTrain
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The flow to train. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TrainFlowRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTrain' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTrain ::
+  -- |  Required. The flow to train. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TrainFlowRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsTrain
+newDialogFlowProjectsLocationsAgentsFlowsTrain name payload =
+  DialogFlowProjectsLocationsAgentsFlowsTrain
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTrain
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsTrain =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsTrain =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsTrain {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsTrainResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Create.hs
@@ -0,0 +1,140 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Create
+-- 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 an TransitionRouteGroup in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "transitionRouteGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Creates an TransitionRouteGroup in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate = DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @TransitionRouteGroup@: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The flow to create an TransitionRouteGroup for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or @projects\/\/locations\/\/agents\/@ for agent-level groups.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TransitionRouteGroup,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate ::
+  -- |  Required. The flow to create an TransitionRouteGroup for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or @projects\/\/locations\/\/agents\/@ for agent-level groups. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TransitionRouteGroup ->
+  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Delete.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.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)
+--
+-- Deletes the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete = DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for transition route group that no page is using. If the transition route group is referenced by any page: * If @force@ is set to false, an error will be returned with message indicating pages that reference the transition route group. * If @force@ is set to true, Dialogflow will remove the transition route group, as well as any reference to it.
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the TransitionRouteGroup to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete ::
+  -- |  Required. The name of the TransitionRouteGroup to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete
+  name =
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        force = Core.Nothing,
+        name = name,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        force
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Get.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.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 the specified TransitionRouteGroup.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Retrieves the specified TransitionRouteGroup.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet = DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the transition route group for. The following fields are language dependent: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the TransitionRouteGroup. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet ::
+  -- |  Required. The name of the TransitionRouteGroup. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet
+  name =
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        name = name,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/List.hs
@@ -0,0 +1,140 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.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)
+--
+-- Returns the list of all transition route groups in the specified flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "transitionRouteGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+
+-- | Returns the list of all transition route groups in the specified flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList = DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list transition route groups for. The following fields are language dependent: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The flow to list all transition route groups for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or \`projects\/\/locations\/\/agents\/.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList ::
+  -- |  Required. The flow to list all transition route groups for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or \`projects\/\/locations\/\/agents\/. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList
+  parent =
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList =
+      GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        languageCode
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/TransitionRouteGroups/Patch.hs
@@ -0,0 +1,144 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Patch
+-- 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 the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+    Core.:> Core.Patch
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Updates the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch = DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @TransitionRouteGroup@: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ .
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TransitionRouteGroup,
+    -- | The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch ::
+  -- |  The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ . See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TransitionRouteGroup ->
+  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch
+newDialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Validate.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Validate.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Validate.hs
@@ -0,0 +1,128 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Validate
+-- 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)
+--
+-- Validates the specified flow and creates or updates validation results. Please call this API after the training is completed to get the complete validation results.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.validate@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Validate
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsValidateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsValidate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsValidate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.validate@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsValidate' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsValidateResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "validate" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ValidateFlowRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3FlowValidationResult
+
+-- | Validates the specified flow and creates or updates validation results. Please call this API after the training is completed to get the complete validation results.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsValidate' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsValidate = DialogFlowProjectsLocationsAgentsFlowsValidate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The flow to validate. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ValidateFlowRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsValidate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsValidate ::
+  -- |  Required. The flow to validate. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ValidateFlowRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsValidate
+newDialogFlowProjectsLocationsAgentsFlowsValidate name payload =
+  DialogFlowProjectsLocationsAgentsFlowsValidate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsValidate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsValidate =
+      GoogleCloudDialogflowCxV3FlowValidationResult
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsValidate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsValidate {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsFlowsValidateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/CompareVersions.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/CompareVersions.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/CompareVersions.hs
@@ -0,0 +1,134 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.CompareVersions
+-- 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)
+--
+-- Compares the specified base version with target version.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.compareVersions@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.CompareVersions
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersionsResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.compareVersions@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersionsResource =
+  "v3"
+    Core.:> Core.CaptureMode "baseVersion" "compareVersions" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3CompareVersionsRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3CompareVersionsResponse
+
+-- | Compares the specified base version with target version.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions = DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Required. Name of the base flow version to compare with the target version. Use version ID @0@ to indicate the draft version of the specified flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    baseVersion :: Core.Text,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3CompareVersionsRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions ::
+  -- |  Required. Name of the base flow version to compare with the target version. Use version ID @0@ to indicate the draft version of the specified flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@. See 'baseVersion'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3CompareVersionsRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions
+newDialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions
+  baseVersion
+  payload =
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        baseVersion = baseVersion,
+        callback = Core.Nothing,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions =
+      GoogleCloudDialogflowCxV3CompareVersionsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersions {..} =
+      go
+        baseVersion
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsCompareVersionsResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Create.hs
@@ -0,0 +1,129 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.Create
+-- 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 Version in the specified Flow. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: CreateVersionOperationMetadata - @response@: Version
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreate (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "versions"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Version
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Creates a Version in the specified Flow. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: CreateVersionOperationMetadata - @response@: Version
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsCreate = DialogFlowProjectsLocationsAgentsFlowsVersionsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The Flow to create an Version for. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Version,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsCreate ::
+  -- |  Required. The Flow to create an Version for. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Version ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsCreate
+newDialogFlowProjectsLocationsAgentsFlowsVersionsCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsCreate =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Delete.hs
@@ -0,0 +1,119 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.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)
+--
+-- Deletes the specified Version.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDelete (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified Version.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsDelete = DialogFlowProjectsLocationsAgentsFlowsVersionsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Version to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsDelete ::
+  -- |  Required. The name of the Version to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsDelete
+newDialogFlowProjectsLocationsAgentsFlowsVersionsDelete name =
+  DialogFlowProjectsLocationsAgentsFlowsVersionsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Get.hs
@@ -0,0 +1,118 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.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 the specified Version.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsGet (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Version
+
+-- | Retrieves the specified Version.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsGet = DialogFlowProjectsLocationsAgentsFlowsVersionsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the Version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsGet ::
+  -- |  Required. The name of the Version. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsGet
+newDialogFlowProjectsLocationsAgentsFlowsVersionsGet name =
+  DialogFlowProjectsLocationsAgentsFlowsVersionsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsGet =
+      GoogleCloudDialogflowCxV3Version
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsFlowsVersionsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsFlowsVersionsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/List.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.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)
+--
+-- Returns the list of all versions in the specified Flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsList (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "versions"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListVersionsResponse
+
+-- | Returns the list of all versions in the specified Flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsList = DialogFlowProjectsLocationsAgentsFlowsVersionsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20 and at most 100.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The Flow to list all versions for. Format: @projects\/\/locations\/\/agents\/\/flows\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsList ::
+  -- |  Required. The Flow to list all versions for. Format: @projects\/\/locations\/\/agents\/\/flows\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsList
+newDialogFlowProjectsLocationsAgentsFlowsVersionsList parent =
+  DialogFlowProjectsLocationsAgentsFlowsVersionsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsList =
+      GoogleCloudDialogflowCxV3ListVersionsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Load.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Load.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Load.hs
@@ -0,0 +1,128 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.Load
+-- 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)
+--
+-- Loads resources in the specified version to the draft flow. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message>
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.load@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Load
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoadResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoad (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsLoad,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.load@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsLoad' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsLoadResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "load" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3LoadVersionRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Loads resources in the specified version to the draft flow. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message>
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsLoad' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsLoad = DialogFlowProjectsLocationsAgentsFlowsVersionsLoad
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The Version to be loaded to draft flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3LoadVersionRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsLoad' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsLoad ::
+  -- |  Required. The Version to be loaded to draft flow. Format: @projects\/\/locations\/\/agents\/\/flows\/\/versions\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3LoadVersionRequest ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsLoad
+newDialogFlowProjectsLocationsAgentsFlowsVersionsLoad name payload =
+  DialogFlowProjectsLocationsAgentsFlowsVersionsLoad
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoad
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsLoad =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsLoad =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsLoad {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsLoadResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Flows/Versions/Patch.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Flows.Versions.Patch
+-- 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 the specified Version.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.flows.versions.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatch (..),
+    newDialogFlowProjectsLocationsAgentsFlowsVersionsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.flows.versions.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsFlowsVersionsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsFlowsVersionsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Version
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Version
+
+-- | Updates the specified Version.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsFlowsVersionsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsFlowsVersionsPatch = DialogFlowProjectsLocationsAgentsFlowsVersionsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Format: projects\/\/locations\/\/agents\/\/flows\/\/versions\/. Version ID is a self-increasing number generated by Dialogflow upon version creation.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Version,
+    -- | Required. The mask to control which fields get updated. Currently only @description@ and @display_name@ can be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsFlowsVersionsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsFlowsVersionsPatch ::
+  -- |  Format: projects\/\/locations\/\/agents\/\/flows\/\/versions\/. Version ID is a self-increasing number generated by Dialogflow upon version creation. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Version ->
+  DialogFlowProjectsLocationsAgentsFlowsVersionsPatch
+newDialogFlowProjectsLocationsAgentsFlowsVersionsPatch name payload =
+  DialogFlowProjectsLocationsAgentsFlowsVersionsPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsFlowsVersionsPatch =
+      GoogleCloudDialogflowCxV3Version
+  type
+    Scopes DialogFlowProjectsLocationsAgentsFlowsVersionsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsFlowsVersionsPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsFlowsVersionsPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Create.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Generators.Create
+-- 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 generator in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.generators.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Generators.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGeneratorsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGeneratorsCreate (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.generators.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGeneratorsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsGeneratorsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "generators"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Generator
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Generator
+
+-- | Creates a generator in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGeneratorsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsGeneratorsCreate = DialogFlowProjectsLocationsAgentsGeneratorsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to create generators for the following fields: * @Generator.prompt_text.text@ If not specified, the agent\'s default language is used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create a generator for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Generator,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGeneratorsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGeneratorsCreate ::
+  -- |  Required. The agent to create a generator for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Generator ->
+  DialogFlowProjectsLocationsAgentsGeneratorsCreate
+newDialogFlowProjectsLocationsAgentsGeneratorsCreate parent payload =
+  DialogFlowProjectsLocationsAgentsGeneratorsCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGeneratorsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGeneratorsCreate =
+      GoogleCloudDialogflowCxV3Generator
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGeneratorsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGeneratorsCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsGeneratorsCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Delete.hs
@@ -0,0 +1,123 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Generators.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)
+--
+-- Deletes the specified generators.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.generators.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Generators.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGeneratorsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGeneratorsDelete (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.generators.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGeneratorsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsGeneratorsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified generators.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGeneratorsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsGeneratorsDelete = DialogFlowProjectsLocationsAgentsGeneratorsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for generators not being used. For generators that are used by pages\/flows\/transition route groups: * If @force@ is set to false, an error will be returned with message indicating the referenced resources. * If @force@ is set to true, Dialogflow will remove the generator, as well as any references to the generator (i.e. Generator) in fulfillments.
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the generator to delete. Format: @projects\/\/locations\/\/agents\/\/generators\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGeneratorsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGeneratorsDelete ::
+  -- |  Required. The name of the generator to delete. Format: @projects\/\/locations\/\/agents\/\/generators\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGeneratorsDelete
+newDialogFlowProjectsLocationsAgentsGeneratorsDelete name =
+  DialogFlowProjectsLocationsAgentsGeneratorsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      force = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGeneratorsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGeneratorsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGeneratorsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGeneratorsDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      force
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsGeneratorsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/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.DialogFlow.Projects.Locations.Agents.Generators.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 the specified generator.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.generators.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Generators.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGeneratorsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGeneratorsGet (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.generators.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGeneratorsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsGeneratorsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Generator
+
+-- | Retrieves the specified generator.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGeneratorsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsGeneratorsGet = DialogFlowProjectsLocationsAgentsGeneratorsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list generators for.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the generator. Format: @projects\/\/locations\/\/agents\/\/generators\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGeneratorsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGeneratorsGet ::
+  -- |  Required. The name of the generator. Format: @projects\/\/locations\/\/agents\/\/generators\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGeneratorsGet
+newDialogFlowProjectsLocationsAgentsGeneratorsGet name =
+  DialogFlowProjectsLocationsAgentsGeneratorsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGeneratorsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGeneratorsGet =
+      GoogleCloudDialogflowCxV3Generator
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGeneratorsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGeneratorsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsGeneratorsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/List.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Generators.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)
+--
+-- Returns the list of all generators in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.generators.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Generators.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGeneratorsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGeneratorsList (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.generators.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGeneratorsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsGeneratorsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "generators"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListGeneratorsResponse
+
+-- | Returns the list of all generators in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGeneratorsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsGeneratorsList = DialogFlowProjectsLocationsAgentsGeneratorsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list generators for.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to list all generators for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGeneratorsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGeneratorsList ::
+  -- |  Required. The agent to list all generators for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGeneratorsList
+newDialogFlowProjectsLocationsAgentsGeneratorsList parent =
+  DialogFlowProjectsLocationsAgentsGeneratorsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGeneratorsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGeneratorsList =
+      GoogleCloudDialogflowCxV3ListGeneratorsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGeneratorsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGeneratorsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsGeneratorsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Generators/Patch.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Generators.Patch
+-- 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)
+--
+-- Update the specified generator.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.generators.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Generators.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGeneratorsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGeneratorsPatch (..),
+    newDialogFlowProjectsLocationsAgentsGeneratorsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.generators.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGeneratorsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsGeneratorsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Generator
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Generator
+
+-- | Update the specified generator.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGeneratorsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsGeneratorsPatch = DialogFlowProjectsLocationsAgentsGeneratorsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list generators for.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the generator. Must be set for the Generators.UpdateGenerator method. Generators.CreateGenerate populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/generators\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Generator,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGeneratorsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGeneratorsPatch ::
+  -- |  The unique identifier of the generator. Must be set for the Generators.UpdateGenerator method. Generators.CreateGenerate populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/generators\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Generator ->
+  DialogFlowProjectsLocationsAgentsGeneratorsPatch
+newDialogFlowProjectsLocationsAgentsGeneratorsPatch name payload =
+  DialogFlowProjectsLocationsAgentsGeneratorsPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGeneratorsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGeneratorsPatch =
+      GoogleCloudDialogflowCxV3Generator
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGeneratorsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGeneratorsPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsGeneratorsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Get.hs
@@ -0,0 +1,113 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.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 the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGet (..),
+    newDialogFlowProjectsLocationsAgentsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Agent
+
+-- | Retrieves the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsGet = DialogFlowProjectsLocationsAgentsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the agent. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGet ::
+  -- |  Required. The name of the agent. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGet
+newDialogFlowProjectsLocationsAgentsGet name =
+  DialogFlowProjectsLocationsAgentsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsGet where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGet =
+      GoogleCloudDialogflowCxV3Agent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetGenerativeSettings.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetGenerativeSettings.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetGenerativeSettings.hs
@@ -0,0 +1,124 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.GetGenerativeSettings
+-- 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)
+--
+-- Gets the generative settings for the agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.getGenerativeSettings@.
+module Gogol.DialogFlow.Projects.Locations.Agents.GetGenerativeSettings
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettingsResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettings (..),
+    newDialogFlowProjectsLocationsAgentsGetGenerativeSettings,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.getGenerativeSettings@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGetGenerativeSettings' request conforms to.
+type DialogFlowProjectsLocationsAgentsGetGenerativeSettingsResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3GenerativeSettings
+
+-- | Gets the generative settings for the agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGetGenerativeSettings' smart constructor.
+data DialogFlowProjectsLocationsAgentsGetGenerativeSettings = DialogFlowProjectsLocationsAgentsGetGenerativeSettings
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Language code of the generative settings.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. Format: @projects\/\/locations\/\/agents\/\/generativeSettings@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGetGenerativeSettings' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGetGenerativeSettings ::
+  -- |  Required. Format: @projects\/\/locations\/\/agents\/\/generativeSettings@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGetGenerativeSettings
+newDialogFlowProjectsLocationsAgentsGetGenerativeSettings name =
+  DialogFlowProjectsLocationsAgentsGetGenerativeSettings
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettings
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGetGenerativeSettings =
+      GoogleCloudDialogflowCxV3GenerativeSettings
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGetGenerativeSettings =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsGetGenerativeSettings {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsGetGenerativeSettingsResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetValidationResult.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetValidationResult.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/GetValidationResult.hs
@@ -0,0 +1,126 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.GetValidationResult
+-- 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)
+--
+-- Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.getValidationResult@.
+module Gogol.DialogFlow.Projects.Locations.Agents.GetValidationResult
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsGetValidationResultResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsGetValidationResult (..),
+    newDialogFlowProjectsLocationsAgentsGetValidationResult,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.getValidationResult@ method which the
+-- 'DialogFlowProjectsLocationsAgentsGetValidationResult' request conforms to.
+type DialogFlowProjectsLocationsAgentsGetValidationResultResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3AgentValidationResult
+
+-- | Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsGetValidationResult' smart constructor.
+data DialogFlowProjectsLocationsAgentsGetValidationResult = DialogFlowProjectsLocationsAgentsGetValidationResult
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | If not specified, the agent\'s default language is used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The agent name. Format: @projects\/\/locations\/\/agents\/\/validationResult@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsGetValidationResult' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsGetValidationResult ::
+  -- |  Required. The agent name. Format: @projects\/\/locations\/\/agents\/\/validationResult@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsGetValidationResult
+newDialogFlowProjectsLocationsAgentsGetValidationResult name =
+  DialogFlowProjectsLocationsAgentsGetValidationResult
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsGetValidationResult
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsGetValidationResult =
+      GoogleCloudDialogflowCxV3AgentValidationResult
+  type
+    Scopes DialogFlowProjectsLocationsAgentsGetValidationResult =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsGetValidationResult {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsGetValidationResultResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Create.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.Create
+-- 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 an intent in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsCreate (..),
+    newDialogFlowProjectsLocationsAgentsIntentsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "intents"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Intent
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Intent
+
+-- | Creates an intent in the specified agent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsCreate = DialogFlowProjectsLocationsAgentsIntentsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @intent@: * @Intent.training_phrases.parts.text@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create an intent for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Intent,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsCreate ::
+  -- |  Required. The agent to create an intent for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Intent ->
+  DialogFlowProjectsLocationsAgentsIntentsCreate
+newDialogFlowProjectsLocationsAgentsIntentsCreate parent payload =
+  DialogFlowProjectsLocationsAgentsIntentsCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsCreate =
+      GoogleCloudDialogflowCxV3Intent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Delete.hs
@@ -0,0 +1,117 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.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)
+--
+-- Deletes the specified intent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsDelete (..),
+    newDialogFlowProjectsLocationsAgentsIntentsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified intent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsDelete = DialogFlowProjectsLocationsAgentsIntentsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the intent to delete. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsDelete ::
+  -- |  Required. The name of the intent to delete. Format: @projects\/\/locations\/\/agents\/\/intents\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsIntentsDelete
+newDialogFlowProjectsLocationsAgentsIntentsDelete name =
+  DialogFlowProjectsLocationsAgentsIntentsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Export.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Export.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Export.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.Export
+-- 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)
+--
+-- Exports the selected intents. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ExportIntentsMetadata - @response@: ExportIntentsResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.export@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Export
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsExportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsExport (..),
+    newDialogFlowProjectsLocationsAgentsIntentsExport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.export@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsExport' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsExportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "intents:export"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ExportIntentsRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Exports the selected intents. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ExportIntentsMetadata - @response@: ExportIntentsResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsExport' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsExport = DialogFlowProjectsLocationsAgentsIntentsExport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the parent agent to export intents. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ExportIntentsRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsExport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsExport ::
+  -- |  Required. The name of the parent agent to export intents. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ExportIntentsRequest ->
+  DialogFlowProjectsLocationsAgentsIntentsExport
+newDialogFlowProjectsLocationsAgentsIntentsExport parent payload =
+  DialogFlowProjectsLocationsAgentsIntentsExport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsExport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsExport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsExport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsExport {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsExportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Get.hs
@@ -0,0 +1,121 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.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 the specified intent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsGet (..),
+    newDialogFlowProjectsLocationsAgentsIntentsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Intent
+
+-- | Retrieves the specified intent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsGet = DialogFlowProjectsLocationsAgentsIntentsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the intent for. The following fields are language dependent: * @Intent.training_phrases.parts.text@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsGet ::
+  -- |  Required. The name of the intent. Format: @projects\/\/locations\/\/agents\/\/intents\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsIntentsGet
+newDialogFlowProjectsLocationsAgentsIntentsGet name =
+  DialogFlowProjectsLocationsAgentsIntentsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsGet =
+      GoogleCloudDialogflowCxV3Intent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Import.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Import.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Import.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.Import
+-- 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)
+--
+-- Imports the specified intents into the agent. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ImportIntentsMetadata - @response@: ImportIntentsResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.import@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Import
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsImportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsImport (..),
+    newDialogFlowProjectsLocationsAgentsIntentsImport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.import@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsImport' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsImportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "intents:import"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ImportIntentsRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Imports the specified intents into the agent. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ImportIntentsMetadata - @response@: ImportIntentsResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsImport' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsImport = DialogFlowProjectsLocationsAgentsIntentsImport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to import the intents into. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ImportIntentsRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsImport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsImport ::
+  -- |  Required. The agent to import the intents into. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ImportIntentsRequest ->
+  DialogFlowProjectsLocationsAgentsIntentsImport
+newDialogFlowProjectsLocationsAgentsIntentsImport parent payload =
+  DialogFlowProjectsLocationsAgentsIntentsImport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsImport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsImport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsImport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsImport {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsImportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/List.hs
@@ -0,0 +1,140 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.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)
+--
+-- Returns the list of all intents in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsList (..),
+    newDialogFlowProjectsLocationsAgentsIntentsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "intents"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam
+              "intentView"
+              ProjectsLocationsAgentsIntentsListIntentView
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListIntentsResponse
+
+-- | Returns the list of all intents in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsList = DialogFlowProjectsLocationsAgentsIntentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The resource view to apply to the returned intent.
+    intentView :: (Core.Maybe ProjectsLocationsAgentsIntentsListIntentView),
+    -- | The language to list intents for. The following fields are language dependent: * @Intent.training_phrases.parts.text@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to list all intents for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsList ::
+  -- |  Required. The agent to list all intents for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsIntentsList
+newDialogFlowProjectsLocationsAgentsIntentsList parent =
+  DialogFlowProjectsLocationsAgentsIntentsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      intentView = Core.Nothing,
+      languageCode = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsList =
+      GoogleCloudDialogflowCxV3ListIntentsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      intentView
+      languageCode
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Intents/Patch.hs
@@ -0,0 +1,134 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Intents.Patch
+-- 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 the specified intent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.intents.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Intents.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsIntentsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsIntentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsIntentsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.intents.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsIntentsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsIntentsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Intent
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Intent
+
+-- | Updates the specified intent. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsIntentsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsIntentsPatch = DialogFlowProjectsLocationsAgentsIntentsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @intent@: * @Intent.training_phrases.parts.text@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/intents\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Intent,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsIntentsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsIntentsPatch ::
+  -- |  The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/intents\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Intent ->
+  DialogFlowProjectsLocationsAgentsIntentsPatch
+newDialogFlowProjectsLocationsAgentsIntentsPatch name payload =
+  DialogFlowProjectsLocationsAgentsIntentsPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsIntentsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsIntentsPatch =
+      GoogleCloudDialogflowCxV3Intent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsIntentsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsIntentsPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      languageCode
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsIntentsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/List.hs
@@ -0,0 +1,124 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.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)
+--
+-- Returns the list of all agents in the specified location.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsList (..),
+    newDialogFlowProjectsLocationsAgentsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "agents"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListAgentsResponse
+
+-- | Returns the list of all agents in the specified location.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsList = DialogFlowProjectsLocationsAgentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The location to list all agents for. Format: @projects\/\/locations\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsList ::
+  -- |  Required. The location to list all agents for. Format: @projects\/\/locations\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsList
+newDialogFlowProjectsLocationsAgentsList parent =
+  DialogFlowProjectsLocationsAgentsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsList where
+  type
+    Rs DialogFlowProjectsLocationsAgentsList =
+      GoogleCloudDialogflowCxV3ListAgentsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Patch.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Patch
+-- 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 the specified agent. Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsPatch (..),
+    newDialogFlowProjectsLocationsAgentsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Agent
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Agent
+
+-- | Updates the specified agent. Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsPatch = DialogFlowProjectsLocationsAgentsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Agent,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsPatch ::
+  -- |  The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Agent ->
+  DialogFlowProjectsLocationsAgentsPatch
+newDialogFlowProjectsLocationsAgentsPatch name payload =
+  DialogFlowProjectsLocationsAgentsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsAgentsPatch where
+  type
+    Rs DialogFlowProjectsLocationsAgentsPatch =
+      GoogleCloudDialogflowCxV3Agent
+  type
+    Scopes DialogFlowProjectsLocationsAgentsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Restore.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Restore.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Restore.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Restore
+-- 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)
+--
+-- Restores the specified agent from a binary file. Replaces the current agent with a new one. Note that all existing resources in agent (e.g. intents, entity types, flows) will be removed. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message> Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.restore@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Restore
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsRestoreResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsRestore (..),
+    newDialogFlowProjectsLocationsAgentsRestore,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.restore@ method which the
+-- 'DialogFlowProjectsLocationsAgentsRestore' request conforms to.
+type DialogFlowProjectsLocationsAgentsRestoreResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "restore" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3RestoreAgentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Restores the specified agent from a binary file. Replaces the current agent with a new one. Note that all existing resources in agent (e.g. intents, entity types, flows) will be removed. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: An empty <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct Struct message> - @response@: An <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty Empty message> Note: You should always train flows prior to sending them queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsRestore' smart constructor.
+data DialogFlowProjectsLocationsAgentsRestore = DialogFlowProjectsLocationsAgentsRestore
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the agent to restore into. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3RestoreAgentRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsRestore' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsRestore ::
+  -- |  Required. The name of the agent to restore into. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3RestoreAgentRequest ->
+  DialogFlowProjectsLocationsAgentsRestore
+newDialogFlowProjectsLocationsAgentsRestore name payload =
+  DialogFlowProjectsLocationsAgentsRestore
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsRestore
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsRestore =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsRestore =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsRestore {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsRestoreResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/DetectIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/DetectIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/DetectIntent.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.DetectIntent
+-- 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)
+--
+-- Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.detectIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.DetectIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsDetectIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.detectIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsDetectIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsDetectIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "detectIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentResponse
+
+-- | Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsDetectIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsDetectIntent = DialogFlowProjectsLocationsAgentsSessionsDetectIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3DetectIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsDetectIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsDetectIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3DetectIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsDetectIntent
+newDialogFlowProjectsLocationsAgentsSessionsDetectIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntent
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsDetectIntent =
+      GoogleCloudDialogflowCxV3DetectIntentResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsSessionsDetectIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsDetectIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsDetectIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Create.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Create
+-- 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 session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.entityTypes.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.entityTypes.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3SessionEntityType
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Creates a session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate = DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The session to create a session entity type for. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SessionEntityType,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate ::
+  -- |  Required. The session to create a session entity type for. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SessionEntityType ->
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsEntityTypesCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Delete.hs
@@ -0,0 +1,120 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.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)
+--
+-- Deletes the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.entityTypes.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.entityTypes.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsEntityTypesDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete = DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the session entity type to delete. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete ::
+  -- |  Required. The name of the session entity type to delete. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete name =
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsEntityTypesDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Get.hs
@@ -0,0 +1,119 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.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 the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.entityTypes.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.entityTypes.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsEntityTypesGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Retrieves the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsEntityTypesGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet = DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesGet ::
+  -- |  Required. The name of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesGet name =
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsEntityTypesGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/List.hs
@@ -0,0 +1,133 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.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)
+--
+-- Returns the list of all session entity types in the specified session.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.entityTypes.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesList (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.entityTypes.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesList' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsEntityTypesListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "entityTypes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+
+-- | Returns the list of all session entity types in the specified session.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsEntityTypesList' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsEntityTypesList = DialogFlowProjectsLocationsAgentsSessionsEntityTypesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The session to list all session entity types from. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesList ::
+  -- |  Required. The session to list all session entity types from. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesList
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesList parent =
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsEntityTypesList =
+      GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsEntityTypesList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsEntityTypesListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/EntityTypes/Patch.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.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Patch
+-- 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 the specified session entity type.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.entityTypes.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch (..),
+    newDialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.entityTypes.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3SessionEntityType
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3SessionEntityType
+
+-- | Updates the specified session entity type.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch = DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The unique identifier of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SessionEntityType,
+    -- | The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch ::
+  -- |  Required. The unique identifier of the session entity type. Format: @projects\/\/locations\/\/agents\/\/sessions\/\/entityTypes\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/\/entityTypes\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SessionEntityType ->
+  DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch
+newDialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch =
+      GoogleCloudDialogflowCxV3SessionEntityType
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsEntityTypesPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/FulfillIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/FulfillIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/FulfillIntent.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.FulfillIntent
+-- 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)
+--
+-- Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.fulfillIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.FulfillIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsFulfillIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.fulfillIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsFulfillIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsFulfillIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "fulfillIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3FulfillIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3FulfillIntentResponse
+
+-- | Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsFulfillIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsFulfillIntent = DialogFlowProjectsLocationsAgentsSessionsFulfillIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3FulfillIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsFulfillIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsFulfillIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3FulfillIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsFulfillIntent
+newDialogFlowProjectsLocationsAgentsSessionsFulfillIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntent
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsFulfillIntent =
+      GoogleCloudDialogflowCxV3FulfillIntentResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsSessionsFulfillIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsFulfillIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsFulfillIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/MatchIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/MatchIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/MatchIntent.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.MatchIntent
+-- 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)
+--
+-- Returns preliminary intent match results, doesn\'t change the session status.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.matchIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.MatchIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsMatchIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.matchIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsMatchIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsMatchIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "matchIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3MatchIntentRequest
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3MatchIntentResponse
+
+-- | Returns preliminary intent match results, doesn\'t change the session status.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsMatchIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsMatchIntent = DialogFlowProjectsLocationsAgentsSessionsMatchIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3MatchIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsMatchIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsMatchIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3MatchIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsMatchIntent
+newDialogFlowProjectsLocationsAgentsSessionsMatchIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntent
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsSessionsMatchIntent =
+      GoogleCloudDialogflowCxV3MatchIntentResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsSessionsMatchIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsMatchIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsMatchIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/ServerStreamingDetectIntent.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/ServerStreamingDetectIntent.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/ServerStreamingDetectIntent.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.ServerStreamingDetectIntent
+-- 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)
+--
+-- Processes a natural language query and returns structured, actionable data as a result through server-side streaming. Server-side streaming allows Dialogflow to send <https://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#partial-response partial responses> earlier in a single request.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.serverStreamingDetectIntent@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.ServerStreamingDetectIntent
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntentResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent (..),
+    newDialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.serverStreamingDetectIntent@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntentResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "serverStreamingDetectIntent" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3DetectIntentResponse
+
+-- | Processes a natural language query and returns structured, actionable data as a result through server-side streaming. Server-side streaming allows Dialogflow to send <https://cloud.google.com/dialogflow/cx/docs/concept/fulfillment#partial-response partial responses> earlier in a single request.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent = DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3DetectIntentRequest,
+    -- | Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3DetectIntentRequest ->
+  -- |  Required. The name of the session this query is sent to. Format: @projects\/\/locations\/\/agents\/\/sessions\/@ or @projects\/\/locations\/\/agents\/\/environments\/\/sessions\/@. If @Environment ID@ is not specified, we assume default \'draft\' environment. It\'s up to the API caller to choose an appropriate @Session ID@. It can be a random number or some type of session identifiers (preferably hashed). The length of the @Session ID@ must not exceed 36 characters. For more information, see the <https://cloud.google.com/dialogflow/cx/docs/concept/session sessions guide>. Note: Always use agent versions for production traffic. See <https://cloud.google.com/dialogflow/cx/docs/concept/version Versions and environments>. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent
+newDialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol =
+          Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent =
+      GoogleCloudDialogflowCxV3DetectIntentResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntent {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsServerStreamingDetectIntentResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/SubmitAnswerFeedback.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/SubmitAnswerFeedback.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Sessions/SubmitAnswerFeedback.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Sessions.SubmitAnswerFeedback
+-- 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 the feedback received from the user for a single turn of the bot response.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.sessions.submitAnswerFeedback@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Sessions.SubmitAnswerFeedback
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedbackResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback (..),
+    newDialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.sessions.submitAnswerFeedback@ method which the
+-- 'DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback' request conforms to.
+type DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedbackResource =
+  "v3"
+    Core.:> Core.CaptureMode "session" "submitAnswerFeedback" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3AnswerFeedback
+
+-- | Updates the feedback received from the user for a single turn of the bot response.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback' smart constructor.
+data DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback = DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest,
+    -- | Required. The name of the session the feedback was sent to.
+    session :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback ::
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest ->
+  -- |  Required. The name of the session the feedback was sent to. See 'session'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback
+newDialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback
+  payload
+  session =
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        payload = payload,
+        session = session,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback =
+      GoogleCloudDialogflowCxV3AnswerFeedback
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedback {..} =
+      go
+        session
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsSessionsSubmitAnswerFeedbackResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchDelete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchDelete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchDelete.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.BatchDelete
+-- 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)
+--
+-- Batch deletes test cases.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.batchDelete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchDelete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDelete (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesBatchDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.batchDelete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesBatchDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesBatchDeleteResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases:batchDelete"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleProtobufEmpty
+
+-- | Batch deletes test cases.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesBatchDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesBatchDelete = DialogFlowProjectsLocationsAgentsTestCasesBatchDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to delete test cases from. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesBatchDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesBatchDelete ::
+  -- |  Required. The agent to delete test cases from. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest ->
+  DialogFlowProjectsLocationsAgentsTestCasesBatchDelete
+newDialogFlowProjectsLocationsAgentsTestCasesBatchDelete
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDelete
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesBatchDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesBatchDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTestCasesBatchDelete {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTestCasesBatchDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchRun.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchRun.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/BatchRun.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.BatchRun
+-- 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)
+--
+-- Kicks off a batch run of test cases. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: BatchRunTestCasesMetadata - @response@: BatchRunTestCasesResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.batchRun@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchRun
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRunResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRun (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesBatchRun,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.batchRun@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesBatchRun' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesBatchRunResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases:batchRun"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Kicks off a batch run of test cases. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: BatchRunTestCasesMetadata - @response@: BatchRunTestCasesResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesBatchRun' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesBatchRun = DialogFlowProjectsLocationsAgentsTestCasesBatchRun
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Agent name. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3BatchRunTestCasesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesBatchRun' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesBatchRun ::
+  -- |  Required. Agent name. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3BatchRunTestCasesRequest ->
+  DialogFlowProjectsLocationsAgentsTestCasesBatchRun
+newDialogFlowProjectsLocationsAgentsTestCasesBatchRun
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRun
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRun
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesBatchRun =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesBatchRun =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTestCasesBatchRun {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTestCasesBatchRunResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/CalculateCoverage.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/CalculateCoverage.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/CalculateCoverage.hs
@@ -0,0 +1,131 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.CalculateCoverage
+-- 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)
+--
+-- Calculates the test coverage for an agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.calculateCoverage@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.CalculateCoverage
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverageResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.calculateCoverage@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverageResource =
+  "v3"
+    Core.:> Core.Capture "agent" Core.Text
+    Core.:> "testCases:calculateCoverage"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam
+              "type"
+              ProjectsLocationsAgentsTestCasesCalculateCoverageType
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3CalculateCoverageResponse
+
+-- | Calculates the test coverage for an agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage = DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to calculate coverage for. Format: @projects\/\/locations\/\/agents\/@.
+    agent :: Core.Text,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The type of coverage requested.
+    type' :: (Core.Maybe ProjectsLocationsAgentsTestCasesCalculateCoverageType),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage ::
+  -- |  Required. The agent to calculate coverage for. Format: @projects\/\/locations\/\/agents\/@. See 'agent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage
+newDialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage
+  agent =
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        agent = agent,
+        callback = Core.Nothing,
+        type' = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage =
+      GoogleCloudDialogflowCxV3CalculateCoverageResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverage {..} =
+      go
+        agent
+        xgafv
+        accessToken
+        callback
+        type'
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTestCasesCalculateCoverageResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Create.hs
@@ -0,0 +1,126 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Create
+-- 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 test case for the given agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesCreate (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3TestCase
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3TestCase
+
+-- | Creates a test case for the given agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesCreate = DialogFlowProjectsLocationsAgentsTestCasesCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create the test case for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TestCase,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesCreate ::
+  -- |  Required. The agent to create the test case for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TestCase ->
+  DialogFlowProjectsLocationsAgentsTestCasesCreate
+newDialogFlowProjectsLocationsAgentsTestCasesCreate parent payload =
+  DialogFlowProjectsLocationsAgentsTestCasesCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesCreate =
+      GoogleCloudDialogflowCxV3TestCase
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsTestCasesCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Export.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Export.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Export.hs
@@ -0,0 +1,128 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Export
+-- 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)
+--
+-- Exports the test cases under the agent to a Cloud Storage bucket or a local file. Filter can be applied to export a subset of test cases. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ExportTestCasesMetadata - @response@: ExportTestCasesResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.export@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Export
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesExportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesExport (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesExport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.export@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesExport' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesExportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases:export"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ExportTestCasesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Exports the test cases under the agent to a Cloud Storage bucket or a local file. Filter can be applied to export a subset of test cases. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ExportTestCasesMetadata - @response@: ExportTestCasesResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesExport' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesExport = DialogFlowProjectsLocationsAgentsTestCasesExport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent where to export test cases from. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ExportTestCasesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesExport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesExport ::
+  -- |  Required. The agent where to export test cases from. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ExportTestCasesRequest ->
+  DialogFlowProjectsLocationsAgentsTestCasesExport
+newDialogFlowProjectsLocationsAgentsTestCasesExport parent payload =
+  DialogFlowProjectsLocationsAgentsTestCasesExport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesExport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesExport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesExport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesExport {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsTestCasesExportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Get.hs
@@ -0,0 +1,117 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.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)
+--
+-- Gets a test case.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesGet (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3TestCase
+
+-- | Gets a test case.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesGet = DialogFlowProjectsLocationsAgentsTestCasesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the testcase. Format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesGet ::
+  -- |  Required. The name of the testcase. Format: @projects\/\/locations\/\/agents\/\/testCases\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTestCasesGet
+newDialogFlowProjectsLocationsAgentsTestCasesGet name =
+  DialogFlowProjectsLocationsAgentsTestCasesGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesGet =
+      GoogleCloudDialogflowCxV3TestCase
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsTestCasesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Import.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Import.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Import.hs
@@ -0,0 +1,128 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Import
+-- 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)
+--
+-- Imports the test cases from a Cloud Storage bucket or a local file. It always creates new test cases and won\'t overwrite any existing ones. The provided ID in the imported test case is neglected. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ImportTestCasesMetadata - @response@: ImportTestCasesResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.import@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Import
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesImportResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesImport (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesImport,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.import@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesImport' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesImportResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases:import"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ImportTestCasesRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Imports the test cases from a Cloud Storage bucket or a local file. It always creates new test cases and won\'t overwrite any existing ones. The provided ID in the imported test case is neglected. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: ImportTestCasesMetadata - @response@: ImportTestCasesResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesImport' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesImport = DialogFlowProjectsLocationsAgentsTestCasesImport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to import test cases to. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ImportTestCasesRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesImport' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesImport ::
+  -- |  Required. The agent to import test cases to. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ImportTestCasesRequest ->
+  DialogFlowProjectsLocationsAgentsTestCasesImport
+newDialogFlowProjectsLocationsAgentsTestCasesImport parent payload =
+  DialogFlowProjectsLocationsAgentsTestCasesImport
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesImport
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesImport =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesImport =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesImport {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsAgentsTestCasesImportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/List.hs
@@ -0,0 +1,135 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.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)
+--
+-- Fetches a list of test cases for a given agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesList (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesList' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "testCases"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "view" ProjectsLocationsAgentsTestCasesListView
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListTestCasesResponse
+
+-- | Fetches a list of test cases for a given agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesList' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesList = DialogFlowProjectsLocationsAgentsTestCasesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20. Note that when TestCaseView = FULL, the maximum page size allowed is 20. When TestCaseView = BASIC, the maximum page size allowed is 500.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to list all pages for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text),
+    -- | Specifies whether response should include all fields or just the metadata.
+    view :: (Core.Maybe ProjectsLocationsAgentsTestCasesListView)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesList ::
+  -- |  Required. The agent to list all pages for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTestCasesList
+newDialogFlowProjectsLocationsAgentsTestCasesList parent =
+  DialogFlowProjectsLocationsAgentsTestCasesList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing,
+      view = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesList =
+      GoogleCloudDialogflowCxV3ListTestCasesResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      view
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsTestCasesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Patch.hs
@@ -0,0 +1,129 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Patch
+-- 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 the specified test case.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesPatch (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3TestCase
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3TestCase
+
+-- | Updates the specified test case.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesPatch = DialogFlowProjectsLocationsAgentsTestCasesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TestCase,
+    -- | Required. The mask to specify which fields should be updated. The @creationTime@ and @lastTestResult@ cannot be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesPatch ::
+  -- |  The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: @projects\/\/locations\/\/agents\/\/testCases\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TestCase ->
+  DialogFlowProjectsLocationsAgentsTestCasesPatch
+newDialogFlowProjectsLocationsAgentsTestCasesPatch name payload =
+  DialogFlowProjectsLocationsAgentsTestCasesPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesPatch =
+      GoogleCloudDialogflowCxV3TestCase
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsTestCasesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/Get.hs
@@ -0,0 +1,119 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.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)
+--
+-- Gets a test case result.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.results.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGet (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesResultsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.results.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesResultsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesResultsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3TestCaseResult
+
+-- | Gets a test case result.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesResultsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesResultsGet = DialogFlowProjectsLocationsAgentsTestCasesResultsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the testcase. Format: @projects\/\/locations\/\/agents\/\/testCases\/\/results\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesResultsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesResultsGet ::
+  -- |  Required. The name of the testcase. Format: @projects\/\/locations\/\/agents\/\/testCases\/\/results\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTestCasesResultsGet
+newDialogFlowProjectsLocationsAgentsTestCasesResultsGet name =
+  DialogFlowProjectsLocationsAgentsTestCasesResultsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesResultsGet =
+      GoogleCloudDialogflowCxV3TestCaseResult
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesResultsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTestCasesResultsGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTestCasesResultsGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Results/List.hs
@@ -0,0 +1,137 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Results.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)
+--
+-- Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.results.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesResultsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesResultsList (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesResultsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.results.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesResultsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesResultsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "results"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "filter" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+
+-- | Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesResultsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesResultsList = DialogFlowProjectsLocationsAgentsTestCasesResultsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The filter expression used to filter test case results. See <https://aip.dev/160 API Filtering>. The expression is case insensitive. Only \'AND\' is supported for logical operators. The supported syntax is listed below in detail: [AND ] ... [AND latest] The supported fields and operators are: field operator @environment@ @=@, @IN@ (Use value @draft@ for draft environment) @test_time@ @>@, @\<@ @latest@ only returns the latest test result in all results for each test case. Examples: * \"environment=draft AND latest\" matches the latest test result for each test case in the draft environment. * \"environment IN (e1,e2)\" matches any test case results with an environment resource name of either \"e1\" or \"e2\". * \"test_time > 1602540713\" matches any test case results with test time later than a unix timestamp in seconds 1602540713.
+    filter :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The test case to list results for. Format: @projects\/\/locations\/\/agents\/\/testCases\/@. Specify a @-@ as a wildcard for TestCase ID to list results across multiple test cases.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesResultsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesResultsList ::
+  -- |  Required. The test case to list results for. Format: @projects\/\/locations\/\/agents\/\/testCases\/@. Specify a @-@ as a wildcard for TestCase ID to list results across multiple test cases. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTestCasesResultsList
+newDialogFlowProjectsLocationsAgentsTestCasesResultsList parent =
+  DialogFlowProjectsLocationsAgentsTestCasesResultsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      filter = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesResultsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesResultsList =
+      GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesResultsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTestCasesResultsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        filter
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTestCasesResultsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Run.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Run.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TestCases/Run.hs
@@ -0,0 +1,126 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TestCases.Run
+-- 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)
+--
+-- Kicks off a test case run. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: RunTestCaseMetadata - @response@: RunTestCaseResponse
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.testCases.run@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Run
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTestCasesRunResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTestCasesRun (..),
+    newDialogFlowProjectsLocationsAgentsTestCasesRun,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.testCases.run@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTestCasesRun' request conforms to.
+type DialogFlowProjectsLocationsAgentsTestCasesRunResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "run" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3RunTestCaseRequest
+    Core.:> Core.Post '[Core.JSON] GoogleLongrunningOperation
+
+-- | Kicks off a test case run. This method is a <https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation long-running operation>. The returned @Operation@ type has the following method-specific fields: - @metadata@: RunTestCaseMetadata - @response@: RunTestCaseResponse
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTestCasesRun' smart constructor.
+data DialogFlowProjectsLocationsAgentsTestCasesRun = DialogFlowProjectsLocationsAgentsTestCasesRun
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Format of test case name to run: @projects\/\/locations\/\/agents\/\/testCases\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3RunTestCaseRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTestCasesRun' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTestCasesRun ::
+  -- |  Required. Format of test case name to run: @projects\/\/locations\/\/agents\/\/testCases\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3RunTestCaseRequest ->
+  DialogFlowProjectsLocationsAgentsTestCasesRun
+newDialogFlowProjectsLocationsAgentsTestCasesRun name payload =
+  DialogFlowProjectsLocationsAgentsTestCasesRun
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTestCasesRun
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTestCasesRun =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsAgentsTestCasesRun =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsTestCasesRun {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsTestCasesRunResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Create.hs
@@ -0,0 +1,140 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Create
+-- 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 an TransitionRouteGroup in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.transitionRouteGroups.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.transitionRouteGroups.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "transitionRouteGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Creates an TransitionRouteGroup in the specified flow. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate = DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @TransitionRouteGroup@: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The flow to create an TransitionRouteGroup for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or @projects\/\/locations\/\/agents\/@ for agent-level groups.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TransitionRouteGroup,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate ::
+  -- |  Required. The flow to create an TransitionRouteGroup for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or @projects\/\/locations\/\/agents\/@ for agent-level groups. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TransitionRouteGroup ->
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate
+  parent
+  payload =
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        parent = parent,
+        payload = payload,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreate {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsCreateResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Delete.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.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)
+--
+-- Deletes the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.transitionRouteGroups.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.transitionRouteGroups.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete = DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for transition route group that no page is using. If the transition route group is referenced by any page: * If @force@ is set to false, an error will be returned with message indicating pages that reference the transition route group. * If @force@ is set to true, Dialogflow will remove the transition route group, as well as any reference to it.
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the TransitionRouteGroup to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete ::
+  -- |  Required. The name of the TransitionRouteGroup to delete. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete
+  name =
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        force = Core.Nothing,
+        name = name,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete
+  where
+  type
+    Rs
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDelete {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        force
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsDeleteResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Get.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.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 the specified TransitionRouteGroup.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.transitionRouteGroups.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.transitionRouteGroups.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Retrieves the specified TransitionRouteGroup.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet = DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to retrieve the transition route group for. The following fields are language dependent: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Required. The name of the TransitionRouteGroup. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet ::
+  -- |  Required. The name of the TransitionRouteGroup. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ or @projects\/\/locations\/\/agents\/\/transitionRouteGroups\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet name =
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGet {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsGetResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/List.hs
@@ -0,0 +1,139 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.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)
+--
+-- Returns the list of all transition route groups in the specified flow.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.transitionRouteGroups.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.transitionRouteGroups.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList' request conforms to.
+type DialogFlowProjectsLocationsAgentsTransitionRouteGroupsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "transitionRouteGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+
+-- | Returns the list of all transition route groups in the specified flow.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsList' smart constructor.
+data DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList = DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language to list transition route groups for. The following fields are language dependent: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The flow to list all transition route groups for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or \`projects\/\/locations\/\/agents\/.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsList ::
+  -- |  Required. The flow to list all transition route groups for. Format: @projects\/\/locations\/\/agents\/\/flows\/@ or \`projects\/\/locations\/\/agents\/. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsList
+  parent =
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        pageSize = Core.Nothing,
+        pageToken = Core.Nothing,
+        parent = parent,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList =
+      GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsList {..} =
+      go
+        parent
+        xgafv
+        accessToken
+        callback
+        languageCode
+        pageSize
+        pageToken
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/TransitionRouteGroups/Patch.hs
@@ -0,0 +1,143 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Patch
+-- 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 the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.transitionRouteGroups.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch (..),
+    newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.transitionRouteGroups.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "languageCode" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+    Core.:> Core.Patch
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3TransitionRouteGroup
+
+-- | Updates the specified TransitionRouteGroup. Note: You should always train a flow prior to sending it queries. See the <https://cloud.google.com/dialogflow/cx/docs/concept/training training documentation>.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch = DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The language of the following fields in @TransitionRouteGroup@: * @TransitionRouteGroup.transition_routes.trigger_fulfillment.messages@ * @TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases@ If not specified, the agent\'s default language is used. <https://cloud.google.com/dialogflow/cx/docs/reference/language Many languages> are supported. Note: languages must be enabled in the agent before they can be used.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ .
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3TransitionRouteGroup,
+    -- | The mask to control which fields get updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch ::
+  -- |  The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/flows\/\/transitionRouteGroups\/@ . See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3TransitionRouteGroup ->
+  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch
+newDialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        languageCode = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch =
+      GoogleCloudDialogflowCxV3TransitionRouteGroup
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatch {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        languageCode
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsTransitionRouteGroupsPatchResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/UpdateGenerativeSettings.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/UpdateGenerativeSettings.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/UpdateGenerativeSettings.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.DialogFlow.Projects.Locations.Agents.UpdateGenerativeSettings
+-- 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 the generative settings for the agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.updateGenerativeSettings@.
+module Gogol.DialogFlow.Projects.Locations.Agents.UpdateGenerativeSettings
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettingsResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings (..),
+    newDialogFlowProjectsLocationsAgentsUpdateGenerativeSettings,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.updateGenerativeSettings@ method which the
+-- 'DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings' request conforms to.
+type DialogFlowProjectsLocationsAgentsUpdateGenerativeSettingsResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3GenerativeSettings
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3GenerativeSettings
+
+-- | Updates the generative settings for the agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsUpdateGenerativeSettings' smart constructor.
+data DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings = DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Format: @projects\/\/locations\/\/agents\/\/generativeSettings@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3GenerativeSettings,
+    -- | Optional. The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsUpdateGenerativeSettings ::
+  -- |  Format: @projects\/\/locations\/\/agents\/\/generativeSettings@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3GenerativeSettings ->
+  DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings
+newDialogFlowProjectsLocationsAgentsUpdateGenerativeSettings
+  name
+  payload =
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        payload = payload,
+        updateMask = Core.Nothing,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings =
+      GoogleCloudDialogflowCxV3GenerativeSettings
+  type
+    Scopes
+      DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient
+    DialogFlowProjectsLocationsAgentsUpdateGenerativeSettings {..} =
+      go
+        name
+        xgafv
+        accessToken
+        callback
+        updateMask
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        payload
+        dialogFlowService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  DialogFlowProjectsLocationsAgentsUpdateGenerativeSettingsResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Validate.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Validate.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Validate.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Validate
+-- 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)
+--
+-- Validates the specified agent and creates or updates validation results. The agent in draft version is validated. Please call this API after the training is completed to get the complete validation results.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.validate@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Validate
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsValidateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsValidate (..),
+    newDialogFlowProjectsLocationsAgentsValidate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.validate@ method which the
+-- 'DialogFlowProjectsLocationsAgentsValidate' request conforms to.
+type DialogFlowProjectsLocationsAgentsValidateResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "validate" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ValidateAgentRequest
+    Core.:> Core.Post
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3AgentValidationResult
+
+-- | Validates the specified agent and creates or updates validation results. The agent in draft version is validated. Please call this API after the training is completed to get the complete validation results.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsValidate' smart constructor.
+data DialogFlowProjectsLocationsAgentsValidate = DialogFlowProjectsLocationsAgentsValidate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to validate. Format: @projects\/\/locations\/\/agents\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3ValidateAgentRequest,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsValidate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsValidate ::
+  -- |  Required. The agent to validate. Format: @projects\/\/locations\/\/agents\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3ValidateAgentRequest ->
+  DialogFlowProjectsLocationsAgentsValidate
+newDialogFlowProjectsLocationsAgentsValidate name payload =
+  DialogFlowProjectsLocationsAgentsValidate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsValidate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsValidate =
+      GoogleCloudDialogflowCxV3AgentValidationResult
+  type
+    Scopes DialogFlowProjectsLocationsAgentsValidate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsValidate {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsValidateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Create.hs
@@ -0,0 +1,125 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Webhooks.Create
+-- 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 webhook in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.webhooks.create@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsWebhooksCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsWebhooksCreate (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.webhooks.create@ method which the
+-- 'DialogFlowProjectsLocationsAgentsWebhooksCreate' request conforms to.
+type DialogFlowProjectsLocationsAgentsWebhooksCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "webhooks"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Webhook
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3Webhook
+
+-- | Creates a webhook in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsWebhooksCreate' smart constructor.
+data DialogFlowProjectsLocationsAgentsWebhooksCreate = DialogFlowProjectsLocationsAgentsWebhooksCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The agent to create a webhook for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Webhook,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsWebhooksCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsWebhooksCreate ::
+  -- |  Required. The agent to create a webhook for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Webhook ->
+  DialogFlowProjectsLocationsAgentsWebhooksCreate
+newDialogFlowProjectsLocationsAgentsWebhooksCreate parent payload =
+  DialogFlowProjectsLocationsAgentsWebhooksCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsWebhooksCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsWebhooksCreate =
+      GoogleCloudDialogflowCxV3Webhook
+  type
+    Scopes DialogFlowProjectsLocationsAgentsWebhooksCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsWebhooksCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsWebhooksCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Delete.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.DialogFlow.Projects.Locations.Agents.Webhooks.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)
+--
+-- Deletes the specified webhook.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.webhooks.delete@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsWebhooksDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsWebhooksDelete (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.webhooks.delete@ method which the
+-- 'DialogFlowProjectsLocationsAgentsWebhooksDelete' request conforms to.
+type DialogFlowProjectsLocationsAgentsWebhooksDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "force" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified webhook.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsWebhooksDelete' smart constructor.
+data DialogFlowProjectsLocationsAgentsWebhooksDelete = DialogFlowProjectsLocationsAgentsWebhooksDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | This field has no effect for webhook not being used. For webhooks that are used by pages\/flows\/transition route groups: * If @force@ is set to false, an error will be returned with message indicating the referenced resources. * If @force@ is set to true, Dialogflow will remove the webhook, as well as any references to the webhook (i.e. Webhook and tagin fulfillments that point to this webhook will be removed).
+    force :: (Core.Maybe Core.Bool),
+    -- | Required. The name of the webhook to delete. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsWebhooksDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsWebhooksDelete ::
+  -- |  Required. The name of the webhook to delete. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsWebhooksDelete
+newDialogFlowProjectsLocationsAgentsWebhooksDelete name =
+  DialogFlowProjectsLocationsAgentsWebhooksDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      force = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsWebhooksDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsWebhooksDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsAgentsWebhooksDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsWebhooksDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      force
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsWebhooksDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Get.hs
@@ -0,0 +1,117 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Webhooks.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 the specified webhook.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.webhooks.get@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsWebhooksGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsWebhooksGet (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.webhooks.get@ method which the
+-- 'DialogFlowProjectsLocationsAgentsWebhooksGet' request conforms to.
+type DialogFlowProjectsLocationsAgentsWebhooksGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3Webhook
+
+-- | Retrieves the specified webhook.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsWebhooksGet' smart constructor.
+data DialogFlowProjectsLocationsAgentsWebhooksGet = DialogFlowProjectsLocationsAgentsWebhooksGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the webhook. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsWebhooksGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsWebhooksGet ::
+  -- |  Required. The name of the webhook. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsWebhooksGet
+newDialogFlowProjectsLocationsAgentsWebhooksGet name =
+  DialogFlowProjectsLocationsAgentsWebhooksGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsWebhooksGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsWebhooksGet =
+      GoogleCloudDialogflowCxV3Webhook
+  type
+    Scopes DialogFlowProjectsLocationsAgentsWebhooksGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsWebhooksGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsWebhooksGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/List.hs
@@ -0,0 +1,128 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Webhooks.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)
+--
+-- Returns the list of all webhooks in the specified agent.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.webhooks.list@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsWebhooksListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsWebhooksList (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.webhooks.list@ method which the
+-- 'DialogFlowProjectsLocationsAgentsWebhooksList' request conforms to.
+type DialogFlowProjectsLocationsAgentsWebhooksListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "webhooks"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3ListWebhooksResponse
+
+-- | Returns the list of all webhooks in the specified agent.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsWebhooksList' smart constructor.
+data DialogFlowProjectsLocationsAgentsWebhooksList = DialogFlowProjectsLocationsAgentsWebhooksList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 100 and at most 1000.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The agent to list all webhooks for. Format: @projects\/\/locations\/\/agents\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsWebhooksList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsWebhooksList ::
+  -- |  Required. The agent to list all webhooks for. Format: @projects\/\/locations\/\/agents\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsAgentsWebhooksList
+newDialogFlowProjectsLocationsAgentsWebhooksList parent =
+  DialogFlowProjectsLocationsAgentsWebhooksList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsWebhooksList
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsWebhooksList =
+      GoogleCloudDialogflowCxV3ListWebhooksResponse
+  type
+    Scopes DialogFlowProjectsLocationsAgentsWebhooksList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsWebhooksList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsWebhooksListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Agents/Webhooks/Patch.hs
@@ -0,0 +1,129 @@
+{-# 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.DialogFlow.Projects.Locations.Agents.Webhooks.Patch
+-- 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 the specified webhook.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.agents.webhooks.patch@.
+module Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsAgentsWebhooksPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsAgentsWebhooksPatch (..),
+    newDialogFlowProjectsLocationsAgentsWebhooksPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.agents.webhooks.patch@ method which the
+-- 'DialogFlowProjectsLocationsAgentsWebhooksPatch' request conforms to.
+type DialogFlowProjectsLocationsAgentsWebhooksPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3Webhook
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3Webhook
+
+-- | Updates the specified webhook.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsAgentsWebhooksPatch' smart constructor.
+data DialogFlowProjectsLocationsAgentsWebhooksPatch = DialogFlowProjectsLocationsAgentsWebhooksPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3Webhook,
+    -- | The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsAgentsWebhooksPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsAgentsWebhooksPatch ::
+  -- |  The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: @projects\/\/locations\/\/agents\/\/webhooks\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3Webhook ->
+  DialogFlowProjectsLocationsAgentsWebhooksPatch
+newDialogFlowProjectsLocationsAgentsWebhooksPatch name payload =
+  DialogFlowProjectsLocationsAgentsWebhooksPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsAgentsWebhooksPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsAgentsWebhooksPatch =
+      GoogleCloudDialogflowCxV3Webhook
+  type
+    Scopes DialogFlowProjectsLocationsAgentsWebhooksPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsAgentsWebhooksPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsAgentsWebhooksPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Get.hs
@@ -0,0 +1,111 @@
+{-# 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.DialogFlow.Projects.Locations.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)
+--
+-- Gets information about a location.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.get@.
+module Gogol.DialogFlow.Projects.Locations.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsGet (..),
+    newDialogFlowProjectsLocationsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.get@ method which the
+-- 'DialogFlowProjectsLocationsGet' request conforms to.
+type DialogFlowProjectsLocationsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudLocationLocation
+
+-- | Gets information about a location.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsGet' smart constructor.
+data DialogFlowProjectsLocationsGet = DialogFlowProjectsLocationsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Resource name for the location.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsGet ::
+  -- |  Resource name for the location. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsGet
+newDialogFlowProjectsLocationsGet name =
+  DialogFlowProjectsLocationsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsGet where
+  type
+    Rs DialogFlowProjectsLocationsGet =
+      GoogleCloudLocationLocation
+  type
+    Scopes DialogFlowProjectsLocationsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DialogFlowProjectsLocationsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/List.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Locations.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 information about the supported locations for this service.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.list@.
+module Gogol.DialogFlow.Projects.Locations.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsList (..),
+    newDialogFlowProjectsLocationsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.list@ method which the
+-- 'DialogFlowProjectsLocationsList' request conforms to.
+type DialogFlowProjectsLocationsListResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> "locations"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "filter" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudLocationListLocationsResponse
+
+-- | Lists information about the supported locations for this service.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsList' smart constructor.
+data DialogFlowProjectsLocationsList = DialogFlowProjectsLocationsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | A filter to narrow down results to a preferred subset. The filtering language accepts strings like @\"displayName=tokyo\"@, and is documented in more detail in <https://google.aip.dev/160 AIP-160>.
+    filter :: (Core.Maybe Core.Text),
+    -- | The resource that owns the locations collection, if applicable.
+    name :: Core.Text,
+    -- | The maximum number of results to return. If not set, the service selects a default.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | A page token received from the @next_page_token@ field in the response. Send that page token to receive the subsequent page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsList ::
+  -- |  The resource that owns the locations collection, if applicable. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsList
+newDialogFlowProjectsLocationsList name =
+  DialogFlowProjectsLocationsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      filter = Core.Nothing,
+      name = name,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsLocationsList where
+  type
+    Rs DialogFlowProjectsLocationsList =
+      GoogleCloudLocationListLocationsResponse
+  type
+    Scopes DialogFlowProjectsLocationsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsList {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      filter
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DialogFlowProjectsLocationsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Operations/Cancel.hs b/gen/Gogol/DialogFlow/Projects/Locations/Operations/Cancel.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Operations/Cancel.hs
@@ -0,0 +1,116 @@
+{-# 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.DialogFlow.Projects.Locations.Operations.Cancel
+-- 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)
+--
+-- Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn\'t support this method, it returns @google.rpc.Code.UNIMPLEMENTED@. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of @1@, corresponding to @Code.CANCELLED@.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.operations.cancel@.
+module Gogol.DialogFlow.Projects.Locations.Operations.Cancel
+  ( -- * Resource
+    DialogFlowProjectsLocationsOperationsCancelResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsOperationsCancel (..),
+    newDialogFlowProjectsLocationsOperationsCancel,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.operations.cancel@ method which the
+-- 'DialogFlowProjectsLocationsOperationsCancel' request conforms to.
+type DialogFlowProjectsLocationsOperationsCancelResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "cancel" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Post '[Core.JSON] GoogleProtobufEmpty
+
+-- | Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn\'t support this method, it returns @google.rpc.Code.UNIMPLEMENTED@. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of @1@, corresponding to @Code.CANCELLED@.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsOperationsCancel' smart constructor.
+data DialogFlowProjectsLocationsOperationsCancel = DialogFlowProjectsLocationsOperationsCancel
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the operation resource to be cancelled.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsOperationsCancel' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsOperationsCancel ::
+  -- |  The name of the operation resource to be cancelled. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsOperationsCancel
+newDialogFlowProjectsLocationsOperationsCancel name =
+  DialogFlowProjectsLocationsOperationsCancel
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsOperationsCancel
+  where
+  type
+    Rs DialogFlowProjectsLocationsOperationsCancel =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsOperationsCancel =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsOperationsCancel {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsOperationsCancelResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Operations/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/Operations/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Operations/Get.hs
@@ -0,0 +1,116 @@
+{-# 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.DialogFlow.Projects.Locations.Operations.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)
+--
+-- Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.operations.get@.
+module Gogol.DialogFlow.Projects.Locations.Operations.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsOperationsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsOperationsGet (..),
+    newDialogFlowProjectsLocationsOperationsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.operations.get@ method which the
+-- 'DialogFlowProjectsLocationsOperationsGet' request conforms to.
+type DialogFlowProjectsLocationsOperationsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleLongrunningOperation
+
+-- | Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsOperationsGet' smart constructor.
+data DialogFlowProjectsLocationsOperationsGet = DialogFlowProjectsLocationsOperationsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the operation resource.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsOperationsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsOperationsGet ::
+  -- |  The name of the operation resource. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsOperationsGet
+newDialogFlowProjectsLocationsOperationsGet name =
+  DialogFlowProjectsLocationsOperationsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsOperationsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsOperationsGet =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsLocationsOperationsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsOperationsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsOperationsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/Operations/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/Operations/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/Operations/List.hs
@@ -0,0 +1,132 @@
+{-# 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.DialogFlow.Projects.Locations.Operations.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 operations that match the specified filter in the request. If the server doesn\'t support this method, it returns @UNIMPLEMENTED@.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.operations.list@.
+module Gogol.DialogFlow.Projects.Locations.Operations.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsOperationsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsOperationsList (..),
+    newDialogFlowProjectsLocationsOperationsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.operations.list@ method which the
+-- 'DialogFlowProjectsLocationsOperationsList' request conforms to.
+type DialogFlowProjectsLocationsOperationsListResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> "operations"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "filter" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleLongrunningListOperationsResponse
+
+-- | Lists operations that match the specified filter in the request. If the server doesn\'t support this method, it returns @UNIMPLEMENTED@.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsOperationsList' smart constructor.
+data DialogFlowProjectsLocationsOperationsList = DialogFlowProjectsLocationsOperationsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The standard list filter.
+    filter :: (Core.Maybe Core.Text),
+    -- | The name of the operation\'s parent resource.
+    name :: Core.Text,
+    -- | The standard list page size.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The standard list page token.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsOperationsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsOperationsList ::
+  -- |  The name of the operation\'s parent resource. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsOperationsList
+newDialogFlowProjectsLocationsOperationsList name =
+  DialogFlowProjectsLocationsOperationsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      filter = Core.Nothing,
+      name = name,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsOperationsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsOperationsList =
+      GoogleLongrunningListOperationsResponse
+  type
+    Scopes DialogFlowProjectsLocationsOperationsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsOperationsList {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      filter
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsOperationsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Create.hs b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Create.hs
@@ -0,0 +1,126 @@
+{-# 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.DialogFlow.Projects.Locations.SecuritySettings.Create
+-- 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)
+--
+-- Create security settings in the specified location.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.securitySettings.create@.
+module Gogol.DialogFlow.Projects.Locations.SecuritySettings.Create
+  ( -- * Resource
+    DialogFlowProjectsLocationsSecuritySettingsCreateResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsSecuritySettingsCreate (..),
+    newDialogFlowProjectsLocationsSecuritySettingsCreate,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.securitySettings.create@ method which the
+-- 'DialogFlowProjectsLocationsSecuritySettingsCreate' request conforms to.
+type DialogFlowProjectsLocationsSecuritySettingsCreateResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "securitySettings"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3SecuritySettings
+    Core.:> Core.Post '[Core.JSON] GoogleCloudDialogflowCxV3SecuritySettings
+
+-- | Create security settings in the specified location.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsSecuritySettingsCreate' smart constructor.
+data DialogFlowProjectsLocationsSecuritySettingsCreate = DialogFlowProjectsLocationsSecuritySettingsCreate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The location to create an SecuritySettings for. Format: @projects\/\/locations\/@.
+    parent :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SecuritySettings,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsSecuritySettingsCreate' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsSecuritySettingsCreate ::
+  -- |  Required. The location to create an SecuritySettings for. Format: @projects\/\/locations\/@. See 'parent'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SecuritySettings ->
+  DialogFlowProjectsLocationsSecuritySettingsCreate
+newDialogFlowProjectsLocationsSecuritySettingsCreate parent payload =
+  DialogFlowProjectsLocationsSecuritySettingsCreate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      parent = parent,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsSecuritySettingsCreate
+  where
+  type
+    Rs DialogFlowProjectsLocationsSecuritySettingsCreate =
+      GoogleCloudDialogflowCxV3SecuritySettings
+  type
+    Scopes DialogFlowProjectsLocationsSecuritySettingsCreate =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsSecuritySettingsCreate {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsSecuritySettingsCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Delete.hs b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Delete.hs
@@ -0,0 +1,118 @@
+{-# 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.DialogFlow.Projects.Locations.SecuritySettings.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)
+--
+-- Deletes the specified SecuritySettings.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.securitySettings.delete@.
+module Gogol.DialogFlow.Projects.Locations.SecuritySettings.Delete
+  ( -- * Resource
+    DialogFlowProjectsLocationsSecuritySettingsDeleteResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsSecuritySettingsDelete (..),
+    newDialogFlowProjectsLocationsSecuritySettingsDelete,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.securitySettings.delete@ method which the
+-- 'DialogFlowProjectsLocationsSecuritySettingsDelete' request conforms to.
+type DialogFlowProjectsLocationsSecuritySettingsDeleteResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] GoogleProtobufEmpty
+
+-- | Deletes the specified SecuritySettings.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsSecuritySettingsDelete' smart constructor.
+data DialogFlowProjectsLocationsSecuritySettingsDelete = DialogFlowProjectsLocationsSecuritySettingsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The name of the SecuritySettings to delete. Format: @projects\/\/locations\/\/securitySettings\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsSecuritySettingsDelete' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsSecuritySettingsDelete ::
+  -- |  Required. The name of the SecuritySettings to delete. Format: @projects\/\/locations\/\/securitySettings\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsSecuritySettingsDelete
+newDialogFlowProjectsLocationsSecuritySettingsDelete name =
+  DialogFlowProjectsLocationsSecuritySettingsDelete
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsSecuritySettingsDelete
+  where
+  type
+    Rs DialogFlowProjectsLocationsSecuritySettingsDelete =
+      GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsLocationsSecuritySettingsDelete =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsSecuritySettingsDelete {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsSecuritySettingsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Get.hs b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Get.hs
@@ -0,0 +1,117 @@
+{-# 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.DialogFlow.Projects.Locations.SecuritySettings.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 the specified SecuritySettings. The returned settings may be stale by up to 1 minute.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.securitySettings.get@.
+module Gogol.DialogFlow.Projects.Locations.SecuritySettings.Get
+  ( -- * Resource
+    DialogFlowProjectsLocationsSecuritySettingsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsSecuritySettingsGet (..),
+    newDialogFlowProjectsLocationsSecuritySettingsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.securitySettings.get@ method which the
+-- 'DialogFlowProjectsLocationsSecuritySettingsGet' request conforms to.
+type DialogFlowProjectsLocationsSecuritySettingsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleCloudDialogflowCxV3SecuritySettings
+
+-- | Retrieves the specified SecuritySettings. The returned settings may be stale by up to 1 minute.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsSecuritySettingsGet' smart constructor.
+data DialogFlowProjectsLocationsSecuritySettingsGet = DialogFlowProjectsLocationsSecuritySettingsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Resource name of the settings. Format: @projects\/\/locations\/\/securitySettings\/@.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsSecuritySettingsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsSecuritySettingsGet ::
+  -- |  Required. Resource name of the settings. Format: @projects\/\/locations\/\/securitySettings\/@. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsLocationsSecuritySettingsGet
+newDialogFlowProjectsLocationsSecuritySettingsGet name =
+  DialogFlowProjectsLocationsSecuritySettingsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsSecuritySettingsGet
+  where
+  type
+    Rs DialogFlowProjectsLocationsSecuritySettingsGet =
+      GoogleCloudDialogflowCxV3SecuritySettings
+  type
+    Scopes DialogFlowProjectsLocationsSecuritySettingsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsSecuritySettingsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsSecuritySettingsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/List.hs b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/List.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.SecuritySettings.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)
+--
+-- Returns the list of all security settings in the specified location.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.securitySettings.list@.
+module Gogol.DialogFlow.Projects.Locations.SecuritySettings.List
+  ( -- * Resource
+    DialogFlowProjectsLocationsSecuritySettingsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsSecuritySettingsList (..),
+    newDialogFlowProjectsLocationsSecuritySettingsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.securitySettings.list@ method which the
+-- 'DialogFlowProjectsLocationsSecuritySettingsList' request conforms to.
+type DialogFlowProjectsLocationsSecuritySettingsListResource =
+  "v3"
+    Core.:> Core.Capture "parent" Core.Text
+    Core.:> "securitySettings"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+
+-- | Returns the list of all security settings in the specified location.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsSecuritySettingsList' smart constructor.
+data DialogFlowProjectsLocationsSecuritySettingsList = DialogFlowProjectsLocationsSecuritySettingsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The maximum number of items to return in a single page. By default 20 and at most 100.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The next/page/token value returned from a previous list request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The location to list all security settings for. Format: @projects\/\/locations\/@.
+    parent :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsSecuritySettingsList' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsSecuritySettingsList ::
+  -- |  Required. The location to list all security settings for. Format: @projects\/\/locations\/@. See 'parent'.
+  Core.Text ->
+  DialogFlowProjectsLocationsSecuritySettingsList
+newDialogFlowProjectsLocationsSecuritySettingsList parent =
+  DialogFlowProjectsLocationsSecuritySettingsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      parent = parent,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsSecuritySettingsList
+  where
+  type
+    Rs DialogFlowProjectsLocationsSecuritySettingsList =
+      GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+  type
+    Scopes DialogFlowProjectsLocationsSecuritySettingsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsSecuritySettingsList {..} =
+    go
+      parent
+      xgafv
+      accessToken
+      callback
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsLocationsSecuritySettingsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Patch.hs b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Locations/SecuritySettings/Patch.hs
@@ -0,0 +1,130 @@
+{-# 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.DialogFlow.Projects.Locations.SecuritySettings.Patch
+-- 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 the specified SecuritySettings.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.locations.securitySettings.patch@.
+module Gogol.DialogFlow.Projects.Locations.SecuritySettings.Patch
+  ( -- * Resource
+    DialogFlowProjectsLocationsSecuritySettingsPatchResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsLocationsSecuritySettingsPatch (..),
+    newDialogFlowProjectsLocationsSecuritySettingsPatch,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.locations.securitySettings.patch@ method which the
+-- 'DialogFlowProjectsLocationsSecuritySettingsPatch' request conforms to.
+type DialogFlowProjectsLocationsSecuritySettingsPatchResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "updateMask" Core.FieldMask
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] GoogleCloudDialogflowCxV3SecuritySettings
+    Core.:> Core.Patch '[Core.JSON] GoogleCloudDialogflowCxV3SecuritySettings
+
+-- | Updates the specified SecuritySettings.
+--
+-- /See:/ 'newDialogFlowProjectsLocationsSecuritySettingsPatch' smart constructor.
+data DialogFlowProjectsLocationsSecuritySettingsPatch = DialogFlowProjectsLocationsSecuritySettingsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: @projects\/\/locations\/\/securitySettings\/@.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: GoogleCloudDialogflowCxV3SecuritySettings,
+    -- | Required. The mask to control which fields get updated. If the mask is not present, all fields will be updated.
+    updateMask :: (Core.Maybe Core.FieldMask),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsLocationsSecuritySettingsPatch' with the minimum fields required to make a request.
+newDialogFlowProjectsLocationsSecuritySettingsPatch ::
+  -- |  Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: @projects\/\/locations\/\/securitySettings\/@. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  GoogleCloudDialogflowCxV3SecuritySettings ->
+  DialogFlowProjectsLocationsSecuritySettingsPatch
+newDialogFlowProjectsLocationsSecuritySettingsPatch name payload =
+  DialogFlowProjectsLocationsSecuritySettingsPatch
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      updateMask = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DialogFlowProjectsLocationsSecuritySettingsPatch
+  where
+  type
+    Rs DialogFlowProjectsLocationsSecuritySettingsPatch =
+      GoogleCloudDialogflowCxV3SecuritySettings
+  type
+    Scopes DialogFlowProjectsLocationsSecuritySettingsPatch =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsLocationsSecuritySettingsPatch {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      updateMask
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                DialogFlowProjectsLocationsSecuritySettingsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Operations/Cancel.hs b/gen/Gogol/DialogFlow/Projects/Operations/Cancel.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Operations/Cancel.hs
@@ -0,0 +1,111 @@
+{-# 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.DialogFlow.Projects.Operations.Cancel
+-- 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)
+--
+-- Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn\'t support this method, it returns @google.rpc.Code.UNIMPLEMENTED@. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of @1@, corresponding to @Code.CANCELLED@.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.operations.cancel@.
+module Gogol.DialogFlow.Projects.Operations.Cancel
+  ( -- * Resource
+    DialogFlowProjectsOperationsCancelResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsOperationsCancel (..),
+    newDialogFlowProjectsOperationsCancel,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.operations.cancel@ method which the
+-- 'DialogFlowProjectsOperationsCancel' request conforms to.
+type DialogFlowProjectsOperationsCancelResource =
+  "v3"
+    Core.:> Core.CaptureMode "name" "cancel" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Post '[Core.JSON] GoogleProtobufEmpty
+
+-- | Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn\'t support this method, it returns @google.rpc.Code.UNIMPLEMENTED@. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of @1@, corresponding to @Code.CANCELLED@.
+--
+-- /See:/ 'newDialogFlowProjectsOperationsCancel' smart constructor.
+data DialogFlowProjectsOperationsCancel = DialogFlowProjectsOperationsCancel
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the operation resource to be cancelled.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsOperationsCancel' with the minimum fields required to make a request.
+newDialogFlowProjectsOperationsCancel ::
+  -- |  The name of the operation resource to be cancelled. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsOperationsCancel
+newDialogFlowProjectsOperationsCancel name =
+  DialogFlowProjectsOperationsCancel
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsOperationsCancel where
+  type Rs DialogFlowProjectsOperationsCancel = GoogleProtobufEmpty
+  type
+    Scopes DialogFlowProjectsOperationsCancel =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsOperationsCancel {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DialogFlowProjectsOperationsCancelResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Operations/Get.hs b/gen/Gogol/DialogFlow/Projects/Operations/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Operations/Get.hs
@@ -0,0 +1,111 @@
+{-# 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.DialogFlow.Projects.Operations.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)
+--
+-- Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.operations.get@.
+module Gogol.DialogFlow.Projects.Operations.Get
+  ( -- * Resource
+    DialogFlowProjectsOperationsGetResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsOperationsGet (..),
+    newDialogFlowProjectsOperationsGet,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.operations.get@ method which the
+-- 'DialogFlowProjectsOperationsGet' request conforms to.
+type DialogFlowProjectsOperationsGetResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleLongrunningOperation
+
+-- | Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
+--
+-- /See:/ 'newDialogFlowProjectsOperationsGet' smart constructor.
+data DialogFlowProjectsOperationsGet = DialogFlowProjectsOperationsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The name of the operation resource.
+    name :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsOperationsGet' with the minimum fields required to make a request.
+newDialogFlowProjectsOperationsGet ::
+  -- |  The name of the operation resource. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsOperationsGet
+newDialogFlowProjectsOperationsGet name =
+  DialogFlowProjectsOperationsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsOperationsGet where
+  type
+    Rs DialogFlowProjectsOperationsGet =
+      GoogleLongrunningOperation
+  type
+    Scopes DialogFlowProjectsOperationsGet =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsOperationsGet {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DialogFlowProjectsOperationsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Projects/Operations/List.hs b/gen/Gogol/DialogFlow/Projects/Operations/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Projects/Operations/List.hs
@@ -0,0 +1,127 @@
+{-# 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.DialogFlow.Projects.Operations.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 operations that match the specified filter in the request. If the server doesn\'t support this method, it returns @UNIMPLEMENTED@.
+--
+-- /See:/ <https://cloud.google.com/dialogflow/ Dialogflow API Reference> for @dialogflow.projects.operations.list@.
+module Gogol.DialogFlow.Projects.Operations.List
+  ( -- * Resource
+    DialogFlowProjectsOperationsListResource,
+
+    -- ** Constructing a Request
+    DialogFlowProjectsOperationsList (..),
+    newDialogFlowProjectsOperationsList,
+  )
+where
+
+import Gogol.DialogFlow.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dialogflow.projects.operations.list@ method which the
+-- 'DialogFlowProjectsOperationsList' request conforms to.
+type DialogFlowProjectsOperationsListResource =
+  "v3"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> "operations"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "filter" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] GoogleLongrunningListOperationsResponse
+
+-- | Lists operations that match the specified filter in the request. If the server doesn\'t support this method, it returns @UNIMPLEMENTED@.
+--
+-- /See:/ 'newDialogFlowProjectsOperationsList' smart constructor.
+data DialogFlowProjectsOperationsList = DialogFlowProjectsOperationsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The standard list filter.
+    filter :: (Core.Maybe Core.Text),
+    -- | The name of the operation\'s parent resource.
+    name :: Core.Text,
+    -- | The standard list page size.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | The standard list page token.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DialogFlowProjectsOperationsList' with the minimum fields required to make a request.
+newDialogFlowProjectsOperationsList ::
+  -- |  The name of the operation\'s parent resource. See 'name'.
+  Core.Text ->
+  DialogFlowProjectsOperationsList
+newDialogFlowProjectsOperationsList name =
+  DialogFlowProjectsOperationsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      filter = Core.Nothing,
+      name = name,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DialogFlowProjectsOperationsList where
+  type
+    Rs DialogFlowProjectsOperationsList =
+      GoogleLongrunningListOperationsResponse
+  type
+    Scopes DialogFlowProjectsOperationsList =
+      '[CloudPlatform'FullControl, Dialogflow'FullControl]
+  requestClient DialogFlowProjectsOperationsList {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      filter
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dialogFlowService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DialogFlowProjectsOperationsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DialogFlow/Types.hs b/gen/Gogol/DialogFlow/Types.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DialogFlow/Types.hs
@@ -0,0 +1,2853 @@
+{-# 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.DialogFlow.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.DialogFlow.Types
+  ( -- * Configuration
+    dialogFlowService,
+
+    -- * OAuth Scopes
+    CloudPlatform'FullControl,
+    Dialogflow'FullControl,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettings
+    GoogleCloudDialogflowCxV3AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsDtmfSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsLoggingSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3AdvancedSettingsSpeechSettings_Models,
+
+    -- ** GoogleCloudDialogflowCxV3Agent
+    GoogleCloudDialogflowCxV3Agent (..),
+    newGoogleCloudDialogflowCxV3Agent,
+
+    -- ** GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings
+    GoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings (..),
+    newGoogleCloudDialogflowCxV3AgentAnswerFeedbackSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentClientCertificateSettings
+    GoogleCloudDialogflowCxV3AgentClientCertificateSettings (..),
+    newGoogleCloudDialogflowCxV3AgentClientCertificateSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings
+    GoogleCloudDialogflowCxV3AgentGenAppBuilderSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGenAppBuilderSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGitIntegrationSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings
+    GoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings (..),
+    newGoogleCloudDialogflowCxV3AgentGitIntegrationSettingsGithubSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentPersonalizationSettings
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings,
+
+    -- ** GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata
+    GoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3AgentPersonalizationSettings_DefaultEndUserMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3AgentValidationResult
+    GoogleCloudDialogflowCxV3AgentValidationResult (..),
+    newGoogleCloudDialogflowCxV3AgentValidationResult,
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedback
+    GoogleCloudDialogflowCxV3AnswerFeedback (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedback,
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedback_Rating
+    GoogleCloudDialogflowCxV3AnswerFeedback_Rating (..),
+
+    -- ** GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason
+    GoogleCloudDialogflowCxV3AnswerFeedbackRatingReason (..),
+    newGoogleCloudDialogflowCxV3AnswerFeedbackRatingReason,
+
+    -- ** GoogleCloudDialogflowCxV3AudioInput
+    GoogleCloudDialogflowCxV3AudioInput (..),
+    newGoogleCloudDialogflowCxV3AudioInput,
+
+    -- ** GoogleCloudDialogflowCxV3BargeInConfig
+    GoogleCloudDialogflowCxV3BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3BargeInConfig,
+
+    -- ** GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchDeleteTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesRequest
+    GoogleCloudDialogflowCxV3BatchRunTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3BatchRunTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpec
+    GoogleCloudDialogflowCxV3BoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_AttributeType (..),
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpec_InterpolationType (..),
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint
+    GoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint (..),
+    newGoogleCloudDialogflowCxV3BoostSpecConditionBoostSpecBoostControlSpecControlPoint,
+
+    -- ** GoogleCloudDialogflowCxV3BoostSpecs
+    GoogleCloudDialogflowCxV3BoostSpecs (..),
+    newGoogleCloudDialogflowCxV3BoostSpecs,
+
+    -- ** GoogleCloudDialogflowCxV3CalculateCoverageResponse
+    GoogleCloudDialogflowCxV3CalculateCoverageResponse (..),
+    newGoogleCloudDialogflowCxV3CalculateCoverageResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Changelog
+    GoogleCloudDialogflowCxV3Changelog (..),
+    newGoogleCloudDialogflowCxV3Changelog,
+
+    -- ** GoogleCloudDialogflowCxV3CompareVersionsRequest
+    GoogleCloudDialogflowCxV3CompareVersionsRequest (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3CompareVersionsResponse
+    GoogleCloudDialogflowCxV3CompareVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3CompareVersionsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ContinuousTestResult
+    GoogleCloudDialogflowCxV3ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3ContinuousTestResult,
+
+    -- ** GoogleCloudDialogflowCxV3ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3ContinuousTestResult_Result (..),
+
+    -- ** GoogleCloudDialogflowCxV3ConversationSignals
+    GoogleCloudDialogflowCxV3ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3ConversationSignals,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurn
+    GoogleCloudDialogflowCxV3ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3ConversationTurn,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnUserInput_InjectedParameters,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- ** GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3CreateVersionOperationMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection
+    GoogleCloudDialogflowCxV3DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnection,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3DataStoreConnection_DataStoreType (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3DataStoreConnection_DocumentProcessingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerGenerationModelCallSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsAnswerPart,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsCitedSnippet,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Decision (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsGroundingSignals_Score (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsRewriterModelCallSignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals,
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_BannedPhraseMatch (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSafetySignals_Decision (..),
+
+    -- ** GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet
+    GoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet (..),
+    newGoogleCloudDialogflowCxV3DataStoreConnectionSignalsSearchSnippet,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowMetadata
+    GoogleCloudDialogflowCxV3DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3DeployFlowMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowRequest
+    GoogleCloudDialogflowCxV3DeployFlowRequest (..),
+    newGoogleCloudDialogflowCxV3DeployFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3DeployFlowResponse
+    GoogleCloudDialogflowCxV3DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3DeployFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Deployment
+    GoogleCloudDialogflowCxV3Deployment (..),
+    newGoogleCloudDialogflowCxV3Deployment,
+
+    -- ** GoogleCloudDialogflowCxV3Deployment_State
+    GoogleCloudDialogflowCxV3Deployment_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3DeploymentResult
+    GoogleCloudDialogflowCxV3DeploymentResult (..),
+    newGoogleCloudDialogflowCxV3DeploymentResult,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentRequest
+    GoogleCloudDialogflowCxV3DetectIntentRequest (..),
+    newGoogleCloudDialogflowCxV3DetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentResponse
+    GoogleCloudDialogflowCxV3DetectIntentResponse (..),
+    newGoogleCloudDialogflowCxV3DetectIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType
+    GoogleCloudDialogflowCxV3DetectIntentResponse_ResponseType (..),
+
+    -- ** GoogleCloudDialogflowCxV3DtmfInput
+    GoogleCloudDialogflowCxV3DtmfInput (..),
+    newGoogleCloudDialogflowCxV3DtmfInput,
+
+    -- ** GoogleCloudDialogflowCxV3EntityType
+    GoogleCloudDialogflowCxV3EntityType (..),
+    newGoogleCloudDialogflowCxV3EntityType,
+
+    -- ** GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode
+    GoogleCloudDialogflowCxV3EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3EntityType_Kind
+    GoogleCloudDialogflowCxV3EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowCxV3EntityTypeEntity
+    GoogleCloudDialogflowCxV3EntityTypeEntity (..),
+    newGoogleCloudDialogflowCxV3EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase
+    GoogleCloudDialogflowCxV3EntityTypeExcludedPhrase (..),
+    newGoogleCloudDialogflowCxV3EntityTypeExcludedPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3Environment
+    GoogleCloudDialogflowCxV3Environment (..),
+    newGoogleCloudDialogflowCxV3Environment,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentTestCasesConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentVersionConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3EnvironmentWebhookConfig,
+
+    -- ** GoogleCloudDialogflowCxV3EventHandler
+    GoogleCloudDialogflowCxV3EventHandler (..),
+    newGoogleCloudDialogflowCxV3EventHandler,
+
+    -- ** GoogleCloudDialogflowCxV3EventInput
+    GoogleCloudDialogflowCxV3EventInput (..),
+    newGoogleCloudDialogflowCxV3EventInput,
+
+    -- ** GoogleCloudDialogflowCxV3Experiment
+    GoogleCloudDialogflowCxV3Experiment (..),
+    newGoogleCloudDialogflowCxV3Experiment,
+
+    -- ** GoogleCloudDialogflowCxV3Experiment_State
+    GoogleCloudDialogflowCxV3Experiment_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentDefinition
+    GoogleCloudDialogflowCxV3ExperimentDefinition (..),
+    newGoogleCloudDialogflowCxV3ExperimentDefinition,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResult
+    GoogleCloudDialogflowCxV3ExperimentResult (..),
+    newGoogleCloudDialogflowCxV3ExperimentResult,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval
+    GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric
+    GoogleCloudDialogflowCxV3ExperimentResultMetric (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultMetric,
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_CountType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultMetric_Type
+    GoogleCloudDialogflowCxV3ExperimentResultMetric_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics
+    GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics (..),
+    newGoogleCloudDialogflowCxV3ExperimentResultVersionMetrics,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequest
+    GoogleCloudDialogflowCxV3ExportAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportAgentRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination
+    GoogleCloudDialogflowCxV3ExportAgentRequestGitDestination (..),
+    newGoogleCloudDialogflowCxV3ExportAgentRequestGitDestination,
+
+    -- ** GoogleCloudDialogflowCxV3ExportAgentResponse
+    GoogleCloudDialogflowCxV3ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportEntityTypesRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportFlowRequest
+    GoogleCloudDialogflowCxV3ExportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ExportFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportFlowResponse
+    GoogleCloudDialogflowCxV3ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ExportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsRequest
+    GoogleCloudDialogflowCxV3ExportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportIntentsRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportIntentsResponse
+    GoogleCloudDialogflowCxV3ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ExportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesRequest
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat
+    GoogleCloudDialogflowCxV3ExportTestCasesRequest_DataFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ExportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3FilterSpecs
+    GoogleCloudDialogflowCxV3FilterSpecs (..),
+    newGoogleCloudDialogflowCxV3FilterSpecs,
+
+    -- ** GoogleCloudDialogflowCxV3Flow
+    GoogleCloudDialogflowCxV3Flow (..),
+    newGoogleCloudDialogflowCxV3Flow,
+
+    -- ** GoogleCloudDialogflowCxV3FlowImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy (..),
+    newGoogleCloudDialogflowCxV3FlowImportStrategy,
+
+    -- ** GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy
+    GoogleCloudDialogflowCxV3FlowImportStrategy_GlobalImportStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
+    GoogleCloudDialogflowCxV3FlowMultiLanguageSettings (..),
+    newGoogleCloudDialogflowCxV3FlowMultiLanguageSettings,
+
+    -- ** GoogleCloudDialogflowCxV3FlowValidationResult
+    GoogleCloudDialogflowCxV3FlowValidationResult (..),
+    newGoogleCloudDialogflowCxV3FlowValidationResult,
+
+    -- ** GoogleCloudDialogflowCxV3Form
+    GoogleCloudDialogflowCxV3Form (..),
+    newGoogleCloudDialogflowCxV3Form,
+
+    -- ** GoogleCloudDialogflowCxV3FormParameter
+    GoogleCloudDialogflowCxV3FormParameter (..),
+    newGoogleCloudDialogflowCxV3FormParameter,
+
+    -- ** GoogleCloudDialogflowCxV3FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3FormParameterFillBehavior,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillIntentRequest
+    GoogleCloudDialogflowCxV3FulfillIntentRequest (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillIntentResponse
+    GoogleCloudDialogflowCxV3FulfillIntentResponse (..),
+    newGoogleCloudDialogflowCxV3FulfillIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Fulfillment
+    GoogleCloudDialogflowCxV3Fulfillment (..),
+    newGoogleCloudDialogflowCxV3Fulfillment,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCases,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent,
+
+    -- ** GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3FulfillmentSetParameterAction,
+
+    -- ** GoogleCloudDialogflowCxV3GcsDestination
+    GoogleCloudDialogflowCxV3GcsDestination (..),
+    newGoogleCloudDialogflowCxV3GcsDestination,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettings
+    GoogleCloudDialogflowCxV3GenerativeSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettings,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettings,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate
+    GoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsFallbackSettingsPromptTemplate,
+
+    -- ** GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3GenerativeSettingsKnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3Generator
+    GoogleCloudDialogflowCxV3Generator (..),
+    newGoogleCloudDialogflowCxV3Generator,
+
+    -- ** GoogleCloudDialogflowCxV3GeneratorModelParameter
+    GoogleCloudDialogflowCxV3GeneratorModelParameter (..),
+    newGoogleCloudDialogflowCxV3GeneratorModelParameter,
+
+    -- ** GoogleCloudDialogflowCxV3GeneratorPlaceholder
+    GoogleCloudDialogflowCxV3GeneratorPlaceholder (..),
+    newGoogleCloudDialogflowCxV3GeneratorPlaceholder,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesRequest
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportEntityTypesRequest_MergeOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportEntityTypesResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowRequest
+    GoogleCloudDialogflowCxV3ImportFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ImportFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption
+    GoogleCloudDialogflowCxV3ImportFlowRequest_ImportOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportFlowResponse
+    GoogleCloudDialogflowCxV3ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3ImportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsRequest
+    GoogleCloudDialogflowCxV3ImportIntentsRequest (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption
+    GoogleCloudDialogflowCxV3ImportIntentsRequest_MergeOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsResponse
+    GoogleCloudDialogflowCxV3ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3ImportIntentsResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesRequest
+    GoogleCloudDialogflowCxV3ImportTestCasesRequest (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ImportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3InlineDestination
+    GoogleCloudDialogflowCxV3InlineDestination (..),
+    newGoogleCloudDialogflowCxV3InlineDestination,
+
+    -- ** GoogleCloudDialogflowCxV3InlineSource
+    GoogleCloudDialogflowCxV3InlineSource (..),
+    newGoogleCloudDialogflowCxV3InlineSource,
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig
+    GoogleCloudDialogflowCxV3InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3InputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3InputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3InputAudioConfig_ModelVariant (..),
+
+    -- ** GoogleCloudDialogflowCxV3Intent
+    GoogleCloudDialogflowCxV3Intent (..),
+    newGoogleCloudDialogflowCxV3Intent,
+
+    -- ** GoogleCloudDialogflowCxV3Intent_Labels
+    GoogleCloudDialogflowCxV3Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3Intent_Labels,
+
+    -- ** GoogleCloudDialogflowCxV3IntentCoverage
+    GoogleCloudDialogflowCxV3IntentCoverage (..),
+    newGoogleCloudDialogflowCxV3IntentCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3IntentCoverageIntent
+    GoogleCloudDialogflowCxV3IntentCoverageIntent (..),
+    newGoogleCloudDialogflowCxV3IntentCoverageIntent,
+
+    -- ** GoogleCloudDialogflowCxV3IntentInput
+    GoogleCloudDialogflowCxV3IntentInput (..),
+    newGoogleCloudDialogflowCxV3IntentInput,
+
+    -- ** GoogleCloudDialogflowCxV3IntentParameter
+    GoogleCloudDialogflowCxV3IntentParameter (..),
+    newGoogleCloudDialogflowCxV3IntentParameter,
+
+    -- ** GoogleCloudDialogflowCxV3IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowCxV3KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3KnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3LanguageInfo
+    GoogleCloudDialogflowCxV3LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3LanguageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3ListAgentsResponse
+    GoogleCloudDialogflowCxV3ListAgentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListAgentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListChangelogsResponse
+    GoogleCloudDialogflowCxV3ListChangelogsResponse (..),
+    newGoogleCloudDialogflowCxV3ListChangelogsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse
+    GoogleCloudDialogflowCxV3ListContinuousTestResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListContinuousTestResultsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListDeploymentsResponse
+    GoogleCloudDialogflowCxV3ListDeploymentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListDeploymentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListEnvironmentsResponse
+    GoogleCloudDialogflowCxV3ListEnvironmentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListEnvironmentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListExperimentsResponse
+    GoogleCloudDialogflowCxV3ListExperimentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListExperimentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListFlowsResponse
+    GoogleCloudDialogflowCxV3ListFlowsResponse (..),
+    newGoogleCloudDialogflowCxV3ListFlowsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListGeneratorsResponse
+    GoogleCloudDialogflowCxV3ListGeneratorsResponse (..),
+    newGoogleCloudDialogflowCxV3ListGeneratorsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListIntentsResponse
+    GoogleCloudDialogflowCxV3ListIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3ListIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListPagesResponse
+    GoogleCloudDialogflowCxV3ListPagesResponse (..),
+    newGoogleCloudDialogflowCxV3ListPagesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
+    GoogleCloudDialogflowCxV3ListSecuritySettingsResponse (..),
+    newGoogleCloudDialogflowCxV3ListSecuritySettingsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse
+    GoogleCloudDialogflowCxV3ListSessionEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3ListSessionEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTestCaseResultsResponse
+    GoogleCloudDialogflowCxV3ListTestCaseResultsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCaseResultsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTestCasesResponse
+    GoogleCloudDialogflowCxV3ListTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3ListTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
+    GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse (..),
+    newGoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListVersionsResponse
+    GoogleCloudDialogflowCxV3ListVersionsResponse (..),
+    newGoogleCloudDialogflowCxV3ListVersionsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3ListWebhooksResponse
+    GoogleCloudDialogflowCxV3ListWebhooksResponse (..),
+    newGoogleCloudDialogflowCxV3ListWebhooksResponse,
+
+    -- ** GoogleCloudDialogflowCxV3LoadVersionRequest
+    GoogleCloudDialogflowCxV3LoadVersionRequest (..),
+    newGoogleCloudDialogflowCxV3LoadVersionRequest,
+
+    -- ** GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse
+    GoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse (..),
+    newGoogleCloudDialogflowCxV3LookupEnvironmentHistoryResponse,
+
+    -- ** GoogleCloudDialogflowCxV3Match
+    GoogleCloudDialogflowCxV3Match (..),
+    newGoogleCloudDialogflowCxV3Match,
+
+    -- ** GoogleCloudDialogflowCxV3Match_MatchType
+    GoogleCloudDialogflowCxV3Match_MatchType (..),
+
+    -- ** GoogleCloudDialogflowCxV3Match_Parameters
+    GoogleCloudDialogflowCxV3Match_Parameters (..),
+    newGoogleCloudDialogflowCxV3Match_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3MatchIntentRequest
+    GoogleCloudDialogflowCxV3MatchIntentRequest (..),
+    newGoogleCloudDialogflowCxV3MatchIntentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3MatchIntentResponse
+    GoogleCloudDialogflowCxV3MatchIntentResponse (..),
+    newGoogleCloudDialogflowCxV3MatchIntentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings
+    GoogleCloudDialogflowCxV3NluSettings (..),
+    newGoogleCloudDialogflowCxV3NluSettings,
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode
+    GoogleCloudDialogflowCxV3NluSettings_ModelTrainingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3NluSettings_ModelType
+    GoogleCloudDialogflowCxV3NluSettings_ModelType (..),
+
+    -- ** GoogleCloudDialogflowCxV3OutputAudioConfig
+    GoogleCloudDialogflowCxV3OutputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3OutputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3OutputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3Page
+    GoogleCloudDialogflowCxV3Page (..),
+    newGoogleCloudDialogflowCxV3Page,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfo
+    GoogleCloudDialogflowCxV3PageInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo,
+
+    -- ** GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3Phrase
+    GoogleCloudDialogflowCxV3Phrase (..),
+    newGoogleCloudDialogflowCxV3Phrase,
+
+    -- ** GoogleCloudDialogflowCxV3QueryInput
+    GoogleCloudDialogflowCxV3QueryInput (..),
+    newGoogleCloudDialogflowCxV3QueryInput,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters
+    GoogleCloudDialogflowCxV3QueryParameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata
+    GoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_EndUserMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_Parameters
+    GoogleCloudDialogflowCxV3QueryParameters_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_Payload
+    GoogleCloudDialogflowCxV3QueryParameters_Payload (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders
+    GoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders (..),
+    newGoogleCloudDialogflowCxV3QueryParameters_WebhookHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult
+    GoogleCloudDialogflowCxV3QueryResult (..),
+    newGoogleCloudDialogflowCxV3QueryResult,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_Parameters
+    GoogleCloudDialogflowCxV3QueryResult_Parameters (..),
+    newGoogleCloudDialogflowCxV3QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem
+    GoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem (..),
+    newGoogleCloudDialogflowCxV3QueryResult_WebhookPayloadsItem,
+
+    -- ** GoogleCloudDialogflowCxV3ResourceName
+    GoogleCloudDialogflowCxV3ResourceName (..),
+    newGoogleCloudDialogflowCxV3ResourceName,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage
+    GoogleCloudDialogflowCxV3ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessage_ResponseType
+    GoogleCloudDialogflowCxV3ResponseMessage_ResponseType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageConversationSuccess_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageKnowledgeInfoCard,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageOutputAudioText,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3ResponseMessagePlayAudio,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowCxV3ResponseMessageText
+    GoogleCloudDialogflowCxV3ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequest
+    GoogleCloudDialogflowCxV3RestoreAgentRequest (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption
+    GoogleCloudDialogflowCxV3RestoreAgentRequest_RestoreOption (..),
+
+    -- ** GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource
+    GoogleCloudDialogflowCxV3RestoreAgentRequestGitSource (..),
+    newGoogleCloudDialogflowCxV3RestoreAgentRequestGitSource,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutConfig
+    GoogleCloudDialogflowCxV3RolloutConfig (..),
+    newGoogleCloudDialogflowCxV3RolloutConfig,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutConfigRolloutStep
+    GoogleCloudDialogflowCxV3RolloutConfigRolloutStep (..),
+    newGoogleCloudDialogflowCxV3RolloutConfigRolloutStep,
+
+    -- ** GoogleCloudDialogflowCxV3RolloutState
+    GoogleCloudDialogflowCxV3RolloutState (..),
+    newGoogleCloudDialogflowCxV3RolloutState,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestRequest
+    GoogleCloudDialogflowCxV3RunContinuousTestRequest (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3RunContinuousTestResponse,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseRequest
+    GoogleCloudDialogflowCxV3RunTestCaseRequest (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseRequest,
+
+    -- ** GoogleCloudDialogflowCxV3RunTestCaseResponse
+    GoogleCloudDialogflowCxV3RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3RunTestCaseResponse,
+
+    -- ** GoogleCloudDialogflowCxV3SafetySettings
+    GoogleCloudDialogflowCxV3SafetySettings (..),
+    newGoogleCloudDialogflowCxV3SafetySettings,
+
+    -- ** GoogleCloudDialogflowCxV3SafetySettingsPhrase
+    GoogleCloudDialogflowCxV3SafetySettingsPhrase (..),
+    newGoogleCloudDialogflowCxV3SafetySettingsPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3SearchConfig
+    GoogleCloudDialogflowCxV3SearchConfig (..),
+    newGoogleCloudDialogflowCxV3SearchConfig,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings
+    GoogleCloudDialogflowCxV3SecuritySettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettings,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem
+    GoogleCloudDialogflowCxV3SecuritySettings_PurgeDataTypesItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionScope (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RedactionStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy
+    GoogleCloudDialogflowCxV3SecuritySettings_RetentionStrategy (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings,
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat
+    GoogleCloudDialogflowCxV3SecuritySettingsAudioExportSettings_AudioFormat (..),
+
+    -- ** GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings
+    GoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings (..),
+    newGoogleCloudDialogflowCxV3SecuritySettingsInsightsExportSettings,
+
+    -- ** GoogleCloudDialogflowCxV3SentimentAnalysisResult
+    GoogleCloudDialogflowCxV3SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3SessionEntityType
+    GoogleCloudDialogflowCxV3SessionEntityType (..),
+    newGoogleCloudDialogflowCxV3SessionEntityType,
+
+    -- ** GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowCxV3SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3SessionInfo
+    GoogleCloudDialogflowCxV3SessionInfo (..),
+    newGoogleCloudDialogflowCxV3SessionInfo,
+
+    -- ** GoogleCloudDialogflowCxV3SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3SessionInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3SpeechToTextSettings
+    GoogleCloudDialogflowCxV3SpeechToTextSettings (..),
+    newGoogleCloudDialogflowCxV3SpeechToTextSettings,
+
+    -- ** GoogleCloudDialogflowCxV3StartExperimentRequest
+    GoogleCloudDialogflowCxV3StartExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StartExperimentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3StopExperimentRequest
+    GoogleCloudDialogflowCxV3StopExperimentRequest (..),
+    newGoogleCloudDialogflowCxV3StopExperimentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest
+    GoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest (..),
+    newGoogleCloudDialogflowCxV3SubmitAnswerFeedbackRequest,
+
+    -- ** GoogleCloudDialogflowCxV3SynthesizeSpeechConfig
+    GoogleCloudDialogflowCxV3SynthesizeSpeechConfig (..),
+    newGoogleCloudDialogflowCxV3SynthesizeSpeechConfig,
+
+    -- ** GoogleCloudDialogflowCxV3TestCase
+    GoogleCloudDialogflowCxV3TestCase (..),
+    newGoogleCloudDialogflowCxV3TestCase,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseError
+    GoogleCloudDialogflowCxV3TestCaseError (..),
+    newGoogleCloudDialogflowCxV3TestCaseError,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseResult
+    GoogleCloudDialogflowCxV3TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3TestCaseResult,
+
+    -- ** GoogleCloudDialogflowCxV3TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3TestCaseResult_TestResult (..),
+
+    -- ** GoogleCloudDialogflowCxV3TestConfig
+    GoogleCloudDialogflowCxV3TestConfig (..),
+    newGoogleCloudDialogflowCxV3TestConfig,
+
+    -- ** GoogleCloudDialogflowCxV3TestError
+    GoogleCloudDialogflowCxV3TestError (..),
+    newGoogleCloudDialogflowCxV3TestError,
+
+    -- ** GoogleCloudDialogflowCxV3TestRunDifference
+    GoogleCloudDialogflowCxV3TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3TestRunDifference,
+
+    -- ** GoogleCloudDialogflowCxV3TestRunDifference_Type
+    GoogleCloudDialogflowCxV3TestRunDifference_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3TextInput
+    GoogleCloudDialogflowCxV3TextInput (..),
+    newGoogleCloudDialogflowCxV3TextInput,
+
+    -- ** GoogleCloudDialogflowCxV3TextToSpeechSettings
+    GoogleCloudDialogflowCxV3TextToSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs
+    GoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs (..),
+    newGoogleCloudDialogflowCxV3TextToSpeechSettings_SynthesizeSpeechConfigs,
+
+    -- ** GoogleCloudDialogflowCxV3TrainFlowRequest
+    GoogleCloudDialogflowCxV3TrainFlowRequest (..),
+    newGoogleCloudDialogflowCxV3TrainFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverage
+    GoogleCloudDialogflowCxV3TransitionCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransition,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode
+    GoogleCloudDialogflowCxV3TransitionCoverageTransitionNode (..),
+    newGoogleCloudDialogflowCxV3TransitionCoverageTransitionNode,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRoute
+    GoogleCloudDialogflowCxV3TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3TransitionRoute,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroup
+    GoogleCloudDialogflowCxV3TransitionRouteGroup (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroup,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverage,
+
+    -- ** GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition
+    GoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition (..),
+    newGoogleCloudDialogflowCxV3TransitionRouteGroupCoverageCoverageTransition,
+
+    -- ** GoogleCloudDialogflowCxV3TurnSignals
+    GoogleCloudDialogflowCxV3TurnSignals (..),
+    newGoogleCloudDialogflowCxV3TurnSignals,
+
+    -- ** GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3ValidateAgentRequest
+    GoogleCloudDialogflowCxV3ValidateAgentRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateAgentRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ValidateFlowRequest
+    GoogleCloudDialogflowCxV3ValidateFlowRequest (..),
+    newGoogleCloudDialogflowCxV3ValidateFlowRequest,
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage
+    GoogleCloudDialogflowCxV3ValidationMessage (..),
+    newGoogleCloudDialogflowCxV3ValidationMessage,
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage_ResourceType
+    GoogleCloudDialogflowCxV3ValidationMessage_ResourceType (..),
+
+    -- ** GoogleCloudDialogflowCxV3ValidationMessage_Severity
+    GoogleCloudDialogflowCxV3ValidationMessage_Severity (..),
+
+    -- ** GoogleCloudDialogflowCxV3VariantsHistory
+    GoogleCloudDialogflowCxV3VariantsHistory (..),
+    newGoogleCloudDialogflowCxV3VariantsHistory,
+
+    -- ** GoogleCloudDialogflowCxV3Version
+    GoogleCloudDialogflowCxV3Version (..),
+    newGoogleCloudDialogflowCxV3Version,
+
+    -- ** GoogleCloudDialogflowCxV3Version_State
+    GoogleCloudDialogflowCxV3Version_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3VersionVariants
+    GoogleCloudDialogflowCxV3VersionVariants (..),
+    newGoogleCloudDialogflowCxV3VersionVariants,
+
+    -- ** GoogleCloudDialogflowCxV3VersionVariantsVariant
+    GoogleCloudDialogflowCxV3VersionVariantsVariant (..),
+    newGoogleCloudDialogflowCxV3VersionVariantsVariant,
+
+    -- ** GoogleCloudDialogflowCxV3VoiceSelectionParams
+    GoogleCloudDialogflowCxV3VoiceSelectionParams (..),
+    newGoogleCloudDialogflowCxV3VoiceSelectionParams,
+
+    -- ** GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender
+    GoogleCloudDialogflowCxV3VoiceSelectionParams_SsmlGender (..),
+
+    -- ** GoogleCloudDialogflowCxV3Webhook
+    GoogleCloudDialogflowCxV3Webhook (..),
+    newGoogleCloudDialogflowCxV3Webhook,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService
+    GoogleCloudDialogflowCxV3WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_HttpMethod (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_ParameterMapping,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebService_RequestHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_ServiceAgentAuth (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3WebhookGenericWebService_WebhookType (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookGenericWebServiceOAuthConfig,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequest
+    GoogleCloudDialogflowCxV3WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookRequest_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponse
+    GoogleCloudDialogflowCxV3WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse_MergeBehavior (..),
+
+    -- ** GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3WebhookServiceDirectoryConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsDtmfSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models
+    GoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models (..),
+    newGoogleCloudDialogflowCxV3beta1AdvancedSettingsSpeechSettings_Models,
+
+    -- ** GoogleCloudDialogflowCxV3beta1AudioInput
+    GoogleCloudDialogflowCxV3beta1AudioInput (..),
+    newGoogleCloudDialogflowCxV3beta1AudioInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BargeInConfig
+    GoogleCloudDialogflowCxV3beta1BargeInConfig (..),
+    newGoogleCloudDialogflowCxV3beta1BargeInConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ContinuousTestResult
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult (..),
+    newGoogleCloudDialogflowCxV3beta1ContinuousTestResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result
+    GoogleCloudDialogflowCxV3beta1ContinuousTestResult_Result (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationSignals
+    GoogleCloudDialogflowCxV3beta1ConversationSignals (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationSignals,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurn
+    GoogleCloudDialogflowCxV3beta1ConversationTurn (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurn,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnUserInput_InjectedParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters
+    GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput_SessionParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
+    GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection (..),
+    newGoogleCloudDialogflowCxV3beta1DataStoreConnection,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DataStoreType (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode
+    GoogleCloudDialogflowCxV3beta1DataStoreConnection_DocumentProcessingMode (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1DeployFlowMetadata
+    GoogleCloudDialogflowCxV3beta1DeployFlowMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DeployFlowResponse
+    GoogleCloudDialogflowCxV3beta1DeployFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1DeployFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1DtmfInput
+    GoogleCloudDialogflowCxV3beta1DtmfInput (..),
+    newGoogleCloudDialogflowCxV3beta1DtmfInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Environment
+    GoogleCloudDialogflowCxV3beta1Environment (..),
+    newGoogleCloudDialogflowCxV3beta1Environment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentTestCasesConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig
+    GoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig (..),
+    newGoogleCloudDialogflowCxV3beta1EnvironmentWebhookConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EventHandler
+    GoogleCloudDialogflowCxV3beta1EventHandler (..),
+    newGoogleCloudDialogflowCxV3beta1EventHandler,
+
+    -- ** GoogleCloudDialogflowCxV3beta1EventInput
+    GoogleCloudDialogflowCxV3beta1EventInput (..),
+    newGoogleCloudDialogflowCxV3beta1EventInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportAgentResponse
+    GoogleCloudDialogflowCxV3beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ExportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ExportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ExportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ExportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Form
+    GoogleCloudDialogflowCxV3beta1Form (..),
+    newGoogleCloudDialogflowCxV3beta1Form,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FormParameter
+    GoogleCloudDialogflowCxV3beta1FormParameter (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameter,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
+    GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior (..),
+    newGoogleCloudDialogflowCxV3beta1FormParameterFillBehavior,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Fulfillment
+    GoogleCloudDialogflowCxV3beta1Fulfillment (..),
+    newGoogleCloudDialogflowCxV3beta1Fulfillment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
+    GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent,
+
+    -- ** GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
+    GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction (..),
+    newGoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction,
+
+    -- ** GoogleCloudDialogflowCxV3beta1GcsDestination
+    GoogleCloudDialogflowCxV3beta1GcsDestination (..),
+    newGoogleCloudDialogflowCxV3beta1GcsDestination,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportEntityTypesResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportFlowResponse
+    GoogleCloudDialogflowCxV3beta1ImportFlowResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportFlowResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata
+    GoogleCloudDialogflowCxV3beta1ImportIntentsMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsResponse
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources
+    GoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources (..),
+    newGoogleCloudDialogflowCxV3beta1ImportIntentsResponseConflictingResources,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
+    GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse (..),
+    newGoogleCloudDialogflowCxV3beta1ImportTestCasesResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InlineDestination
+    GoogleCloudDialogflowCxV3beta1InlineDestination (..),
+    newGoogleCloudDialogflowCxV3beta1InlineDestination,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig (..),
+    newGoogleCloudDialogflowCxV3beta1InputAudioConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_AudioEncoding (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant
+    GoogleCloudDialogflowCxV3beta1InputAudioConfig_ModelVariant (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1Intent
+    GoogleCloudDialogflowCxV3beta1Intent (..),
+    newGoogleCloudDialogflowCxV3beta1Intent,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Intent_Labels
+    GoogleCloudDialogflowCxV3beta1Intent_Labels (..),
+    newGoogleCloudDialogflowCxV3beta1Intent_Labels,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentInput
+    GoogleCloudDialogflowCxV3beta1IntentInput (..),
+    newGoogleCloudDialogflowCxV3beta1IntentInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentParameter
+    GoogleCloudDialogflowCxV3beta1IntentParameter (..),
+    newGoogleCloudDialogflowCxV3beta1IntentParameter,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings
+    GoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings (..),
+    newGoogleCloudDialogflowCxV3beta1KnowledgeConnectorSettings,
+
+    -- ** GoogleCloudDialogflowCxV3beta1LanguageInfo
+    GoogleCloudDialogflowCxV3beta1LanguageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1LanguageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1Page
+    GoogleCloudDialogflowCxV3beta1Page (..),
+    newGoogleCloudDialogflowCxV3beta1Page,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfo
+    GoogleCloudDialogflowCxV3beta1PageInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo (..),
+    newGoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State
+    GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo_State (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1QueryInput
+    GoogleCloudDialogflowCxV3beta1QueryInput (..),
+    newGoogleCloudDialogflowCxV3beta1QueryInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessage
+    GoogleCloudDialogflowCxV3beta1ResponseMessage (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload
+    GoogleCloudDialogflowCxV3beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard
+    GoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageKnowledgeInfoCard,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
+    GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ResponseMessageText
+    GoogleCloudDialogflowCxV3beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowCxV3beta1ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
+    GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunContinuousTestResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
+    GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseMetadata,
+
+    -- ** GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
+    GoogleCloudDialogflowCxV3beta1RunTestCaseResponse (..),
+    newGoogleCloudDialogflowCxV3beta1RunTestCaseResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1SessionInfo
+    GoogleCloudDialogflowCxV3beta1SessionInfo (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1SessionInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1SessionInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCase
+    GoogleCloudDialogflowCxV3beta1TestCase (..),
+    newGoogleCloudDialogflowCxV3beta1TestCase,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseError
+    GoogleCloudDialogflowCxV3beta1TestCaseError (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult (..),
+    newGoogleCloudDialogflowCxV3beta1TestCaseResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult
+    GoogleCloudDialogflowCxV3beta1TestCaseResult_TestResult (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestConfig
+    GoogleCloudDialogflowCxV3beta1TestConfig (..),
+    newGoogleCloudDialogflowCxV3beta1TestConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestError
+    GoogleCloudDialogflowCxV3beta1TestError (..),
+    newGoogleCloudDialogflowCxV3beta1TestError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestRunDifference
+    GoogleCloudDialogflowCxV3beta1TestRunDifference (..),
+    newGoogleCloudDialogflowCxV3beta1TestRunDifference,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TestRunDifference_Type
+    GoogleCloudDialogflowCxV3beta1TestRunDifference_Type (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1TextInput
+    GoogleCloudDialogflowCxV3beta1TextInput (..),
+    newGoogleCloudDialogflowCxV3beta1TextInput,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCall
+    GoogleCloudDialogflowCxV3beta1ToolCall (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCall_InputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCall_InputParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResult
+    GoogleCloudDialogflowCxV3beta1ToolCallResult (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters
+    GoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResult_OutputParameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1ToolCallResultError
+    GoogleCloudDialogflowCxV3beta1ToolCallResultError (..),
+    newGoogleCloudDialogflowCxV3beta1ToolCallResultError,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TransitionRoute
+    GoogleCloudDialogflowCxV3beta1TransitionRoute (..),
+    newGoogleCloudDialogflowCxV3beta1TransitionRoute,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TurnSignals
+    GoogleCloudDialogflowCxV3beta1TurnSignals (..),
+    newGoogleCloudDialogflowCxV3beta1TurnSignals,
+
+    -- ** GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowCxV3beta1TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1Webhook
+    GoogleCloudDialogflowCxV3beta1Webhook (..),
+    newGoogleCloudDialogflowCxV3beta1Webhook,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_HttpMethod (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ParameterMapping,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebService_RequestHeaders,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_ServiceAgentAuth (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebService_WebhookType (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig
+    GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceOAuthConfig,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequest
+    GoogleCloudDialogflowCxV3beta1WebhookRequest (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookRequest_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequest_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo_Parameters,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
+    GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
+    GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload
+    GoogleCloudDialogflowCxV3beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse,
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior
+    GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse_MergeBehavior (..),
+
+    -- ** GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
+    GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig (..),
+    newGoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig,
+
+    -- ** GoogleCloudDialogflowV2AnnotatedMessagePart
+    GoogleCloudDialogflowV2AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2AnnotatedMessagePart,
+
+    -- ** GoogleCloudDialogflowV2ArticleAnswer
+    GoogleCloudDialogflowV2ArticleAnswer (..),
+    newGoogleCloudDialogflowV2ArticleAnswer,
+
+    -- ** GoogleCloudDialogflowV2ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2ArticleAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2ArticleSuggestionModelMetadata
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata (..),
+    newGoogleCloudDialogflowV2ArticleSuggestionModelMetadata,
+
+    -- ** GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2ArticleSuggestionModelMetadata_TrainingModelType (..),
+
+    -- ** GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowV2BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2BatchUpdateIntentsResponse,
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2Context
+    GoogleCloudDialogflowV2Context (..),
+    newGoogleCloudDialogflowV2Context,
+
+    -- ** GoogleCloudDialogflowV2Context_Parameters
+    GoogleCloudDialogflowV2Context_Parameters (..),
+    newGoogleCloudDialogflowV2Context_Parameters,
+
+    -- ** GoogleCloudDialogflowV2ConversationEvent
+    GoogleCloudDialogflowV2ConversationEvent (..),
+    newGoogleCloudDialogflowV2ConversationEvent,
+
+    -- ** GoogleCloudDialogflowV2ConversationEvent_Type
+    GoogleCloudDialogflowV2ConversationEvent_Type (..),
+
+    -- ** GoogleCloudDialogflowV2ConversationModel
+    GoogleCloudDialogflowV2ConversationModel (..),
+    newGoogleCloudDialogflowV2ConversationModel,
+
+    -- ** GoogleCloudDialogflowV2ConversationModel_State
+    GoogleCloudDialogflowV2ConversationModel_State (..),
+
+    -- ** GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationDatasetOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelEvaluationOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelOperationMetadata
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2CreateConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State
+    GoogleCloudDialogflowV2CreateConversationModelOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationDatasetOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeleteConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeleteConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2DeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2DeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2DeployConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2EncryptionSpec
+    GoogleCloudDialogflowV2EncryptionSpec (..),
+    newGoogleCloudDialogflowV2EncryptionSpec,
+
+    -- ** GoogleCloudDialogflowV2EntityType
+    GoogleCloudDialogflowV2EntityType (..),
+    newGoogleCloudDialogflowV2EntityType,
+
+    -- ** GoogleCloudDialogflowV2EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowV2EntityType_Kind
+    GoogleCloudDialogflowV2EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowV2EntityTypeEntity
+    GoogleCloudDialogflowV2EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowV2EventInput
+    GoogleCloudDialogflowV2EventInput (..),
+    newGoogleCloudDialogflowV2EventInput,
+
+    -- ** GoogleCloudDialogflowV2EventInput_Parameters
+    GoogleCloudDialogflowV2EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2EventInput_Parameters,
+
+    -- ** GoogleCloudDialogflowV2ExportAgentResponse
+    GoogleCloudDialogflowV2ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowV2ExportOperationMetadata
+    GoogleCloudDialogflowV2ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2ExportOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2FaqAnswer
+    GoogleCloudDialogflowV2FaqAnswer (..),
+    newGoogleCloudDialogflowV2FaqAnswer,
+
+    -- ** GoogleCloudDialogflowV2FaqAnswer_Metadata
+    GoogleCloudDialogflowV2FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2FaqAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2GcsDestination
+    GoogleCloudDialogflowV2GcsDestination (..),
+    newGoogleCloudDialogflowV2GcsDestination,
+
+    -- ** GoogleCloudDialogflowV2HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2HumanAgentAssistantEvent,
+
+    -- ** GoogleCloudDialogflowV2ImportConversationDataOperationMetadata
+    GoogleCloudDialogflowV2ImportConversationDataOperationMetadata (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2ImportConversationDataOperationResponse
+    GoogleCloudDialogflowV2ImportConversationDataOperationResponse (..),
+    newGoogleCloudDialogflowV2ImportConversationDataOperationResponse,
+
+    -- ** GoogleCloudDialogflowV2ImportDocumentsResponse
+    GoogleCloudDialogflowV2ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2ImportDocumentsResponse,
+
+    -- ** GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecMetadata,
+
+    -- ** GoogleCloudDialogflowV2InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2InitializeEncryptionSpecRequest,
+
+    -- ** GoogleCloudDialogflowV2InputDataset
+    GoogleCloudDialogflowV2InputDataset (..),
+    newGoogleCloudDialogflowV2InputDataset,
+
+    -- ** GoogleCloudDialogflowV2Intent
+    GoogleCloudDialogflowV2Intent (..),
+    newGoogleCloudDialogflowV2Intent,
+
+    -- ** GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2Intent_DefaultResponsePlatformsItem (..),
+
+    -- ** GoogleCloudDialogflowV2Intent_WebhookState
+    GoogleCloudDialogflowV2Intent_WebhookState (..),
+
+    -- ** GoogleCloudDialogflowV2IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2IntentFollowupIntentInfo,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage
+    GoogleCloudDialogflowV2IntentMessage (..),
+    newGoogleCloudDialogflowV2IntentMessage,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage_Payload
+    GoogleCloudDialogflowV2IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2IntentMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2IntentMessage_Platform
+    GoogleCloudDialogflowV2IntentMessage_Platform (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCard
+    GoogleCloudDialogflowV2IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButton,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard_ImageDisplayOptions (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCard
+    GoogleCloudDialogflowV2IntentMessageCard (..),
+    newGoogleCloudDialogflowV2IntentMessageCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCardButton
+    GoogleCloudDialogflowV2IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2IntentMessageCardButton,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelect,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageCarouselSelectItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageColumnProperties
+    GoogleCloudDialogflowV2IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2IntentMessageColumnProperties,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2IntentMessageColumnProperties_HorizontalAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageImage
+    GoogleCloudDialogflowV2IntentMessageImage (..),
+    newGoogleCloudDialogflowV2IntentMessageImage,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageLinkOutSuggestion,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageListSelect
+    GoogleCloudDialogflowV2IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelect,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageListSelectItem
+    GoogleCloudDialogflowV2IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2IntentMessageListSelectItem,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContent
+    GoogleCloudDialogflowV2IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContent,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2IntentMessageMediaContent_MediaType (..),
+
+    -- ** GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageQuickReplies
+    GoogleCloudDialogflowV2IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2IntentMessageQuickReplies,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2IntentMessageSelectItemInfo,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponse,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2IntentMessageSimpleResponses,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSuggestion
+    GoogleCloudDialogflowV2IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestion,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageSuggestions
+    GoogleCloudDialogflowV2IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2IntentMessageSuggestions,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCard
+    GoogleCloudDialogflowV2IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCard,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCardCell
+    GoogleCloudDialogflowV2IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardCell,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageTableCardRow
+    GoogleCloudDialogflowV2IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2IntentMessageTableCardRow,
+
+    -- ** GoogleCloudDialogflowV2IntentMessageText
+    GoogleCloudDialogflowV2IntentMessageText (..),
+    newGoogleCloudDialogflowV2IntentMessageText,
+
+    -- ** GoogleCloudDialogflowV2IntentParameter
+    GoogleCloudDialogflowV2IntentParameter (..),
+    newGoogleCloudDialogflowV2IntentParameter,
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrase
+    GoogleCloudDialogflowV2IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2IntentTrainingPhrase_Type (..),
+
+    -- ** GoogleCloudDialogflowV2IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2KnowledgeAssistAnswerSuggestedQuery,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2KnowledgeOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2KnowledgeOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2Message
+    GoogleCloudDialogflowV2Message (..),
+    newGoogleCloudDialogflowV2Message,
+
+    -- ** GoogleCloudDialogflowV2Message_ParticipantRole
+    GoogleCloudDialogflowV2Message_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2MessageAnnotation
+    GoogleCloudDialogflowV2MessageAnnotation (..),
+    newGoogleCloudDialogflowV2MessageAnnotation,
+
+    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2OriginalDetectIntentRequest_Payload,
+
+    -- ** GoogleCloudDialogflowV2QueryResult
+    GoogleCloudDialogflowV2QueryResult (..),
+    newGoogleCloudDialogflowV2QueryResult,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_Parameters
+    GoogleCloudDialogflowV2QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowV2QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2QueryResult_WebhookPayload,
+
+    -- ** GoogleCloudDialogflowV2Sentiment
+    GoogleCloudDialogflowV2Sentiment (..),
+    newGoogleCloudDialogflowV2Sentiment,
+
+    -- ** GoogleCloudDialogflowV2SentimentAnalysisResult
+    GoogleCloudDialogflowV2SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowV2SessionEntityType
+    GoogleCloudDialogflowV2SessionEntityType (..),
+    newGoogleCloudDialogflowV2SessionEntityType,
+
+    -- ** GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2SmartReplyAnswer
+    GoogleCloudDialogflowV2SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2SmartReplyAnswer,
+
+    -- ** GoogleCloudDialogflowV2SmartReplyModelMetadata
+    GoogleCloudDialogflowV2SmartReplyModelMetadata (..),
+    newGoogleCloudDialogflowV2SmartReplyModelMetadata,
+
+    -- ** GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType
+    GoogleCloudDialogflowV2SmartReplyModelMetadata_TrainingModelType (..),
+
+    -- ** GoogleCloudDialogflowV2SpeechWordInfo
+    GoogleCloudDialogflowV2SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2SpeechWordInfo,
+
+    -- ** GoogleCloudDialogflowV2StreamingRecognitionResult
+    GoogleCloudDialogflowV2StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2StreamingRecognitionResult,
+
+    -- ** GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2StreamingRecognitionResult_MessageType (..),
+
+    -- ** GoogleCloudDialogflowV2SuggestArticlesResponse
+    GoogleCloudDialogflowV2SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2SuggestArticlesResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2SuggestFaqAnswersResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2SuggestKnowledgeAssistResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2SuggestSmartRepliesResponse,
+
+    -- ** GoogleCloudDialogflowV2SuggestionResult
+    GoogleCloudDialogflowV2SuggestionResult (..),
+    newGoogleCloudDialogflowV2SuggestionResult,
+
+    -- ** GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
+    GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata (..),
+    newGoogleCloudDialogflowV2UndeployConversationModelOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2WebhookRequest
+    GoogleCloudDialogflowV2WebhookRequest (..),
+    newGoogleCloudDialogflowV2WebhookRequest,
+
+    -- ** GoogleCloudDialogflowV2WebhookResponse
+    GoogleCloudDialogflowV2WebhookResponse (..),
+    newGoogleCloudDialogflowV2WebhookResponse,
+
+    -- ** GoogleCloudDialogflowV2WebhookResponse_Payload
+    GoogleCloudDialogflowV2WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1AnnotatedMessagePart
+    GoogleCloudDialogflowV2beta1AnnotatedMessagePart (..),
+    newGoogleCloudDialogflowV2beta1AnnotatedMessagePart,
+
+    -- ** GoogleCloudDialogflowV2beta1ArticleAnswer
+    GoogleCloudDialogflowV2beta1ArticleAnswer (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata
+    GoogleCloudDialogflowV2beta1ArticleAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ArticleAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
+    GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse (..),
+    newGoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Context
+    GoogleCloudDialogflowV2beta1Context (..),
+    newGoogleCloudDialogflowV2beta1Context,
+
+    -- ** GoogleCloudDialogflowV2beta1Context_Parameters
+    GoogleCloudDialogflowV2beta1Context_Parameters (..),
+    newGoogleCloudDialogflowV2beta1Context_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1ConversationEvent
+    GoogleCloudDialogflowV2beta1ConversationEvent (..),
+    newGoogleCloudDialogflowV2beta1ConversationEvent,
+
+    -- ** GoogleCloudDialogflowV2beta1ConversationEvent_Type
+    GoogleCloudDialogflowV2beta1ConversationEvent_Type (..),
+
+    -- ** GoogleCloudDialogflowV2beta1DialogflowAssistAnswer
+    GoogleCloudDialogflowV2beta1DialogflowAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1DialogflowAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1EncryptionSpec
+    GoogleCloudDialogflowV2beta1EncryptionSpec (..),
+    newGoogleCloudDialogflowV2beta1EncryptionSpec,
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType
+    GoogleCloudDialogflowV2beta1EntityType (..),
+    newGoogleCloudDialogflowV2beta1EntityType,
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode
+    GoogleCloudDialogflowV2beta1EntityType_AutoExpansionMode (..),
+
+    -- ** GoogleCloudDialogflowV2beta1EntityType_Kind
+    GoogleCloudDialogflowV2beta1EntityType_Kind (..),
+
+    -- ** GoogleCloudDialogflowV2beta1EntityTypeEntity
+    GoogleCloudDialogflowV2beta1EntityTypeEntity (..),
+    newGoogleCloudDialogflowV2beta1EntityTypeEntity,
+
+    -- ** GoogleCloudDialogflowV2beta1EventInput
+    GoogleCloudDialogflowV2beta1EventInput (..),
+    newGoogleCloudDialogflowV2beta1EventInput,
+
+    -- ** GoogleCloudDialogflowV2beta1EventInput_Parameters
+    GoogleCloudDialogflowV2beta1EventInput_Parameters (..),
+    newGoogleCloudDialogflowV2beta1EventInput_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1ExportAgentResponse
+    GoogleCloudDialogflowV2beta1ExportAgentResponse (..),
+    newGoogleCloudDialogflowV2beta1ExportAgentResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1ExportOperationMetadata
+    GoogleCloudDialogflowV2beta1ExportOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1ExportOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1FaqAnswer
+    GoogleCloudDialogflowV2beta1FaqAnswer (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1FaqAnswer_Metadata
+    GoogleCloudDialogflowV2beta1FaqAnswer_Metadata (..),
+    newGoogleCloudDialogflowV2beta1FaqAnswer_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1GcsDestination
+    GoogleCloudDialogflowV2beta1GcsDestination (..),
+    newGoogleCloudDialogflowV2beta1GcsDestination,
+
+    -- ** GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
+    GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent (..),
+    newGoogleCloudDialogflowV2beta1HumanAgentAssistantEvent,
+
+    -- ** GoogleCloudDialogflowV2beta1ImportDocumentsResponse
+    GoogleCloudDialogflowV2beta1ImportDocumentsResponse (..),
+    newGoogleCloudDialogflowV2beta1ImportDocumentsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest
+    GoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest (..),
+    newGoogleCloudDialogflowV2beta1InitializeEncryptionSpecRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1Intent
+    GoogleCloudDialogflowV2beta1Intent (..),
+    newGoogleCloudDialogflowV2beta1Intent,
+
+    -- ** GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem
+    GoogleCloudDialogflowV2beta1Intent_DefaultResponsePlatformsItem (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Intent_WebhookState
+    GoogleCloudDialogflowV2beta1Intent_WebhookState (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
+    GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentFollowupIntentInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage
+    GoogleCloudDialogflowV2beta1IntentMessage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage_Payload
+    GoogleCloudDialogflowV2beta1IntentMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1IntentMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessage_Platform
+    GoogleCloudDialogflowV2beta1IntentMessage_Platform (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCard
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButton,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
+    GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard_ImageDisplayOptions (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint
+    GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction_UrlTypeHint (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCard
+    GoogleCloudDialogflowV2beta1IntentMessageCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCardButton
+    GoogleCloudDialogflowV2beta1IntentMessageCardButton (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCardButton,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelect,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageColumnProperties,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageColumnProperties_HorizontalAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageImage
+    GoogleCloudDialogflowV2beta1IntentMessageImage (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageImage,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelect
+    GoogleCloudDialogflowV2beta1IntentMessageListSelect (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelect,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
+    GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageListSelectItem,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContent
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContent,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContent_MediaType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
+    GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
+    GoogleCloudDialogflowV2beta1IntentMessageQuickReplies (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageQuickReplies,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContent,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia_Height (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth
+    GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard_CardWidth (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_CardOrientation (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment
+    GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard_ThumbnailImageAlignment (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageRbmText
+    GoogleCloudDialogflowV2beta1IntentMessageRbmText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageRbmText,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
+    GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
+    GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSimpleResponses,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestion
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestions
+    GoogleCloudDialogflowV2beta1IntentMessageSuggestions (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageSuggestions,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCard
+    GoogleCloudDialogflowV2beta1IntentMessageTableCard (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCard,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardCell (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardCell,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
+    GoogleCloudDialogflowV2beta1IntentMessageTableCardRow (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTableCardRow,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentMessageText
+    GoogleCloudDialogflowV2beta1IntentMessageText (..),
+    newGoogleCloudDialogflowV2beta1IntentMessageText,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentParameter
+    GoogleCloudDialogflowV2beta1IntentParameter (..),
+    newGoogleCloudDialogflowV2beta1IntentParameter,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentSuggestion
+    GoogleCloudDialogflowV2beta1IntentSuggestion (..),
+    newGoogleCloudDialogflowV2beta1IntentSuggestion,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrase
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrase,
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrase_Type (..),
+
+    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
+    GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (..),
+    newGoogleCloudDialogflowV2beta1IntentTrainingPhrasePart,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswers
+    GoogleCloudDialogflowV2beta1KnowledgeAnswers (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswers,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel
+    GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer_MatchConfidenceLevel (..),
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSourceSnippet_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery
+    GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeAssistAnswerSuggestedQuery,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1KnowledgeOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State
+    GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata_State (..),
+
+    -- ** GoogleCloudDialogflowV2beta1Message
+    GoogleCloudDialogflowV2beta1Message (..),
+    newGoogleCloudDialogflowV2beta1Message,
+
+    -- ** GoogleCloudDialogflowV2beta1Message_ParticipantRole
+    GoogleCloudDialogflowV2beta1Message_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1MessageAnnotation
+    GoogleCloudDialogflowV2beta1MessageAnnotation (..),
+    newGoogleCloudDialogflowV2beta1MessageAnnotation,
+
+    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload
+    GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload (..),
+    newGoogleCloudDialogflowV2beta1OriginalDetectIntentRequest_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult
+    GoogleCloudDialogflowV2beta1QueryResult (..),
+    newGoogleCloudDialogflowV2beta1QueryResult,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo
+    GoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_DiagnosticInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_Parameters
+    GoogleCloudDialogflowV2beta1QueryResult_Parameters (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_Parameters,
+
+    -- ** GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload
+    GoogleCloudDialogflowV2beta1QueryResult_WebhookPayload (..),
+    newGoogleCloudDialogflowV2beta1QueryResult_WebhookPayload,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessage
+    GoogleCloudDialogflowV2beta1ResponseMessage (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessage_Payload
+    GoogleCloudDialogflowV2beta1ResponseMessage_Payload (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessage_Payload,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction
+    GoogleCloudDialogflowV2beta1ResponseMessageEndInteraction (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageEndInteraction,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata
+    GoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageLiveAgentHandoff_Metadata,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudio (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudio,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment
+    GoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageMixedAudioSegment,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall
+    GoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageTelephonyTransferCall,
+
+    -- ** GoogleCloudDialogflowV2beta1ResponseMessageText
+    GoogleCloudDialogflowV2beta1ResponseMessageText (..),
+    newGoogleCloudDialogflowV2beta1ResponseMessageText,
+
+    -- ** GoogleCloudDialogflowV2beta1Sentiment
+    GoogleCloudDialogflowV2beta1Sentiment (..),
+    newGoogleCloudDialogflowV2beta1Sentiment,
+
+    -- ** GoogleCloudDialogflowV2beta1SentimentAnalysisResult
+    GoogleCloudDialogflowV2beta1SentimentAnalysisResult (..),
+    newGoogleCloudDialogflowV2beta1SentimentAnalysisResult,
+
+    -- ** GoogleCloudDialogflowV2beta1SessionEntityType
+    GoogleCloudDialogflowV2beta1SessionEntityType (..),
+    newGoogleCloudDialogflowV2beta1SessionEntityType,
+
+    -- ** GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode
+    GoogleCloudDialogflowV2beta1SessionEntityType_EntityOverrideMode (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata (..),
+    newGoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata,
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_ParticipantRole (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType
+    GoogleCloudDialogflowV2beta1SetSuggestionFeatureConfigOperationMetadata_SuggestionFeatureType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SmartReplyAnswer
+    GoogleCloudDialogflowV2beta1SmartReplyAnswer (..),
+    newGoogleCloudDialogflowV2beta1SmartReplyAnswer,
+
+    -- ** GoogleCloudDialogflowV2beta1SpeechWordInfo
+    GoogleCloudDialogflowV2beta1SpeechWordInfo (..),
+    newGoogleCloudDialogflowV2beta1SpeechWordInfo,
+
+    -- ** GoogleCloudDialogflowV2beta1StreamingRecognitionResult
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult (..),
+    newGoogleCloudDialogflowV2beta1StreamingRecognitionResult,
+
+    -- ** GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType
+    GoogleCloudDialogflowV2beta1StreamingRecognitionResult_MessageType (..),
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestArticlesResponse
+    GoogleCloudDialogflowV2beta1SuggestArticlesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestArticlesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse
+    GoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestDialogflowAssistsResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
+    GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse
+    GoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestKnowledgeAssistResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
+    GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse (..),
+    newGoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1SuggestionResult
+    GoogleCloudDialogflowV2beta1SuggestionResult (..),
+    newGoogleCloudDialogflowV2beta1SuggestionResult,
+
+    -- ** GoogleCloudDialogflowV2beta1TelephonyDtmfEvents
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents (..),
+    newGoogleCloudDialogflowV2beta1TelephonyDtmfEvents,
+
+    -- ** GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem
+    GoogleCloudDialogflowV2beta1TelephonyDtmfEvents_DtmfEventsItem (..),
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookRequest
+    GoogleCloudDialogflowV2beta1WebhookRequest (..),
+    newGoogleCloudDialogflowV2beta1WebhookRequest,
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookResponse
+    GoogleCloudDialogflowV2beta1WebhookResponse (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse,
+
+    -- ** GoogleCloudDialogflowV2beta1WebhookResponse_Payload
+    GoogleCloudDialogflowV2beta1WebhookResponse_Payload (..),
+    newGoogleCloudDialogflowV2beta1WebhookResponse_Payload,
+
+    -- ** GoogleCloudDialogflowV3alpha1ConversationSignals
+    GoogleCloudDialogflowV3alpha1ConversationSignals (..),
+    newGoogleCloudDialogflowV3alpha1ConversationSignals,
+
+    -- ** GoogleCloudDialogflowV3alpha1TurnSignals
+    GoogleCloudDialogflowV3alpha1TurnSignals (..),
+    newGoogleCloudDialogflowV3alpha1TurnSignals,
+
+    -- ** GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem
+    GoogleCloudDialogflowV3alpha1TurnSignals_FailureReasonsItem (..),
+
+    -- ** GoogleCloudLocationListLocationsResponse
+    GoogleCloudLocationListLocationsResponse (..),
+    newGoogleCloudLocationListLocationsResponse,
+
+    -- ** GoogleCloudLocationLocation
+    GoogleCloudLocationLocation (..),
+    newGoogleCloudLocationLocation,
+
+    -- ** GoogleCloudLocationLocation_Labels
+    GoogleCloudLocationLocation_Labels (..),
+    newGoogleCloudLocationLocation_Labels,
+
+    -- ** GoogleCloudLocationLocation_Metadata
+    GoogleCloudLocationLocation_Metadata (..),
+    newGoogleCloudLocationLocation_Metadata,
+
+    -- ** GoogleLongrunningListOperationsResponse
+    GoogleLongrunningListOperationsResponse (..),
+    newGoogleLongrunningListOperationsResponse,
+
+    -- ** GoogleLongrunningOperation
+    GoogleLongrunningOperation (..),
+    newGoogleLongrunningOperation,
+
+    -- ** GoogleLongrunningOperation_Metadata
+    GoogleLongrunningOperation_Metadata (..),
+    newGoogleLongrunningOperation_Metadata,
+
+    -- ** GoogleLongrunningOperation_Response
+    GoogleLongrunningOperation_Response (..),
+    newGoogleLongrunningOperation_Response,
+
+    -- ** GoogleProtobufEmpty
+    GoogleProtobufEmpty (..),
+    newGoogleProtobufEmpty,
+
+    -- ** GoogleRpcStatus
+    GoogleRpcStatus (..),
+    newGoogleRpcStatus,
+
+    -- ** GoogleRpcStatus_DetailsItem
+    GoogleRpcStatus_DetailsItem (..),
+    newGoogleRpcStatus_DetailsItem,
+
+    -- ** GoogleTypeLatLng
+    GoogleTypeLatLng (..),
+    newGoogleTypeLatLng,
+
+    -- ** ProjectsLocationsAgentsIntentsListIntentView
+    ProjectsLocationsAgentsIntentsListIntentView (..),
+
+    -- ** ProjectsLocationsAgentsTestCasesCalculateCoverageType
+    ProjectsLocationsAgentsTestCasesCalculateCoverageType (..),
+
+    -- ** ProjectsLocationsAgentsTestCasesListView
+    ProjectsLocationsAgentsTestCasesListView (..),
+  )
+where
+
+import Gogol.DialogFlow.Internal.Product
+import Gogol.DialogFlow.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Default request referring to version @v3@ of the Dialogflow API. This contains the host and root path used as a starting point for constructing service requests.
+dialogFlowService :: Core.ServiceConfig
+dialogFlowService =
+  Core.defaultService
+    (Core.ServiceId "dialogflow:v3")
+    "dialogflow.googleapis.com"
+
+-- | See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
+type CloudPlatform'FullControl =
+  "https://www.googleapis.com/auth/cloud-platform"
+
+-- | View, manage and query your Dialogflow agents
+type Dialogflow'FullControl =
+  "https://www.googleapis.com/auth/dialogflow"
diff --git a/gen/Network/Google/DialogFlow.hs b/gen/Network/Google/DialogFlow.hs
deleted file mode 100644
--- a/gen/Network/Google/DialogFlow.hs
+++ /dev/null
@@ -1,1230 +0,0 @@
-{-# LANGUAGE DataKinds         #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TypeOperators     #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-
--- |
--- Module      : Network.Google.DialogFlow
--- 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)
---
--- Builds conversational interfaces (for example, chatbots, and
--- voice-powered apps and devices).
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference>
-module Network.Google.DialogFlow
-    (
-    -- * Service Configuration
-      dialogFlowService
-
-    -- * OAuth Scopes
-    , dialogFlowScope
-    , cloudPlatformScope
-
-    -- * API Declaration
-    , DialogFlowAPI
-
-    -- * Resources
-
-    -- ** dialogflow.projects.agent.entityTypes.batchDelete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchDelete
-
-    -- ** dialogflow.projects.agent.entityTypes.batchUpdate
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchUpdate
-
-    -- ** dialogflow.projects.agent.entityTypes.create
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Create
-
-    -- ** dialogflow.projects.agent.entityTypes.delete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Delete
-
-    -- ** dialogflow.projects.agent.entityTypes.entities.batchCreate
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchCreate
-
-    -- ** dialogflow.projects.agent.entityTypes.entities.batchDelete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchDelete
-
-    -- ** dialogflow.projects.agent.entityTypes.entities.batchUpdate
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchUpdate
-
-    -- ** dialogflow.projects.agent.entityTypes.get
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Get
-
-    -- ** dialogflow.projects.agent.entityTypes.list
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.List
-
-    -- ** dialogflow.projects.agent.entityTypes.patch
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Patch
-
-    -- ** dialogflow.projects.agent.export
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Export
-
-    -- ** dialogflow.projects.agent.import
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Import
-
-    -- ** dialogflow.projects.agent.intents.batchDelete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchDelete
-
-    -- ** dialogflow.projects.agent.intents.batchUpdate
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchUpdate
-
-    -- ** dialogflow.projects.agent.intents.create
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Create
-
-    -- ** dialogflow.projects.agent.intents.delete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Delete
-
-    -- ** dialogflow.projects.agent.intents.get
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Get
-
-    -- ** dialogflow.projects.agent.intents.list
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.List
-
-    -- ** dialogflow.projects.agent.intents.patch
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Patch
-
-    -- ** dialogflow.projects.agent.restore
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Restore
-
-    -- ** dialogflow.projects.agent.search
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Search
-
-    -- ** dialogflow.projects.agent.sessions.contexts.create
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Create
-
-    -- ** dialogflow.projects.agent.sessions.contexts.delete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Delete
-
-    -- ** dialogflow.projects.agent.sessions.contexts.get
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Get
-
-    -- ** dialogflow.projects.agent.sessions.contexts.list
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.List
-
-    -- ** dialogflow.projects.agent.sessions.contexts.patch
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Patch
-
-    -- ** dialogflow.projects.agent.sessions.deleteContexts
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DeleteContexts
-
-    -- ** dialogflow.projects.agent.sessions.detectIntent
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DetectIntent
-
-    -- ** dialogflow.projects.agent.sessions.entityTypes.create
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Create
-
-    -- ** dialogflow.projects.agent.sessions.entityTypes.delete
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Delete
-
-    -- ** dialogflow.projects.agent.sessions.entityTypes.get
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Get
-
-    -- ** dialogflow.projects.agent.sessions.entityTypes.list
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.List
-
-    -- ** dialogflow.projects.agent.sessions.entityTypes.patch
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Patch
-
-    -- ** dialogflow.projects.agent.train
-    , module Network.Google.Resource.DialogFlow.Projects.Agent.Train
-
-    -- ** dialogflow.projects.getAgent
-    , module Network.Google.Resource.DialogFlow.Projects.GetAgent
-
-    -- ** dialogflow.projects.operations.get
-    , module Network.Google.Resource.DialogFlow.Projects.Operations.Get
-
-    -- * Types
-
-    -- ** GoogleRpcStatus
-    , GoogleRpcStatus
-    , googleRpcStatus
-    , grsDetails
-    , grsCode
-    , grsMessage
-
-    -- ** GoogleCloudDialogflowV2IntentFollowupIntentInfo
-    , GoogleCloudDialogflowV2IntentFollowupIntentInfo
-    , googleCloudDialogflowV2IntentFollowupIntentInfo
-    , gcdvifiiFollowupIntentName
-    , gcdvifiiParentFollowupIntentName
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView
-    , GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView (..)
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , googleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , gcdvimsrSimpleResponses
-
-    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhraseType
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhraseType (..)
-
-    -- ** GoogleCloudDialogflowV2SynthesizeSpeechConfig
-    , GoogleCloudDialogflowV2SynthesizeSpeechConfig
-    , googleCloudDialogflowV2SynthesizeSpeechConfig
-    , gcdvsscVolumeGainDB
-    , gcdvsscEffectsProFileId
-    , gcdvsscVoice
-    , gcdvsscSpeakingRate
-    , gcdvsscPitch
-
-    -- ** GoogleCloudDialogflowV2InputAudioConfig
-    , GoogleCloudDialogflowV2InputAudioConfig
-    , googleCloudDialogflowV2InputAudioConfig
-    , gcdviacLanguageCode
-    , gcdviacPhraseHints
-    , gcdviacSampleRateHertz
-    , gcdviacModelVariant
-    , gcdviacAudioEncoding
-
-    -- ** GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , googleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , gcdvbuirIntents
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessagePayload
-    , GoogleCloudDialogflowV2beta1IntentMessagePayload
-    , googleCloudDialogflowV2beta1IntentMessagePayload
-    , gcdvimpAddtional
-
-    -- ** GoogleCloudDialogflowV2WebhookRequest
-    , GoogleCloudDialogflowV2WebhookRequest
-    , googleCloudDialogflowV2WebhookRequest
-    , gcdvwrOriginalDetectIntentRequest
-    , gcdvwrResponseId
-    , gcdvwrQueryResult
-    , gcdvwrSession
-
-    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , googleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , gcdvimcsiImage
-    , gcdvimcsiTitle
-    , gcdvimcsiDescription
-    , gcdvimcsiInfo
-
-    -- ** GoogleCloudDialogflowV2EventInput
-    , GoogleCloudDialogflowV2EventInput
-    , googleCloudDialogflowV2EventInput
-    , gcdveiLanguageCode
-    , gcdveiName
-    , gcdveiParameters
-
-    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponse
-    , GoogleCloudDialogflowV2IntentMessageSimpleResponse
-    , googleCloudDialogflowV2IntentMessageSimpleResponse
-    , gcdvimsrDisplayText
-    , gcdvimsrSsml
-    , gcdvimsrTextToSpeech
-
-    -- ** GoogleCloudDialogflowV2InputAudioConfigModelVariant
-    , GoogleCloudDialogflowV2InputAudioConfigModelVariant (..)
-
-    -- ** GoogleLongrunningOperationMetadata
-    , GoogleLongrunningOperationMetadata
-    , googleLongrunningOperationMetadata
-    , glomAddtional
-
-    -- ** GoogleCloudDialogflowV2IntentTrainingPhrase
-    , GoogleCloudDialogflowV2IntentTrainingPhrase
-    , googleCloudDialogflowV2IntentTrainingPhrase
-    , gcdvitpParts
-    , gcdvitpName
-    , gcdvitpTimesAddedCount
-    , gcdvitpType
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , googleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , gImage
-    , gTitle
-    , gDescription
-    , gInfo
-
-    -- ** GoogleCloudDialogflowV2IntentMessageBasicCard
-    , GoogleCloudDialogflowV2IntentMessageBasicCard
-    , googleCloudDialogflowV2IntentMessageBasicCard
-    , gcdvimbcImage
-    , gcdvimbcButtons
-    , gcdvimbcSubtitle
-    , gcdvimbcTitle
-    , gcdvimbcFormattedText
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , googleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , gDisplayText
-    , gSsml
-    , gTextToSpeech
-
-    -- ** GoogleCloudDialogflowV2Intent
-    , GoogleCloudDialogflowV2Intent
-    , googleCloudDialogflowV2Intent
-    , gcdviDefaultResponsePlatforms
-    , gcdviWebhookState
-    , gcdviPriority
-    , gcdviAction
-    , gcdviRootFollowupIntentName
-    , gcdviName
-    , gcdviEvents
-    , gcdviParameters
-    , gcdviDisplayName
-    , gcdviInputContextNames
-    , gcdviMessages
-    , gcdviParentFollowupIntentName
-    , gcdviOutputContexts
-    , gcdviTrainingPhrases
-    , gcdviFollowupIntentInfo
-    , gcdviIsFallback
-    , gcdviMlDisabled
-    , gcdviResetContexts
-
-    -- ** GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender
-    , GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender (..)
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , googleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , gcdvimbcbOpenURIAction
-    , gcdvimbcbTitle
-
-    -- ** GoogleCloudDialogflowV2SentimentAnalysisResult
-    , GoogleCloudDialogflowV2SentimentAnalysisResult
-    , googleCloudDialogflowV2SentimentAnalysisResult
-    , gcdvsarQueryTextSentiment
-
-    -- ** GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-    , GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-    , googleCloudDialogflowV2BatchCreateEntitiesRequest
-    , gcdvbcerLanguageCode
-    , gcdvbcerEntities
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-    , GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-    , googleCloudDialogflowV2beta1IntentMessageSuggestions
-    , gcdvimsSuggestions
-
-    -- ** GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-    , GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-    , googleCloudDialogflowV2BatchDeleteIntentsRequest
-    , gcdvbdirIntents
-
-    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel (..)
-
-    -- ** GoogleCloudDialogflowV2QueryResult
-    , GoogleCloudDialogflowV2QueryResult
-    , googleCloudDialogflowV2QueryResult
-    , gcdvqrLanguageCode
-    , gcdvqrAllRequiredParamsPresent
-    , gcdvqrIntentDetectionConfidence
-    , gcdvqrFulfillmentMessages
-    , gcdvqrSpeechRecognitionConfidence
-    , gcdvqrAction
-    , gcdvqrIntent
-    , gcdvqrSentimentAnalysisResult
-    , gcdvqrQueryText
-    , gcdvqrFulfillmentText
-    , gcdvqrParameters
-    , gcdvqrWebhookPayload
-    , gcdvqrOutputContexts
-    , gcdvqrWebhookSource
-    , gcdvqrDiagnosticInfo
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-    , GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-    , googleCloudDialogflowV2BatchUpdateIntentsRequest
-    , gcdvbuirLanguageCode
-    , gcdvbuirUpdateMask
-    , gcdvbuirIntentView
-    , gcdvbuirIntentBatchURI
-    , gcdvbuirIntentBatchInline
-
-    -- ** GoogleTypeLatLng
-    , GoogleTypeLatLng
-    , googleTypeLatLng
-    , gtllLatitude
-    , gtllLongitude
-
-    -- ** GoogleCloudDialogflowV2beta1WebhookResponse
-    , GoogleCloudDialogflowV2beta1WebhookResponse
-    , googleCloudDialogflowV2beta1WebhookResponse
-    , gcdvwrFulfillmentMessages
-    , gcdvwrPayload
-    , gcdvwrFulfillmentText
-    , gcdvwrSource
-    , gcdvwrEndInteraction
-    , gcdvwrOutputContexts
-    , gcdvwrFollowupEventInput
-
-    -- ** GoogleCloudDialogflowV2beta1EventInputParameters
-    , GoogleCloudDialogflowV2beta1EventInputParameters
-    , googleCloudDialogflowV2beta1EventInputParameters
-    , gcdveipAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , googleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , gcdvodirpAddtional
-
-    -- ** GoogleCloudDialogflowV2IntentMessageQuickReplies
-    , GoogleCloudDialogflowV2IntentMessageQuickReplies
-    , googleCloudDialogflowV2IntentMessageQuickReplies
-    , gcdvimqrTitle
-    , gcdvimqrQuickReplies
-
-    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswers
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswers
-    , googleCloudDialogflowV2beta1KnowledgeAnswers
-    , gcdvkaAnswers
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageCardButton
-    , GoogleCloudDialogflowV2beta1IntentMessageCardButton
-    , googleCloudDialogflowV2beta1IntentMessageCardButton
-    , gcdvimcbText
-    , gcdvimcbPostback
-
-    -- ** GoogleCloudDialogflowV2beta1ContextParameters
-    , GoogleCloudDialogflowV2beta1ContextParameters
-    , googleCloudDialogflowV2beta1ContextParameters
-    , gcdvcpAddtional
-
-    -- ** GoogleCloudDialogflowV2QueryParametersPayload
-    , GoogleCloudDialogflowV2QueryParametersPayload
-    , googleCloudDialogflowV2QueryParametersPayload
-    , gcdvqppAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelect
-    , GoogleCloudDialogflowV2beta1IntentMessageListSelect
-    , googleCloudDialogflowV2beta1IntentMessageListSelect
-    , gcdvimlsItems
-    , gcdvimlsTitle
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , googleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , gcdvimtpaAudioURI
-
-    -- ** GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , googleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , gcdvsarcAnalyzeQueryTextSentiment
-
-    -- ** GoogleCloudDialogflowV2IntentTrainingPhrasePart
-    , GoogleCloudDialogflowV2IntentTrainingPhrasePart
-    , googleCloudDialogflowV2IntentTrainingPhrasePart
-    , gcdvitppText
-    , gcdvitppUserDefined
-    , gcdvitppEntityType
-    , gcdvitppAlias
-
-    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState
-    , GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState (..)
-
-    -- ** GoogleProtobufEmpty
-    , GoogleProtobufEmpty
-    , googleProtobufEmpty
-
-    -- ** GoogleCloudDialogflowV2beta1WebhookResponsePayload
-    , GoogleCloudDialogflowV2beta1WebhookResponsePayload
-    , googleCloudDialogflowV2beta1WebhookResponsePayload
-    , gcdvwrpAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , googleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , gcdvimqrsTitle
-    , gcdvimqrsQuickReplies
-
-    -- ** GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , googleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , gcdvimlosURI
-    , gcdvimlosDestinationName
-
-    -- ** GoogleCloudDialogflowV2ImportAgentRequest
-    , GoogleCloudDialogflowV2ImportAgentRequest
-    , googleCloudDialogflowV2ImportAgentRequest
-    , gcdviarAgentURI
-    , gcdviarAgentContent
-
-    -- ** GoogleRpcStatusDetailsItem
-    , GoogleRpcStatusDetailsItem
-    , googleRpcStatusDetailsItem
-    , grsdiAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , googleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , gcdvbuetrEntityTypes
-
-    -- ** GoogleCloudDialogflowV2ContextParameters
-    , GoogleCloudDialogflowV2ContextParameters
-    , googleCloudDialogflowV2ContextParameters
-    , gAddtional
-
-    -- ** GoogleCloudDialogflowV2IntentMessageCardButton
-    , GoogleCloudDialogflowV2IntentMessageCardButton
-    , googleCloudDialogflowV2IntentMessageCardButton
-    , gText
-    , gPostback
-
-    -- ** GoogleCloudDialogflowV2IntentMessageListSelect
-    , GoogleCloudDialogflowV2IntentMessageListSelect
-    , googleCloudDialogflowV2IntentMessageListSelect
-    , gooItems
-    , gooTitle
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageCard
-    , GoogleCloudDialogflowV2beta1IntentMessageCard
-    , googleCloudDialogflowV2beta1IntentMessageCard
-    , gcdvimcButtons
-    , gcdvimcImageURI
-    , gcdvimcSubtitle
-    , gcdvimcTitle
-
-    -- ** GoogleCloudDialogflowV2RestoreAgentRequest
-    , GoogleCloudDialogflowV2RestoreAgentRequest
-    , googleCloudDialogflowV2RestoreAgentRequest
-    , gcdvrarAgentURI
-    , gcdvrarAgentContent
-
-    -- ** GoogleCloudDialogflowV2IntentMessageSuggestions
-    , GoogleCloudDialogflowV2IntentMessageSuggestions
-    , googleCloudDialogflowV2IntentMessageSuggestions
-    , gSuggestions
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , googleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , gcdvimbcbouaURI
-
-    -- ** GoogleCloudDialogflowV2QueryParameters
-    , GoogleCloudDialogflowV2QueryParameters
-    , googleCloudDialogflowV2QueryParameters
-    , gcdvqpContexts
-    , gcdvqpSentimentAnalysisRequestConfig
-    , gcdvqpPayload
-    , gcdvqpGeoLocation
-    , gcdvqpTimeZone
-    , gcdvqpSessionEntityTypes
-    , gcdvqpResetContexts
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-    , GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-    , googleCloudDialogflowV2beta1IntentMessageSuggestion
-    , gcdvimsTitle
-
-    -- ** GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , googleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , gcdvodirPayload
-    , gcdvodirVersion
-    , gcdvodirSource
-
-    -- ** GoogleCloudDialogflowV2EventInputParameters
-    , GoogleCloudDialogflowV2EventInputParameters
-    , googleCloudDialogflowV2EventInputParameters
-    , gcdveipsAddtional
-
-    -- ** GoogleCloudDialogflowV2IntentMessagePlatform
-    , GoogleCloudDialogflowV2IntentMessagePlatform (..)
-
-    -- ** GoogleCloudDialogflowV2DetectIntentResponse
-    , GoogleCloudDialogflowV2DetectIntentResponse
-    , googleCloudDialogflowV2DetectIntentResponse
-    , gcdvdirOutputAudioConfig
-    , gcdvdirResponseId
-    , gcdvdirOutputAudio
-    , gcdvdirWebhookStatus
-    , gcdvdirQueryResult
-
-    -- ** GoogleCloudDialogflowV2IntentMessageListSelectItem
-    , GoogleCloudDialogflowV2IntentMessageListSelectItem
-    , googleCloudDialogflowV2IntentMessageListSelectItem
-    , gcdvimlsiImage
-    , gcdvimlsiTitle
-    , gcdvimlsiDescription
-    , gcdvimlsiInfo
-
-    -- ** GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-    , GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-    , googleCloudDialogflowV2beta1SentimentAnalysisResult
-    , gQueryTextSentiment
-
-    -- ** GoogleCloudDialogflowV2EntityTypeBatch
-    , GoogleCloudDialogflowV2EntityTypeBatch
-    , googleCloudDialogflowV2EntityTypeBatch
-    , gcdvetbEntityTypes
-
-    -- ** GoogleCloudDialogflowV2VoiceSelectionParams
-    , GoogleCloudDialogflowV2VoiceSelectionParams
-    , googleCloudDialogflowV2VoiceSelectionParams
-    , gcdvvspSsmlGender
-    , gcdvvspName
-
-    -- ** GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-    , GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-    , googleCloudDialogflowV2QueryResultDiagnosticInfo
-    , gcdvqrdiAddtional
-
-    -- ** GoogleCloudDialogflowV2IntentMessageText
-    , GoogleCloudDialogflowV2IntentMessageText
-    , googleCloudDialogflowV2IntentMessageText
-    , gcdvimtText
-
-    -- ** GoogleCloudDialogflowV2DetectIntentRequest
-    , GoogleCloudDialogflowV2DetectIntentRequest
-    , googleCloudDialogflowV2DetectIntentRequest
-    , gQueryInput
-    , gOutputAudioConfig
-    , gInputAudio
-    , gQueryParams
-
-    -- ** GoogleCloudDialogflowV2beta1QueryResultParameters
-    , GoogleCloudDialogflowV2beta1QueryResultParameters
-    , googleCloudDialogflowV2beta1QueryResultParameters
-    , gcdvqrpAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-    , googleCloudDialogflowV2beta1IntentMessageBasicCard
-    , gcdvimbccImage
-    , gcdvimbccButtons
-    , gcdvimbccSubtitle
-    , gcdvimbccTitle
-    , gcdvimbccFormattedText
-
-    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-    , googleCloudDialogflowV2beta1IntentTrainingPhrase
-    , gParts
-    , gName
-    , gTimesAddedCount
-    , gType
-
-    -- ** GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , googleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , gcdvkaaMatchConfidence
-    , gcdvkaaAnswer
-    , gcdvkaaSource
-    , gcdvkaaFaqQuestion
-    , gcdvkaaMatchConfidenceLevel
-
-    -- ** GoogleCloudDialogflowV2beta1EventInput
-    , GoogleCloudDialogflowV2beta1EventInput
-    , googleCloudDialogflowV2beta1EventInput
-    , gooLanguageCode
-    , gooName
-    , gooParameters
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , googleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , gcdvbuerLanguageCode
-    , gcdvbuerUpdateMask
-    , gcdvbuerEntities
-
-    -- ** GoogleCloudDialogflowV2IntentMessagePayload
-    , GoogleCloudDialogflowV2IntentMessagePayload
-    , googleCloudDialogflowV2IntentMessagePayload
-    , gooAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , googleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , gcdvkomState
-
-    -- ** GoogleCloudDialogflowV2beta1WebhookRequest
-    , GoogleCloudDialogflowV2beta1WebhookRequest
-    , googleCloudDialogflowV2beta1WebhookRequest
-    , gOriginalDetectIntentRequest
-    , gResponseId
-    , gAlternativeQueryResults
-    , gQueryResult
-    , gSession
-
-    -- ** GoogleCloudDialogflowV2IntentTrainingPhraseType
-    , GoogleCloudDialogflowV2IntentTrainingPhraseType (..)
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageText
-    , GoogleCloudDialogflowV2beta1IntentMessageText
-    , googleCloudDialogflowV2beta1IntentMessageText
-    , gooText
-
-    -- ** GoogleCloudDialogflowV2IntentMessageSimpleResponses
-    , GoogleCloudDialogflowV2IntentMessageSimpleResponses
-    , googleCloudDialogflowV2IntentMessageSimpleResponses
-    , gSimpleResponses
-
-    -- ** GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , googleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , gFollowupIntentName
-    , gParentFollowupIntentName
-
-    -- ** GoogleCloudDialogflowV2QueryResultParameters
-    , GoogleCloudDialogflowV2QueryResultParameters
-    , googleCloudDialogflowV2QueryResultParameters
-    , gcdvqrpsAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , googleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , gcdvqrdicAddtional
-
-    -- ** GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , googleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , gcdvbderLanguageCode
-    , gcdvbderEntityValues
-
-    -- ** GoogleCloudDialogflowV2AgentMatchMode
-    , GoogleCloudDialogflowV2AgentMatchMode (..)
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-    , GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-    , googleCloudDialogflowV2BatchUpdateIntentsResponse
-    , gIntents
-
-    -- ** GoogleCloudDialogflowV2ListEntityTypesResponse
-    , GoogleCloudDialogflowV2ListEntityTypesResponse
-    , googleCloudDialogflowV2ListEntityTypesResponse
-    , gcdvletrNextPageToken
-    , gcdvletrEntityTypes
-
-    -- ** GoogleCloudDialogflowV2Agent
-    , GoogleCloudDialogflowV2Agent
-    , googleCloudDialogflowV2Agent
-    , gcdvaParent
-    , gcdvaDefaultLanguageCode
-    , gcdvaEnableLogging
-    , gcdvaClassificationThreshold
-    , gcdvaAvatarURI
-    , gcdvaSupportedLanguageCodes
-    , gcdvaDisplayName
-    , gcdvaMatchMode
-    , gcdvaTimeZone
-    , gcdvaDescription
-
-    -- ** GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode
-    , GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode (..)
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessage
-    , GoogleCloudDialogflowV2beta1IntentMessage
-    , googleCloudDialogflowV2beta1IntentMessage
-    , gcdvimCard
-    , gcdvimImage
-    , gcdvimPlatform
-    , gcdvimLinkOutSuggestion
-    , gcdvimText
-    , gcdvimCarouselSelect
-    , gcdvimTelephonySynthesizeSpeech
-    , gcdvimSimpleResponses
-    , gcdvimPayload
-    , gcdvimTelephonyTransferCall
-    , gcdvimSuggestions
-    , gcdvimListSelect
-    , gcdvimTelephonyPlayAudio
-    , gcdvimBasicCard
-    , gcdvimQuickReplies
-
-    -- ** GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-    , GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-    , googleCloudDialogflowV2IntentMessageSelectItemInfo
-    , gcdvimsiiKey
-    , gcdvimsiiSynonyms
-
-    -- ** GoogleCloudDialogflowV2beta1Sentiment
-    , GoogleCloudDialogflowV2beta1Sentiment
-    , googleCloudDialogflowV2beta1Sentiment
-    , gcdvsScore
-    , gcdvsMagnitude
-
-    -- ** GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , googleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , gcdvbdetrEntityTypeNames
-
-    -- ** Xgafv
-    , Xgafv (..)
-
-    -- ** GoogleCloudDialogflowV2QueryInput
-    , GoogleCloudDialogflowV2QueryInput
-    , googleCloudDialogflowV2QueryInput
-    , gcdvqiAudioConfig
-    , gcdvqiEvent
-    , gcdvqiText
-
-    -- ** GoogleCloudDialogflowV2ExportAgentRequest
-    , GoogleCloudDialogflowV2ExportAgentRequest
-    , googleCloudDialogflowV2ExportAgentRequest
-    , gcdvearAgentURI
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , googleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , gcdvimcsItems
-
-    -- ** GoogleCloudDialogflowV2beta1Context
-    , GoogleCloudDialogflowV2beta1Context
-    , googleCloudDialogflowV2beta1Context
-    , gcdvcLifespanCount
-    , gcdvcName
-    , gcdvcParameters
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , googleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , gcdvbuetrLanguageCode
-    , gcdvbuetrUpdateMask
-    , gcdvbuetrEntityTypeBatchInline
-    , gcdvbuetrEntityTypeBatchURI
-
-    -- ** GoogleLongrunningOperationResponse
-    , GoogleLongrunningOperationResponse
-    , googleLongrunningOperationResponse
-    , glorAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , googleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , gcdvimtssText
-    , gcdvimtssSsml
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , googleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , gcdvimlsicImage
-    , gcdvimlsicTitle
-    , gcdvimlsicDescription
-    , gcdvimlsicInfo
-
-    -- ** GoogleCloudDialogflowV2IntentMessageSuggestion
-    , GoogleCloudDialogflowV2IntentMessageSuggestion
-    , googleCloudDialogflowV2IntentMessageSuggestion
-    , gcdvimscTitle
-
-    -- ** GoogleCloudDialogflowV2beta1EntityTypeEntity
-    , GoogleCloudDialogflowV2beta1EntityTypeEntity
-    , googleCloudDialogflowV2beta1EntityTypeEntity
-    , gcdveteValue
-    , gcdveteSynonyms
-
-    -- ** GoogleCloudDialogflowV2EntityType
-    , GoogleCloudDialogflowV2EntityType
-    , googleCloudDialogflowV2EntityType
-    , gcdvetEntities
-    , gcdvetKind
-    , gcdvetName
-    , gcdvetAutoExpansionMode
-    , gcdvetDisplayName
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessagePlatform
-    , GoogleCloudDialogflowV2beta1IntentMessagePlatform (..)
-
-    -- ** GoogleCloudDialogflowV2EntityTypeKind
-    , GoogleCloudDialogflowV2EntityTypeKind (..)
-
-    -- ** GoogleCloudDialogflowV2TextInput
-    , GoogleCloudDialogflowV2TextInput
-    , googleCloudDialogflowV2TextInput
-    , gcdvtiLanguageCode
-    , gcdvtiText
-
-    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , googleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , gcdvimbcbouriaURI
-
-    -- ** GoogleCloudDialogflowV2IntentMessageCard
-    , GoogleCloudDialogflowV2IntentMessageCard
-    , googleCloudDialogflowV2IntentMessageCard
-    , gcdvimccButtons
-    , gcdvimccImageURI
-    , gcdvimccSubtitle
-    , gcdvimccTitle
-
-    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequest
-    , GoogleCloudDialogflowV2OriginalDetectIntentRequest
-    , googleCloudDialogflowV2OriginalDetectIntentRequest
-    , gPayload
-    , gVersion
-    , gSource
-
-    -- ** GoogleCloudDialogflowV2beta1IntentWebhookState
-    , GoogleCloudDialogflowV2beta1IntentWebhookState (..)
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageImage
-    , GoogleCloudDialogflowV2beta1IntentMessageImage
-    , googleCloudDialogflowV2beta1IntentMessageImage
-    , gcdvimiAccessibilityText
-    , gcdvimiImageURI
-
-    -- ** GoogleCloudDialogflowV2OutputAudioConfig
-    , GoogleCloudDialogflowV2OutputAudioConfig
-    , googleCloudDialogflowV2OutputAudioConfig
-    , gcdvoacSampleRateHertz
-    , gcdvoacSynthesizeSpeechConfig
-    , gcdvoacAudioEncoding
-
-    -- ** GoogleCloudDialogflowV2ExportAgentResponse
-    , GoogleCloudDialogflowV2ExportAgentResponse
-    , googleCloudDialogflowV2ExportAgentResponse
-    , gAgentURI
-    , gAgentContent
-
-    -- ** GoogleCloudDialogflowV2WebhookResponsePayload
-    , GoogleCloudDialogflowV2WebhookResponsePayload
-    , googleCloudDialogflowV2WebhookResponsePayload
-    , gcdvwrpcAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , googleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , gURI
-    , gDestinationName
-
-    -- ** GoogleCloudDialogflowV2ListIntentsResponse
-    , GoogleCloudDialogflowV2ListIntentsResponse
-    , googleCloudDialogflowV2ListIntentsResponse
-    , gcdvlirIntents
-    , gcdvlirNextPageToken
-
-    -- ** GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , googleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , gEntityTypes
-
-    -- ** GoogleCloudDialogflowV2QueryResultWebhookPayload
-    , GoogleCloudDialogflowV2QueryResultWebhookPayload
-    , googleCloudDialogflowV2QueryResultWebhookPayload
-    , gcdvqrwpAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentParameter
-    , GoogleCloudDialogflowV2beta1IntentParameter
-    , googleCloudDialogflowV2beta1IntentParameter
-    , gcdvipValue
-    , gcdvipName
-    , gcdvipPrompts
-    , gcdvipMandatory
-    , gcdvipDisplayName
-    , gcdvipDefaultValue
-    , gcdvipIsList
-    , gcdvipEntityTypeDisplayName
-
-    -- ** GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding
-    , GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding (..)
-
-    -- ** GoogleCloudDialogflowV2EntityTypeAutoExpansionMode
-    , GoogleCloudDialogflowV2EntityTypeAutoExpansionMode (..)
-
-    -- ** GoogleCloudDialogflowV2IntentParameter
-    , GoogleCloudDialogflowV2IntentParameter
-    , googleCloudDialogflowV2IntentParameter
-    , gcdvipcValue
-    , gcdvipcName
-    , gcdvipcPrompts
-    , gcdvipcMandatory
-    , gcdvipcDisplayName
-    , gcdvipcDefaultValue
-    , gcdvipcIsList
-    , gcdvipcEntityTypeDisplayName
-
-    -- ** GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , googleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , gcdvqrwpcAddtional
-
-    -- ** GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , googleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , gcdvitppcText
-    , gcdvitppcUserDefined
-    , gcdvitppcEntityType
-    , gcdvitppcAlias
-
-    -- ** GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode
-    , GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode (..)
-
-    -- ** GoogleCloudDialogflowV2ListContextsResponse
-    , GoogleCloudDialogflowV2ListContextsResponse
-    , googleCloudDialogflowV2ListContextsResponse
-    , gcdvlcrContexts
-    , gcdvlcrNextPageToken
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , googleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , gcdvimttcPhoneNumber
-
-    -- ** GoogleCloudDialogflowV2beta1ExportAgentResponse
-    , GoogleCloudDialogflowV2beta1ExportAgentResponse
-    , googleCloudDialogflowV2beta1ExportAgentResponse
-    , gooAgentURI
-    , gooAgentContent
-
-    -- ** GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , googleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , gcdvodirpcAddtional
-
-    -- ** GoogleCloudDialogflowV2SessionEntityType
-    , GoogleCloudDialogflowV2SessionEntityType
-    , googleCloudDialogflowV2SessionEntityType
-    , gcdvSetEntityOverrideMode
-    , gcdvSetEntities
-    , gcdvSetName
-
-    -- ** GoogleCloudDialogflowV2beta1EntityTypeKind
-    , GoogleCloudDialogflowV2beta1EntityTypeKind (..)
-
-    -- ** GoogleCloudDialogflowV2EntityTypeEntity
-    , GoogleCloudDialogflowV2EntityTypeEntity
-    , googleCloudDialogflowV2EntityTypeEntity
-    , gValue
-    , gSynonyms
-
-    -- ** GoogleCloudDialogflowV2IntentWebhookState
-    , GoogleCloudDialogflowV2IntentWebhookState (..)
-
-    -- ** GoogleCloudDialogflowV2beta1QueryResult
-    , GoogleCloudDialogflowV2beta1QueryResult
-    , googleCloudDialogflowV2beta1QueryResult
-    , gLanguageCode
-    , gAllRequiredParamsPresent
-    , gIntentDetectionConfidence
-    , gFulfillmentMessages
-    , gKnowledgeAnswers
-    , gSpeechRecognitionConfidence
-    , gAction
-    , gIntent
-    , gSentimentAnalysisResult
-    , gQueryText
-    , gFulfillmentText
-    , gParameters
-    , gWebhookPayload
-    , gOutputContexts
-    , gWebhookSource
-    , gDiagnosticInfo
-
-    -- ** GoogleCloudDialogflowV2IntentMessageImage
-    , GoogleCloudDialogflowV2IntentMessageImage
-    , googleCloudDialogflowV2IntentMessageImage
-    , gAccessibilityText
-    , gImageURI
-
-    -- ** GoogleCloudDialogflowV2WebhookResponse
-    , GoogleCloudDialogflowV2WebhookResponse
-    , googleCloudDialogflowV2WebhookResponse
-    , gooFulfillmentMessages
-    , gooPayload
-    , gooFulfillmentText
-    , gooSource
-    , gooOutputContexts
-    , gooFollowupEventInput
-
-    -- ** GoogleCloudDialogflowV2TrainAgentRequest
-    , GoogleCloudDialogflowV2TrainAgentRequest
-    , googleCloudDialogflowV2TrainAgentRequest
-
-    -- ** GoogleCloudDialogflowV2IntentBatch
-    , GoogleCloudDialogflowV2IntentBatch
-    , googleCloudDialogflowV2IntentBatch
-    , gcdvibIntents
-
-    -- ** GoogleCloudDialogflowV2beta1EntityType
-    , GoogleCloudDialogflowV2beta1EntityType
-    , googleCloudDialogflowV2beta1EntityType
-    , gcdvetcEntities
-    , gcdvetcKind
-    , gcdvetcName
-    , gcdvetcAutoExpansionMode
-    , gcdvetcDisplayName
-
-    -- ** GoogleCloudDialogflowV2SearchAgentsResponse
-    , GoogleCloudDialogflowV2SearchAgentsResponse
-    , googleCloudDialogflowV2SearchAgentsResponse
-    , gcdvsarNextPageToken
-    , gcdvsarAgents
-
-    -- ** GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-    , GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-    , googleCloudDialogflowV2ListSessionEntityTypesResponse
-    , gcdvlSetrNextPageToken
-    , gcdvlSetrSessionEntityTypes
-
-    -- ** GoogleLongrunningOperation
-    , GoogleLongrunningOperation
-    , googleLongrunningOperation
-    , gloDone
-    , gloError
-    , gloResponse
-    , gloName
-    , gloMetadata
-
-    -- ** GoogleCloudDialogflowV2IntentMessage
-    , GoogleCloudDialogflowV2IntentMessage
-    , googleCloudDialogflowV2IntentMessage
-    , gcdvimcCard
-    , gcdvimcImage
-    , gcdvimcPlatform
-    , gcdvimcLinkOutSuggestion
-    , gcdvimcText
-    , gcdvimcCarouselSelect
-    , gcdvimcSimpleResponses
-    , gcdvimcPayload
-    , gcdvimcSuggestions
-    , gcdvimcListSelect
-    , gcdvimcBasicCard
-    , gcdvimcQuickReplies
-
-    -- ** GoogleCloudDialogflowV2IntentMessageCarouselSelect
-    , GoogleCloudDialogflowV2IntentMessageCarouselSelect
-    , googleCloudDialogflowV2IntentMessageCarouselSelect
-    , gItems
-
-    -- ** GoogleCloudDialogflowV2Sentiment
-    , GoogleCloudDialogflowV2Sentiment
-    , googleCloudDialogflowV2Sentiment
-    , gScore
-    , gMagnitude
-
-    -- ** GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , googleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , gooKey
-    , gooSynonyms
-
-    -- ** GoogleCloudDialogflowV2beta1Intent
-    , GoogleCloudDialogflowV2beta1Intent
-    , googleCloudDialogflowV2beta1Intent
-    , gcdvicDefaultResponsePlatforms
-    , gcdvicWebhookState
-    , gcdvicMlEnabled
-    , gcdvicPriority
-    , gcdvicAction
-    , gcdvicRootFollowupIntentName
-    , gcdvicName
-    , gcdvicEvents
-    , gcdvicParameters
-    , gcdvicDisplayName
-    , gcdvicInputContextNames
-    , gcdvicEndInteraction
-    , gcdvicMessages
-    , gcdvicParentFollowupIntentName
-    , gcdvicOutputContexts
-    , gcdvicTrainingPhrases
-    , gcdvicFollowupIntentInfo
-    , gcdvicIsFallback
-    , gcdvicMlDisabled
-    , gcdvicResetContexts
-
-    -- ** GoogleCloudDialogflowV2Context
-    , GoogleCloudDialogflowV2Context
-    , googleCloudDialogflowV2Context
-    , gcdvccLifespanCount
-    , gcdvccName
-    , gcdvccParameters
-
-    -- ** GoogleCloudDialogflowV2InputAudioConfigAudioEncoding
-    , GoogleCloudDialogflowV2InputAudioConfigAudioEncoding (..)
-
-    -- ** GoogleCloudDialogflowV2IntentMessageBasicCardButton
-    , GoogleCloudDialogflowV2IntentMessageBasicCardButton
-    , googleCloudDialogflowV2IntentMessageBasicCardButton
-    , gcdvimbcbcOpenURIAction
-    , gcdvimbcbcTitle
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchDelete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchUpdate
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Create
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Delete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchCreate
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchDelete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchUpdate
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Get
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.List
-import           Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Patch
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Export
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Import
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchDelete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchUpdate
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Create
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Delete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Get
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.List
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Patch
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Restore
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Search
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Create
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Delete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Get
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.List
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Patch
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DeleteContexts
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DetectIntent
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Create
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Delete
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Get
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.List
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Patch
-import           Network.Google.Resource.DialogFlow.Projects.Agent.Train
-import           Network.Google.Resource.DialogFlow.Projects.GetAgent
-import           Network.Google.Resource.DialogFlow.Projects.Operations.Get
-
-{- $resources
-TODO
--}
-
--- | Represents the entirety of the methods and resources available for the Dialogflow API service.
-type DialogFlowAPI =
-     ProjectsAgentIntentsListResource :<|>
-       ProjectsAgentIntentsPatchResource
-       :<|> ProjectsAgentIntentsGetResource
-       :<|> ProjectsAgentIntentsCreateResource
-       :<|> ProjectsAgentIntentsBatchUpdateResource
-       :<|> ProjectsAgentIntentsBatchDeleteResource
-       :<|> ProjectsAgentIntentsDeleteResource
-       :<|>
-       ProjectsAgentEntityTypesEntitiesBatchUpdateResource
-       :<|>
-       ProjectsAgentEntityTypesEntitiesBatchDeleteResource
-       :<|>
-       ProjectsAgentEntityTypesEntitiesBatchCreateResource
-       :<|> ProjectsAgentEntityTypesListResource
-       :<|> ProjectsAgentEntityTypesPatchResource
-       :<|> ProjectsAgentEntityTypesGetResource
-       :<|> ProjectsAgentEntityTypesCreateResource
-       :<|> ProjectsAgentEntityTypesBatchUpdateResource
-       :<|> ProjectsAgentEntityTypesBatchDeleteResource
-       :<|> ProjectsAgentEntityTypesDeleteResource
-       :<|> ProjectsAgentSessionsContextsListResource
-       :<|> ProjectsAgentSessionsContextsPatchResource
-       :<|> ProjectsAgentSessionsContextsGetResource
-       :<|> ProjectsAgentSessionsContextsCreateResource
-       :<|> ProjectsAgentSessionsContextsDeleteResource
-       :<|> ProjectsAgentSessionsEntityTypesListResource
-       :<|> ProjectsAgentSessionsEntityTypesPatchResource
-       :<|> ProjectsAgentSessionsEntityTypesGetResource
-       :<|> ProjectsAgentSessionsEntityTypesCreateResource
-       :<|> ProjectsAgentSessionsEntityTypesDeleteResource
-       :<|> ProjectsAgentSessionsDetectIntentResource
-       :<|> ProjectsAgentSessionsDeleteContextsResource
-       :<|> ProjectsAgentExportResource
-       :<|> ProjectsAgentRestoreResource
-       :<|> ProjectsAgentImportResource
-       :<|> ProjectsAgentTrainResource
-       :<|> ProjectsAgentSearchResource
-       :<|> ProjectsOperationsGetResource
-       :<|> ProjectsGetAgentResource
diff --git a/gen/Network/Google/DialogFlow/Types.hs b/gen/Network/Google/DialogFlow/Types.hs
deleted file mode 100644
--- a/gen/Network/Google/DialogFlow/Types.hs
+++ /dev/null
@@ -1,1045 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DialogFlow.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.DialogFlow.Types
-    (
-    -- * Service Configuration
-      dialogFlowService
-
-    -- * OAuth Scopes
-    , dialogFlowScope
-    , cloudPlatformScope
-
-    -- * GoogleRpcStatus
-    , GoogleRpcStatus
-    , googleRpcStatus
-    , grsDetails
-    , grsCode
-    , grsMessage
-
-    -- * GoogleCloudDialogflowV2IntentFollowupIntentInfo
-    , GoogleCloudDialogflowV2IntentFollowupIntentInfo
-    , googleCloudDialogflowV2IntentFollowupIntentInfo
-    , gcdvifiiFollowupIntentName
-    , gcdvifiiParentFollowupIntentName
-
-    -- * GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView
-    , GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView (..)
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , googleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    , gcdvimsrSimpleResponses
-
-    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhraseType
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhraseType (..)
-
-    -- * GoogleCloudDialogflowV2SynthesizeSpeechConfig
-    , GoogleCloudDialogflowV2SynthesizeSpeechConfig
-    , googleCloudDialogflowV2SynthesizeSpeechConfig
-    , gcdvsscVolumeGainDB
-    , gcdvsscEffectsProFileId
-    , gcdvsscVoice
-    , gcdvsscSpeakingRate
-    , gcdvsscPitch
-
-    -- * GoogleCloudDialogflowV2InputAudioConfig
-    , GoogleCloudDialogflowV2InputAudioConfig
-    , googleCloudDialogflowV2InputAudioConfig
-    , gcdviacLanguageCode
-    , gcdviacPhraseHints
-    , gcdviacSampleRateHertz
-    , gcdviacModelVariant
-    , gcdviacAudioEncoding
-
-    -- * GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , googleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    , gcdvbuirIntents
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessagePayload
-    , GoogleCloudDialogflowV2beta1IntentMessagePayload
-    , googleCloudDialogflowV2beta1IntentMessagePayload
-    , gcdvimpAddtional
-
-    -- * GoogleCloudDialogflowV2WebhookRequest
-    , GoogleCloudDialogflowV2WebhookRequest
-    , googleCloudDialogflowV2WebhookRequest
-    , gcdvwrOriginalDetectIntentRequest
-    , gcdvwrResponseId
-    , gcdvwrQueryResult
-    , gcdvwrSession
-
-    -- * GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , googleCloudDialogflowV2IntentMessageCarouselSelectItem
-    , gcdvimcsiImage
-    , gcdvimcsiTitle
-    , gcdvimcsiDescription
-    , gcdvimcsiInfo
-
-    -- * GoogleCloudDialogflowV2EventInput
-    , GoogleCloudDialogflowV2EventInput
-    , googleCloudDialogflowV2EventInput
-    , gcdveiLanguageCode
-    , gcdveiName
-    , gcdveiParameters
-
-    -- * GoogleCloudDialogflowV2IntentMessageSimpleResponse
-    , GoogleCloudDialogflowV2IntentMessageSimpleResponse
-    , googleCloudDialogflowV2IntentMessageSimpleResponse
-    , gcdvimsrDisplayText
-    , gcdvimsrSsml
-    , gcdvimsrTextToSpeech
-
-    -- * GoogleCloudDialogflowV2InputAudioConfigModelVariant
-    , GoogleCloudDialogflowV2InputAudioConfigModelVariant (..)
-
-    -- * GoogleLongrunningOperationMetadata
-    , GoogleLongrunningOperationMetadata
-    , googleLongrunningOperationMetadata
-    , glomAddtional
-
-    -- * GoogleCloudDialogflowV2IntentTrainingPhrase
-    , GoogleCloudDialogflowV2IntentTrainingPhrase
-    , googleCloudDialogflowV2IntentTrainingPhrase
-    , gcdvitpParts
-    , gcdvitpName
-    , gcdvitpTimesAddedCount
-    , gcdvitpType
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , googleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    , gImage
-    , gTitle
-    , gDescription
-    , gInfo
-
-    -- * GoogleCloudDialogflowV2IntentMessageBasicCard
-    , GoogleCloudDialogflowV2IntentMessageBasicCard
-    , googleCloudDialogflowV2IntentMessageBasicCard
-    , gcdvimbcImage
-    , gcdvimbcButtons
-    , gcdvimbcSubtitle
-    , gcdvimbcTitle
-    , gcdvimbcFormattedText
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , googleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    , gDisplayText
-    , gSsml
-    , gTextToSpeech
-
-    -- * GoogleCloudDialogflowV2Intent
-    , GoogleCloudDialogflowV2Intent
-    , googleCloudDialogflowV2Intent
-    , gcdviDefaultResponsePlatforms
-    , gcdviWebhookState
-    , gcdviPriority
-    , gcdviAction
-    , gcdviRootFollowupIntentName
-    , gcdviName
-    , gcdviEvents
-    , gcdviParameters
-    , gcdviDisplayName
-    , gcdviInputContextNames
-    , gcdviMessages
-    , gcdviParentFollowupIntentName
-    , gcdviOutputContexts
-    , gcdviTrainingPhrases
-    , gcdviFollowupIntentInfo
-    , gcdviIsFallback
-    , gcdviMlDisabled
-    , gcdviResetContexts
-
-    -- * GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender
-    , GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender (..)
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , googleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    , gcdvimbcbOpenURIAction
-    , gcdvimbcbTitle
-
-    -- * GoogleCloudDialogflowV2SentimentAnalysisResult
-    , GoogleCloudDialogflowV2SentimentAnalysisResult
-    , googleCloudDialogflowV2SentimentAnalysisResult
-    , gcdvsarQueryTextSentiment
-
-    -- * GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-    , GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-    , googleCloudDialogflowV2BatchCreateEntitiesRequest
-    , gcdvbcerLanguageCode
-    , gcdvbcerEntities
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-    , GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-    , googleCloudDialogflowV2beta1IntentMessageSuggestions
-    , gcdvimsSuggestions
-
-    -- * GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-    , GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-    , googleCloudDialogflowV2BatchDeleteIntentsRequest
-    , gcdvbdirIntents
-
-    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel (..)
-
-    -- * GoogleCloudDialogflowV2QueryResult
-    , GoogleCloudDialogflowV2QueryResult
-    , googleCloudDialogflowV2QueryResult
-    , gcdvqrLanguageCode
-    , gcdvqrAllRequiredParamsPresent
-    , gcdvqrIntentDetectionConfidence
-    , gcdvqrFulfillmentMessages
-    , gcdvqrSpeechRecognitionConfidence
-    , gcdvqrAction
-    , gcdvqrIntent
-    , gcdvqrSentimentAnalysisResult
-    , gcdvqrQueryText
-    , gcdvqrFulfillmentText
-    , gcdvqrParameters
-    , gcdvqrWebhookPayload
-    , gcdvqrOutputContexts
-    , gcdvqrWebhookSource
-    , gcdvqrDiagnosticInfo
-
-    -- * GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-    , GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-    , googleCloudDialogflowV2BatchUpdateIntentsRequest
-    , gcdvbuirLanguageCode
-    , gcdvbuirUpdateMask
-    , gcdvbuirIntentView
-    , gcdvbuirIntentBatchURI
-    , gcdvbuirIntentBatchInline
-
-    -- * GoogleTypeLatLng
-    , GoogleTypeLatLng
-    , googleTypeLatLng
-    , gtllLatitude
-    , gtllLongitude
-
-    -- * GoogleCloudDialogflowV2beta1WebhookResponse
-    , GoogleCloudDialogflowV2beta1WebhookResponse
-    , googleCloudDialogflowV2beta1WebhookResponse
-    , gcdvwrFulfillmentMessages
-    , gcdvwrPayload
-    , gcdvwrFulfillmentText
-    , gcdvwrSource
-    , gcdvwrEndInteraction
-    , gcdvwrOutputContexts
-    , gcdvwrFollowupEventInput
-
-    -- * GoogleCloudDialogflowV2beta1EventInputParameters
-    , GoogleCloudDialogflowV2beta1EventInputParameters
-    , googleCloudDialogflowV2beta1EventInputParameters
-    , gcdveipAddtional
-
-    -- * GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , googleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    , gcdvodirpAddtional
-
-    -- * GoogleCloudDialogflowV2IntentMessageQuickReplies
-    , GoogleCloudDialogflowV2IntentMessageQuickReplies
-    , googleCloudDialogflowV2IntentMessageQuickReplies
-    , gcdvimqrTitle
-    , gcdvimqrQuickReplies
-
-    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswers
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswers
-    , googleCloudDialogflowV2beta1KnowledgeAnswers
-    , gcdvkaAnswers
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageCardButton
-    , GoogleCloudDialogflowV2beta1IntentMessageCardButton
-    , googleCloudDialogflowV2beta1IntentMessageCardButton
-    , gcdvimcbText
-    , gcdvimcbPostback
-
-    -- * GoogleCloudDialogflowV2beta1ContextParameters
-    , GoogleCloudDialogflowV2beta1ContextParameters
-    , googleCloudDialogflowV2beta1ContextParameters
-    , gcdvcpAddtional
-
-    -- * GoogleCloudDialogflowV2QueryParametersPayload
-    , GoogleCloudDialogflowV2QueryParametersPayload
-    , googleCloudDialogflowV2QueryParametersPayload
-    , gcdvqppAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageListSelect
-    , GoogleCloudDialogflowV2beta1IntentMessageListSelect
-    , googleCloudDialogflowV2beta1IntentMessageListSelect
-    , gcdvimlsItems
-    , gcdvimlsTitle
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , googleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    , gcdvimtpaAudioURI
-
-    -- * GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , googleCloudDialogflowV2SentimentAnalysisRequestConfig
-    , gcdvsarcAnalyzeQueryTextSentiment
-
-    -- * GoogleCloudDialogflowV2IntentTrainingPhrasePart
-    , GoogleCloudDialogflowV2IntentTrainingPhrasePart
-    , googleCloudDialogflowV2IntentTrainingPhrasePart
-    , gcdvitppText
-    , gcdvitppUserDefined
-    , gcdvitppEntityType
-    , gcdvitppAlias
-
-    -- * GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState
-    , GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState (..)
-
-    -- * GoogleProtobufEmpty
-    , GoogleProtobufEmpty
-    , googleProtobufEmpty
-
-    -- * GoogleCloudDialogflowV2beta1WebhookResponsePayload
-    , GoogleCloudDialogflowV2beta1WebhookResponsePayload
-    , googleCloudDialogflowV2beta1WebhookResponsePayload
-    , gcdvwrpAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , googleCloudDialogflowV2beta1IntentMessageQuickReplies
-    , gcdvimqrsTitle
-    , gcdvimqrsQuickReplies
-
-    -- * GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , googleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    , gcdvimlosURI
-    , gcdvimlosDestinationName
-
-    -- * GoogleCloudDialogflowV2ImportAgentRequest
-    , GoogleCloudDialogflowV2ImportAgentRequest
-    , googleCloudDialogflowV2ImportAgentRequest
-    , gcdviarAgentURI
-    , gcdviarAgentContent
-
-    -- * GoogleRpcStatusDetailsItem
-    , GoogleRpcStatusDetailsItem
-    , googleRpcStatusDetailsItem
-    , grsdiAddtional
-
-    -- * GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , googleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    , gcdvbuetrEntityTypes
-
-    -- * GoogleCloudDialogflowV2ContextParameters
-    , GoogleCloudDialogflowV2ContextParameters
-    , googleCloudDialogflowV2ContextParameters
-    , gAddtional
-
-    -- * GoogleCloudDialogflowV2IntentMessageCardButton
-    , GoogleCloudDialogflowV2IntentMessageCardButton
-    , googleCloudDialogflowV2IntentMessageCardButton
-    , gText
-    , gPostback
-
-    -- * GoogleCloudDialogflowV2IntentMessageListSelect
-    , GoogleCloudDialogflowV2IntentMessageListSelect
-    , googleCloudDialogflowV2IntentMessageListSelect
-    , gooItems
-    , gooTitle
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageCard
-    , GoogleCloudDialogflowV2beta1IntentMessageCard
-    , googleCloudDialogflowV2beta1IntentMessageCard
-    , gcdvimcButtons
-    , gcdvimcImageURI
-    , gcdvimcSubtitle
-    , gcdvimcTitle
-
-    -- * GoogleCloudDialogflowV2RestoreAgentRequest
-    , GoogleCloudDialogflowV2RestoreAgentRequest
-    , googleCloudDialogflowV2RestoreAgentRequest
-    , gcdvrarAgentURI
-    , gcdvrarAgentContent
-
-    -- * GoogleCloudDialogflowV2IntentMessageSuggestions
-    , GoogleCloudDialogflowV2IntentMessageSuggestions
-    , googleCloudDialogflowV2IntentMessageSuggestions
-    , gSuggestions
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , googleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    , gcdvimbcbouaURI
-
-    -- * GoogleCloudDialogflowV2QueryParameters
-    , GoogleCloudDialogflowV2QueryParameters
-    , googleCloudDialogflowV2QueryParameters
-    , gcdvqpContexts
-    , gcdvqpSentimentAnalysisRequestConfig
-    , gcdvqpPayload
-    , gcdvqpGeoLocation
-    , gcdvqpTimeZone
-    , gcdvqpSessionEntityTypes
-    , gcdvqpResetContexts
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-    , GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-    , googleCloudDialogflowV2beta1IntentMessageSuggestion
-    , gcdvimsTitle
-
-    -- * GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , googleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    , gcdvodirPayload
-    , gcdvodirVersion
-    , gcdvodirSource
-
-    -- * GoogleCloudDialogflowV2EventInputParameters
-    , GoogleCloudDialogflowV2EventInputParameters
-    , googleCloudDialogflowV2EventInputParameters
-    , gcdveipsAddtional
-
-    -- * GoogleCloudDialogflowV2IntentMessagePlatform
-    , GoogleCloudDialogflowV2IntentMessagePlatform (..)
-
-    -- * GoogleCloudDialogflowV2DetectIntentResponse
-    , GoogleCloudDialogflowV2DetectIntentResponse
-    , googleCloudDialogflowV2DetectIntentResponse
-    , gcdvdirOutputAudioConfig
-    , gcdvdirResponseId
-    , gcdvdirOutputAudio
-    , gcdvdirWebhookStatus
-    , gcdvdirQueryResult
-
-    -- * GoogleCloudDialogflowV2IntentMessageListSelectItem
-    , GoogleCloudDialogflowV2IntentMessageListSelectItem
-    , googleCloudDialogflowV2IntentMessageListSelectItem
-    , gcdvimlsiImage
-    , gcdvimlsiTitle
-    , gcdvimlsiDescription
-    , gcdvimlsiInfo
-
-    -- * GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-    , GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-    , googleCloudDialogflowV2beta1SentimentAnalysisResult
-    , gQueryTextSentiment
-
-    -- * GoogleCloudDialogflowV2EntityTypeBatch
-    , GoogleCloudDialogflowV2EntityTypeBatch
-    , googleCloudDialogflowV2EntityTypeBatch
-    , gcdvetbEntityTypes
-
-    -- * GoogleCloudDialogflowV2VoiceSelectionParams
-    , GoogleCloudDialogflowV2VoiceSelectionParams
-    , googleCloudDialogflowV2VoiceSelectionParams
-    , gcdvvspSsmlGender
-    , gcdvvspName
-
-    -- * GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-    , GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-    , googleCloudDialogflowV2QueryResultDiagnosticInfo
-    , gcdvqrdiAddtional
-
-    -- * GoogleCloudDialogflowV2IntentMessageText
-    , GoogleCloudDialogflowV2IntentMessageText
-    , googleCloudDialogflowV2IntentMessageText
-    , gcdvimtText
-
-    -- * GoogleCloudDialogflowV2DetectIntentRequest
-    , GoogleCloudDialogflowV2DetectIntentRequest
-    , googleCloudDialogflowV2DetectIntentRequest
-    , gQueryInput
-    , gOutputAudioConfig
-    , gInputAudio
-    , gQueryParams
-
-    -- * GoogleCloudDialogflowV2beta1QueryResultParameters
-    , GoogleCloudDialogflowV2beta1QueryResultParameters
-    , googleCloudDialogflowV2beta1QueryResultParameters
-    , gcdvqrpAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-    , GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-    , googleCloudDialogflowV2beta1IntentMessageBasicCard
-    , gcdvimbccImage
-    , gcdvimbccButtons
-    , gcdvimbccSubtitle
-    , gcdvimbccTitle
-    , gcdvimbccFormattedText
-
-    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-    , googleCloudDialogflowV2beta1IntentTrainingPhrase
-    , gParts
-    , gName
-    , gTimesAddedCount
-    , gType
-
-    -- * GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , googleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    , gcdvkaaMatchConfidence
-    , gcdvkaaAnswer
-    , gcdvkaaSource
-    , gcdvkaaFaqQuestion
-    , gcdvkaaMatchConfidenceLevel
-
-    -- * GoogleCloudDialogflowV2beta1EventInput
-    , GoogleCloudDialogflowV2beta1EventInput
-    , googleCloudDialogflowV2beta1EventInput
-    , gooLanguageCode
-    , gooName
-    , gooParameters
-
-    -- * GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , googleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , gcdvbuerLanguageCode
-    , gcdvbuerUpdateMask
-    , gcdvbuerEntities
-
-    -- * GoogleCloudDialogflowV2IntentMessagePayload
-    , GoogleCloudDialogflowV2IntentMessagePayload
-    , googleCloudDialogflowV2IntentMessagePayload
-    , gooAddtional
-
-    -- * GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , googleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    , gcdvkomState
-
-    -- * GoogleCloudDialogflowV2beta1WebhookRequest
-    , GoogleCloudDialogflowV2beta1WebhookRequest
-    , googleCloudDialogflowV2beta1WebhookRequest
-    , gOriginalDetectIntentRequest
-    , gResponseId
-    , gAlternativeQueryResults
-    , gQueryResult
-    , gSession
-
-    -- * GoogleCloudDialogflowV2IntentTrainingPhraseType
-    , GoogleCloudDialogflowV2IntentTrainingPhraseType (..)
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageText
-    , GoogleCloudDialogflowV2beta1IntentMessageText
-    , googleCloudDialogflowV2beta1IntentMessageText
-    , gooText
-
-    -- * GoogleCloudDialogflowV2IntentMessageSimpleResponses
-    , GoogleCloudDialogflowV2IntentMessageSimpleResponses
-    , googleCloudDialogflowV2IntentMessageSimpleResponses
-    , gSimpleResponses
-
-    -- * GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , googleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    , gFollowupIntentName
-    , gParentFollowupIntentName
-
-    -- * GoogleCloudDialogflowV2QueryResultParameters
-    , GoogleCloudDialogflowV2QueryResultParameters
-    , googleCloudDialogflowV2QueryResultParameters
-    , gcdvqrpsAddtional
-
-    -- * GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , googleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    , gcdvqrdicAddtional
-
-    -- * GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , googleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , gcdvbderLanguageCode
-    , gcdvbderEntityValues
-
-    -- * GoogleCloudDialogflowV2AgentMatchMode
-    , GoogleCloudDialogflowV2AgentMatchMode (..)
-
-    -- * GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-    , GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-    , googleCloudDialogflowV2BatchUpdateIntentsResponse
-    , gIntents
-
-    -- * GoogleCloudDialogflowV2ListEntityTypesResponse
-    , GoogleCloudDialogflowV2ListEntityTypesResponse
-    , googleCloudDialogflowV2ListEntityTypesResponse
-    , gcdvletrNextPageToken
-    , gcdvletrEntityTypes
-
-    -- * GoogleCloudDialogflowV2Agent
-    , GoogleCloudDialogflowV2Agent
-    , googleCloudDialogflowV2Agent
-    , gcdvaParent
-    , gcdvaDefaultLanguageCode
-    , gcdvaEnableLogging
-    , gcdvaClassificationThreshold
-    , gcdvaAvatarURI
-    , gcdvaSupportedLanguageCodes
-    , gcdvaDisplayName
-    , gcdvaMatchMode
-    , gcdvaTimeZone
-    , gcdvaDescription
-
-    -- * GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode
-    , GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode (..)
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessage
-    , GoogleCloudDialogflowV2beta1IntentMessage
-    , googleCloudDialogflowV2beta1IntentMessage
-    , gcdvimCard
-    , gcdvimImage
-    , gcdvimPlatform
-    , gcdvimLinkOutSuggestion
-    , gcdvimText
-    , gcdvimCarouselSelect
-    , gcdvimTelephonySynthesizeSpeech
-    , gcdvimSimpleResponses
-    , gcdvimPayload
-    , gcdvimTelephonyTransferCall
-    , gcdvimSuggestions
-    , gcdvimListSelect
-    , gcdvimTelephonyPlayAudio
-    , gcdvimBasicCard
-    , gcdvimQuickReplies
-
-    -- * GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-    , GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-    , googleCloudDialogflowV2IntentMessageSelectItemInfo
-    , gcdvimsiiKey
-    , gcdvimsiiSynonyms
-
-    -- * GoogleCloudDialogflowV2beta1Sentiment
-    , GoogleCloudDialogflowV2beta1Sentiment
-    , googleCloudDialogflowV2beta1Sentiment
-    , gcdvsScore
-    , gcdvsMagnitude
-
-    -- * GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , googleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , gcdvbdetrEntityTypeNames
-
-    -- * Xgafv
-    , Xgafv (..)
-
-    -- * GoogleCloudDialogflowV2QueryInput
-    , GoogleCloudDialogflowV2QueryInput
-    , googleCloudDialogflowV2QueryInput
-    , gcdvqiAudioConfig
-    , gcdvqiEvent
-    , gcdvqiText
-
-    -- * GoogleCloudDialogflowV2ExportAgentRequest
-    , GoogleCloudDialogflowV2ExportAgentRequest
-    , googleCloudDialogflowV2ExportAgentRequest
-    , gcdvearAgentURI
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , googleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    , gcdvimcsItems
-
-    -- * GoogleCloudDialogflowV2beta1Context
-    , GoogleCloudDialogflowV2beta1Context
-    , googleCloudDialogflowV2beta1Context
-    , gcdvcLifespanCount
-    , gcdvcName
-    , gcdvcParameters
-
-    -- * GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , googleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , gcdvbuetrLanguageCode
-    , gcdvbuetrUpdateMask
-    , gcdvbuetrEntityTypeBatchInline
-    , gcdvbuetrEntityTypeBatchURI
-
-    -- * GoogleLongrunningOperationResponse
-    , GoogleLongrunningOperationResponse
-    , googleLongrunningOperationResponse
-    , glorAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , googleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    , gcdvimtssText
-    , gcdvimtssSsml
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , googleCloudDialogflowV2beta1IntentMessageListSelectItem
-    , gcdvimlsicImage
-    , gcdvimlsicTitle
-    , gcdvimlsicDescription
-    , gcdvimlsicInfo
-
-    -- * GoogleCloudDialogflowV2IntentMessageSuggestion
-    , GoogleCloudDialogflowV2IntentMessageSuggestion
-    , googleCloudDialogflowV2IntentMessageSuggestion
-    , gcdvimscTitle
-
-    -- * GoogleCloudDialogflowV2beta1EntityTypeEntity
-    , GoogleCloudDialogflowV2beta1EntityTypeEntity
-    , googleCloudDialogflowV2beta1EntityTypeEntity
-    , gcdveteValue
-    , gcdveteSynonyms
-
-    -- * GoogleCloudDialogflowV2EntityType
-    , GoogleCloudDialogflowV2EntityType
-    , googleCloudDialogflowV2EntityType
-    , gcdvetEntities
-    , gcdvetKind
-    , gcdvetName
-    , gcdvetAutoExpansionMode
-    , gcdvetDisplayName
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessagePlatform
-    , GoogleCloudDialogflowV2beta1IntentMessagePlatform (..)
-
-    -- * GoogleCloudDialogflowV2EntityTypeKind
-    , GoogleCloudDialogflowV2EntityTypeKind (..)
-
-    -- * GoogleCloudDialogflowV2TextInput
-    , GoogleCloudDialogflowV2TextInput
-    , googleCloudDialogflowV2TextInput
-    , gcdvtiLanguageCode
-    , gcdvtiText
-
-    -- * GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , googleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    , gcdvimbcbouriaURI
-
-    -- * GoogleCloudDialogflowV2IntentMessageCard
-    , GoogleCloudDialogflowV2IntentMessageCard
-    , googleCloudDialogflowV2IntentMessageCard
-    , gcdvimccButtons
-    , gcdvimccImageURI
-    , gcdvimccSubtitle
-    , gcdvimccTitle
-
-    -- * GoogleCloudDialogflowV2OriginalDetectIntentRequest
-    , GoogleCloudDialogflowV2OriginalDetectIntentRequest
-    , googleCloudDialogflowV2OriginalDetectIntentRequest
-    , gPayload
-    , gVersion
-    , gSource
-
-    -- * GoogleCloudDialogflowV2beta1IntentWebhookState
-    , GoogleCloudDialogflowV2beta1IntentWebhookState (..)
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageImage
-    , GoogleCloudDialogflowV2beta1IntentMessageImage
-    , googleCloudDialogflowV2beta1IntentMessageImage
-    , gcdvimiAccessibilityText
-    , gcdvimiImageURI
-
-    -- * GoogleCloudDialogflowV2OutputAudioConfig
-    , GoogleCloudDialogflowV2OutputAudioConfig
-    , googleCloudDialogflowV2OutputAudioConfig
-    , gcdvoacSampleRateHertz
-    , gcdvoacSynthesizeSpeechConfig
-    , gcdvoacAudioEncoding
-
-    -- * GoogleCloudDialogflowV2ExportAgentResponse
-    , GoogleCloudDialogflowV2ExportAgentResponse
-    , googleCloudDialogflowV2ExportAgentResponse
-    , gAgentURI
-    , gAgentContent
-
-    -- * GoogleCloudDialogflowV2WebhookResponsePayload
-    , GoogleCloudDialogflowV2WebhookResponsePayload
-    , googleCloudDialogflowV2WebhookResponsePayload
-    , gcdvwrpcAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , googleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    , gURI
-    , gDestinationName
-
-    -- * GoogleCloudDialogflowV2ListIntentsResponse
-    , GoogleCloudDialogflowV2ListIntentsResponse
-    , googleCloudDialogflowV2ListIntentsResponse
-    , gcdvlirIntents
-    , gcdvlirNextPageToken
-
-    -- * GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , googleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    , gEntityTypes
-
-    -- * GoogleCloudDialogflowV2QueryResultWebhookPayload
-    , GoogleCloudDialogflowV2QueryResultWebhookPayload
-    , googleCloudDialogflowV2QueryResultWebhookPayload
-    , gcdvqrwpAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentParameter
-    , GoogleCloudDialogflowV2beta1IntentParameter
-    , googleCloudDialogflowV2beta1IntentParameter
-    , gcdvipValue
-    , gcdvipName
-    , gcdvipPrompts
-    , gcdvipMandatory
-    , gcdvipDisplayName
-    , gcdvipDefaultValue
-    , gcdvipIsList
-    , gcdvipEntityTypeDisplayName
-
-    -- * GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding
-    , GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding (..)
-
-    -- * GoogleCloudDialogflowV2EntityTypeAutoExpansionMode
-    , GoogleCloudDialogflowV2EntityTypeAutoExpansionMode (..)
-
-    -- * GoogleCloudDialogflowV2IntentParameter
-    , GoogleCloudDialogflowV2IntentParameter
-    , googleCloudDialogflowV2IntentParameter
-    , gcdvipcValue
-    , gcdvipcName
-    , gcdvipcPrompts
-    , gcdvipcMandatory
-    , gcdvipcDisplayName
-    , gcdvipcDefaultValue
-    , gcdvipcIsList
-    , gcdvipcEntityTypeDisplayName
-
-    -- * GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , googleCloudDialogflowV2beta1QueryResultWebhookPayload
-    , gcdvqrwpcAddtional
-
-    -- * GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , googleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    , gcdvitppcText
-    , gcdvitppcUserDefined
-    , gcdvitppcEntityType
-    , gcdvitppcAlias
-
-    -- * GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode
-    , GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode (..)
-
-    -- * GoogleCloudDialogflowV2ListContextsResponse
-    , GoogleCloudDialogflowV2ListContextsResponse
-    , googleCloudDialogflowV2ListContextsResponse
-    , gcdvlcrContexts
-    , gcdvlcrNextPageToken
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , googleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    , gcdvimttcPhoneNumber
-
-    -- * GoogleCloudDialogflowV2beta1ExportAgentResponse
-    , GoogleCloudDialogflowV2beta1ExportAgentResponse
-    , googleCloudDialogflowV2beta1ExportAgentResponse
-    , gooAgentURI
-    , gooAgentContent
-
-    -- * GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , googleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    , gcdvodirpcAddtional
-
-    -- * GoogleCloudDialogflowV2SessionEntityType
-    , GoogleCloudDialogflowV2SessionEntityType
-    , googleCloudDialogflowV2SessionEntityType
-    , gcdvSetEntityOverrideMode
-    , gcdvSetEntities
-    , gcdvSetName
-
-    -- * GoogleCloudDialogflowV2beta1EntityTypeKind
-    , GoogleCloudDialogflowV2beta1EntityTypeKind (..)
-
-    -- * GoogleCloudDialogflowV2EntityTypeEntity
-    , GoogleCloudDialogflowV2EntityTypeEntity
-    , googleCloudDialogflowV2EntityTypeEntity
-    , gValue
-    , gSynonyms
-
-    -- * GoogleCloudDialogflowV2IntentWebhookState
-    , GoogleCloudDialogflowV2IntentWebhookState (..)
-
-    -- * GoogleCloudDialogflowV2beta1QueryResult
-    , GoogleCloudDialogflowV2beta1QueryResult
-    , googleCloudDialogflowV2beta1QueryResult
-    , gLanguageCode
-    , gAllRequiredParamsPresent
-    , gIntentDetectionConfidence
-    , gFulfillmentMessages
-    , gKnowledgeAnswers
-    , gSpeechRecognitionConfidence
-    , gAction
-    , gIntent
-    , gSentimentAnalysisResult
-    , gQueryText
-    , gFulfillmentText
-    , gParameters
-    , gWebhookPayload
-    , gOutputContexts
-    , gWebhookSource
-    , gDiagnosticInfo
-
-    -- * GoogleCloudDialogflowV2IntentMessageImage
-    , GoogleCloudDialogflowV2IntentMessageImage
-    , googleCloudDialogflowV2IntentMessageImage
-    , gAccessibilityText
-    , gImageURI
-
-    -- * GoogleCloudDialogflowV2WebhookResponse
-    , GoogleCloudDialogflowV2WebhookResponse
-    , googleCloudDialogflowV2WebhookResponse
-    , gooFulfillmentMessages
-    , gooPayload
-    , gooFulfillmentText
-    , gooSource
-    , gooOutputContexts
-    , gooFollowupEventInput
-
-    -- * GoogleCloudDialogflowV2TrainAgentRequest
-    , GoogleCloudDialogflowV2TrainAgentRequest
-    , googleCloudDialogflowV2TrainAgentRequest
-
-    -- * GoogleCloudDialogflowV2IntentBatch
-    , GoogleCloudDialogflowV2IntentBatch
-    , googleCloudDialogflowV2IntentBatch
-    , gcdvibIntents
-
-    -- * GoogleCloudDialogflowV2beta1EntityType
-    , GoogleCloudDialogflowV2beta1EntityType
-    , googleCloudDialogflowV2beta1EntityType
-    , gcdvetcEntities
-    , gcdvetcKind
-    , gcdvetcName
-    , gcdvetcAutoExpansionMode
-    , gcdvetcDisplayName
-
-    -- * GoogleCloudDialogflowV2SearchAgentsResponse
-    , GoogleCloudDialogflowV2SearchAgentsResponse
-    , googleCloudDialogflowV2SearchAgentsResponse
-    , gcdvsarNextPageToken
-    , gcdvsarAgents
-
-    -- * GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-    , GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-    , googleCloudDialogflowV2ListSessionEntityTypesResponse
-    , gcdvlSetrNextPageToken
-    , gcdvlSetrSessionEntityTypes
-
-    -- * GoogleLongrunningOperation
-    , GoogleLongrunningOperation
-    , googleLongrunningOperation
-    , gloDone
-    , gloError
-    , gloResponse
-    , gloName
-    , gloMetadata
-
-    -- * GoogleCloudDialogflowV2IntentMessage
-    , GoogleCloudDialogflowV2IntentMessage
-    , googleCloudDialogflowV2IntentMessage
-    , gcdvimcCard
-    , gcdvimcImage
-    , gcdvimcPlatform
-    , gcdvimcLinkOutSuggestion
-    , gcdvimcText
-    , gcdvimcCarouselSelect
-    , gcdvimcSimpleResponses
-    , gcdvimcPayload
-    , gcdvimcSuggestions
-    , gcdvimcListSelect
-    , gcdvimcBasicCard
-    , gcdvimcQuickReplies
-
-    -- * GoogleCloudDialogflowV2IntentMessageCarouselSelect
-    , GoogleCloudDialogflowV2IntentMessageCarouselSelect
-    , googleCloudDialogflowV2IntentMessageCarouselSelect
-    , gItems
-
-    -- * GoogleCloudDialogflowV2Sentiment
-    , GoogleCloudDialogflowV2Sentiment
-    , googleCloudDialogflowV2Sentiment
-    , gScore
-    , gMagnitude
-
-    -- * GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , googleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    , gooKey
-    , gooSynonyms
-
-    -- * GoogleCloudDialogflowV2beta1Intent
-    , GoogleCloudDialogflowV2beta1Intent
-    , googleCloudDialogflowV2beta1Intent
-    , gcdvicDefaultResponsePlatforms
-    , gcdvicWebhookState
-    , gcdvicMlEnabled
-    , gcdvicPriority
-    , gcdvicAction
-    , gcdvicRootFollowupIntentName
-    , gcdvicName
-    , gcdvicEvents
-    , gcdvicParameters
-    , gcdvicDisplayName
-    , gcdvicInputContextNames
-    , gcdvicEndInteraction
-    , gcdvicMessages
-    , gcdvicParentFollowupIntentName
-    , gcdvicOutputContexts
-    , gcdvicTrainingPhrases
-    , gcdvicFollowupIntentInfo
-    , gcdvicIsFallback
-    , gcdvicMlDisabled
-    , gcdvicResetContexts
-
-    -- * GoogleCloudDialogflowV2Context
-    , GoogleCloudDialogflowV2Context
-    , googleCloudDialogflowV2Context
-    , gcdvccLifespanCount
-    , gcdvccName
-    , gcdvccParameters
-
-    -- * GoogleCloudDialogflowV2InputAudioConfigAudioEncoding
-    , GoogleCloudDialogflowV2InputAudioConfigAudioEncoding (..)
-
-    -- * GoogleCloudDialogflowV2IntentMessageBasicCardButton
-    , GoogleCloudDialogflowV2IntentMessageBasicCardButton
-    , googleCloudDialogflowV2IntentMessageBasicCardButton
-    , gcdvimbcbcOpenURIAction
-    , gcdvimbcbcTitle
-    ) where
-
-import           Network.Google.DialogFlow.Types.Product
-import           Network.Google.DialogFlow.Types.Sum
-import           Network.Google.Prelude
-
--- | Default request referring to version 'v2' of the Dialogflow API. This contains the host and root path used as a starting point for constructing service requests.
-dialogFlowService :: ServiceConfig
-dialogFlowService
-  = defaultService (ServiceId "dialogflow:v2")
-      "dialogflow.googleapis.com"
-
--- | View, manage and query your Dialogflow agents
-dialogFlowScope :: Proxy '["https://www.googleapis.com/auth/dialogflow"]
-dialogFlowScope = Proxy
-
--- | View and manage your data across Google Cloud Platform services
-cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]
-cloudPlatformScope = Proxy
diff --git a/gen/Network/Google/DialogFlow/Types/Product.hs b/gen/Network/Google/DialogFlow/Types/Product.hs
deleted file mode 100644
--- a/gen/Network/Google/DialogFlow/Types/Product.hs
+++ /dev/null
@@ -1,10222 +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.DialogFlow.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.DialogFlow.Types.Product where
-
-import           Network.Google.DialogFlow.Types.Sum
-import           Network.Google.Prelude
-
--- | The \`Status\` type defines a logical error model that is suitable for
--- different programming environments, including REST APIs and RPC APIs. It
--- is used by [gRPC](https:\/\/github.com\/grpc). The error model is
--- designed to be: - Simple to use and understand for most users - Flexible
--- enough to meet unexpected needs # Overview The \`Status\` message
--- contains three pieces of data: error code, error message, and error
--- details. The error code should be an enum value of google.rpc.Code, but
--- it may accept additional error codes if needed. The error message should
--- be a developer-facing English message that helps developers *understand*
--- and *resolve* the error. If a localized user-facing error message is
--- needed, put the localized message in the error details or localize it in
--- the client. The optional error details may contain arbitrary information
--- about the error. There is a predefined set of error detail types in the
--- package \`google.rpc\` that can be used for common error conditions. #
--- Language mapping The \`Status\` message is the logical representation of
--- the error model, but it is not necessarily the actual wire format. When
--- the \`Status\` message is exposed in different client libraries and
--- different wire protocols, it can be mapped differently. For example, it
--- will likely be mapped to some exceptions in Java, but more likely mapped
--- to some error codes in C. # Other uses The error model and the
--- \`Status\` message can be used in a variety of environments, either with
--- or without APIs, to provide a consistent developer experience across
--- different environments. Example uses of this error model include: -
--- Partial errors. If a service needs to return partial errors to the
--- client, it may embed the \`Status\` in the normal response to indicate
--- the partial errors. - Workflow errors. A typical workflow has multiple
--- steps. Each step may have a \`Status\` message for error reporting. -
--- Batch operations. If a client uses batch request and batch response, the
--- \`Status\` message should be used directly inside batch response, one
--- for each error sub-response. - Asynchronous operations. If an API call
--- embeds asynchronous operation results in its response, the status of
--- those operations should be represented directly using the \`Status\`
--- message. - Logging. If some API errors are stored in logs, the message
--- \`Status\` could be used directly after any stripping needed for
--- security\/privacy reasons.
---
--- /See:/ 'googleRpcStatus' smart constructor.
-data GoogleRpcStatus =
-  GoogleRpcStatus'
-    { _grsDetails :: !(Maybe [GoogleRpcStatusDetailsItem])
-    , _grsCode    :: !(Maybe (Textual Int32))
-    , _grsMessage :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleRpcStatus' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'grsDetails'
---
--- * 'grsCode'
---
--- * 'grsMessage'
-googleRpcStatus
-    :: GoogleRpcStatus
-googleRpcStatus =
-  GoogleRpcStatus'
-    {_grsDetails = Nothing, _grsCode = Nothing, _grsMessage = Nothing}
-
-
--- | A list of messages that carry the error details. There is a common set
--- of message types for APIs to use.
-grsDetails :: Lens' GoogleRpcStatus [GoogleRpcStatusDetailsItem]
-grsDetails
-  = lens _grsDetails (\ s a -> s{_grsDetails = a}) .
-      _Default
-      . _Coerce
-
--- | The status code, which should be an enum value of google.rpc.Code.
-grsCode :: Lens' GoogleRpcStatus (Maybe Int32)
-grsCode
-  = lens _grsCode (\ s a -> s{_grsCode = a}) .
-      mapping _Coerce
-
--- | A developer-facing error message, which should be in English. Any
--- user-facing error message should be localized and sent in the
--- google.rpc.Status.details field, or localized by the client.
-grsMessage :: Lens' GoogleRpcStatus (Maybe Text)
-grsMessage
-  = lens _grsMessage (\ s a -> s{_grsMessage = a})
-
-instance FromJSON GoogleRpcStatus where
-        parseJSON
-          = withObject "GoogleRpcStatus"
-              (\ o ->
-                 GoogleRpcStatus' <$>
-                   (o .:? "details" .!= mempty) <*> (o .:? "code") <*>
-                     (o .:? "message"))
-
-instance ToJSON GoogleRpcStatus where
-        toJSON GoogleRpcStatus'{..}
-          = object
-              (catMaybes
-                 [("details" .=) <$> _grsDetails,
-                  ("code" .=) <$> _grsCode,
-                  ("message" .=) <$> _grsMessage])
-
--- | Represents a single followup intent in the chain.
---
--- /See:/ 'googleCloudDialogflowV2IntentFollowupIntentInfo' smart constructor.
-data GoogleCloudDialogflowV2IntentFollowupIntentInfo =
-  GoogleCloudDialogflowV2IntentFollowupIntentInfo'
-    { _gcdvifiiFollowupIntentName       :: !(Maybe Text)
-    , _gcdvifiiParentFollowupIntentName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentFollowupIntentInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvifiiFollowupIntentName'
---
--- * 'gcdvifiiParentFollowupIntentName'
-googleCloudDialogflowV2IntentFollowupIntentInfo
-    :: GoogleCloudDialogflowV2IntentFollowupIntentInfo
-googleCloudDialogflowV2IntentFollowupIntentInfo =
-  GoogleCloudDialogflowV2IntentFollowupIntentInfo'
-    { _gcdvifiiFollowupIntentName = Nothing
-    , _gcdvifiiParentFollowupIntentName = Nothing
-    }
-
-
--- | The unique identifier of the followup intent. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdvifiiFollowupIntentName :: Lens' GoogleCloudDialogflowV2IntentFollowupIntentInfo (Maybe Text)
-gcdvifiiFollowupIntentName
-  = lens _gcdvifiiFollowupIntentName
-      (\ s a -> s{_gcdvifiiFollowupIntentName = a})
-
--- | The unique identifier of the followup intent\'s parent. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdvifiiParentFollowupIntentName :: Lens' GoogleCloudDialogflowV2IntentFollowupIntentInfo (Maybe Text)
-gcdvifiiParentFollowupIntentName
-  = lens _gcdvifiiParentFollowupIntentName
-      (\ s a -> s{_gcdvifiiParentFollowupIntentName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentFollowupIntentInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentFollowupIntentInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentFollowupIntentInfo' <$>
-                   (o .:? "followupIntentName") <*>
-                     (o .:? "parentFollowupIntentName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentFollowupIntentInfo
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentFollowupIntentInfo'{..}
-          = object
-              (catMaybes
-                 [("followupIntentName" .=) <$>
-                    _gcdvifiiFollowupIntentName,
-                  ("parentFollowupIntentName" .=) <$>
-                    _gcdvifiiParentFollowupIntentName])
-
--- | The collection of simple response candidates. This message in
--- \`QueryResult.fulfillment_messages\` and
--- \`WebhookResponse.fulfillment_messages\` should contain only one
--- \`SimpleResponse\`.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageSimpleResponses' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses =
-  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses'
-    { _gcdvimsrSimpleResponses :: Maybe [GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimsrSimpleResponses'
-googleCloudDialogflowV2beta1IntentMessageSimpleResponses
-    :: GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-googleCloudDialogflowV2beta1IntentMessageSimpleResponses =
-  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses'
-    {_gcdvimsrSimpleResponses = Nothing}
-
-
--- | Required. The list of simple responses.
-gcdvimsrSimpleResponses :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses [GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse]
-gcdvimsrSimpleResponses
-  = lens _gcdvimsrSimpleResponses
-      (\ s a -> s{_gcdvimsrSimpleResponses = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses'
-                   <$> (o .:? "simpleResponses" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses'{..}
-          = object
-              (catMaybes
-                 [("simpleResponses" .=) <$>
-                    _gcdvimsrSimpleResponses])
-
--- | Configuration of how speech should be synthesized.
---
--- /See:/ 'googleCloudDialogflowV2SynthesizeSpeechConfig' smart constructor.
-data GoogleCloudDialogflowV2SynthesizeSpeechConfig =
-  GoogleCloudDialogflowV2SynthesizeSpeechConfig'
-    { _gcdvsscVolumeGainDB     :: !(Maybe (Textual Double))
-    , _gcdvsscEffectsProFileId :: !(Maybe [Text])
-    , _gcdvsscVoice            :: !(Maybe GoogleCloudDialogflowV2VoiceSelectionParams)
-    , _gcdvsscSpeakingRate     :: !(Maybe (Textual Double))
-    , _gcdvsscPitch            :: !(Maybe (Textual Double))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2SynthesizeSpeechConfig' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvsscVolumeGainDB'
---
--- * 'gcdvsscEffectsProFileId'
---
--- * 'gcdvsscVoice'
---
--- * 'gcdvsscSpeakingRate'
---
--- * 'gcdvsscPitch'
-googleCloudDialogflowV2SynthesizeSpeechConfig
-    :: GoogleCloudDialogflowV2SynthesizeSpeechConfig
-googleCloudDialogflowV2SynthesizeSpeechConfig =
-  GoogleCloudDialogflowV2SynthesizeSpeechConfig'
-    { _gcdvsscVolumeGainDB = Nothing
-    , _gcdvsscEffectsProFileId = Nothing
-    , _gcdvsscVoice = Nothing
-    , _gcdvsscSpeakingRate = Nothing
-    , _gcdvsscPitch = Nothing
-    }
-
-
--- | Optional. Volume gain (in dB) of the normal native volume supported by
--- the specific voice, in the range [-96.0, 16.0]. If unset, or set to a
--- value of 0.0 (dB), will play at normal native signal amplitude. A value
--- of -6.0 (dB) will play at approximately half the amplitude of the normal
--- native signal amplitude. A value of +6.0 (dB) will play at approximately
--- twice the amplitude of the normal native signal amplitude. We strongly
--- recommend not to exceed +10 (dB) as there\'s usually no effective
--- increase in loudness for any value greater than that.
-gcdvsscVolumeGainDB :: Lens' GoogleCloudDialogflowV2SynthesizeSpeechConfig (Maybe Double)
-gcdvsscVolumeGainDB
-  = lens _gcdvsscVolumeGainDB
-      (\ s a -> s{_gcdvsscVolumeGainDB = a})
-      . mapping _Coerce
-
--- | Optional. An identifier which selects \'audio effects\' profiles that
--- are applied on (post synthesized) text to speech. Effects are applied on
--- top of each other in the order they are given.
-gcdvsscEffectsProFileId :: Lens' GoogleCloudDialogflowV2SynthesizeSpeechConfig [Text]
-gcdvsscEffectsProFileId
-  = lens _gcdvsscEffectsProFileId
-      (\ s a -> s{_gcdvsscEffectsProFileId = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The desired voice of the synthesized audio.
-gcdvsscVoice :: Lens' GoogleCloudDialogflowV2SynthesizeSpeechConfig (Maybe GoogleCloudDialogflowV2VoiceSelectionParams)
-gcdvsscVoice
-  = lens _gcdvsscVoice (\ s a -> s{_gcdvsscVoice = a})
-
--- | Optional. Speaking rate\/speed, in the range [0.25, 4.0]. 1.0 is the
--- normal native speed supported by the specific voice. 2.0 is twice as
--- fast, and 0.5 is half as fast. If unset(0.0), defaults to the native 1.0
--- speed. Any other values \< 0.25 or > 4.0 will return an error.
-gcdvsscSpeakingRate :: Lens' GoogleCloudDialogflowV2SynthesizeSpeechConfig (Maybe Double)
-gcdvsscSpeakingRate
-  = lens _gcdvsscSpeakingRate
-      (\ s a -> s{_gcdvsscSpeakingRate = a})
-      . mapping _Coerce
-
--- | Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means increase
--- 20 semitones from the original pitch. -20 means decrease 20 semitones
--- from the original pitch.
-gcdvsscPitch :: Lens' GoogleCloudDialogflowV2SynthesizeSpeechConfig (Maybe Double)
-gcdvsscPitch
-  = lens _gcdvsscPitch (\ s a -> s{_gcdvsscPitch = a})
-      . mapping _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2SynthesizeSpeechConfig
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2SynthesizeSpeechConfig"
-              (\ o ->
-                 GoogleCloudDialogflowV2SynthesizeSpeechConfig' <$>
-                   (o .:? "volumeGainDb") <*>
-                     (o .:? "effectsProfileId" .!= mempty)
-                     <*> (o .:? "voice")
-                     <*> (o .:? "speakingRate")
-                     <*> (o .:? "pitch"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2SynthesizeSpeechConfig
-         where
-        toJSON
-          GoogleCloudDialogflowV2SynthesizeSpeechConfig'{..}
-          = object
-              (catMaybes
-                 [("volumeGainDb" .=) <$> _gcdvsscVolumeGainDB,
-                  ("effectsProfileId" .=) <$> _gcdvsscEffectsProFileId,
-                  ("voice" .=) <$> _gcdvsscVoice,
-                  ("speakingRate" .=) <$> _gcdvsscSpeakingRate,
-                  ("pitch" .=) <$> _gcdvsscPitch])
-
--- | Instructs the speech recognizer how to process the audio content.
---
--- /See:/ 'googleCloudDialogflowV2InputAudioConfig' smart constructor.
-data GoogleCloudDialogflowV2InputAudioConfig =
-  GoogleCloudDialogflowV2InputAudioConfig'
-    { _gcdviacLanguageCode    :: !(Maybe Text)
-    , _gcdviacPhraseHints     :: !(Maybe [Text])
-    , _gcdviacSampleRateHertz :: !(Maybe (Textual Int32))
-    , _gcdviacModelVariant    :: !(Maybe GoogleCloudDialogflowV2InputAudioConfigModelVariant)
-    , _gcdviacAudioEncoding   :: !(Maybe GoogleCloudDialogflowV2InputAudioConfigAudioEncoding)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2InputAudioConfig' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdviacLanguageCode'
---
--- * 'gcdviacPhraseHints'
---
--- * 'gcdviacSampleRateHertz'
---
--- * 'gcdviacModelVariant'
---
--- * 'gcdviacAudioEncoding'
-googleCloudDialogflowV2InputAudioConfig
-    :: GoogleCloudDialogflowV2InputAudioConfig
-googleCloudDialogflowV2InputAudioConfig =
-  GoogleCloudDialogflowV2InputAudioConfig'
-    { _gcdviacLanguageCode = Nothing
-    , _gcdviacPhraseHints = Nothing
-    , _gcdviacSampleRateHertz = Nothing
-    , _gcdviacModelVariant = Nothing
-    , _gcdviacAudioEncoding = Nothing
-    }
-
-
--- | Required. The language of the supplied audio. Dialogflow does not do
--- translations. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes. Note that queries
--- in the same session do not necessarily need to specify the same
--- language.
-gcdviacLanguageCode :: Lens' GoogleCloudDialogflowV2InputAudioConfig (Maybe Text)
-gcdviacLanguageCode
-  = lens _gcdviacLanguageCode
-      (\ s a -> s{_gcdviacLanguageCode = a})
-
--- | Optional. The collection of phrase hints which are used to boost
--- accuracy of speech recognition. Refer to [Cloud Speech API
--- documentation](https:\/\/cloud.google.com\/speech-to-text\/docs\/basics#phrase-hints)
--- for more details.
-gcdviacPhraseHints :: Lens' GoogleCloudDialogflowV2InputAudioConfig [Text]
-gcdviacPhraseHints
-  = lens _gcdviacPhraseHints
-      (\ s a -> s{_gcdviacPhraseHints = a})
-      . _Default
-      . _Coerce
-
--- | Required. Sample rate (in Hertz) of the audio content sent in the query.
--- Refer to [Cloud Speech API
--- documentation](https:\/\/cloud.google.com\/speech-to-text\/docs\/basics)
--- for more details.
-gcdviacSampleRateHertz :: Lens' GoogleCloudDialogflowV2InputAudioConfig (Maybe Int32)
-gcdviacSampleRateHertz
-  = lens _gcdviacSampleRateHertz
-      (\ s a -> s{_gcdviacSampleRateHertz = a})
-      . mapping _Coerce
-
--- | Optional. Which variant of the Speech model to use.
-gcdviacModelVariant :: Lens' GoogleCloudDialogflowV2InputAudioConfig (Maybe GoogleCloudDialogflowV2InputAudioConfigModelVariant)
-gcdviacModelVariant
-  = lens _gcdviacModelVariant
-      (\ s a -> s{_gcdviacModelVariant = a})
-
--- | Required. Audio encoding of the audio content to process.
-gcdviacAudioEncoding :: Lens' GoogleCloudDialogflowV2InputAudioConfig (Maybe GoogleCloudDialogflowV2InputAudioConfigAudioEncoding)
-gcdviacAudioEncoding
-  = lens _gcdviacAudioEncoding
-      (\ s a -> s{_gcdviacAudioEncoding = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2InputAudioConfig
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2InputAudioConfig"
-              (\ o ->
-                 GoogleCloudDialogflowV2InputAudioConfig' <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "phraseHints" .!= mempty)
-                     <*> (o .:? "sampleRateHertz")
-                     <*> (o .:? "modelVariant")
-                     <*> (o .:? "audioEncoding"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2InputAudioConfig
-         where
-        toJSON GoogleCloudDialogflowV2InputAudioConfig'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdviacLanguageCode,
-                  ("phraseHints" .=) <$> _gcdviacPhraseHints,
-                  ("sampleRateHertz" .=) <$> _gcdviacSampleRateHertz,
-                  ("modelVariant" .=) <$> _gcdviacModelVariant,
-                  ("audioEncoding" .=) <$> _gcdviacAudioEncoding])
-
--- | The response message for Intents.BatchUpdateIntents.
---
--- /See:/ 'googleCloudDialogflowV2beta1BatchUpdateIntentsResponse' smart constructor.
-newtype GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse =
-  GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse'
-    { _gcdvbuirIntents :: Maybe [GoogleCloudDialogflowV2beta1Intent]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbuirIntents'
-googleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-    :: GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-googleCloudDialogflowV2beta1BatchUpdateIntentsResponse =
-  GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse'
-    {_gcdvbuirIntents = Nothing}
-
-
--- | The collection of updated or created intents.
-gcdvbuirIntents :: Lens' GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse [GoogleCloudDialogflowV2beta1Intent]
-gcdvbuirIntents
-  = lens _gcdvbuirIntents
-      (\ s a -> s{_gcdvbuirIntents = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse'
-                   <$> (o .:? "intents" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse'{..}
-          = object
-              (catMaybes [("intents" .=) <$> _gcdvbuirIntents])
-
--- | Returns a response containing a custom, platform-specific payload. See
--- the Intent.Message.Platform type for a description of the structure that
--- may be required for your platform.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessagePayload' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessagePayload =
-  GoogleCloudDialogflowV2beta1IntentMessagePayload'
-    { _gcdvimpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessagePayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimpAddtional'
-googleCloudDialogflowV2beta1IntentMessagePayload
-    :: HashMap Text JSONValue -- ^ 'gcdvimpAddtional'
-    -> GoogleCloudDialogflowV2beta1IntentMessagePayload
-googleCloudDialogflowV2beta1IntentMessagePayload pGcdvimpAddtional_ =
-  GoogleCloudDialogflowV2beta1IntentMessagePayload'
-    {_gcdvimpAddtional = _Coerce # pGcdvimpAddtional_}
-
-
--- | Properties of the object.
-gcdvimpAddtional :: Lens' GoogleCloudDialogflowV2beta1IntentMessagePayload (HashMap Text JSONValue)
-gcdvimpAddtional
-  = lens _gcdvimpAddtional
-      (\ s a -> s{_gcdvimpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessagePayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessagePayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessagePayload' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessagePayload
-         where
-        toJSON = toJSON . _gcdvimpAddtional
-
--- | The request message for a webhook call.
---
--- /See:/ 'googleCloudDialogflowV2WebhookRequest' smart constructor.
-data GoogleCloudDialogflowV2WebhookRequest =
-  GoogleCloudDialogflowV2WebhookRequest'
-    { _gcdvwrOriginalDetectIntentRequest :: !(Maybe GoogleCloudDialogflowV2OriginalDetectIntentRequest)
-    , _gcdvwrResponseId                  :: !(Maybe Text)
-    , _gcdvwrQueryResult                 :: !(Maybe GoogleCloudDialogflowV2QueryResult)
-    , _gcdvwrSession                     :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2WebhookRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvwrOriginalDetectIntentRequest'
---
--- * 'gcdvwrResponseId'
---
--- * 'gcdvwrQueryResult'
---
--- * 'gcdvwrSession'
-googleCloudDialogflowV2WebhookRequest
-    :: GoogleCloudDialogflowV2WebhookRequest
-googleCloudDialogflowV2WebhookRequest =
-  GoogleCloudDialogflowV2WebhookRequest'
-    { _gcdvwrOriginalDetectIntentRequest = Nothing
-    , _gcdvwrResponseId = Nothing
-    , _gcdvwrQueryResult = Nothing
-    , _gcdvwrSession = Nothing
-    }
-
-
--- | Optional. The contents of the original request that was passed to
--- \`[Streaming]DetectIntent\` call.
-gcdvwrOriginalDetectIntentRequest :: Lens' GoogleCloudDialogflowV2WebhookRequest (Maybe GoogleCloudDialogflowV2OriginalDetectIntentRequest)
-gcdvwrOriginalDetectIntentRequest
-  = lens _gcdvwrOriginalDetectIntentRequest
-      (\ s a -> s{_gcdvwrOriginalDetectIntentRequest = a})
-
--- | The unique identifier of the response. Contains the same value as
--- \`[Streaming]DetectIntentResponse.response_id\`.
-gcdvwrResponseId :: Lens' GoogleCloudDialogflowV2WebhookRequest (Maybe Text)
-gcdvwrResponseId
-  = lens _gcdvwrResponseId
-      (\ s a -> s{_gcdvwrResponseId = a})
-
--- | The result of the conversational query or event processing. Contains the
--- same value as \`[Streaming]DetectIntentResponse.query_result\`.
-gcdvwrQueryResult :: Lens' GoogleCloudDialogflowV2WebhookRequest (Maybe GoogleCloudDialogflowV2QueryResult)
-gcdvwrQueryResult
-  = lens _gcdvwrQueryResult
-      (\ s a -> s{_gcdvwrQueryResult = a})
-
--- | The unique identifier of detectIntent request session. Can be used to
--- identify end-user inside webhook implementation. Format:
--- \`projects\/\/agent\/sessions\/\`, or
--- \`projects\/\/agent\/environments\/\/users\/\/sessions\/\`.
-gcdvwrSession :: Lens' GoogleCloudDialogflowV2WebhookRequest (Maybe Text)
-gcdvwrSession
-  = lens _gcdvwrSession
-      (\ s a -> s{_gcdvwrSession = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2WebhookRequest
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2WebhookRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2WebhookRequest' <$>
-                   (o .:? "originalDetectIntentRequest") <*>
-                     (o .:? "responseId")
-                     <*> (o .:? "queryResult")
-                     <*> (o .:? "session"))
-
-instance ToJSON GoogleCloudDialogflowV2WebhookRequest
-         where
-        toJSON GoogleCloudDialogflowV2WebhookRequest'{..}
-          = object
-              (catMaybes
-                 [("originalDetectIntentRequest" .=) <$>
-                    _gcdvwrOriginalDetectIntentRequest,
-                  ("responseId" .=) <$> _gcdvwrResponseId,
-                  ("queryResult" .=) <$> _gcdvwrQueryResult,
-                  ("session" .=) <$> _gcdvwrSession])
-
--- | An item in the carousel.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageCarouselSelectItem' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageCarouselSelectItem =
-  GoogleCloudDialogflowV2IntentMessageCarouselSelectItem'
-    { _gcdvimcsiImage       :: !(Maybe GoogleCloudDialogflowV2IntentMessageImage)
-    , _gcdvimcsiTitle       :: !(Maybe Text)
-    , _gcdvimcsiDescription :: !(Maybe Text)
-    , _gcdvimcsiInfo        :: !(Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCarouselSelectItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimcsiImage'
---
--- * 'gcdvimcsiTitle'
---
--- * 'gcdvimcsiDescription'
---
--- * 'gcdvimcsiInfo'
-googleCloudDialogflowV2IntentMessageCarouselSelectItem
-    :: GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-googleCloudDialogflowV2IntentMessageCarouselSelectItem =
-  GoogleCloudDialogflowV2IntentMessageCarouselSelectItem'
-    { _gcdvimcsiImage = Nothing
-    , _gcdvimcsiTitle = Nothing
-    , _gcdvimcsiDescription = Nothing
-    , _gcdvimcsiInfo = Nothing
-    }
-
-
--- | Optional. The image to display.
-gcdvimcsiImage :: Lens' GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (Maybe GoogleCloudDialogflowV2IntentMessageImage)
-gcdvimcsiImage
-  = lens _gcdvimcsiImage
-      (\ s a -> s{_gcdvimcsiImage = a})
-
--- | Required. Title of the carousel item.
-gcdvimcsiTitle :: Lens' GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (Maybe Text)
-gcdvimcsiTitle
-  = lens _gcdvimcsiTitle
-      (\ s a -> s{_gcdvimcsiTitle = a})
-
--- | Optional. The body text of the card.
-gcdvimcsiDescription :: Lens' GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (Maybe Text)
-gcdvimcsiDescription
-  = lens _gcdvimcsiDescription
-      (\ s a -> s{_gcdvimcsiDescription = a})
-
--- | Required. Additional info about the option item.
-gcdvimcsiInfo :: Lens' GoogleCloudDialogflowV2IntentMessageCarouselSelectItem (Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo)
-gcdvimcsiInfo
-  = lens _gcdvimcsiInfo
-      (\ s a -> s{_gcdvimcsiInfo = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageCarouselSelectItem'
-                   <$>
-                   (o .:? "image") <*> (o .:? "title") <*>
-                     (o .:? "description")
-                     <*> (o .:? "info"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageCarouselSelectItem'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gcdvimcsiImage,
-                  ("title" .=) <$> _gcdvimcsiTitle,
-                  ("description" .=) <$> _gcdvimcsiDescription,
-                  ("info" .=) <$> _gcdvimcsiInfo])
-
--- | Events allow for matching intents by event name instead of the natural
--- language input. For instance, input \`\` can trigger a personalized
--- welcome response. The parameter \`name\` may be used by the agent in the
--- response: \`\"Hello #welcome_event.name! What can I do for you
--- today?\"\`.
---
--- /See:/ 'googleCloudDialogflowV2EventInput' smart constructor.
-data GoogleCloudDialogflowV2EventInput =
-  GoogleCloudDialogflowV2EventInput'
-    { _gcdveiLanguageCode :: !(Maybe Text)
-    , _gcdveiName         :: !(Maybe Text)
-    , _gcdveiParameters   :: !(Maybe GoogleCloudDialogflowV2EventInputParameters)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2EventInput' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdveiLanguageCode'
---
--- * 'gcdveiName'
---
--- * 'gcdveiParameters'
-googleCloudDialogflowV2EventInput
-    :: GoogleCloudDialogflowV2EventInput
-googleCloudDialogflowV2EventInput =
-  GoogleCloudDialogflowV2EventInput'
-    { _gcdveiLanguageCode = Nothing
-    , _gcdveiName = Nothing
-    , _gcdveiParameters = Nothing
-    }
-
-
--- | Required. The language of this query. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes. Note that queries
--- in the same session do not necessarily need to specify the same
--- language.
-gcdveiLanguageCode :: Lens' GoogleCloudDialogflowV2EventInput (Maybe Text)
-gcdveiLanguageCode
-  = lens _gcdveiLanguageCode
-      (\ s a -> s{_gcdveiLanguageCode = a})
-
--- | Required. The unique identifier of the event.
-gcdveiName :: Lens' GoogleCloudDialogflowV2EventInput (Maybe Text)
-gcdveiName
-  = lens _gcdveiName (\ s a -> s{_gcdveiName = a})
-
--- | Optional. The collection of parameters associated with the event.
-gcdveiParameters :: Lens' GoogleCloudDialogflowV2EventInput (Maybe GoogleCloudDialogflowV2EventInputParameters)
-gcdveiParameters
-  = lens _gcdveiParameters
-      (\ s a -> s{_gcdveiParameters = a})
-
-instance FromJSON GoogleCloudDialogflowV2EventInput
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2EventInput"
-              (\ o ->
-                 GoogleCloudDialogflowV2EventInput' <$>
-                   (o .:? "languageCode") <*> (o .:? "name") <*>
-                     (o .:? "parameters"))
-
-instance ToJSON GoogleCloudDialogflowV2EventInput
-         where
-        toJSON GoogleCloudDialogflowV2EventInput'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdveiLanguageCode,
-                  ("name" .=) <$> _gcdveiName,
-                  ("parameters" .=) <$> _gcdveiParameters])
-
--- | The simple response message containing speech or text.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageSimpleResponse' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageSimpleResponse =
-  GoogleCloudDialogflowV2IntentMessageSimpleResponse'
-    { _gcdvimsrDisplayText  :: !(Maybe Text)
-    , _gcdvimsrSsml         :: !(Maybe Text)
-    , _gcdvimsrTextToSpeech :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSimpleResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimsrDisplayText'
---
--- * 'gcdvimsrSsml'
---
--- * 'gcdvimsrTextToSpeech'
-googleCloudDialogflowV2IntentMessageSimpleResponse
-    :: GoogleCloudDialogflowV2IntentMessageSimpleResponse
-googleCloudDialogflowV2IntentMessageSimpleResponse =
-  GoogleCloudDialogflowV2IntentMessageSimpleResponse'
-    { _gcdvimsrDisplayText = Nothing
-    , _gcdvimsrSsml = Nothing
-    , _gcdvimsrTextToSpeech = Nothing
-    }
-
-
--- | Optional. The text to display.
-gcdvimsrDisplayText :: Lens' GoogleCloudDialogflowV2IntentMessageSimpleResponse (Maybe Text)
-gcdvimsrDisplayText
-  = lens _gcdvimsrDisplayText
-      (\ s a -> s{_gcdvimsrDisplayText = a})
-
--- | One of text_to_speech or ssml must be provided. Structured spoken
--- response to the user in the SSML format. Mutually exclusive with
--- text_to_speech.
-gcdvimsrSsml :: Lens' GoogleCloudDialogflowV2IntentMessageSimpleResponse (Maybe Text)
-gcdvimsrSsml
-  = lens _gcdvimsrSsml (\ s a -> s{_gcdvimsrSsml = a})
-
--- | One of text_to_speech or ssml must be provided. The plain text of the
--- speech output. Mutually exclusive with ssml.
-gcdvimsrTextToSpeech :: Lens' GoogleCloudDialogflowV2IntentMessageSimpleResponse (Maybe Text)
-gcdvimsrTextToSpeech
-  = lens _gcdvimsrTextToSpeech
-      (\ s a -> s{_gcdvimsrTextToSpeech = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageSimpleResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageSimpleResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageSimpleResponse'
-                   <$>
-                   (o .:? "displayText") <*> (o .:? "ssml") <*>
-                     (o .:? "textToSpeech"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageSimpleResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageSimpleResponse'{..}
-          = object
-              (catMaybes
-                 [("displayText" .=) <$> _gcdvimsrDisplayText,
-                  ("ssml" .=) <$> _gcdvimsrSsml,
-                  ("textToSpeech" .=) <$> _gcdvimsrTextToSpeech])
-
--- | Service-specific metadata associated with the operation. It typically
--- contains progress information and common metadata such as create time.
--- Some services might not provide such metadata. Any method that returns a
--- long-running operation should document the metadata type, if any.
---
--- /See:/ 'googleLongrunningOperationMetadata' smart constructor.
-newtype GoogleLongrunningOperationMetadata =
-  GoogleLongrunningOperationMetadata'
-    { _glomAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleLongrunningOperationMetadata' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'glomAddtional'
-googleLongrunningOperationMetadata
-    :: HashMap Text JSONValue -- ^ 'glomAddtional'
-    -> GoogleLongrunningOperationMetadata
-googleLongrunningOperationMetadata pGlomAddtional_ =
-  GoogleLongrunningOperationMetadata'
-    {_glomAddtional = _Coerce # pGlomAddtional_}
-
-
--- | Properties of the object. Contains field \'type with type URL.
-glomAddtional :: Lens' GoogleLongrunningOperationMetadata (HashMap Text JSONValue)
-glomAddtional
-  = lens _glomAddtional
-      (\ s a -> s{_glomAddtional = a})
-      . _Coerce
-
-instance FromJSON GoogleLongrunningOperationMetadata
-         where
-        parseJSON
-          = withObject "GoogleLongrunningOperationMetadata"
-              (\ o ->
-                 GoogleLongrunningOperationMetadata' <$>
-                   (parseJSONObject o))
-
-instance ToJSON GoogleLongrunningOperationMetadata
-         where
-        toJSON = toJSON . _glomAddtional
-
--- | Represents an example that the agent is trained on.
---
--- /See:/ 'googleCloudDialogflowV2IntentTrainingPhrase' smart constructor.
-data GoogleCloudDialogflowV2IntentTrainingPhrase =
-  GoogleCloudDialogflowV2IntentTrainingPhrase'
-    { _gcdvitpParts           :: !(Maybe [GoogleCloudDialogflowV2IntentTrainingPhrasePart])
-    , _gcdvitpName            :: !(Maybe Text)
-    , _gcdvitpTimesAddedCount :: !(Maybe (Textual Int32))
-    , _gcdvitpType            :: !(Maybe GoogleCloudDialogflowV2IntentTrainingPhraseType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentTrainingPhrase' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvitpParts'
---
--- * 'gcdvitpName'
---
--- * 'gcdvitpTimesAddedCount'
---
--- * 'gcdvitpType'
-googleCloudDialogflowV2IntentTrainingPhrase
-    :: GoogleCloudDialogflowV2IntentTrainingPhrase
-googleCloudDialogflowV2IntentTrainingPhrase =
-  GoogleCloudDialogflowV2IntentTrainingPhrase'
-    { _gcdvitpParts = Nothing
-    , _gcdvitpName = Nothing
-    , _gcdvitpTimesAddedCount = Nothing
-    , _gcdvitpType = Nothing
-    }
-
-
--- | Required. The ordered list of training phrase parts. The parts are
--- concatenated in order to form the training phrase. Note: The API does
--- not automatically annotate training phrases like the Dialogflow Console
--- does. Note: Do not forget to include whitespace at part boundaries, so
--- the training phrase is well formatted when the parts are concatenated.
--- If the training phrase does not need to be annotated with parameters,
--- you just need a single part with only the Part.text field set. If you
--- want to annotate the training phrase, you must create multiple parts,
--- where the fields of each part are populated in one of two ways: -
--- \`Part.text\` is set to a part of the phrase that has no parameters. -
--- \`Part.text\` is set to a part of the phrase that you want to annotate,
--- and the \`entity_type\`, \`alias\`, and \`user_defined\` fields are all
--- set.
-gcdvitpParts :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrase [GoogleCloudDialogflowV2IntentTrainingPhrasePart]
-gcdvitpParts
-  = lens _gcdvitpParts (\ s a -> s{_gcdvitpParts = a})
-      . _Default
-      . _Coerce
-
--- | Output only. The unique identifier of this training phrase.
-gcdvitpName :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrase (Maybe Text)
-gcdvitpName
-  = lens _gcdvitpName (\ s a -> s{_gcdvitpName = a})
-
--- | Optional. Indicates how many times this example was added to the intent.
--- Each time a developer adds an existing sample by editing an intent or
--- training, this counter is increased.
-gcdvitpTimesAddedCount :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrase (Maybe Int32)
-gcdvitpTimesAddedCount
-  = lens _gcdvitpTimesAddedCount
-      (\ s a -> s{_gcdvitpTimesAddedCount = a})
-      . mapping _Coerce
-
--- | Required. The type of the training phrase.
-gcdvitpType :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrase (Maybe GoogleCloudDialogflowV2IntentTrainingPhraseType)
-gcdvitpType
-  = lens _gcdvitpType (\ s a -> s{_gcdvitpType = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentTrainingPhrase
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentTrainingPhrase"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentTrainingPhrase' <$>
-                   (o .:? "parts" .!= mempty) <*> (o .:? "name") <*>
-                     (o .:? "timesAddedCount")
-                     <*> (o .:? "type"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentTrainingPhrase
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentTrainingPhrase'{..}
-          = object
-              (catMaybes
-                 [("parts" .=) <$> _gcdvitpParts,
-                  ("name" .=) <$> _gcdvitpName,
-                  ("timesAddedCount" .=) <$> _gcdvitpTimesAddedCount,
-                  ("type" .=) <$> _gcdvitpType])
-
--- | An item in the carousel.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageCarouselSelectItem' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem =
-  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem'
-    { _gImage       :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-    , _gTitle       :: !(Maybe Text)
-    , _gDescription :: !(Maybe Text)
-    , _gInfo        :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gImage'
---
--- * 'gTitle'
---
--- * 'gDescription'
---
--- * 'gInfo'
-googleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-    :: GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-googleCloudDialogflowV2beta1IntentMessageCarouselSelectItem =
-  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem'
-    { _gImage = Nothing
-    , _gTitle = Nothing
-    , _gDescription = Nothing
-    , _gInfo = Nothing
-    }
-
-
--- | Optional. The image to display.
-gImage :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-gImage = lens _gImage (\ s a -> s{_gImage = a})
-
--- | Required. Title of the carousel item.
-gTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (Maybe Text)
-gTitle = lens _gTitle (\ s a -> s{_gTitle = a})
-
--- | Optional. The body text of the card.
-gDescription :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (Maybe Text)
-gDescription
-  = lens _gDescription (\ s a -> s{_gDescription = a})
-
--- | Required. Additional info about the option item.
-gInfo :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem (Maybe GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo)
-gInfo = lens _gInfo (\ s a -> s{_gInfo = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem'
-                   <$>
-                   (o .:? "image") <*> (o .:? "title") <*>
-                     (o .:? "description")
-                     <*> (o .:? "info"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gImage, ("title" .=) <$> _gTitle,
-                  ("description" .=) <$> _gDescription,
-                  ("info" .=) <$> _gInfo])
-
--- | The basic card message. Useful for displaying information.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageBasicCard' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageBasicCard =
-  GoogleCloudDialogflowV2IntentMessageBasicCard'
-    { _gcdvimbcImage         :: !(Maybe GoogleCloudDialogflowV2IntentMessageImage)
-    , _gcdvimbcButtons       :: !(Maybe [GoogleCloudDialogflowV2IntentMessageBasicCardButton])
-    , _gcdvimbcSubtitle      :: !(Maybe Text)
-    , _gcdvimbcTitle         :: !(Maybe Text)
-    , _gcdvimbcFormattedText :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCard' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbcImage'
---
--- * 'gcdvimbcButtons'
---
--- * 'gcdvimbcSubtitle'
---
--- * 'gcdvimbcTitle'
---
--- * 'gcdvimbcFormattedText'
-googleCloudDialogflowV2IntentMessageBasicCard
-    :: GoogleCloudDialogflowV2IntentMessageBasicCard
-googleCloudDialogflowV2IntentMessageBasicCard =
-  GoogleCloudDialogflowV2IntentMessageBasicCard'
-    { _gcdvimbcImage = Nothing
-    , _gcdvimbcButtons = Nothing
-    , _gcdvimbcSubtitle = Nothing
-    , _gcdvimbcTitle = Nothing
-    , _gcdvimbcFormattedText = Nothing
-    }
-
-
--- | Optional. The image for the card.
-gcdvimbcImage :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCard (Maybe GoogleCloudDialogflowV2IntentMessageImage)
-gcdvimbcImage
-  = lens _gcdvimbcImage
-      (\ s a -> s{_gcdvimbcImage = a})
-
--- | Optional. The collection of card buttons.
-gcdvimbcButtons :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCard [GoogleCloudDialogflowV2IntentMessageBasicCardButton]
-gcdvimbcButtons
-  = lens _gcdvimbcButtons
-      (\ s a -> s{_gcdvimbcButtons = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The subtitle of the card.
-gcdvimbcSubtitle :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCard (Maybe Text)
-gcdvimbcSubtitle
-  = lens _gcdvimbcSubtitle
-      (\ s a -> s{_gcdvimbcSubtitle = a})
-
--- | Optional. The title of the card.
-gcdvimbcTitle :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCard (Maybe Text)
-gcdvimbcTitle
-  = lens _gcdvimbcTitle
-      (\ s a -> s{_gcdvimbcTitle = a})
-
--- | Required, unless image is present. The body text of the card.
-gcdvimbcFormattedText :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCard (Maybe Text)
-gcdvimbcFormattedText
-  = lens _gcdvimbcFormattedText
-      (\ s a -> s{_gcdvimbcFormattedText = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCard
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageBasicCard"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageBasicCard' <$>
-                   (o .:? "image") <*> (o .:? "buttons" .!= mempty) <*>
-                     (o .:? "subtitle")
-                     <*> (o .:? "title")
-                     <*> (o .:? "formattedText"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCard
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageBasicCard'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gcdvimbcImage,
-                  ("buttons" .=) <$> _gcdvimbcButtons,
-                  ("subtitle" .=) <$> _gcdvimbcSubtitle,
-                  ("title" .=) <$> _gcdvimbcTitle,
-                  ("formattedText" .=) <$> _gcdvimbcFormattedText])
-
--- | The simple response message containing speech or text.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageSimpleResponse' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse =
-  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse'
-    { _gDisplayText  :: !(Maybe Text)
-    , _gSsml         :: !(Maybe Text)
-    , _gTextToSpeech :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gDisplayText'
---
--- * 'gSsml'
---
--- * 'gTextToSpeech'
-googleCloudDialogflowV2beta1IntentMessageSimpleResponse
-    :: GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-googleCloudDialogflowV2beta1IntentMessageSimpleResponse =
-  GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse'
-    {_gDisplayText = Nothing, _gSsml = Nothing, _gTextToSpeech = Nothing}
-
-
--- | Optional. The text to display.
-gDisplayText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (Maybe Text)
-gDisplayText
-  = lens _gDisplayText (\ s a -> s{_gDisplayText = a})
-
--- | One of text_to_speech or ssml must be provided. Structured spoken
--- response to the user in the SSML format. Mutually exclusive with
--- text_to_speech.
-gSsml :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (Maybe Text)
-gSsml = lens _gSsml (\ s a -> s{_gSsml = a})
-
--- | One of text_to_speech or ssml must be provided. The plain text of the
--- speech output. Mutually exclusive with ssml.
-gTextToSpeech :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse (Maybe Text)
-gTextToSpeech
-  = lens _gTextToSpeech
-      (\ s a -> s{_gTextToSpeech = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse'
-                   <$>
-                   (o .:? "displayText") <*> (o .:? "ssml") <*>
-                     (o .:? "textToSpeech"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse'{..}
-          = object
-              (catMaybes
-                 [("displayText" .=) <$> _gDisplayText,
-                  ("ssml" .=) <$> _gSsml,
-                  ("textToSpeech" .=) <$> _gTextToSpeech])
-
--- | Represents an intent. Intents convert a number of user expressions or
--- patterns into an action. An action is an extraction of a user command or
--- sentence semantics.
---
--- /See:/ 'googleCloudDialogflowV2Intent' smart constructor.
-data GoogleCloudDialogflowV2Intent =
-  GoogleCloudDialogflowV2Intent'
-    { _gcdviDefaultResponsePlatforms :: !(Maybe [Text])
-    , _gcdviWebhookState             :: !(Maybe GoogleCloudDialogflowV2IntentWebhookState)
-    , _gcdviPriority                 :: !(Maybe (Textual Int32))
-    , _gcdviAction                   :: !(Maybe Text)
-    , _gcdviRootFollowupIntentName   :: !(Maybe Text)
-    , _gcdviName                     :: !(Maybe Text)
-    , _gcdviEvents                   :: !(Maybe [Text])
-    , _gcdviParameters               :: !(Maybe [GoogleCloudDialogflowV2IntentParameter])
-    , _gcdviDisplayName              :: !(Maybe Text)
-    , _gcdviInputContextNames        :: !(Maybe [Text])
-    , _gcdviMessages                 :: !(Maybe [GoogleCloudDialogflowV2IntentMessage])
-    , _gcdviParentFollowupIntentName :: !(Maybe Text)
-    , _gcdviOutputContexts           :: !(Maybe [GoogleCloudDialogflowV2Context])
-    , _gcdviTrainingPhrases          :: !(Maybe [GoogleCloudDialogflowV2IntentTrainingPhrase])
-    , _gcdviFollowupIntentInfo       :: !(Maybe [GoogleCloudDialogflowV2IntentFollowupIntentInfo])
-    , _gcdviIsFallback               :: !(Maybe Bool)
-    , _gcdviMlDisabled               :: !(Maybe Bool)
-    , _gcdviResetContexts            :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2Intent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdviDefaultResponsePlatforms'
---
--- * 'gcdviWebhookState'
---
--- * 'gcdviPriority'
---
--- * 'gcdviAction'
---
--- * 'gcdviRootFollowupIntentName'
---
--- * 'gcdviName'
---
--- * 'gcdviEvents'
---
--- * 'gcdviParameters'
---
--- * 'gcdviDisplayName'
---
--- * 'gcdviInputContextNames'
---
--- * 'gcdviMessages'
---
--- * 'gcdviParentFollowupIntentName'
---
--- * 'gcdviOutputContexts'
---
--- * 'gcdviTrainingPhrases'
---
--- * 'gcdviFollowupIntentInfo'
---
--- * 'gcdviIsFallback'
---
--- * 'gcdviMlDisabled'
---
--- * 'gcdviResetContexts'
-googleCloudDialogflowV2Intent
-    :: GoogleCloudDialogflowV2Intent
-googleCloudDialogflowV2Intent =
-  GoogleCloudDialogflowV2Intent'
-    { _gcdviDefaultResponsePlatforms = Nothing
-    , _gcdviWebhookState = Nothing
-    , _gcdviPriority = Nothing
-    , _gcdviAction = Nothing
-    , _gcdviRootFollowupIntentName = Nothing
-    , _gcdviName = Nothing
-    , _gcdviEvents = Nothing
-    , _gcdviParameters = Nothing
-    , _gcdviDisplayName = Nothing
-    , _gcdviInputContextNames = Nothing
-    , _gcdviMessages = Nothing
-    , _gcdviParentFollowupIntentName = Nothing
-    , _gcdviOutputContexts = Nothing
-    , _gcdviTrainingPhrases = Nothing
-    , _gcdviFollowupIntentInfo = Nothing
-    , _gcdviIsFallback = Nothing
-    , _gcdviMlDisabled = Nothing
-    , _gcdviResetContexts = Nothing
-    }
-
-
--- | Optional. The list of platforms for which the first response will be
--- taken from among the messages assigned to the DEFAULT_PLATFORM.
-gcdviDefaultResponsePlatforms :: Lens' GoogleCloudDialogflowV2Intent [Text]
-gcdviDefaultResponsePlatforms
-  = lens _gcdviDefaultResponsePlatforms
-      (\ s a -> s{_gcdviDefaultResponsePlatforms = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether webhooks are enabled for the intent.
-gcdviWebhookState :: Lens' GoogleCloudDialogflowV2Intent (Maybe GoogleCloudDialogflowV2IntentWebhookState)
-gcdviWebhookState
-  = lens _gcdviWebhookState
-      (\ s a -> s{_gcdviWebhookState = a})
-
--- | Optional. The priority of this intent. Higher numbers represent higher
--- priorities. If this is zero or unspecified, we use the default priority
--- 500000. Negative numbers mean that the intent is disabled.
-gcdviPriority :: Lens' GoogleCloudDialogflowV2Intent (Maybe Int32)
-gcdviPriority
-  = lens _gcdviPriority
-      (\ s a -> s{_gcdviPriority = a})
-      . mapping _Coerce
-
--- | Optional. The name of the action associated with the intent. Note: The
--- action name must not contain whitespaces.
-gcdviAction :: Lens' GoogleCloudDialogflowV2Intent (Maybe Text)
-gcdviAction
-  = lens _gcdviAction (\ s a -> s{_gcdviAction = a})
-
--- | Read-only. The unique identifier of the root intent in the chain of
--- followup intents. It identifies the correct followup intents chain for
--- this intent. We populate this field only in the output. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdviRootFollowupIntentName :: Lens' GoogleCloudDialogflowV2Intent (Maybe Text)
-gcdviRootFollowupIntentName
-  = lens _gcdviRootFollowupIntentName
-      (\ s a -> s{_gcdviRootFollowupIntentName = a})
-
--- | The unique identifier of this intent. Required for Intents.UpdateIntent
--- and Intents.BatchUpdateIntents methods. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdviName :: Lens' GoogleCloudDialogflowV2Intent (Maybe Text)
-gcdviName
-  = lens _gcdviName (\ s a -> s{_gcdviName = a})
-
--- | Optional. The collection of event names that trigger the intent. If the
--- collection of input contexts is not empty, all of the contexts must be
--- present in the active user session for an event to trigger this intent.
-gcdviEvents :: Lens' GoogleCloudDialogflowV2Intent [Text]
-gcdviEvents
-  = lens _gcdviEvents (\ s a -> s{_gcdviEvents = a}) .
-      _Default
-      . _Coerce
-
--- | Optional. The collection of parameters associated with the intent.
-gcdviParameters :: Lens' GoogleCloudDialogflowV2Intent [GoogleCloudDialogflowV2IntentParameter]
-gcdviParameters
-  = lens _gcdviParameters
-      (\ s a -> s{_gcdviParameters = a})
-      . _Default
-      . _Coerce
-
--- | Required. The name of this intent.
-gcdviDisplayName :: Lens' GoogleCloudDialogflowV2Intent (Maybe Text)
-gcdviDisplayName
-  = lens _gcdviDisplayName
-      (\ s a -> s{_gcdviDisplayName = a})
-
--- | Optional. The list of context names required for this intent to be
--- triggered. Format: \`projects\/\/agent\/sessions\/-\/contexts\/\`.
-gcdviInputContextNames :: Lens' GoogleCloudDialogflowV2Intent [Text]
-gcdviInputContextNames
-  = lens _gcdviInputContextNames
-      (\ s a -> s{_gcdviInputContextNames = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The collection of rich messages corresponding to the
--- \`Response\` field in the Dialogflow console.
-gcdviMessages :: Lens' GoogleCloudDialogflowV2Intent [GoogleCloudDialogflowV2IntentMessage]
-gcdviMessages
-  = lens _gcdviMessages
-      (\ s a -> s{_gcdviMessages = a})
-      . _Default
-      . _Coerce
-
--- | Read-only after creation. The unique identifier of the parent intent in
--- the chain of followup intents. You can set this field when creating an
--- intent, for example with CreateIntent or BatchUpdateIntents, in order to
--- make this intent a followup intent. It identifies the parent followup
--- intent. Format: \`projects\/\/agent\/intents\/\`.
-gcdviParentFollowupIntentName :: Lens' GoogleCloudDialogflowV2Intent (Maybe Text)
-gcdviParentFollowupIntentName
-  = lens _gcdviParentFollowupIntentName
-      (\ s a -> s{_gcdviParentFollowupIntentName = a})
-
--- | Optional. The collection of contexts that are activated when the intent
--- is matched. Context messages in this collection should not set the
--- parameters field. Setting the \`lifespan_count\` to 0 will reset the
--- context when the intent is matched. Format:
--- \`projects\/\/agent\/sessions\/-\/contexts\/\`.
-gcdviOutputContexts :: Lens' GoogleCloudDialogflowV2Intent [GoogleCloudDialogflowV2Context]
-gcdviOutputContexts
-  = lens _gcdviOutputContexts
-      (\ s a -> s{_gcdviOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The collection of examples that the agent is trained on.
-gcdviTrainingPhrases :: Lens' GoogleCloudDialogflowV2Intent [GoogleCloudDialogflowV2IntentTrainingPhrase]
-gcdviTrainingPhrases
-  = lens _gcdviTrainingPhrases
-      (\ s a -> s{_gcdviTrainingPhrases = a})
-      . _Default
-      . _Coerce
-
--- | Read-only. Information about all followup intents that have this intent
--- as a direct or indirect parent. We populate this field only in the
--- output.
-gcdviFollowupIntentInfo :: Lens' GoogleCloudDialogflowV2Intent [GoogleCloudDialogflowV2IntentFollowupIntentInfo]
-gcdviFollowupIntentInfo
-  = lens _gcdviFollowupIntentInfo
-      (\ s a -> s{_gcdviFollowupIntentInfo = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether this is a fallback intent.
-gcdviIsFallback :: Lens' GoogleCloudDialogflowV2Intent (Maybe Bool)
-gcdviIsFallback
-  = lens _gcdviIsFallback
-      (\ s a -> s{_gcdviIsFallback = a})
-
--- | Optional. Indicates whether Machine Learning is disabled for the intent.
--- Note: If \`ml_diabled\` setting is set to true, then this intent is not
--- taken into account during inference in \`ML ONLY\` match mode. Also,
--- auto-markup in the UI is turned off.
-gcdviMlDisabled :: Lens' GoogleCloudDialogflowV2Intent (Maybe Bool)
-gcdviMlDisabled
-  = lens _gcdviMlDisabled
-      (\ s a -> s{_gcdviMlDisabled = a})
-
--- | Optional. Indicates whether to delete all contexts in the current
--- session when this intent is matched.
-gcdviResetContexts :: Lens' GoogleCloudDialogflowV2Intent (Maybe Bool)
-gcdviResetContexts
-  = lens _gcdviResetContexts
-      (\ s a -> s{_gcdviResetContexts = a})
-
-instance FromJSON GoogleCloudDialogflowV2Intent where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2Intent"
-              (\ o ->
-                 GoogleCloudDialogflowV2Intent' <$>
-                   (o .:? "defaultResponsePlatforms" .!= mempty) <*>
-                     (o .:? "webhookState")
-                     <*> (o .:? "priority")
-                     <*> (o .:? "action")
-                     <*> (o .:? "rootFollowupIntentName")
-                     <*> (o .:? "name")
-                     <*> (o .:? "events" .!= mempty)
-                     <*> (o .:? "parameters" .!= mempty)
-                     <*> (o .:? "displayName")
-                     <*> (o .:? "inputContextNames" .!= mempty)
-                     <*> (o .:? "messages" .!= mempty)
-                     <*> (o .:? "parentFollowupIntentName")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "trainingPhrases" .!= mempty)
-                     <*> (o .:? "followupIntentInfo" .!= mempty)
-                     <*> (o .:? "isFallback")
-                     <*> (o .:? "mlDisabled")
-                     <*> (o .:? "resetContexts"))
-
-instance ToJSON GoogleCloudDialogflowV2Intent where
-        toJSON GoogleCloudDialogflowV2Intent'{..}
-          = object
-              (catMaybes
-                 [("defaultResponsePlatforms" .=) <$>
-                    _gcdviDefaultResponsePlatforms,
-                  ("webhookState" .=) <$> _gcdviWebhookState,
-                  ("priority" .=) <$> _gcdviPriority,
-                  ("action" .=) <$> _gcdviAction,
-                  ("rootFollowupIntentName" .=) <$>
-                    _gcdviRootFollowupIntentName,
-                  ("name" .=) <$> _gcdviName,
-                  ("events" .=) <$> _gcdviEvents,
-                  ("parameters" .=) <$> _gcdviParameters,
-                  ("displayName" .=) <$> _gcdviDisplayName,
-                  ("inputContextNames" .=) <$> _gcdviInputContextNames,
-                  ("messages" .=) <$> _gcdviMessages,
-                  ("parentFollowupIntentName" .=) <$>
-                    _gcdviParentFollowupIntentName,
-                  ("outputContexts" .=) <$> _gcdviOutputContexts,
-                  ("trainingPhrases" .=) <$> _gcdviTrainingPhrases,
-                  ("followupIntentInfo" .=) <$>
-                    _gcdviFollowupIntentInfo,
-                  ("isFallback" .=) <$> _gcdviIsFallback,
-                  ("mlDisabled" .=) <$> _gcdviMlDisabled,
-                  ("resetContexts" .=) <$> _gcdviResetContexts])
-
--- | The button object that appears at the bottom of a card.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageBasicCardButton' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton'
-    { _gcdvimbcbOpenURIAction :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction)
-    , _gcdvimbcbTitle         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbcbOpenURIAction'
---
--- * 'gcdvimbcbTitle'
-googleCloudDialogflowV2beta1IntentMessageBasicCardButton
-    :: GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-googleCloudDialogflowV2beta1IntentMessageBasicCardButton =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton'
-    {_gcdvimbcbOpenURIAction = Nothing, _gcdvimbcbTitle = Nothing}
-
-
--- | Required. Action to take when a user taps on the button.
-gcdvimbcbOpenURIAction :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton (Maybe GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction)
-gcdvimbcbOpenURIAction
-  = lens _gcdvimbcbOpenURIAction
-      (\ s a -> s{_gcdvimbcbOpenURIAction = a})
-
--- | Required. The title of the button.
-gcdvimbcbTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton (Maybe Text)
-gcdvimbcbTitle
-  = lens _gcdvimbcbTitle
-      (\ s a -> s{_gcdvimbcbTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton'
-                   <$> (o .:? "openUriAction") <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton'{..}
-          = object
-              (catMaybes
-                 [("openUriAction" .=) <$> _gcdvimbcbOpenURIAction,
-                  ("title" .=) <$> _gcdvimbcbTitle])
-
--- | The result of sentiment analysis as configured by
--- \`sentiment_analysis_request_config\`.
---
--- /See:/ 'googleCloudDialogflowV2SentimentAnalysisResult' smart constructor.
-newtype GoogleCloudDialogflowV2SentimentAnalysisResult =
-  GoogleCloudDialogflowV2SentimentAnalysisResult'
-    { _gcdvsarQueryTextSentiment :: Maybe GoogleCloudDialogflowV2Sentiment
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2SentimentAnalysisResult' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvsarQueryTextSentiment'
-googleCloudDialogflowV2SentimentAnalysisResult
-    :: GoogleCloudDialogflowV2SentimentAnalysisResult
-googleCloudDialogflowV2SentimentAnalysisResult =
-  GoogleCloudDialogflowV2SentimentAnalysisResult'
-    {_gcdvsarQueryTextSentiment = Nothing}
-
-
--- | The sentiment analysis result for \`query_text\`.
-gcdvsarQueryTextSentiment :: Lens' GoogleCloudDialogflowV2SentimentAnalysisResult (Maybe GoogleCloudDialogflowV2Sentiment)
-gcdvsarQueryTextSentiment
-  = lens _gcdvsarQueryTextSentiment
-      (\ s a -> s{_gcdvsarQueryTextSentiment = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2SentimentAnalysisResult
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2SentimentAnalysisResult"
-              (\ o ->
-                 GoogleCloudDialogflowV2SentimentAnalysisResult' <$>
-                   (o .:? "queryTextSentiment"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2SentimentAnalysisResult
-         where
-        toJSON
-          GoogleCloudDialogflowV2SentimentAnalysisResult'{..}
-          = object
-              (catMaybes
-                 [("queryTextSentiment" .=) <$>
-                    _gcdvsarQueryTextSentiment])
-
--- | The request message for EntityTypes.BatchCreateEntities.
---
--- /See:/ 'googleCloudDialogflowV2BatchCreateEntitiesRequest' smart constructor.
-data GoogleCloudDialogflowV2BatchCreateEntitiesRequest =
-  GoogleCloudDialogflowV2BatchCreateEntitiesRequest'
-    { _gcdvbcerLanguageCode :: !(Maybe Text)
-    , _gcdvbcerEntities     :: !(Maybe [GoogleCloudDialogflowV2EntityTypeEntity])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchCreateEntitiesRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbcerLanguageCode'
---
--- * 'gcdvbcerEntities'
-googleCloudDialogflowV2BatchCreateEntitiesRequest
-    :: GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-googleCloudDialogflowV2BatchCreateEntitiesRequest =
-  GoogleCloudDialogflowV2BatchCreateEntitiesRequest'
-    {_gcdvbcerLanguageCode = Nothing, _gcdvbcerEntities = Nothing}
-
-
--- | Optional. The language of entity synonyms defined in \`entities\`. If
--- not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-gcdvbcerLanguageCode :: Lens' GoogleCloudDialogflowV2BatchCreateEntitiesRequest (Maybe Text)
-gcdvbcerLanguageCode
-  = lens _gcdvbcerLanguageCode
-      (\ s a -> s{_gcdvbcerLanguageCode = a})
-
--- | Required. The entities to create.
-gcdvbcerEntities :: Lens' GoogleCloudDialogflowV2BatchCreateEntitiesRequest [GoogleCloudDialogflowV2EntityTypeEntity]
-gcdvbcerEntities
-  = lens _gcdvbcerEntities
-      (\ s a -> s{_gcdvbcerEntities = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchCreateEntitiesRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchCreateEntitiesRequest'
-                   <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "entities" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchCreateEntitiesRequest'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvbcerLanguageCode,
-                  ("entities" .=) <$> _gcdvbcerEntities])
-
--- | The collection of suggestions.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageSuggestions' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageSuggestions =
-  GoogleCloudDialogflowV2beta1IntentMessageSuggestions'
-    { _gcdvimsSuggestions :: Maybe [GoogleCloudDialogflowV2beta1IntentMessageSuggestion]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSuggestions' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimsSuggestions'
-googleCloudDialogflowV2beta1IntentMessageSuggestions
-    :: GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-googleCloudDialogflowV2beta1IntentMessageSuggestions =
-  GoogleCloudDialogflowV2beta1IntentMessageSuggestions'
-    {_gcdvimsSuggestions = Nothing}
-
-
--- | Required. The list of suggested replies.
-gcdvimsSuggestions :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSuggestions [GoogleCloudDialogflowV2beta1IntentMessageSuggestion]
-gcdvimsSuggestions
-  = lens _gcdvimsSuggestions
-      (\ s a -> s{_gcdvimsSuggestions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageSuggestions"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageSuggestions'
-                   <$> (o .:? "suggestions" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSuggestions
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageSuggestions'{..}
-          = object
-              (catMaybes
-                 [("suggestions" .=) <$> _gcdvimsSuggestions])
-
--- | The request message for Intents.BatchDeleteIntents.
---
--- /See:/ 'googleCloudDialogflowV2BatchDeleteIntentsRequest' smart constructor.
-newtype GoogleCloudDialogflowV2BatchDeleteIntentsRequest =
-  GoogleCloudDialogflowV2BatchDeleteIntentsRequest'
-    { _gcdvbdirIntents :: Maybe [GoogleCloudDialogflowV2Intent]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchDeleteIntentsRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbdirIntents'
-googleCloudDialogflowV2BatchDeleteIntentsRequest
-    :: GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-googleCloudDialogflowV2BatchDeleteIntentsRequest =
-  GoogleCloudDialogflowV2BatchDeleteIntentsRequest' {_gcdvbdirIntents = Nothing}
-
-
--- | Required. The collection of intents to delete. Only intent \`name\` must
--- be filled in.
-gcdvbdirIntents :: Lens' GoogleCloudDialogflowV2BatchDeleteIntentsRequest [GoogleCloudDialogflowV2Intent]
-gcdvbdirIntents
-  = lens _gcdvbdirIntents
-      (\ s a -> s{_gcdvbdirIntents = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchDeleteIntentsRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchDeleteIntentsRequest' <$>
-                   (o .:? "intents" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchDeleteIntentsRequest'{..}
-          = object
-              (catMaybes [("intents" .=) <$> _gcdvbdirIntents])
-
--- | Represents the result of conversational query or event processing.
---
--- /See:/ 'googleCloudDialogflowV2QueryResult' smart constructor.
-data GoogleCloudDialogflowV2QueryResult =
-  GoogleCloudDialogflowV2QueryResult'
-    { _gcdvqrLanguageCode                :: !(Maybe Text)
-    , _gcdvqrAllRequiredParamsPresent    :: !(Maybe Bool)
-    , _gcdvqrIntentDetectionConfidence   :: !(Maybe (Textual Double))
-    , _gcdvqrFulfillmentMessages         :: !(Maybe [GoogleCloudDialogflowV2IntentMessage])
-    , _gcdvqrSpeechRecognitionConfidence :: !(Maybe (Textual Double))
-    , _gcdvqrAction                      :: !(Maybe Text)
-    , _gcdvqrIntent                      :: !(Maybe GoogleCloudDialogflowV2Intent)
-    , _gcdvqrSentimentAnalysisResult     :: !(Maybe GoogleCloudDialogflowV2SentimentAnalysisResult)
-    , _gcdvqrQueryText                   :: !(Maybe Text)
-    , _gcdvqrFulfillmentText             :: !(Maybe Text)
-    , _gcdvqrParameters                  :: !(Maybe GoogleCloudDialogflowV2QueryResultParameters)
-    , _gcdvqrWebhookPayload              :: !(Maybe GoogleCloudDialogflowV2QueryResultWebhookPayload)
-    , _gcdvqrOutputContexts              :: !(Maybe [GoogleCloudDialogflowV2Context])
-    , _gcdvqrWebhookSource               :: !(Maybe Text)
-    , _gcdvqrDiagnosticInfo              :: !(Maybe GoogleCloudDialogflowV2QueryResultDiagnosticInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryResult' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrLanguageCode'
---
--- * 'gcdvqrAllRequiredParamsPresent'
---
--- * 'gcdvqrIntentDetectionConfidence'
---
--- * 'gcdvqrFulfillmentMessages'
---
--- * 'gcdvqrSpeechRecognitionConfidence'
---
--- * 'gcdvqrAction'
---
--- * 'gcdvqrIntent'
---
--- * 'gcdvqrSentimentAnalysisResult'
---
--- * 'gcdvqrQueryText'
---
--- * 'gcdvqrFulfillmentText'
---
--- * 'gcdvqrParameters'
---
--- * 'gcdvqrWebhookPayload'
---
--- * 'gcdvqrOutputContexts'
---
--- * 'gcdvqrWebhookSource'
---
--- * 'gcdvqrDiagnosticInfo'
-googleCloudDialogflowV2QueryResult
-    :: GoogleCloudDialogflowV2QueryResult
-googleCloudDialogflowV2QueryResult =
-  GoogleCloudDialogflowV2QueryResult'
-    { _gcdvqrLanguageCode = Nothing
-    , _gcdvqrAllRequiredParamsPresent = Nothing
-    , _gcdvqrIntentDetectionConfidence = Nothing
-    , _gcdvqrFulfillmentMessages = Nothing
-    , _gcdvqrSpeechRecognitionConfidence = Nothing
-    , _gcdvqrAction = Nothing
-    , _gcdvqrIntent = Nothing
-    , _gcdvqrSentimentAnalysisResult = Nothing
-    , _gcdvqrQueryText = Nothing
-    , _gcdvqrFulfillmentText = Nothing
-    , _gcdvqrParameters = Nothing
-    , _gcdvqrWebhookPayload = Nothing
-    , _gcdvqrOutputContexts = Nothing
-    , _gcdvqrWebhookSource = Nothing
-    , _gcdvqrDiagnosticInfo = Nothing
-    }
-
-
--- | The language that was triggered during intent detection. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes.
-gcdvqrLanguageCode :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Text)
-gcdvqrLanguageCode
-  = lens _gcdvqrLanguageCode
-      (\ s a -> s{_gcdvqrLanguageCode = a})
-
--- | This field is set to: - \`false\` if the matched intent has required
--- parameters and not all of the required parameter values have been
--- collected. - \`true\` if all required parameter values have been
--- collected, or if the matched intent doesn\'t contain any required
--- parameters.
-gcdvqrAllRequiredParamsPresent :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Bool)
-gcdvqrAllRequiredParamsPresent
-  = lens _gcdvqrAllRequiredParamsPresent
-      (\ s a -> s{_gcdvqrAllRequiredParamsPresent = a})
-
--- | The intent detection confidence. Values range from 0.0 (completely
--- uncertain) to 1.0 (completely certain). If there are \`multiple
--- knowledge_answers\` messages, this value is set to the greatest
--- \`knowledgeAnswers.match_confidence\` value in the list.
-gcdvqrIntentDetectionConfidence :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Double)
-gcdvqrIntentDetectionConfidence
-  = lens _gcdvqrIntentDetectionConfidence
-      (\ s a -> s{_gcdvqrIntentDetectionConfidence = a})
-      . mapping _Coerce
-
--- | The collection of rich messages to present to the user.
-gcdvqrFulfillmentMessages :: Lens' GoogleCloudDialogflowV2QueryResult [GoogleCloudDialogflowV2IntentMessage]
-gcdvqrFulfillmentMessages
-  = lens _gcdvqrFulfillmentMessages
-      (\ s a -> s{_gcdvqrFulfillmentMessages = a})
-      . _Default
-      . _Coerce
-
--- | The Speech recognition confidence between 0.0 and 1.0. A higher number
--- indicates an estimated greater likelihood that the recognized words are
--- correct. The default of 0.0 is a sentinel value indicating that
--- confidence was not set. This field is not guaranteed to be accurate or
--- set. In particular this field isn\'t set for StreamingDetectIntent since
--- the streaming endpoint has separate confidence estimates per portion of
--- the audio in StreamingRecognitionResult.
-gcdvqrSpeechRecognitionConfidence :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Double)
-gcdvqrSpeechRecognitionConfidence
-  = lens _gcdvqrSpeechRecognitionConfidence
-      (\ s a -> s{_gcdvqrSpeechRecognitionConfidence = a})
-      . mapping _Coerce
-
--- | The action name from the matched intent.
-gcdvqrAction :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Text)
-gcdvqrAction
-  = lens _gcdvqrAction (\ s a -> s{_gcdvqrAction = a})
-
--- | The intent that matched the conversational query. Some, not all fields
--- are filled in this message, including but not limited to: \`name\`,
--- \`display_name\` and \`webhook_state\`.
-gcdvqrIntent :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe GoogleCloudDialogflowV2Intent)
-gcdvqrIntent
-  = lens _gcdvqrIntent (\ s a -> s{_gcdvqrIntent = a})
-
--- | The sentiment analysis result, which depends on the
--- \`sentiment_analysis_request_config\` specified in the request.
-gcdvqrSentimentAnalysisResult :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe GoogleCloudDialogflowV2SentimentAnalysisResult)
-gcdvqrSentimentAnalysisResult
-  = lens _gcdvqrSentimentAnalysisResult
-      (\ s a -> s{_gcdvqrSentimentAnalysisResult = a})
-
--- | The original conversational query text: - If natural language text was
--- provided as input, \`query_text\` contains a copy of the input. - If
--- natural language speech audio was provided as input, \`query_text\`
--- contains the speech recognition result. If speech recognizer produced
--- multiple alternatives, a particular one is picked. - If an event was
--- provided as input, \`query_text\` is not set.
-gcdvqrQueryText :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Text)
-gcdvqrQueryText
-  = lens _gcdvqrQueryText
-      (\ s a -> s{_gcdvqrQueryText = a})
-
--- | The text to be pronounced to the user or shown on the screen. Note: This
--- is a legacy field, \`fulfillment_messages\` should be preferred.
-gcdvqrFulfillmentText :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Text)
-gcdvqrFulfillmentText
-  = lens _gcdvqrFulfillmentText
-      (\ s a -> s{_gcdvqrFulfillmentText = a})
-
--- | The collection of extracted parameters.
-gcdvqrParameters :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe GoogleCloudDialogflowV2QueryResultParameters)
-gcdvqrParameters
-  = lens _gcdvqrParameters
-      (\ s a -> s{_gcdvqrParameters = a})
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`payload\` field returned in the webhook response.
-gcdvqrWebhookPayload :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe GoogleCloudDialogflowV2QueryResultWebhookPayload)
-gcdvqrWebhookPayload
-  = lens _gcdvqrWebhookPayload
-      (\ s a -> s{_gcdvqrWebhookPayload = a})
-
--- | The collection of output contexts. If applicable,
--- \`output_contexts.parameters\` contains entries with name \`.original\`
--- containing the original parameter values before the query.
-gcdvqrOutputContexts :: Lens' GoogleCloudDialogflowV2QueryResult [GoogleCloudDialogflowV2Context]
-gcdvqrOutputContexts
-  = lens _gcdvqrOutputContexts
-      (\ s a -> s{_gcdvqrOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`source\` field returned in the webhook response.
-gcdvqrWebhookSource :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe Text)
-gcdvqrWebhookSource
-  = lens _gcdvqrWebhookSource
-      (\ s a -> s{_gcdvqrWebhookSource = a})
-
--- | The free-form diagnostic info. For example, this field could contain
--- webhook call latency. The string keys of the Struct\'s fields map can
--- change without notice.
-gcdvqrDiagnosticInfo :: Lens' GoogleCloudDialogflowV2QueryResult (Maybe GoogleCloudDialogflowV2QueryResultDiagnosticInfo)
-gcdvqrDiagnosticInfo
-  = lens _gcdvqrDiagnosticInfo
-      (\ s a -> s{_gcdvqrDiagnosticInfo = a})
-
-instance FromJSON GoogleCloudDialogflowV2QueryResult
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2QueryResult"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryResult' <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "allRequiredParamsPresent")
-                     <*> (o .:? "intentDetectionConfidence")
-                     <*> (o .:? "fulfillmentMessages" .!= mempty)
-                     <*> (o .:? "speechRecognitionConfidence")
-                     <*> (o .:? "action")
-                     <*> (o .:? "intent")
-                     <*> (o .:? "sentimentAnalysisResult")
-                     <*> (o .:? "queryText")
-                     <*> (o .:? "fulfillmentText")
-                     <*> (o .:? "parameters")
-                     <*> (o .:? "webhookPayload")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "webhookSource")
-                     <*> (o .:? "diagnosticInfo"))
-
-instance ToJSON GoogleCloudDialogflowV2QueryResult
-         where
-        toJSON GoogleCloudDialogflowV2QueryResult'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvqrLanguageCode,
-                  ("allRequiredParamsPresent" .=) <$>
-                    _gcdvqrAllRequiredParamsPresent,
-                  ("intentDetectionConfidence" .=) <$>
-                    _gcdvqrIntentDetectionConfidence,
-                  ("fulfillmentMessages" .=) <$>
-                    _gcdvqrFulfillmentMessages,
-                  ("speechRecognitionConfidence" .=) <$>
-                    _gcdvqrSpeechRecognitionConfidence,
-                  ("action" .=) <$> _gcdvqrAction,
-                  ("intent" .=) <$> _gcdvqrIntent,
-                  ("sentimentAnalysisResult" .=) <$>
-                    _gcdvqrSentimentAnalysisResult,
-                  ("queryText" .=) <$> _gcdvqrQueryText,
-                  ("fulfillmentText" .=) <$> _gcdvqrFulfillmentText,
-                  ("parameters" .=) <$> _gcdvqrParameters,
-                  ("webhookPayload" .=) <$> _gcdvqrWebhookPayload,
-                  ("outputContexts" .=) <$> _gcdvqrOutputContexts,
-                  ("webhookSource" .=) <$> _gcdvqrWebhookSource,
-                  ("diagnosticInfo" .=) <$> _gcdvqrDiagnosticInfo])
-
--- | The request message for Intents.BatchUpdateIntents.
---
--- /See:/ 'googleCloudDialogflowV2BatchUpdateIntentsRequest' smart constructor.
-data GoogleCloudDialogflowV2BatchUpdateIntentsRequest =
-  GoogleCloudDialogflowV2BatchUpdateIntentsRequest'
-    { _gcdvbuirLanguageCode      :: !(Maybe Text)
-    , _gcdvbuirUpdateMask        :: !(Maybe GFieldMask)
-    , _gcdvbuirIntentView        :: !(Maybe GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView)
-    , _gcdvbuirIntentBatchURI    :: !(Maybe Text)
-    , _gcdvbuirIntentBatchInline :: !(Maybe GoogleCloudDialogflowV2IntentBatch)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateIntentsRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbuirLanguageCode'
---
--- * 'gcdvbuirUpdateMask'
---
--- * 'gcdvbuirIntentView'
---
--- * 'gcdvbuirIntentBatchURI'
---
--- * 'gcdvbuirIntentBatchInline'
-googleCloudDialogflowV2BatchUpdateIntentsRequest
-    :: GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-googleCloudDialogflowV2BatchUpdateIntentsRequest =
-  GoogleCloudDialogflowV2BatchUpdateIntentsRequest'
-    { _gcdvbuirLanguageCode = Nothing
-    , _gcdvbuirUpdateMask = Nothing
-    , _gcdvbuirIntentView = Nothing
-    , _gcdvbuirIntentBatchURI = Nothing
-    , _gcdvbuirIntentBatchInline = Nothing
-    }
-
-
--- | Optional. The language of training phrases, parameters and rich messages
--- defined in \`intents\`. If not specified, the agent\'s default language
--- is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-gcdvbuirLanguageCode :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsRequest (Maybe Text)
-gcdvbuirLanguageCode
-  = lens _gcdvbuirLanguageCode
-      (\ s a -> s{_gcdvbuirLanguageCode = a})
-
--- | Optional. The mask to control which fields get updated.
-gcdvbuirUpdateMask :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsRequest (Maybe GFieldMask)
-gcdvbuirUpdateMask
-  = lens _gcdvbuirUpdateMask
-      (\ s a -> s{_gcdvbuirUpdateMask = a})
-
--- | Optional. The resource view to apply to the returned intent.
-gcdvbuirIntentView :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsRequest (Maybe GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView)
-gcdvbuirIntentView
-  = lens _gcdvbuirIntentView
-      (\ s a -> s{_gcdvbuirIntentView = a})
-
--- | The URI to a Google Cloud Storage file containing intents to update or
--- create. The file format can either be a serialized proto (of IntentBatch
--- type) or JSON object. Note: The URI must start with \"gs:\/\/\".
-gcdvbuirIntentBatchURI :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsRequest (Maybe Text)
-gcdvbuirIntentBatchURI
-  = lens _gcdvbuirIntentBatchURI
-      (\ s a -> s{_gcdvbuirIntentBatchURI = a})
-
--- | The collection of intents to update or create.
-gcdvbuirIntentBatchInline :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsRequest (Maybe GoogleCloudDialogflowV2IntentBatch)
-gcdvbuirIntentBatchInline
-  = lens _gcdvbuirIntentBatchInline
-      (\ s a -> s{_gcdvbuirIntentBatchInline = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchUpdateIntentsRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchUpdateIntentsRequest' <$>
-                   (o .:? "languageCode") <*> (o .:? "updateMask") <*>
-                     (o .:? "intentView")
-                     <*> (o .:? "intentBatchUri")
-                     <*> (o .:? "intentBatchInline"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchUpdateIntentsRequest'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvbuirLanguageCode,
-                  ("updateMask" .=) <$> _gcdvbuirUpdateMask,
-                  ("intentView" .=) <$> _gcdvbuirIntentView,
-                  ("intentBatchUri" .=) <$> _gcdvbuirIntentBatchURI,
-                  ("intentBatchInline" .=) <$>
-                    _gcdvbuirIntentBatchInline])
-
--- | An object representing a latitude\/longitude pair. This is expressed as
--- a pair of doubles representing degrees latitude and degrees longitude.
--- Unless specified otherwise, this must conform to the
--- <http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf WGS84 standard>.
--- Values must be within normalized ranges.
---
--- /See:/ 'googleTypeLatLng' smart constructor.
-data GoogleTypeLatLng =
-  GoogleTypeLatLng'
-    { _gtllLatitude  :: !(Maybe (Textual Double))
-    , _gtllLongitude :: !(Maybe (Textual Double))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleTypeLatLng' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gtllLatitude'
---
--- * 'gtllLongitude'
-googleTypeLatLng
-    :: GoogleTypeLatLng
-googleTypeLatLng =
-  GoogleTypeLatLng' {_gtllLatitude = Nothing, _gtllLongitude = Nothing}
-
-
--- | The latitude in degrees. It must be in the range [-90.0, +90.0].
-gtllLatitude :: Lens' GoogleTypeLatLng (Maybe Double)
-gtllLatitude
-  = lens _gtllLatitude (\ s a -> s{_gtllLatitude = a})
-      . mapping _Coerce
-
--- | The longitude in degrees. It must be in the range [-180.0, +180.0].
-gtllLongitude :: Lens' GoogleTypeLatLng (Maybe Double)
-gtllLongitude
-  = lens _gtllLongitude
-      (\ s a -> s{_gtllLongitude = a})
-      . mapping _Coerce
-
-instance FromJSON GoogleTypeLatLng where
-        parseJSON
-          = withObject "GoogleTypeLatLng"
-              (\ o ->
-                 GoogleTypeLatLng' <$>
-                   (o .:? "latitude") <*> (o .:? "longitude"))
-
-instance ToJSON GoogleTypeLatLng where
-        toJSON GoogleTypeLatLng'{..}
-          = object
-              (catMaybes
-                 [("latitude" .=) <$> _gtllLatitude,
-                  ("longitude" .=) <$> _gtllLongitude])
-
--- | The response message for a webhook call.
---
--- /See:/ 'googleCloudDialogflowV2beta1WebhookResponse' smart constructor.
-data GoogleCloudDialogflowV2beta1WebhookResponse =
-  GoogleCloudDialogflowV2beta1WebhookResponse'
-    { _gcdvwrFulfillmentMessages :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessage])
-    , _gcdvwrPayload             :: !(Maybe GoogleCloudDialogflowV2beta1WebhookResponsePayload)
-    , _gcdvwrFulfillmentText     :: !(Maybe Text)
-    , _gcdvwrSource              :: !(Maybe Text)
-    , _gcdvwrEndInteraction      :: !(Maybe Bool)
-    , _gcdvwrOutputContexts      :: !(Maybe [GoogleCloudDialogflowV2beta1Context])
-    , _gcdvwrFollowupEventInput  :: !(Maybe GoogleCloudDialogflowV2beta1EventInput)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvwrFulfillmentMessages'
---
--- * 'gcdvwrPayload'
---
--- * 'gcdvwrFulfillmentText'
---
--- * 'gcdvwrSource'
---
--- * 'gcdvwrEndInteraction'
---
--- * 'gcdvwrOutputContexts'
---
--- * 'gcdvwrFollowupEventInput'
-googleCloudDialogflowV2beta1WebhookResponse
-    :: GoogleCloudDialogflowV2beta1WebhookResponse
-googleCloudDialogflowV2beta1WebhookResponse =
-  GoogleCloudDialogflowV2beta1WebhookResponse'
-    { _gcdvwrFulfillmentMessages = Nothing
-    , _gcdvwrPayload = Nothing
-    , _gcdvwrFulfillmentText = Nothing
-    , _gcdvwrSource = Nothing
-    , _gcdvwrEndInteraction = Nothing
-    , _gcdvwrOutputContexts = Nothing
-    , _gcdvwrFollowupEventInput = Nothing
-    }
-
-
--- | Optional. The collection of rich messages to present to the user. This
--- value is passed directly to \`QueryResult.fulfillment_messages\`.
-gcdvwrFulfillmentMessages :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse [GoogleCloudDialogflowV2beta1IntentMessage]
-gcdvwrFulfillmentMessages
-  = lens _gcdvwrFulfillmentMessages
-      (\ s a -> s{_gcdvwrFulfillmentMessages = a})
-      . _Default
-      . _Coerce
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_payload\`. See the related
--- \`fulfillment_messages[i].payload field\`, which may be used as an
--- alternative to this field. This field can be used for Actions on Google
--- responses. It should have a structure similar to the JSON message shown
--- here. For more information, see [Actions on Google Webhook
--- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
---
--- > {
--- >   "google": {
--- >     "expectUserResponse": true,
--- >     "richResponse": {
--- >       "items": [
--- >         {
--- >           "simpleResponse": {
--- >             "textToSpeech": "this is a simple response"
--- >           }
--- >         }
--- >       ]
--- >     }
--- >   }
--- > }
-gcdvwrPayload :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse (Maybe GoogleCloudDialogflowV2beta1WebhookResponsePayload)
-gcdvwrPayload
-  = lens _gcdvwrPayload
-      (\ s a -> s{_gcdvwrPayload = a})
-
--- | Optional. The text to be shown on the screen. This value is passed
--- directly to \`QueryResult.fulfillment_text\`.
-gcdvwrFulfillmentText :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse (Maybe Text)
-gcdvwrFulfillmentText
-  = lens _gcdvwrFulfillmentText
-      (\ s a -> s{_gcdvwrFulfillmentText = a})
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_source\`.
-gcdvwrSource :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse (Maybe Text)
-gcdvwrSource
-  = lens _gcdvwrSource (\ s a -> s{_gcdvwrSource = a})
-
--- | Optional. Indicates that this intent ends an interaction. Some
--- integrations (e.g., Actions on Google or Dialogflow phone gateway) use
--- this information to close interaction with an end user. Default is
--- false.
-gcdvwrEndInteraction :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse (Maybe Bool)
-gcdvwrEndInteraction
-  = lens _gcdvwrEndInteraction
-      (\ s a -> s{_gcdvwrEndInteraction = a})
-
--- | Optional. The collection of output contexts. This value is passed
--- directly to \`QueryResult.output_contexts\`.
-gcdvwrOutputContexts :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse [GoogleCloudDialogflowV2beta1Context]
-gcdvwrOutputContexts
-  = lens _gcdvwrOutputContexts
-      (\ s a -> s{_gcdvwrOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Makes the platform immediately invoke another \`DetectIntent\`
--- call internally with the specified event as input.
-gcdvwrFollowupEventInput :: Lens' GoogleCloudDialogflowV2beta1WebhookResponse (Maybe GoogleCloudDialogflowV2beta1EventInput)
-gcdvwrFollowupEventInput
-  = lens _gcdvwrFollowupEventInput
-      (\ s a -> s{_gcdvwrFollowupEventInput = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1WebhookResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1WebhookResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1WebhookResponse' <$>
-                   (o .:? "fulfillmentMessages" .!= mempty) <*>
-                     (o .:? "payload")
-                     <*> (o .:? "fulfillmentText")
-                     <*> (o .:? "source")
-                     <*> (o .:? "endInteraction")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "followupEventInput"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1WebhookResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1WebhookResponse'{..}
-          = object
-              (catMaybes
-                 [("fulfillmentMessages" .=) <$>
-                    _gcdvwrFulfillmentMessages,
-                  ("payload" .=) <$> _gcdvwrPayload,
-                  ("fulfillmentText" .=) <$> _gcdvwrFulfillmentText,
-                  ("source" .=) <$> _gcdvwrSource,
-                  ("endInteraction" .=) <$> _gcdvwrEndInteraction,
-                  ("outputContexts" .=) <$> _gcdvwrOutputContexts,
-                  ("followupEventInput" .=) <$>
-                    _gcdvwrFollowupEventInput])
-
--- | Optional. The collection of parameters associated with the event.
---
--- /See:/ 'googleCloudDialogflowV2beta1EventInputParameters' smart constructor.
-newtype GoogleCloudDialogflowV2beta1EventInputParameters =
-  GoogleCloudDialogflowV2beta1EventInputParameters'
-    { _gcdveipAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1EventInputParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdveipAddtional'
-googleCloudDialogflowV2beta1EventInputParameters
-    :: HashMap Text JSONValue -- ^ 'gcdveipAddtional'
-    -> GoogleCloudDialogflowV2beta1EventInputParameters
-googleCloudDialogflowV2beta1EventInputParameters pGcdveipAddtional_ =
-  GoogleCloudDialogflowV2beta1EventInputParameters'
-    {_gcdveipAddtional = _Coerce # pGcdveipAddtional_}
-
-
--- | Properties of the object.
-gcdveipAddtional :: Lens' GoogleCloudDialogflowV2beta1EventInputParameters (HashMap Text JSONValue)
-gcdveipAddtional
-  = lens _gcdveipAddtional
-      (\ s a -> s{_gcdveipAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1EventInputParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1EventInputParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1EventInputParameters' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1EventInputParameters
-         where
-        toJSON = toJSON . _gcdveipAddtional
-
--- | Optional. This field is set to the value of the
--- \`QueryParameters.payload\` field passed in the request. Some
--- integrations that query a Dialogflow agent may provide additional
--- information in the payload. In particular for the Telephony Gateway this
--- field has the form:
---
--- > {
--- >  "telephony": {
--- >    "caller_id": "+18558363987"
--- >  }
--- > }
---
--- Note: The caller ID field (\`caller_id\`) will be redacted for Standard
--- Edition agents and populated with the caller ID in [E.164
--- format](https:\/\/en.wikipedia.org\/wiki\/E.164) for Enterprise Edition
--- agents.
---
--- /See:/ 'googleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload' smart constructor.
-newtype GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload =
-  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload'
-    { _gcdvodirpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvodirpAddtional'
-googleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-    :: HashMap Text JSONValue -- ^ 'gcdvodirpAddtional'
-    -> GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-googleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload pGcdvodirpAddtional_ =
-  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload'
-    {_gcdvodirpAddtional = _Coerce # pGcdvodirpAddtional_}
-
-
--- | Properties of the object.
-gcdvodirpAddtional :: Lens' GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload (HashMap Text JSONValue)
-gcdvodirpAddtional
-  = lens _gcdvodirpAddtional
-      (\ s a -> s{_gcdvodirpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload
-         where
-        toJSON = toJSON . _gcdvodirpAddtional
-
--- | The quick replies response message.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageQuickReplies' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageQuickReplies =
-  GoogleCloudDialogflowV2IntentMessageQuickReplies'
-    { _gcdvimqrTitle        :: !(Maybe Text)
-    , _gcdvimqrQuickReplies :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageQuickReplies' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimqrTitle'
---
--- * 'gcdvimqrQuickReplies'
-googleCloudDialogflowV2IntentMessageQuickReplies
-    :: GoogleCloudDialogflowV2IntentMessageQuickReplies
-googleCloudDialogflowV2IntentMessageQuickReplies =
-  GoogleCloudDialogflowV2IntentMessageQuickReplies'
-    {_gcdvimqrTitle = Nothing, _gcdvimqrQuickReplies = Nothing}
-
-
--- | Optional. The title of the collection of quick replies.
-gcdvimqrTitle :: Lens' GoogleCloudDialogflowV2IntentMessageQuickReplies (Maybe Text)
-gcdvimqrTitle
-  = lens _gcdvimqrTitle
-      (\ s a -> s{_gcdvimqrTitle = a})
-
--- | Optional. The collection of quick replies.
-gcdvimqrQuickReplies :: Lens' GoogleCloudDialogflowV2IntentMessageQuickReplies [Text]
-gcdvimqrQuickReplies
-  = lens _gcdvimqrQuickReplies
-      (\ s a -> s{_gcdvimqrQuickReplies = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageQuickReplies
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageQuickReplies"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageQuickReplies' <$>
-                   (o .:? "title") <*>
-                     (o .:? "quickReplies" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageQuickReplies
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageQuickReplies'{..}
-          = object
-              (catMaybes
-                 [("title" .=) <$> _gcdvimqrTitle,
-                  ("quickReplies" .=) <$> _gcdvimqrQuickReplies])
-
--- | Represents the result of querying a Knowledge base.
---
--- /See:/ 'googleCloudDialogflowV2beta1KnowledgeAnswers' smart constructor.
-newtype GoogleCloudDialogflowV2beta1KnowledgeAnswers =
-  GoogleCloudDialogflowV2beta1KnowledgeAnswers'
-    { _gcdvkaAnswers :: Maybe [GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAnswers' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvkaAnswers'
-googleCloudDialogflowV2beta1KnowledgeAnswers
-    :: GoogleCloudDialogflowV2beta1KnowledgeAnswers
-googleCloudDialogflowV2beta1KnowledgeAnswers =
-  GoogleCloudDialogflowV2beta1KnowledgeAnswers' {_gcdvkaAnswers = Nothing}
-
-
--- | A list of answers from Knowledge Connector.
-gcdvkaAnswers :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswers [GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer]
-gcdvkaAnswers
-  = lens _gcdvkaAnswers
-      (\ s a -> s{_gcdvkaAnswers = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1KnowledgeAnswers
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1KnowledgeAnswers"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1KnowledgeAnswers' <$>
-                   (o .:? "answers" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1KnowledgeAnswers
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1KnowledgeAnswers'{..}
-          = object
-              (catMaybes [("answers" .=) <$> _gcdvkaAnswers])
-
--- | Optional. Contains information about a button.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageCardButton' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageCardButton =
-  GoogleCloudDialogflowV2beta1IntentMessageCardButton'
-    { _gcdvimcbText     :: !(Maybe Text)
-    , _gcdvimcbPostback :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCardButton' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimcbText'
---
--- * 'gcdvimcbPostback'
-googleCloudDialogflowV2beta1IntentMessageCardButton
-    :: GoogleCloudDialogflowV2beta1IntentMessageCardButton
-googleCloudDialogflowV2beta1IntentMessageCardButton =
-  GoogleCloudDialogflowV2beta1IntentMessageCardButton'
-    {_gcdvimcbText = Nothing, _gcdvimcbPostback = Nothing}
-
-
--- | Optional. The text to show on the button.
-gcdvimcbText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCardButton (Maybe Text)
-gcdvimcbText
-  = lens _gcdvimcbText (\ s a -> s{_gcdvimcbText = a})
-
--- | Optional. The text to send back to the Dialogflow API or a URI to open.
-gcdvimcbPostback :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCardButton (Maybe Text)
-gcdvimcbPostback
-  = lens _gcdvimcbPostback
-      (\ s a -> s{_gcdvimcbPostback = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCardButton
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageCardButton"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageCardButton'
-                   <$> (o .:? "text") <*> (o .:? "postback"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCardButton
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageCardButton'{..}
-          = object
-              (catMaybes
-                 [("text" .=) <$> _gcdvimcbText,
-                  ("postback" .=) <$> _gcdvimcbPostback])
-
--- | Optional. The collection of parameters associated with this context.
--- Refer to [this
--- doc](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/intents-actions-parameters)
--- for syntax.
---
--- /See:/ 'googleCloudDialogflowV2beta1ContextParameters' smart constructor.
-newtype GoogleCloudDialogflowV2beta1ContextParameters =
-  GoogleCloudDialogflowV2beta1ContextParameters'
-    { _gcdvcpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1ContextParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvcpAddtional'
-googleCloudDialogflowV2beta1ContextParameters
-    :: HashMap Text JSONValue -- ^ 'gcdvcpAddtional'
-    -> GoogleCloudDialogflowV2beta1ContextParameters
-googleCloudDialogflowV2beta1ContextParameters pGcdvcpAddtional_ =
-  GoogleCloudDialogflowV2beta1ContextParameters'
-    {_gcdvcpAddtional = _Coerce # pGcdvcpAddtional_}
-
-
--- | Properties of the object.
-gcdvcpAddtional :: Lens' GoogleCloudDialogflowV2beta1ContextParameters (HashMap Text JSONValue)
-gcdvcpAddtional
-  = lens _gcdvcpAddtional
-      (\ s a -> s{_gcdvcpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1ContextParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1ContextParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1ContextParameters' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1ContextParameters
-         where
-        toJSON = toJSON . _gcdvcpAddtional
-
--- | Optional. This field can be used to pass custom data into the webhook
--- associated with the agent. Arbitrary JSON objects are supported.
---
--- /See:/ 'googleCloudDialogflowV2QueryParametersPayload' smart constructor.
-newtype GoogleCloudDialogflowV2QueryParametersPayload =
-  GoogleCloudDialogflowV2QueryParametersPayload'
-    { _gcdvqppAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryParametersPayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqppAddtional'
-googleCloudDialogflowV2QueryParametersPayload
-    :: HashMap Text JSONValue -- ^ 'gcdvqppAddtional'
-    -> GoogleCloudDialogflowV2QueryParametersPayload
-googleCloudDialogflowV2QueryParametersPayload pGcdvqppAddtional_ =
-  GoogleCloudDialogflowV2QueryParametersPayload'
-    {_gcdvqppAddtional = _Coerce # pGcdvqppAddtional_}
-
-
--- | Properties of the object.
-gcdvqppAddtional :: Lens' GoogleCloudDialogflowV2QueryParametersPayload (HashMap Text JSONValue)
-gcdvqppAddtional
-  = lens _gcdvqppAddtional
-      (\ s a -> s{_gcdvqppAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2QueryParametersPayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2QueryParametersPayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryParametersPayload' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2QueryParametersPayload
-         where
-        toJSON = toJSON . _gcdvqppAddtional
-
--- | The card for presenting a list of options to select from.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageListSelect' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageListSelect =
-  GoogleCloudDialogflowV2beta1IntentMessageListSelect'
-    { _gcdvimlsItems :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessageListSelectItem])
-    , _gcdvimlsTitle :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageListSelect' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimlsItems'
---
--- * 'gcdvimlsTitle'
-googleCloudDialogflowV2beta1IntentMessageListSelect
-    :: GoogleCloudDialogflowV2beta1IntentMessageListSelect
-googleCloudDialogflowV2beta1IntentMessageListSelect =
-  GoogleCloudDialogflowV2beta1IntentMessageListSelect'
-    {_gcdvimlsItems = Nothing, _gcdvimlsTitle = Nothing}
-
-
--- | Required. List items.
-gcdvimlsItems :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelect [GoogleCloudDialogflowV2beta1IntentMessageListSelectItem]
-gcdvimlsItems
-  = lens _gcdvimlsItems
-      (\ s a -> s{_gcdvimlsItems = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The overall title of the list.
-gcdvimlsTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelect (Maybe Text)
-gcdvimlsTitle
-  = lens _gcdvimlsTitle
-      (\ s a -> s{_gcdvimlsTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageListSelect
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageListSelect"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageListSelect'
-                   <$> (o .:? "items" .!= mempty) <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageListSelect
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageListSelect'{..}
-          = object
-              (catMaybes
-                 [("items" .=) <$> _gcdvimlsItems,
-                  ("title" .=) <$> _gcdvimlsTitle])
-
--- | Plays audio from a file in Telephony Gateway.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio'
-    { _gcdvimtpaAudioURI :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimtpaAudioURI'
-googleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-    :: GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-googleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio'
-    {_gcdvimtpaAudioURI = Nothing}
-
-
--- | Required. URI to a Google Cloud Storage object containing the audio to
--- play, e.g., \"gs:\/\/bucket\/object\". The object must contain a single
--- channel (mono) of linear PCM audio (2 bytes \/ sample) at 8kHz. This
--- object must be readable by the
--- \`service-\'gcp-sa-dialogflow.iam.gserviceaccount.com\` service account
--- where is the number of the Telephony Gateway project (usually the same
--- as the Dialogflow agent project). If the Google Cloud Storage bucket is
--- in the Telephony Gateway project, this permission is added by default
--- when enabling the Dialogflow V2 API. For audio from other sources,
--- consider using the \`TelephonySynthesizeSpeech\` message with SSML.
-gcdvimtpaAudioURI :: Lens' GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio (Maybe Text)
-gcdvimtpaAudioURI
-  = lens _gcdvimtpaAudioURI
-      (\ s a -> s{_gcdvimtpaAudioURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio'
-                   <$> (o .:? "audioUri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio'{..}
-          = object
-              (catMaybes [("audioUri" .=) <$> _gcdvimtpaAudioURI])
-
--- | Configures the types of sentiment analysis to perform.
---
--- /See:/ 'googleCloudDialogflowV2SentimentAnalysisRequestConfig' smart constructor.
-newtype GoogleCloudDialogflowV2SentimentAnalysisRequestConfig =
-  GoogleCloudDialogflowV2SentimentAnalysisRequestConfig'
-    { _gcdvsarcAnalyzeQueryTextSentiment :: Maybe Bool
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2SentimentAnalysisRequestConfig' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvsarcAnalyzeQueryTextSentiment'
-googleCloudDialogflowV2SentimentAnalysisRequestConfig
-    :: GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-googleCloudDialogflowV2SentimentAnalysisRequestConfig =
-  GoogleCloudDialogflowV2SentimentAnalysisRequestConfig'
-    {_gcdvsarcAnalyzeQueryTextSentiment = Nothing}
-
-
--- | Optional. Instructs the service to perform sentiment analysis on
--- \`query_text\`. If not provided, sentiment analysis is not performed on
--- \`query_text\`.
-gcdvsarcAnalyzeQueryTextSentiment :: Lens' GoogleCloudDialogflowV2SentimentAnalysisRequestConfig (Maybe Bool)
-gcdvsarcAnalyzeQueryTextSentiment
-  = lens _gcdvsarcAnalyzeQueryTextSentiment
-      (\ s a -> s{_gcdvsarcAnalyzeQueryTextSentiment = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2SentimentAnalysisRequestConfig"
-              (\ o ->
-                 GoogleCloudDialogflowV2SentimentAnalysisRequestConfig'
-                   <$> (o .:? "analyzeQueryTextSentiment"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2SentimentAnalysisRequestConfig
-         where
-        toJSON
-          GoogleCloudDialogflowV2SentimentAnalysisRequestConfig'{..}
-          = object
-              (catMaybes
-                 [("analyzeQueryTextSentiment" .=) <$>
-                    _gcdvsarcAnalyzeQueryTextSentiment])
-
--- | Represents a part of a training phrase.
---
--- /See:/ 'googleCloudDialogflowV2IntentTrainingPhrasePart' smart constructor.
-data GoogleCloudDialogflowV2IntentTrainingPhrasePart =
-  GoogleCloudDialogflowV2IntentTrainingPhrasePart'
-    { _gcdvitppText        :: !(Maybe Text)
-    , _gcdvitppUserDefined :: !(Maybe Bool)
-    , _gcdvitppEntityType  :: !(Maybe Text)
-    , _gcdvitppAlias       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentTrainingPhrasePart' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvitppText'
---
--- * 'gcdvitppUserDefined'
---
--- * 'gcdvitppEntityType'
---
--- * 'gcdvitppAlias'
-googleCloudDialogflowV2IntentTrainingPhrasePart
-    :: GoogleCloudDialogflowV2IntentTrainingPhrasePart
-googleCloudDialogflowV2IntentTrainingPhrasePart =
-  GoogleCloudDialogflowV2IntentTrainingPhrasePart'
-    { _gcdvitppText = Nothing
-    , _gcdvitppUserDefined = Nothing
-    , _gcdvitppEntityType = Nothing
-    , _gcdvitppAlias = Nothing
-    }
-
-
--- | Required. The text for this part.
-gcdvitppText :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrasePart (Maybe Text)
-gcdvitppText
-  = lens _gcdvitppText (\ s a -> s{_gcdvitppText = a})
-
--- | Optional. Indicates whether the text was manually annotated. This field
--- is set to true when the Dialogflow Console is used to manually annotate
--- the part. When creating an annotated part with the API, you must set
--- this to true.
-gcdvitppUserDefined :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrasePart (Maybe Bool)
-gcdvitppUserDefined
-  = lens _gcdvitppUserDefined
-      (\ s a -> s{_gcdvitppUserDefined = a})
-
--- | Optional. The entity type name prefixed with \`\'\`. This field is
--- required for annotated parts of the training phrase.
-gcdvitppEntityType :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrasePart (Maybe Text)
-gcdvitppEntityType
-  = lens _gcdvitppEntityType
-      (\ s a -> s{_gcdvitppEntityType = a})
-
--- | Optional. The parameter name for the value extracted from the annotated
--- part of the example. This field is required for annotated parts of the
--- training phrase.
-gcdvitppAlias :: Lens' GoogleCloudDialogflowV2IntentTrainingPhrasePart (Maybe Text)
-gcdvitppAlias
-  = lens _gcdvitppAlias
-      (\ s a -> s{_gcdvitppAlias = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentTrainingPhrasePart
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentTrainingPhrasePart"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentTrainingPhrasePart' <$>
-                   (o .:? "text") <*> (o .:? "userDefined") <*>
-                     (o .:? "entityType")
-                     <*> (o .:? "alias"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentTrainingPhrasePart
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentTrainingPhrasePart'{..}
-          = object
-              (catMaybes
-                 [("text" .=) <$> _gcdvitppText,
-                  ("userDefined" .=) <$> _gcdvitppUserDefined,
-                  ("entityType" .=) <$> _gcdvitppEntityType,
-                  ("alias" .=) <$> _gcdvitppAlias])
-
--- | A generic empty message that you can re-use to avoid defining duplicated
--- empty messages in your APIs. A typical example is to use it as the
--- request or the response type of an API method. For instance: service Foo
--- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The
--- JSON representation for \`Empty\` is empty JSON object \`{}\`.
---
--- /See:/ 'googleProtobufEmpty' smart constructor.
-data GoogleProtobufEmpty =
-  GoogleProtobufEmpty'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleProtobufEmpty' with the minimum fields required to make a request.
---
-googleProtobufEmpty
-    :: GoogleProtobufEmpty
-googleProtobufEmpty = GoogleProtobufEmpty'
-
-
-instance FromJSON GoogleProtobufEmpty where
-        parseJSON
-          = withObject "GoogleProtobufEmpty"
-              (\ o -> pure GoogleProtobufEmpty')
-
-instance ToJSON GoogleProtobufEmpty where
-        toJSON = const emptyObject
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_payload\`. See the related
--- \`fulfillment_messages[i].payload field\`, which may be used as an
--- alternative to this field. This field can be used for Actions on Google
--- responses. It should have a structure similar to the JSON message shown
--- here. For more information, see [Actions on Google Webhook
--- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
---
--- > {
--- >   "google": {
--- >     "expectUserResponse": true,
--- >     "richResponse": {
--- >       "items": [
--- >         {
--- >           "simpleResponse": {
--- >             "textToSpeech": "this is a simple response"
--- >           }
--- >         }
--- >       ]
--- >     }
--- >   }
--- > }
---
--- /See:/ 'googleCloudDialogflowV2beta1WebhookResponsePayload' smart constructor.
-newtype GoogleCloudDialogflowV2beta1WebhookResponsePayload =
-  GoogleCloudDialogflowV2beta1WebhookResponsePayload'
-    { _gcdvwrpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookResponsePayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvwrpAddtional'
-googleCloudDialogflowV2beta1WebhookResponsePayload
-    :: HashMap Text JSONValue -- ^ 'gcdvwrpAddtional'
-    -> GoogleCloudDialogflowV2beta1WebhookResponsePayload
-googleCloudDialogflowV2beta1WebhookResponsePayload pGcdvwrpAddtional_ =
-  GoogleCloudDialogflowV2beta1WebhookResponsePayload'
-    {_gcdvwrpAddtional = _Coerce # pGcdvwrpAddtional_}
-
-
--- | Properties of the object.
-gcdvwrpAddtional :: Lens' GoogleCloudDialogflowV2beta1WebhookResponsePayload (HashMap Text JSONValue)
-gcdvwrpAddtional
-  = lens _gcdvwrpAddtional
-      (\ s a -> s{_gcdvwrpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1WebhookResponsePayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1WebhookResponsePayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1WebhookResponsePayload'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1WebhookResponsePayload
-         where
-        toJSON = toJSON . _gcdvwrpAddtional
-
--- | The quick replies response message.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageQuickReplies' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageQuickReplies =
-  GoogleCloudDialogflowV2beta1IntentMessageQuickReplies'
-    { _gcdvimqrsTitle        :: !(Maybe Text)
-    , _gcdvimqrsQuickReplies :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageQuickReplies' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimqrsTitle'
---
--- * 'gcdvimqrsQuickReplies'
-googleCloudDialogflowV2beta1IntentMessageQuickReplies
-    :: GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-googleCloudDialogflowV2beta1IntentMessageQuickReplies =
-  GoogleCloudDialogflowV2beta1IntentMessageQuickReplies'
-    {_gcdvimqrsTitle = Nothing, _gcdvimqrsQuickReplies = Nothing}
-
-
--- | Optional. The title of the collection of quick replies.
-gcdvimqrsTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageQuickReplies (Maybe Text)
-gcdvimqrsTitle
-  = lens _gcdvimqrsTitle
-      (\ s a -> s{_gcdvimqrsTitle = a})
-
--- | Optional. The collection of quick replies.
-gcdvimqrsQuickReplies :: Lens' GoogleCloudDialogflowV2beta1IntentMessageQuickReplies [Text]
-gcdvimqrsQuickReplies
-  = lens _gcdvimqrsQuickReplies
-      (\ s a -> s{_gcdvimqrsQuickReplies = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageQuickReplies'
-                   <$>
-                   (o .:? "title") <*>
-                     (o .:? "quickReplies" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageQuickReplies'{..}
-          = object
-              (catMaybes
-                 [("title" .=) <$> _gcdvimqrsTitle,
-                  ("quickReplies" .=) <$> _gcdvimqrsQuickReplies])
-
--- | The suggestion chip message that allows the user to jump out to the app
--- or website associated with this agent.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageLinkOutSuggestion' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion =
-  GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion'
-    { _gcdvimlosURI             :: !(Maybe Text)
-    , _gcdvimlosDestinationName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimlosURI'
---
--- * 'gcdvimlosDestinationName'
-googleCloudDialogflowV2IntentMessageLinkOutSuggestion
-    :: GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-googleCloudDialogflowV2IntentMessageLinkOutSuggestion =
-  GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion'
-    {_gcdvimlosURI = Nothing, _gcdvimlosDestinationName = Nothing}
-
-
--- | Required. The URI of the app or site to open when the user taps the
--- suggestion chip.
-gcdvimlosURI :: Lens' GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion (Maybe Text)
-gcdvimlosURI
-  = lens _gcdvimlosURI (\ s a -> s{_gcdvimlosURI = a})
-
--- | Required. The name of the app or site this chip is linking to.
-gcdvimlosDestinationName :: Lens' GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion (Maybe Text)
-gcdvimlosDestinationName
-  = lens _gcdvimlosDestinationName
-      (\ s a -> s{_gcdvimlosDestinationName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion'
-                   <$> (o .:? "uri") <*> (o .:? "destinationName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion'{..}
-          = object
-              (catMaybes
-                 [("uri" .=) <$> _gcdvimlosURI,
-                  ("destinationName" .=) <$>
-                    _gcdvimlosDestinationName])
-
--- | The request message for Agents.ImportAgent.
---
--- /See:/ 'googleCloudDialogflowV2ImportAgentRequest' smart constructor.
-data GoogleCloudDialogflowV2ImportAgentRequest =
-  GoogleCloudDialogflowV2ImportAgentRequest'
-    { _gcdviarAgentURI     :: !(Maybe Text)
-    , _gcdviarAgentContent :: !(Maybe Bytes)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ImportAgentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdviarAgentURI'
---
--- * 'gcdviarAgentContent'
-googleCloudDialogflowV2ImportAgentRequest
-    :: GoogleCloudDialogflowV2ImportAgentRequest
-googleCloudDialogflowV2ImportAgentRequest =
-  GoogleCloudDialogflowV2ImportAgentRequest'
-    {_gcdviarAgentURI = Nothing, _gcdviarAgentContent = Nothing}
-
-
--- | The URI to a Google Cloud Storage file containing the agent to import.
--- Note: The URI must start with \"gs:\/\/\".
-gcdviarAgentURI :: Lens' GoogleCloudDialogflowV2ImportAgentRequest (Maybe Text)
-gcdviarAgentURI
-  = lens _gcdviarAgentURI
-      (\ s a -> s{_gcdviarAgentURI = a})
-
--- | The agent to import. Example for how to import an agent via the command
--- line:
---
--- > curl \
--- >   'https://dialogflow.googleapis.com/v2/projects/<project_name>/agent:import\
--- >    -X POST \
--- >    -H 'Authorization: Bearer '$(gcloud auth application-default
--- >    print-access-token) \
--- >    -H 'Accept: application/json' \
--- >    -H 'Content-Type: application/json' \
--- >    --compressed \
--- >    --data-binary "{
--- >       'agentContent': '$(cat <agent zip file> | base64 -w 0)'
--- >    }"
-gcdviarAgentContent :: Lens' GoogleCloudDialogflowV2ImportAgentRequest (Maybe ByteString)
-gcdviarAgentContent
-  = lens _gcdviarAgentContent
-      (\ s a -> s{_gcdviarAgentContent = a})
-      . mapping _Bytes
-
-instance FromJSON
-           GoogleCloudDialogflowV2ImportAgentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ImportAgentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2ImportAgentRequest' <$>
-                   (o .:? "agentUri") <*> (o .:? "agentContent"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ImportAgentRequest
-         where
-        toJSON GoogleCloudDialogflowV2ImportAgentRequest'{..}
-          = object
-              (catMaybes
-                 [("agentUri" .=) <$> _gcdviarAgentURI,
-                  ("agentContent" .=) <$> _gcdviarAgentContent])
-
---
--- /See:/ 'googleRpcStatusDetailsItem' smart constructor.
-newtype GoogleRpcStatusDetailsItem =
-  GoogleRpcStatusDetailsItem'
-    { _grsdiAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleRpcStatusDetailsItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'grsdiAddtional'
-googleRpcStatusDetailsItem
-    :: HashMap Text JSONValue -- ^ 'grsdiAddtional'
-    -> GoogleRpcStatusDetailsItem
-googleRpcStatusDetailsItem pGrsdiAddtional_ =
-  GoogleRpcStatusDetailsItem' {_grsdiAddtional = _Coerce # pGrsdiAddtional_}
-
-
--- | Properties of the object. Contains field \'type with type URL.
-grsdiAddtional :: Lens' GoogleRpcStatusDetailsItem (HashMap Text JSONValue)
-grsdiAddtional
-  = lens _grsdiAddtional
-      (\ s a -> s{_grsdiAddtional = a})
-      . _Coerce
-
-instance FromJSON GoogleRpcStatusDetailsItem where
-        parseJSON
-          = withObject "GoogleRpcStatusDetailsItem"
-              (\ o ->
-                 GoogleRpcStatusDetailsItem' <$> (parseJSONObject o))
-
-instance ToJSON GoogleRpcStatusDetailsItem where
-        toJSON = toJSON . _grsdiAddtional
-
--- | The response message for EntityTypes.BatchUpdateEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse' smart constructor.
-newtype GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse =
-  GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse'
-    { _gcdvbuetrEntityTypes :: Maybe [GoogleCloudDialogflowV2beta1EntityType]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbuetrEntityTypes'
-googleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-    :: GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-googleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse =
-  GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse'
-    {_gcdvbuetrEntityTypes = Nothing}
-
-
--- | The collection of updated or created entity types.
-gcdvbuetrEntityTypes :: Lens' GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse [GoogleCloudDialogflowV2beta1EntityType]
-gcdvbuetrEntityTypes
-  = lens _gcdvbuetrEntityTypes
-      (\ s a -> s{_gcdvbuetrEntityTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse'
-                   <$> (o .:? "entityTypes" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse'{..}
-          = object
-              (catMaybes
-                 [("entityTypes" .=) <$> _gcdvbuetrEntityTypes])
-
--- | Optional. The collection of parameters associated with this context.
--- Refer to [this
--- doc](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/intents-actions-parameters)
--- for syntax.
---
--- /See:/ 'googleCloudDialogflowV2ContextParameters' smart constructor.
-newtype GoogleCloudDialogflowV2ContextParameters =
-  GoogleCloudDialogflowV2ContextParameters'
-    { _gAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ContextParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gAddtional'
-googleCloudDialogflowV2ContextParameters
-    :: HashMap Text JSONValue -- ^ 'gAddtional'
-    -> GoogleCloudDialogflowV2ContextParameters
-googleCloudDialogflowV2ContextParameters pGAddtional_ =
-  GoogleCloudDialogflowV2ContextParameters'
-    {_gAddtional = _Coerce # pGAddtional_}
-
-
--- | Properties of the object.
-gAddtional :: Lens' GoogleCloudDialogflowV2ContextParameters (HashMap Text JSONValue)
-gAddtional
-  = lens _gAddtional (\ s a -> s{_gAddtional = a}) .
-      _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2ContextParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ContextParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2ContextParameters' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ContextParameters
-         where
-        toJSON = toJSON . _gAddtional
-
--- | Optional. Contains information about a button.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageCardButton' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageCardButton =
-  GoogleCloudDialogflowV2IntentMessageCardButton'
-    { _gText     :: !(Maybe Text)
-    , _gPostback :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCardButton' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gText'
---
--- * 'gPostback'
-googleCloudDialogflowV2IntentMessageCardButton
-    :: GoogleCloudDialogflowV2IntentMessageCardButton
-googleCloudDialogflowV2IntentMessageCardButton =
-  GoogleCloudDialogflowV2IntentMessageCardButton'
-    {_gText = Nothing, _gPostback = Nothing}
-
-
--- | Optional. The text to show on the button.
-gText :: Lens' GoogleCloudDialogflowV2IntentMessageCardButton (Maybe Text)
-gText = lens _gText (\ s a -> s{_gText = a})
-
--- | Optional. The text to send back to the Dialogflow API or a URI to open.
-gPostback :: Lens' GoogleCloudDialogflowV2IntentMessageCardButton (Maybe Text)
-gPostback
-  = lens _gPostback (\ s a -> s{_gPostback = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageCardButton
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageCardButton"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageCardButton' <$>
-                   (o .:? "text") <*> (o .:? "postback"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageCardButton
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageCardButton'{..}
-          = object
-              (catMaybes
-                 [("text" .=) <$> _gText,
-                  ("postback" .=) <$> _gPostback])
-
--- | The card for presenting a list of options to select from.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageListSelect' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageListSelect =
-  GoogleCloudDialogflowV2IntentMessageListSelect'
-    { _gooItems :: !(Maybe [GoogleCloudDialogflowV2IntentMessageListSelectItem])
-    , _gooTitle :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageListSelect' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooItems'
---
--- * 'gooTitle'
-googleCloudDialogflowV2IntentMessageListSelect
-    :: GoogleCloudDialogflowV2IntentMessageListSelect
-googleCloudDialogflowV2IntentMessageListSelect =
-  GoogleCloudDialogflowV2IntentMessageListSelect'
-    {_gooItems = Nothing, _gooTitle = Nothing}
-
-
--- | Required. List items.
-gooItems :: Lens' GoogleCloudDialogflowV2IntentMessageListSelect [GoogleCloudDialogflowV2IntentMessageListSelectItem]
-gooItems
-  = lens _gooItems (\ s a -> s{_gooItems = a}) .
-      _Default
-      . _Coerce
-
--- | Optional. The overall title of the list.
-gooTitle :: Lens' GoogleCloudDialogflowV2IntentMessageListSelect (Maybe Text)
-gooTitle = lens _gooTitle (\ s a -> s{_gooTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageListSelect
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageListSelect"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageListSelect' <$>
-                   (o .:? "items" .!= mempty) <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageListSelect
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageListSelect'{..}
-          = object
-              (catMaybes
-                 [("items" .=) <$> _gooItems,
-                  ("title" .=) <$> _gooTitle])
-
--- | The card response message.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageCard' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageCard =
-  GoogleCloudDialogflowV2beta1IntentMessageCard'
-    { _gcdvimcButtons  :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessageCardButton])
-    , _gcdvimcImageURI :: !(Maybe Text)
-    , _gcdvimcSubtitle :: !(Maybe Text)
-    , _gcdvimcTitle    :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCard' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimcButtons'
---
--- * 'gcdvimcImageURI'
---
--- * 'gcdvimcSubtitle'
---
--- * 'gcdvimcTitle'
-googleCloudDialogflowV2beta1IntentMessageCard
-    :: GoogleCloudDialogflowV2beta1IntentMessageCard
-googleCloudDialogflowV2beta1IntentMessageCard =
-  GoogleCloudDialogflowV2beta1IntentMessageCard'
-    { _gcdvimcButtons = Nothing
-    , _gcdvimcImageURI = Nothing
-    , _gcdvimcSubtitle = Nothing
-    , _gcdvimcTitle = Nothing
-    }
-
-
--- | Optional. The collection of card buttons.
-gcdvimcButtons :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCard [GoogleCloudDialogflowV2beta1IntentMessageCardButton]
-gcdvimcButtons
-  = lens _gcdvimcButtons
-      (\ s a -> s{_gcdvimcButtons = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The public URI to an image file for the card.
-gcdvimcImageURI :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCard (Maybe Text)
-gcdvimcImageURI
-  = lens _gcdvimcImageURI
-      (\ s a -> s{_gcdvimcImageURI = a})
-
--- | Optional. The subtitle of the card.
-gcdvimcSubtitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCard (Maybe Text)
-gcdvimcSubtitle
-  = lens _gcdvimcSubtitle
-      (\ s a -> s{_gcdvimcSubtitle = a})
-
--- | Optional. The title of the card.
-gcdvimcTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCard (Maybe Text)
-gcdvimcTitle
-  = lens _gcdvimcTitle (\ s a -> s{_gcdvimcTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCard
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageCard"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageCard' <$>
-                   (o .:? "buttons" .!= mempty) <*> (o .:? "imageUri")
-                     <*> (o .:? "subtitle")
-                     <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCard
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageCard'{..}
-          = object
-              (catMaybes
-                 [("buttons" .=) <$> _gcdvimcButtons,
-                  ("imageUri" .=) <$> _gcdvimcImageURI,
-                  ("subtitle" .=) <$> _gcdvimcSubtitle,
-                  ("title" .=) <$> _gcdvimcTitle])
-
--- | The request message for Agents.RestoreAgent.
---
--- /See:/ 'googleCloudDialogflowV2RestoreAgentRequest' smart constructor.
-data GoogleCloudDialogflowV2RestoreAgentRequest =
-  GoogleCloudDialogflowV2RestoreAgentRequest'
-    { _gcdvrarAgentURI     :: !(Maybe Text)
-    , _gcdvrarAgentContent :: !(Maybe Bytes)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2RestoreAgentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvrarAgentURI'
---
--- * 'gcdvrarAgentContent'
-googleCloudDialogflowV2RestoreAgentRequest
-    :: GoogleCloudDialogflowV2RestoreAgentRequest
-googleCloudDialogflowV2RestoreAgentRequest =
-  GoogleCloudDialogflowV2RestoreAgentRequest'
-    {_gcdvrarAgentURI = Nothing, _gcdvrarAgentContent = Nothing}
-
-
--- | The URI to a Google Cloud Storage file containing the agent to restore.
--- Note: The URI must start with \"gs:\/\/\".
-gcdvrarAgentURI :: Lens' GoogleCloudDialogflowV2RestoreAgentRequest (Maybe Text)
-gcdvrarAgentURI
-  = lens _gcdvrarAgentURI
-      (\ s a -> s{_gcdvrarAgentURI = a})
-
--- | The agent to restore. Example for how to restore an agent via the
--- command line:
---
--- > curl \
--- >   'https://dialogflow.googleapis.com/v2/projects/<project_name>/agent:restore\
--- >    -X POST \
--- >    -H 'Authorization: Bearer '$(gcloud auth application-default
--- >    print-access-token) \
--- >    -H 'Accept: application/json' \
--- >    -H 'Content-Type: application/json' \
--- >    --compressed \
--- >    --data-binary "{
--- >        'agentContent': '$(cat <agent zip file> | base64 -w 0)'
--- >    }"
-gcdvrarAgentContent :: Lens' GoogleCloudDialogflowV2RestoreAgentRequest (Maybe ByteString)
-gcdvrarAgentContent
-  = lens _gcdvrarAgentContent
-      (\ s a -> s{_gcdvrarAgentContent = a})
-      . mapping _Bytes
-
-instance FromJSON
-           GoogleCloudDialogflowV2RestoreAgentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2RestoreAgentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2RestoreAgentRequest' <$>
-                   (o .:? "agentUri") <*> (o .:? "agentContent"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2RestoreAgentRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2RestoreAgentRequest'{..}
-          = object
-              (catMaybes
-                 [("agentUri" .=) <$> _gcdvrarAgentURI,
-                  ("agentContent" .=) <$> _gcdvrarAgentContent])
-
--- | The collection of suggestions.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageSuggestions' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageSuggestions =
-  GoogleCloudDialogflowV2IntentMessageSuggestions'
-    { _gSuggestions :: Maybe [GoogleCloudDialogflowV2IntentMessageSuggestion]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSuggestions' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gSuggestions'
-googleCloudDialogflowV2IntentMessageSuggestions
-    :: GoogleCloudDialogflowV2IntentMessageSuggestions
-googleCloudDialogflowV2IntentMessageSuggestions =
-  GoogleCloudDialogflowV2IntentMessageSuggestions' {_gSuggestions = Nothing}
-
-
--- | Required. The list of suggested replies.
-gSuggestions :: Lens' GoogleCloudDialogflowV2IntentMessageSuggestions [GoogleCloudDialogflowV2IntentMessageSuggestion]
-gSuggestions
-  = lens _gSuggestions (\ s a -> s{_gSuggestions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageSuggestions
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageSuggestions"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageSuggestions' <$>
-                   (o .:? "suggestions" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageSuggestions
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageSuggestions'{..}
-          = object
-              (catMaybes [("suggestions" .=) <$> _gSuggestions])
-
--- | Opens the given URI.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction'
-    { _gcdvimbcbouaURI :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbcbouaURI'
-googleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-    :: GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-googleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction'
-    {_gcdvimbcbouaURI = Nothing}
-
-
--- | Required. The HTTP or HTTPS scheme URI.
-gcdvimbcbouaURI :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction (Maybe Text)
-gcdvimbcbouaURI
-  = lens _gcdvimbcbouaURI
-      (\ s a -> s{_gcdvimbcbouaURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction'
-                   <$> (o .:? "uri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenURIAction'{..}
-          = object
-              (catMaybes [("uri" .=) <$> _gcdvimbcbouaURI])
-
--- | Represents the parameters of the conversational query.
---
--- /See:/ 'googleCloudDialogflowV2QueryParameters' smart constructor.
-data GoogleCloudDialogflowV2QueryParameters =
-  GoogleCloudDialogflowV2QueryParameters'
-    { _gcdvqpContexts                       :: !(Maybe [GoogleCloudDialogflowV2Context])
-    , _gcdvqpSentimentAnalysisRequestConfig :: !(Maybe GoogleCloudDialogflowV2SentimentAnalysisRequestConfig)
-    , _gcdvqpPayload                        :: !(Maybe GoogleCloudDialogflowV2QueryParametersPayload)
-    , _gcdvqpGeoLocation                    :: !(Maybe GoogleTypeLatLng)
-    , _gcdvqpTimeZone                       :: !(Maybe Text)
-    , _gcdvqpSessionEntityTypes             :: !(Maybe [GoogleCloudDialogflowV2SessionEntityType])
-    , _gcdvqpResetContexts                  :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqpContexts'
---
--- * 'gcdvqpSentimentAnalysisRequestConfig'
---
--- * 'gcdvqpPayload'
---
--- * 'gcdvqpGeoLocation'
---
--- * 'gcdvqpTimeZone'
---
--- * 'gcdvqpSessionEntityTypes'
---
--- * 'gcdvqpResetContexts'
-googleCloudDialogflowV2QueryParameters
-    :: GoogleCloudDialogflowV2QueryParameters
-googleCloudDialogflowV2QueryParameters =
-  GoogleCloudDialogflowV2QueryParameters'
-    { _gcdvqpContexts = Nothing
-    , _gcdvqpSentimentAnalysisRequestConfig = Nothing
-    , _gcdvqpPayload = Nothing
-    , _gcdvqpGeoLocation = Nothing
-    , _gcdvqpTimeZone = Nothing
-    , _gcdvqpSessionEntityTypes = Nothing
-    , _gcdvqpResetContexts = Nothing
-    }
-
-
--- | Optional. The collection of contexts to be activated before this query
--- is executed.
-gcdvqpContexts :: Lens' GoogleCloudDialogflowV2QueryParameters [GoogleCloudDialogflowV2Context]
-gcdvqpContexts
-  = lens _gcdvqpContexts
-      (\ s a -> s{_gcdvqpContexts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Configures the type of sentiment analysis to perform. If not
--- provided, sentiment analysis is not performed.
-gcdvqpSentimentAnalysisRequestConfig :: Lens' GoogleCloudDialogflowV2QueryParameters (Maybe GoogleCloudDialogflowV2SentimentAnalysisRequestConfig)
-gcdvqpSentimentAnalysisRequestConfig
-  = lens _gcdvqpSentimentAnalysisRequestConfig
-      (\ s a ->
-         s{_gcdvqpSentimentAnalysisRequestConfig = a})
-
--- | Optional. This field can be used to pass custom data into the webhook
--- associated with the agent. Arbitrary JSON objects are supported.
-gcdvqpPayload :: Lens' GoogleCloudDialogflowV2QueryParameters (Maybe GoogleCloudDialogflowV2QueryParametersPayload)
-gcdvqpPayload
-  = lens _gcdvqpPayload
-      (\ s a -> s{_gcdvqpPayload = a})
-
--- | Optional. The geo location of this conversational query.
-gcdvqpGeoLocation :: Lens' GoogleCloudDialogflowV2QueryParameters (Maybe GoogleTypeLatLng)
-gcdvqpGeoLocation
-  = lens _gcdvqpGeoLocation
-      (\ s a -> s{_gcdvqpGeoLocation = a})
-
--- | Optional. The time zone of this conversational query from the [time zone
--- database](https:\/\/www.iana.org\/time-zones), e.g., America\/New_York,
--- Europe\/Paris. If not provided, the time zone specified in agent
--- settings is used.
-gcdvqpTimeZone :: Lens' GoogleCloudDialogflowV2QueryParameters (Maybe Text)
-gcdvqpTimeZone
-  = lens _gcdvqpTimeZone
-      (\ s a -> s{_gcdvqpTimeZone = a})
-
--- | Optional. Additional session entity types to replace or extend developer
--- entity types with. The entity synonyms apply to all languages and
--- persist for the session of this query.
-gcdvqpSessionEntityTypes :: Lens' GoogleCloudDialogflowV2QueryParameters [GoogleCloudDialogflowV2SessionEntityType]
-gcdvqpSessionEntityTypes
-  = lens _gcdvqpSessionEntityTypes
-      (\ s a -> s{_gcdvqpSessionEntityTypes = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Specifies whether to delete all contexts in the current
--- session before the new ones are activated.
-gcdvqpResetContexts :: Lens' GoogleCloudDialogflowV2QueryParameters (Maybe Bool)
-gcdvqpResetContexts
-  = lens _gcdvqpResetContexts
-      (\ s a -> s{_gcdvqpResetContexts = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2QueryParameters
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2QueryParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryParameters' <$>
-                   (o .:? "contexts" .!= mempty) <*>
-                     (o .:? "sentimentAnalysisRequestConfig")
-                     <*> (o .:? "payload")
-                     <*> (o .:? "geoLocation")
-                     <*> (o .:? "timeZone")
-                     <*> (o .:? "sessionEntityTypes" .!= mempty)
-                     <*> (o .:? "resetContexts"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2QueryParameters
-         where
-        toJSON GoogleCloudDialogflowV2QueryParameters'{..}
-          = object
-              (catMaybes
-                 [("contexts" .=) <$> _gcdvqpContexts,
-                  ("sentimentAnalysisRequestConfig" .=) <$>
-                    _gcdvqpSentimentAnalysisRequestConfig,
-                  ("payload" .=) <$> _gcdvqpPayload,
-                  ("geoLocation" .=) <$> _gcdvqpGeoLocation,
-                  ("timeZone" .=) <$> _gcdvqpTimeZone,
-                  ("sessionEntityTypes" .=) <$>
-                    _gcdvqpSessionEntityTypes,
-                  ("resetContexts" .=) <$> _gcdvqpResetContexts])
-
--- | The suggestion chip message that the user can tap to quickly post a
--- reply to the conversation.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageSuggestion' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageSuggestion =
-  GoogleCloudDialogflowV2beta1IntentMessageSuggestion'
-    { _gcdvimsTitle :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSuggestion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimsTitle'
-googleCloudDialogflowV2beta1IntentMessageSuggestion
-    :: GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-googleCloudDialogflowV2beta1IntentMessageSuggestion =
-  GoogleCloudDialogflowV2beta1IntentMessageSuggestion' {_gcdvimsTitle = Nothing}
-
-
--- | Required. The text shown the in the suggestion chip.
-gcdvimsTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSuggestion (Maybe Text)
-gcdvimsTitle
-  = lens _gcdvimsTitle (\ s a -> s{_gcdvimsTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageSuggestion"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageSuggestion'
-                   <$> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSuggestion
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageSuggestion'{..}
-          = object (catMaybes [("title" .=) <$> _gcdvimsTitle])
-
--- | Represents the contents of the original request that was passed to the
--- \`[Streaming]DetectIntent\` call.
---
--- /See:/ 'googleCloudDialogflowV2beta1OriginalDetectIntentRequest' smart constructor.
-data GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest =
-  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest'
-    { _gcdvodirPayload :: !(Maybe GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload)
-    , _gcdvodirVersion :: !(Maybe Text)
-    , _gcdvodirSource  :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvodirPayload'
---
--- * 'gcdvodirVersion'
---
--- * 'gcdvodirSource'
-googleCloudDialogflowV2beta1OriginalDetectIntentRequest
-    :: GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-googleCloudDialogflowV2beta1OriginalDetectIntentRequest =
-  GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest'
-    { _gcdvodirPayload = Nothing
-    , _gcdvodirVersion = Nothing
-    , _gcdvodirSource = Nothing
-    }
-
-
--- | Optional. This field is set to the value of the
--- \`QueryParameters.payload\` field passed in the request. Some
--- integrations that query a Dialogflow agent may provide additional
--- information in the payload. In particular for the Telephony Gateway this
--- field has the form:
---
--- > {
--- >  "telephony": {
--- >    "caller_id": "+18558363987"
--- >  }
--- > }
---
--- Note: The caller ID field (\`caller_id\`) will be redacted for Standard
--- Edition agents and populated with the caller ID in [E.164
--- format](https:\/\/en.wikipedia.org\/wiki\/E.164) for Enterprise Edition
--- agents.
-gcdvodirPayload :: Lens' GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (Maybe GoogleCloudDialogflowV2beta1OriginalDetectIntentRequestPayload)
-gcdvodirPayload
-  = lens _gcdvodirPayload
-      (\ s a -> s{_gcdvodirPayload = a})
-
--- | Optional. The version of the protocol used for this request. This field
--- is AoG-specific.
-gcdvodirVersion :: Lens' GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (Maybe Text)
-gcdvodirVersion
-  = lens _gcdvodirVersion
-      (\ s a -> s{_gcdvodirVersion = a})
-
--- | The source of this request, e.g., \`google\`, \`facebook\`, \`slack\`.
--- It is set by Dialogflow-owned servers.
-gcdvodirSource :: Lens' GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest (Maybe Text)
-gcdvodirSource
-  = lens _gcdvodirSource
-      (\ s a -> s{_gcdvodirSource = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest'
-                   <$>
-                   (o .:? "payload") <*> (o .:? "version") <*>
-                     (o .:? "source"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest'{..}
-          = object
-              (catMaybes
-                 [("payload" .=) <$> _gcdvodirPayload,
-                  ("version" .=) <$> _gcdvodirVersion,
-                  ("source" .=) <$> _gcdvodirSource])
-
--- | Optional. The collection of parameters associated with the event.
---
--- /See:/ 'googleCloudDialogflowV2EventInputParameters' smart constructor.
-newtype GoogleCloudDialogflowV2EventInputParameters =
-  GoogleCloudDialogflowV2EventInputParameters'
-    { _gcdveipsAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2EventInputParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdveipsAddtional'
-googleCloudDialogflowV2EventInputParameters
-    :: HashMap Text JSONValue -- ^ 'gcdveipsAddtional'
-    -> GoogleCloudDialogflowV2EventInputParameters
-googleCloudDialogflowV2EventInputParameters pGcdveipsAddtional_ =
-  GoogleCloudDialogflowV2EventInputParameters'
-    {_gcdveipsAddtional = _Coerce # pGcdveipsAddtional_}
-
-
--- | Properties of the object.
-gcdveipsAddtional :: Lens' GoogleCloudDialogflowV2EventInputParameters (HashMap Text JSONValue)
-gcdveipsAddtional
-  = lens _gcdveipsAddtional
-      (\ s a -> s{_gcdveipsAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2EventInputParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2EventInputParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2EventInputParameters' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2EventInputParameters
-         where
-        toJSON = toJSON . _gcdveipsAddtional
-
--- | The message returned from the DetectIntent method.
---
--- /See:/ 'googleCloudDialogflowV2DetectIntentResponse' smart constructor.
-data GoogleCloudDialogflowV2DetectIntentResponse =
-  GoogleCloudDialogflowV2DetectIntentResponse'
-    { _gcdvdirOutputAudioConfig :: !(Maybe GoogleCloudDialogflowV2OutputAudioConfig)
-    , _gcdvdirResponseId        :: !(Maybe Text)
-    , _gcdvdirOutputAudio       :: !(Maybe Bytes)
-    , _gcdvdirWebhookStatus     :: !(Maybe GoogleRpcStatus)
-    , _gcdvdirQueryResult       :: !(Maybe GoogleCloudDialogflowV2QueryResult)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2DetectIntentResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvdirOutputAudioConfig'
---
--- * 'gcdvdirResponseId'
---
--- * 'gcdvdirOutputAudio'
---
--- * 'gcdvdirWebhookStatus'
---
--- * 'gcdvdirQueryResult'
-googleCloudDialogflowV2DetectIntentResponse
-    :: GoogleCloudDialogflowV2DetectIntentResponse
-googleCloudDialogflowV2DetectIntentResponse =
-  GoogleCloudDialogflowV2DetectIntentResponse'
-    { _gcdvdirOutputAudioConfig = Nothing
-    , _gcdvdirResponseId = Nothing
-    , _gcdvdirOutputAudio = Nothing
-    , _gcdvdirWebhookStatus = Nothing
-    , _gcdvdirQueryResult = Nothing
-    }
-
-
--- | The config used by the speech synthesizer to generate the output audio.
-gcdvdirOutputAudioConfig :: Lens' GoogleCloudDialogflowV2DetectIntentResponse (Maybe GoogleCloudDialogflowV2OutputAudioConfig)
-gcdvdirOutputAudioConfig
-  = lens _gcdvdirOutputAudioConfig
-      (\ s a -> s{_gcdvdirOutputAudioConfig = a})
-
--- | The unique identifier of the response. It can be used to locate a
--- response in the training example set or for reporting issues.
-gcdvdirResponseId :: Lens' GoogleCloudDialogflowV2DetectIntentResponse (Maybe Text)
-gcdvdirResponseId
-  = lens _gcdvdirResponseId
-      (\ s a -> s{_gcdvdirResponseId = a})
-
--- | The audio data bytes encoded as specified in the request. Note: The
--- output audio is generated based on the values of default platform text
--- responses found in the \`query_result.fulfillment_messages\` field. If
--- multiple default text responses exist, they will be concatenated when
--- generating audio. If no default platform text responses exist, the
--- generated audio content will be empty.
-gcdvdirOutputAudio :: Lens' GoogleCloudDialogflowV2DetectIntentResponse (Maybe ByteString)
-gcdvdirOutputAudio
-  = lens _gcdvdirOutputAudio
-      (\ s a -> s{_gcdvdirOutputAudio = a})
-      . mapping _Bytes
-
--- | Specifies the status of the webhook request.
-gcdvdirWebhookStatus :: Lens' GoogleCloudDialogflowV2DetectIntentResponse (Maybe GoogleRpcStatus)
-gcdvdirWebhookStatus
-  = lens _gcdvdirWebhookStatus
-      (\ s a -> s{_gcdvdirWebhookStatus = a})
-
--- | The selected results of the conversational query or event processing.
--- See \`alternative_query_results\` for additional potential results.
-gcdvdirQueryResult :: Lens' GoogleCloudDialogflowV2DetectIntentResponse (Maybe GoogleCloudDialogflowV2QueryResult)
-gcdvdirQueryResult
-  = lens _gcdvdirQueryResult
-      (\ s a -> s{_gcdvdirQueryResult = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2DetectIntentResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2DetectIntentResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2DetectIntentResponse' <$>
-                   (o .:? "outputAudioConfig") <*> (o .:? "responseId")
-                     <*> (o .:? "outputAudio")
-                     <*> (o .:? "webhookStatus")
-                     <*> (o .:? "queryResult"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2DetectIntentResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2DetectIntentResponse'{..}
-          = object
-              (catMaybes
-                 [("outputAudioConfig" .=) <$>
-                    _gcdvdirOutputAudioConfig,
-                  ("responseId" .=) <$> _gcdvdirResponseId,
-                  ("outputAudio" .=) <$> _gcdvdirOutputAudio,
-                  ("webhookStatus" .=) <$> _gcdvdirWebhookStatus,
-                  ("queryResult" .=) <$> _gcdvdirQueryResult])
-
--- | An item in the list.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageListSelectItem' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageListSelectItem =
-  GoogleCloudDialogflowV2IntentMessageListSelectItem'
-    { _gcdvimlsiImage       :: !(Maybe GoogleCloudDialogflowV2IntentMessageImage)
-    , _gcdvimlsiTitle       :: !(Maybe Text)
-    , _gcdvimlsiDescription :: !(Maybe Text)
-    , _gcdvimlsiInfo        :: !(Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageListSelectItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimlsiImage'
---
--- * 'gcdvimlsiTitle'
---
--- * 'gcdvimlsiDescription'
---
--- * 'gcdvimlsiInfo'
-googleCloudDialogflowV2IntentMessageListSelectItem
-    :: GoogleCloudDialogflowV2IntentMessageListSelectItem
-googleCloudDialogflowV2IntentMessageListSelectItem =
-  GoogleCloudDialogflowV2IntentMessageListSelectItem'
-    { _gcdvimlsiImage = Nothing
-    , _gcdvimlsiTitle = Nothing
-    , _gcdvimlsiDescription = Nothing
-    , _gcdvimlsiInfo = Nothing
-    }
-
-
--- | Optional. The image to display.
-gcdvimlsiImage :: Lens' GoogleCloudDialogflowV2IntentMessageListSelectItem (Maybe GoogleCloudDialogflowV2IntentMessageImage)
-gcdvimlsiImage
-  = lens _gcdvimlsiImage
-      (\ s a -> s{_gcdvimlsiImage = a})
-
--- | Required. The title of the list item.
-gcdvimlsiTitle :: Lens' GoogleCloudDialogflowV2IntentMessageListSelectItem (Maybe Text)
-gcdvimlsiTitle
-  = lens _gcdvimlsiTitle
-      (\ s a -> s{_gcdvimlsiTitle = a})
-
--- | Optional. The main text describing the item.
-gcdvimlsiDescription :: Lens' GoogleCloudDialogflowV2IntentMessageListSelectItem (Maybe Text)
-gcdvimlsiDescription
-  = lens _gcdvimlsiDescription
-      (\ s a -> s{_gcdvimlsiDescription = a})
-
--- | Required. Additional information about this option.
-gcdvimlsiInfo :: Lens' GoogleCloudDialogflowV2IntentMessageListSelectItem (Maybe GoogleCloudDialogflowV2IntentMessageSelectItemInfo)
-gcdvimlsiInfo
-  = lens _gcdvimlsiInfo
-      (\ s a -> s{_gcdvimlsiInfo = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageListSelectItem
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageListSelectItem"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageListSelectItem'
-                   <$>
-                   (o .:? "image") <*> (o .:? "title") <*>
-                     (o .:? "description")
-                     <*> (o .:? "info"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageListSelectItem
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageListSelectItem'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gcdvimlsiImage,
-                  ("title" .=) <$> _gcdvimlsiTitle,
-                  ("description" .=) <$> _gcdvimlsiDescription,
-                  ("info" .=) <$> _gcdvimlsiInfo])
-
--- | The result of sentiment analysis as configured by
--- \`sentiment_analysis_request_config\`.
---
--- /See:/ 'googleCloudDialogflowV2beta1SentimentAnalysisResult' smart constructor.
-newtype GoogleCloudDialogflowV2beta1SentimentAnalysisResult =
-  GoogleCloudDialogflowV2beta1SentimentAnalysisResult'
-    { _gQueryTextSentiment :: Maybe GoogleCloudDialogflowV2beta1Sentiment
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1SentimentAnalysisResult' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gQueryTextSentiment'
-googleCloudDialogflowV2beta1SentimentAnalysisResult
-    :: GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-googleCloudDialogflowV2beta1SentimentAnalysisResult =
-  GoogleCloudDialogflowV2beta1SentimentAnalysisResult'
-    {_gQueryTextSentiment = Nothing}
-
-
--- | The sentiment analysis result for \`query_text\`.
-gQueryTextSentiment :: Lens' GoogleCloudDialogflowV2beta1SentimentAnalysisResult (Maybe GoogleCloudDialogflowV2beta1Sentiment)
-gQueryTextSentiment
-  = lens _gQueryTextSentiment
-      (\ s a -> s{_gQueryTextSentiment = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1SentimentAnalysisResult"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1SentimentAnalysisResult'
-                   <$> (o .:? "queryTextSentiment"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1SentimentAnalysisResult
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1SentimentAnalysisResult'{..}
-          = object
-              (catMaybes
-                 [("queryTextSentiment" .=) <$> _gQueryTextSentiment])
-
--- | This message is a wrapper around a collection of entity types.
---
--- /See:/ 'googleCloudDialogflowV2EntityTypeBatch' smart constructor.
-newtype GoogleCloudDialogflowV2EntityTypeBatch =
-  GoogleCloudDialogflowV2EntityTypeBatch'
-    { _gcdvetbEntityTypes :: Maybe [GoogleCloudDialogflowV2EntityType]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2EntityTypeBatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvetbEntityTypes'
-googleCloudDialogflowV2EntityTypeBatch
-    :: GoogleCloudDialogflowV2EntityTypeBatch
-googleCloudDialogflowV2EntityTypeBatch =
-  GoogleCloudDialogflowV2EntityTypeBatch' {_gcdvetbEntityTypes = Nothing}
-
-
--- | A collection of entity types.
-gcdvetbEntityTypes :: Lens' GoogleCloudDialogflowV2EntityTypeBatch [GoogleCloudDialogflowV2EntityType]
-gcdvetbEntityTypes
-  = lens _gcdvetbEntityTypes
-      (\ s a -> s{_gcdvetbEntityTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2EntityTypeBatch
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2EntityTypeBatch"
-              (\ o ->
-                 GoogleCloudDialogflowV2EntityTypeBatch' <$>
-                   (o .:? "entityTypes" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2EntityTypeBatch
-         where
-        toJSON GoogleCloudDialogflowV2EntityTypeBatch'{..}
-          = object
-              (catMaybes
-                 [("entityTypes" .=) <$> _gcdvetbEntityTypes])
-
--- | Description of which voice to use for speech synthesis.
---
--- /See:/ 'googleCloudDialogflowV2VoiceSelectionParams' smart constructor.
-data GoogleCloudDialogflowV2VoiceSelectionParams =
-  GoogleCloudDialogflowV2VoiceSelectionParams'
-    { _gcdvvspSsmlGender :: !(Maybe GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender)
-    , _gcdvvspName       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2VoiceSelectionParams' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvvspSsmlGender'
---
--- * 'gcdvvspName'
-googleCloudDialogflowV2VoiceSelectionParams
-    :: GoogleCloudDialogflowV2VoiceSelectionParams
-googleCloudDialogflowV2VoiceSelectionParams =
-  GoogleCloudDialogflowV2VoiceSelectionParams'
-    {_gcdvvspSsmlGender = Nothing, _gcdvvspName = Nothing}
-
-
--- | Optional. The preferred gender of the voice. If not set, the service
--- will choose a voice based on the other parameters such as language_code
--- and name. Note that this is only a preference, not requirement. If a
--- voice of the appropriate gender is not available, the synthesizer should
--- substitute a voice with a different gender rather than failing the
--- request.
-gcdvvspSsmlGender :: Lens' GoogleCloudDialogflowV2VoiceSelectionParams (Maybe GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender)
-gcdvvspSsmlGender
-  = lens _gcdvvspSsmlGender
-      (\ s a -> s{_gcdvvspSsmlGender = a})
-
--- | Optional. The name of the voice. If not set, the service will choose a
--- voice based on the other parameters such as language_code and gender.
-gcdvvspName :: Lens' GoogleCloudDialogflowV2VoiceSelectionParams (Maybe Text)
-gcdvvspName
-  = lens _gcdvvspName (\ s a -> s{_gcdvvspName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2VoiceSelectionParams
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2VoiceSelectionParams"
-              (\ o ->
-                 GoogleCloudDialogflowV2VoiceSelectionParams' <$>
-                   (o .:? "ssmlGender") <*> (o .:? "name"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2VoiceSelectionParams
-         where
-        toJSON
-          GoogleCloudDialogflowV2VoiceSelectionParams'{..}
-          = object
-              (catMaybes
-                 [("ssmlGender" .=) <$> _gcdvvspSsmlGender,
-                  ("name" .=) <$> _gcdvvspName])
-
--- | The free-form diagnostic info. For example, this field could contain
--- webhook call latency. The string keys of the Struct\'s fields map can
--- change without notice.
---
--- /See:/ 'googleCloudDialogflowV2QueryResultDiagnosticInfo' smart constructor.
-newtype GoogleCloudDialogflowV2QueryResultDiagnosticInfo =
-  GoogleCloudDialogflowV2QueryResultDiagnosticInfo'
-    { _gcdvqrdiAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryResultDiagnosticInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrdiAddtional'
-googleCloudDialogflowV2QueryResultDiagnosticInfo
-    :: HashMap Text JSONValue -- ^ 'gcdvqrdiAddtional'
-    -> GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-googleCloudDialogflowV2QueryResultDiagnosticInfo pGcdvqrdiAddtional_ =
-  GoogleCloudDialogflowV2QueryResultDiagnosticInfo'
-    {_gcdvqrdiAddtional = _Coerce # pGcdvqrdiAddtional_}
-
-
--- | Properties of the object.
-gcdvqrdiAddtional :: Lens' GoogleCloudDialogflowV2QueryResultDiagnosticInfo (HashMap Text JSONValue)
-gcdvqrdiAddtional
-  = lens _gcdvqrdiAddtional
-      (\ s a -> s{_gcdvqrdiAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2QueryResultDiagnosticInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryResultDiagnosticInfo' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2QueryResultDiagnosticInfo
-         where
-        toJSON = toJSON . _gcdvqrdiAddtional
-
--- | The text response message.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageText' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageText =
-  GoogleCloudDialogflowV2IntentMessageText'
-    { _gcdvimtText :: Maybe [Text]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageText' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimtText'
-googleCloudDialogflowV2IntentMessageText
-    :: GoogleCloudDialogflowV2IntentMessageText
-googleCloudDialogflowV2IntentMessageText =
-  GoogleCloudDialogflowV2IntentMessageText' {_gcdvimtText = Nothing}
-
-
--- | Optional. The collection of the agent\'s responses.
-gcdvimtText :: Lens' GoogleCloudDialogflowV2IntentMessageText [Text]
-gcdvimtText
-  = lens _gcdvimtText (\ s a -> s{_gcdvimtText = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageText
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageText"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageText' <$>
-                   (o .:? "text" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageText
-         where
-        toJSON GoogleCloudDialogflowV2IntentMessageText'{..}
-          = object (catMaybes [("text" .=) <$> _gcdvimtText])
-
--- | The request to detect user\'s intent.
---
--- /See:/ 'googleCloudDialogflowV2DetectIntentRequest' smart constructor.
-data GoogleCloudDialogflowV2DetectIntentRequest =
-  GoogleCloudDialogflowV2DetectIntentRequest'
-    { _gQueryInput        :: !(Maybe GoogleCloudDialogflowV2QueryInput)
-    , _gOutputAudioConfig :: !(Maybe GoogleCloudDialogflowV2OutputAudioConfig)
-    , _gInputAudio        :: !(Maybe Bytes)
-    , _gQueryParams       :: !(Maybe GoogleCloudDialogflowV2QueryParameters)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2DetectIntentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gQueryInput'
---
--- * 'gOutputAudioConfig'
---
--- * 'gInputAudio'
---
--- * 'gQueryParams'
-googleCloudDialogflowV2DetectIntentRequest
-    :: GoogleCloudDialogflowV2DetectIntentRequest
-googleCloudDialogflowV2DetectIntentRequest =
-  GoogleCloudDialogflowV2DetectIntentRequest'
-    { _gQueryInput = Nothing
-    , _gOutputAudioConfig = Nothing
-    , _gInputAudio = Nothing
-    , _gQueryParams = Nothing
-    }
-
-
--- | Required. The input specification. It can be set to: 1. an audio config
--- which instructs the speech recognizer how to process the speech audio,
--- 2. a conversational query in the form of text, or 3. an event that
--- specifies which intent to trigger.
-gQueryInput :: Lens' GoogleCloudDialogflowV2DetectIntentRequest (Maybe GoogleCloudDialogflowV2QueryInput)
-gQueryInput
-  = lens _gQueryInput (\ s a -> s{_gQueryInput = a})
-
--- | Optional. Instructs the speech synthesizer how to generate the output
--- audio. If this field is not set and agent-level speech synthesizer is
--- not configured, no output audio is generated.
-gOutputAudioConfig :: Lens' GoogleCloudDialogflowV2DetectIntentRequest (Maybe GoogleCloudDialogflowV2OutputAudioConfig)
-gOutputAudioConfig
-  = lens _gOutputAudioConfig
-      (\ s a -> s{_gOutputAudioConfig = a})
-
--- | Optional. The natural language speech audio to be processed. This field
--- should be populated iff \`query_input\` is set to an input audio config.
--- A single request can contain up to 1 minute of speech audio data.
-gInputAudio :: Lens' GoogleCloudDialogflowV2DetectIntentRequest (Maybe ByteString)
-gInputAudio
-  = lens _gInputAudio (\ s a -> s{_gInputAudio = a}) .
-      mapping _Bytes
-
--- | Optional. The parameters of this query.
-gQueryParams :: Lens' GoogleCloudDialogflowV2DetectIntentRequest (Maybe GoogleCloudDialogflowV2QueryParameters)
-gQueryParams
-  = lens _gQueryParams (\ s a -> s{_gQueryParams = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2DetectIntentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2DetectIntentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2DetectIntentRequest' <$>
-                   (o .:? "queryInput") <*> (o .:? "outputAudioConfig")
-                     <*> (o .:? "inputAudio")
-                     <*> (o .:? "queryParams"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2DetectIntentRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2DetectIntentRequest'{..}
-          = object
-              (catMaybes
-                 [("queryInput" .=) <$> _gQueryInput,
-                  ("outputAudioConfig" .=) <$> _gOutputAudioConfig,
-                  ("inputAudio" .=) <$> _gInputAudio,
-                  ("queryParams" .=) <$> _gQueryParams])
-
--- | The collection of extracted parameters.
---
--- /See:/ 'googleCloudDialogflowV2beta1QueryResultParameters' smart constructor.
-newtype GoogleCloudDialogflowV2beta1QueryResultParameters =
-  GoogleCloudDialogflowV2beta1QueryResultParameters'
-    { _gcdvqrpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResultParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrpAddtional'
-googleCloudDialogflowV2beta1QueryResultParameters
-    :: HashMap Text JSONValue -- ^ 'gcdvqrpAddtional'
-    -> GoogleCloudDialogflowV2beta1QueryResultParameters
-googleCloudDialogflowV2beta1QueryResultParameters pGcdvqrpAddtional_ =
-  GoogleCloudDialogflowV2beta1QueryResultParameters'
-    {_gcdvqrpAddtional = _Coerce # pGcdvqrpAddtional_}
-
-
--- | Properties of the object.
-gcdvqrpAddtional :: Lens' GoogleCloudDialogflowV2beta1QueryResultParameters (HashMap Text JSONValue)
-gcdvqrpAddtional
-  = lens _gcdvqrpAddtional
-      (\ s a -> s{_gcdvqrpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1QueryResultParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1QueryResultParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1QueryResultParameters'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1QueryResultParameters
-         where
-        toJSON = toJSON . _gcdvqrpAddtional
-
--- | The basic card message. Useful for displaying information.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageBasicCard' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageBasicCard =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCard'
-    { _gcdvimbccImage         :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-    , _gcdvimbccButtons       :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton])
-    , _gcdvimbccSubtitle      :: !(Maybe Text)
-    , _gcdvimbccTitle         :: !(Maybe Text)
-    , _gcdvimbccFormattedText :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageBasicCard' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbccImage'
---
--- * 'gcdvimbccButtons'
---
--- * 'gcdvimbccSubtitle'
---
--- * 'gcdvimbccTitle'
---
--- * 'gcdvimbccFormattedText'
-googleCloudDialogflowV2beta1IntentMessageBasicCard
-    :: GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-googleCloudDialogflowV2beta1IntentMessageBasicCard =
-  GoogleCloudDialogflowV2beta1IntentMessageBasicCard'
-    { _gcdvimbccImage = Nothing
-    , _gcdvimbccButtons = Nothing
-    , _gcdvimbccSubtitle = Nothing
-    , _gcdvimbccTitle = Nothing
-    , _gcdvimbccFormattedText = Nothing
-    }
-
-
--- | Optional. The image for the card.
-gcdvimbccImage :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCard (Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-gcdvimbccImage
-  = lens _gcdvimbccImage
-      (\ s a -> s{_gcdvimbccImage = a})
-
--- | Optional. The collection of card buttons.
-gcdvimbccButtons :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCard [GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton]
-gcdvimbccButtons
-  = lens _gcdvimbccButtons
-      (\ s a -> s{_gcdvimbccButtons = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The subtitle of the card.
-gcdvimbccSubtitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCard (Maybe Text)
-gcdvimbccSubtitle
-  = lens _gcdvimbccSubtitle
-      (\ s a -> s{_gcdvimbccSubtitle = a})
-
--- | Optional. The title of the card.
-gcdvimbccTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCard (Maybe Text)
-gcdvimbccTitle
-  = lens _gcdvimbccTitle
-      (\ s a -> s{_gcdvimbccTitle = a})
-
--- | Required, unless image is present. The body text of the card.
-gcdvimbccFormattedText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageBasicCard (Maybe Text)
-gcdvimbccFormattedText
-  = lens _gcdvimbccFormattedText
-      (\ s a -> s{_gcdvimbccFormattedText = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageBasicCard"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageBasicCard'
-                   <$>
-                   (o .:? "image") <*> (o .:? "buttons" .!= mempty) <*>
-                     (o .:? "subtitle")
-                     <*> (o .:? "title")
-                     <*> (o .:? "formattedText"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageBasicCard
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageBasicCard'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gcdvimbccImage,
-                  ("buttons" .=) <$> _gcdvimbccButtons,
-                  ("subtitle" .=) <$> _gcdvimbccSubtitle,
-                  ("title" .=) <$> _gcdvimbccTitle,
-                  ("formattedText" .=) <$> _gcdvimbccFormattedText])
-
--- | Represents an example that the agent is trained on.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentTrainingPhrase' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentTrainingPhrase =
-  GoogleCloudDialogflowV2beta1IntentTrainingPhrase'
-    { _gParts           :: !(Maybe [GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart])
-    , _gName            :: !(Maybe Text)
-    , _gTimesAddedCount :: !(Maybe (Textual Int32))
-    , _gType            :: !(Maybe GoogleCloudDialogflowV2beta1IntentTrainingPhraseType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentTrainingPhrase' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gParts'
---
--- * 'gName'
---
--- * 'gTimesAddedCount'
---
--- * 'gType'
-googleCloudDialogflowV2beta1IntentTrainingPhrase
-    :: GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-googleCloudDialogflowV2beta1IntentTrainingPhrase =
-  GoogleCloudDialogflowV2beta1IntentTrainingPhrase'
-    { _gParts = Nothing
-    , _gName = Nothing
-    , _gTimesAddedCount = Nothing
-    , _gType = Nothing
-    }
-
-
--- | Required. The ordered list of training phrase parts. The parts are
--- concatenated in order to form the training phrase. Note: The API does
--- not automatically annotate training phrases like the Dialogflow Console
--- does. Note: Do not forget to include whitespace at part boundaries, so
--- the training phrase is well formatted when the parts are concatenated.
--- If the training phrase does not need to be annotated with parameters,
--- you just need a single part with only the Part.text field set. If you
--- want to annotate the training phrase, you must create multiple parts,
--- where the fields of each part are populated in one of two ways: -
--- \`Part.text\` is set to a part of the phrase that has no parameters. -
--- \`Part.text\` is set to a part of the phrase that you want to annotate,
--- and the \`entity_type\`, \`alias\`, and \`user_defined\` fields are all
--- set.
-gParts :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrase [GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart]
-gParts
-  = lens _gParts (\ s a -> s{_gParts = a}) . _Default .
-      _Coerce
-
--- | Output only. The unique identifier of this training phrase.
-gName :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrase (Maybe Text)
-gName = lens _gName (\ s a -> s{_gName = a})
-
--- | Optional. Indicates how many times this example was added to the intent.
--- Each time a developer adds an existing sample by editing an intent or
--- training, this counter is increased.
-gTimesAddedCount :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrase (Maybe Int32)
-gTimesAddedCount
-  = lens _gTimesAddedCount
-      (\ s a -> s{_gTimesAddedCount = a})
-      . mapping _Coerce
-
--- | Required. The type of the training phrase.
-gType :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrase (Maybe GoogleCloudDialogflowV2beta1IntentTrainingPhraseType)
-gType = lens _gType (\ s a -> s{_gType = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentTrainingPhrase"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentTrainingPhrase' <$>
-                   (o .:? "parts" .!= mempty) <*> (o .:? "name") <*>
-                     (o .:? "timesAddedCount")
-                     <*> (o .:? "type"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentTrainingPhrase
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentTrainingPhrase'{..}
-          = object
-              (catMaybes
-                 [("parts" .=) <$> _gParts, ("name" .=) <$> _gName,
-                  ("timesAddedCount" .=) <$> _gTimesAddedCount,
-                  ("type" .=) <$> _gType])
-
--- | An answer from Knowledge Connector.
---
--- /See:/ 'googleCloudDialogflowV2beta1KnowledgeAnswersAnswer' smart constructor.
-data GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer =
-  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer'
-    { _gcdvkaaMatchConfidence      :: !(Maybe (Textual Double))
-    , _gcdvkaaAnswer               :: !(Maybe Text)
-    , _gcdvkaaSource               :: !(Maybe Text)
-    , _gcdvkaaFaqQuestion          :: !(Maybe Text)
-    , _gcdvkaaMatchConfidenceLevel :: !(Maybe GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvkaaMatchConfidence'
---
--- * 'gcdvkaaAnswer'
---
--- * 'gcdvkaaSource'
---
--- * 'gcdvkaaFaqQuestion'
---
--- * 'gcdvkaaMatchConfidenceLevel'
-googleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-    :: GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-googleCloudDialogflowV2beta1KnowledgeAnswersAnswer =
-  GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer'
-    { _gcdvkaaMatchConfidence = Nothing
-    , _gcdvkaaAnswer = Nothing
-    , _gcdvkaaSource = Nothing
-    , _gcdvkaaFaqQuestion = Nothing
-    , _gcdvkaaMatchConfidenceLevel = Nothing
-    }
-
-
--- | The system\'s confidence score that this Knowledge answer is a good
--- match for this conversational query. The range is from 0.0 (completely
--- uncertain) to 1.0 (completely certain). Note: The confidence score is
--- likely to vary somewhat (possibly even for identical requests), as the
--- underlying model is under constant improvement. It may be deprecated in
--- the future. We recommend using \`match_confidence_level\` which should
--- be generally more stable.
-gcdvkaaMatchConfidence :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (Maybe Double)
-gcdvkaaMatchConfidence
-  = lens _gcdvkaaMatchConfidence
-      (\ s a -> s{_gcdvkaaMatchConfidence = a})
-      . mapping _Coerce
-
--- | The piece of text from the \`source\` knowledge base document that
--- answers this conversational query.
-gcdvkaaAnswer :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (Maybe Text)
-gcdvkaaAnswer
-  = lens _gcdvkaaAnswer
-      (\ s a -> s{_gcdvkaaAnswer = a})
-
--- | Indicates which Knowledge Document this answer was extracted from.
--- Format: \`projects\/\/knowledgeBases\/\/documents\/\`.
-gcdvkaaSource :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (Maybe Text)
-gcdvkaaSource
-  = lens _gcdvkaaSource
-      (\ s a -> s{_gcdvkaaSource = a})
-
--- | The corresponding FAQ question if the answer was extracted from a FAQ
--- Document, empty otherwise.
-gcdvkaaFaqQuestion :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (Maybe Text)
-gcdvkaaFaqQuestion
-  = lens _gcdvkaaFaqQuestion
-      (\ s a -> s{_gcdvkaaFaqQuestion = a})
-
--- | The system\'s confidence level that this knowledge answer is a good
--- match for this conversational query. NOTE: The confidence level for a
--- given \`\` pair may change without notice, as it depends on models that
--- are constantly being improved. However, it will change less frequently
--- than the confidence score below, and should be preferred for referencing
--- the quality of an answer.
-gcdvkaaMatchConfidenceLevel :: Lens' GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer (Maybe GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel)
-gcdvkaaMatchConfidenceLevel
-  = lens _gcdvkaaMatchConfidenceLevel
-      (\ s a -> s{_gcdvkaaMatchConfidenceLevel = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer'
-                   <$>
-                   (o .:? "matchConfidence") <*> (o .:? "answer") <*>
-                     (o .:? "source")
-                     <*> (o .:? "faqQuestion")
-                     <*> (o .:? "matchConfidenceLevel"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer'{..}
-          = object
-              (catMaybes
-                 [("matchConfidence" .=) <$> _gcdvkaaMatchConfidence,
-                  ("answer" .=) <$> _gcdvkaaAnswer,
-                  ("source" .=) <$> _gcdvkaaSource,
-                  ("faqQuestion" .=) <$> _gcdvkaaFaqQuestion,
-                  ("matchConfidenceLevel" .=) <$>
-                    _gcdvkaaMatchConfidenceLevel])
-
--- | Events allow for matching intents by event name instead of the natural
--- language input. For instance, input \`\` can trigger a personalized
--- welcome response. The parameter \`name\` may be used by the agent in the
--- response: \`\"Hello #welcome_event.name! What can I do for you
--- today?\"\`.
---
--- /See:/ 'googleCloudDialogflowV2beta1EventInput' smart constructor.
-data GoogleCloudDialogflowV2beta1EventInput =
-  GoogleCloudDialogflowV2beta1EventInput'
-    { _gooLanguageCode :: !(Maybe Text)
-    , _gooName         :: !(Maybe Text)
-    , _gooParameters   :: !(Maybe GoogleCloudDialogflowV2beta1EventInputParameters)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1EventInput' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooLanguageCode'
---
--- * 'gooName'
---
--- * 'gooParameters'
-googleCloudDialogflowV2beta1EventInput
-    :: GoogleCloudDialogflowV2beta1EventInput
-googleCloudDialogflowV2beta1EventInput =
-  GoogleCloudDialogflowV2beta1EventInput'
-    {_gooLanguageCode = Nothing, _gooName = Nothing, _gooParameters = Nothing}
-
-
--- | Required. The language of this query. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes. Note that queries
--- in the same session do not necessarily need to specify the same
--- language.
-gooLanguageCode :: Lens' GoogleCloudDialogflowV2beta1EventInput (Maybe Text)
-gooLanguageCode
-  = lens _gooLanguageCode
-      (\ s a -> s{_gooLanguageCode = a})
-
--- | Required. The unique identifier of the event.
-gooName :: Lens' GoogleCloudDialogflowV2beta1EventInput (Maybe Text)
-gooName = lens _gooName (\ s a -> s{_gooName = a})
-
--- | Optional. The collection of parameters associated with the event.
-gooParameters :: Lens' GoogleCloudDialogflowV2beta1EventInput (Maybe GoogleCloudDialogflowV2beta1EventInputParameters)
-gooParameters
-  = lens _gooParameters
-      (\ s a -> s{_gooParameters = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1EventInput
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2beta1EventInput"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1EventInput' <$>
-                   (o .:? "languageCode") <*> (o .:? "name") <*>
-                     (o .:? "parameters"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1EventInput
-         where
-        toJSON GoogleCloudDialogflowV2beta1EventInput'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gooLanguageCode,
-                  ("name" .=) <$> _gooName,
-                  ("parameters" .=) <$> _gooParameters])
-
--- | The request message for EntityTypes.BatchUpdateEntities.
---
--- /See:/ 'googleCloudDialogflowV2BatchUpdateEntitiesRequest' smart constructor.
-data GoogleCloudDialogflowV2BatchUpdateEntitiesRequest =
-  GoogleCloudDialogflowV2BatchUpdateEntitiesRequest'
-    { _gcdvbuerLanguageCode :: !(Maybe Text)
-    , _gcdvbuerUpdateMask   :: !(Maybe GFieldMask)
-    , _gcdvbuerEntities     :: !(Maybe [GoogleCloudDialogflowV2EntityTypeEntity])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateEntitiesRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbuerLanguageCode'
---
--- * 'gcdvbuerUpdateMask'
---
--- * 'gcdvbuerEntities'
-googleCloudDialogflowV2BatchUpdateEntitiesRequest
-    :: GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-googleCloudDialogflowV2BatchUpdateEntitiesRequest =
-  GoogleCloudDialogflowV2BatchUpdateEntitiesRequest'
-    { _gcdvbuerLanguageCode = Nothing
-    , _gcdvbuerUpdateMask = Nothing
-    , _gcdvbuerEntities = Nothing
-    }
-
-
--- | Optional. The language of entity synonyms defined in \`entities\`. If
--- not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-gcdvbuerLanguageCode :: Lens' GoogleCloudDialogflowV2BatchUpdateEntitiesRequest (Maybe Text)
-gcdvbuerLanguageCode
-  = lens _gcdvbuerLanguageCode
-      (\ s a -> s{_gcdvbuerLanguageCode = a})
-
--- | Optional. The mask to control which fields get updated.
-gcdvbuerUpdateMask :: Lens' GoogleCloudDialogflowV2BatchUpdateEntitiesRequest (Maybe GFieldMask)
-gcdvbuerUpdateMask
-  = lens _gcdvbuerUpdateMask
-      (\ s a -> s{_gcdvbuerUpdateMask = a})
-
--- | Required. The entities to update or create.
-gcdvbuerEntities :: Lens' GoogleCloudDialogflowV2BatchUpdateEntitiesRequest [GoogleCloudDialogflowV2EntityTypeEntity]
-gcdvbuerEntities
-  = lens _gcdvbuerEntities
-      (\ s a -> s{_gcdvbuerEntities = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchUpdateEntitiesRequest'
-                   <$>
-                   (o .:? "languageCode") <*> (o .:? "updateMask") <*>
-                     (o .:? "entities" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchUpdateEntitiesRequest'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvbuerLanguageCode,
-                  ("updateMask" .=) <$> _gcdvbuerUpdateMask,
-                  ("entities" .=) <$> _gcdvbuerEntities])
-
--- | Returns a response containing a custom, platform-specific payload. See
--- the Intent.Message.Platform type for a description of the structure that
--- may be required for your platform.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessagePayload' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessagePayload =
-  GoogleCloudDialogflowV2IntentMessagePayload'
-    { _gooAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessagePayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooAddtional'
-googleCloudDialogflowV2IntentMessagePayload
-    :: HashMap Text JSONValue -- ^ 'gooAddtional'
-    -> GoogleCloudDialogflowV2IntentMessagePayload
-googleCloudDialogflowV2IntentMessagePayload pGooAddtional_ =
-  GoogleCloudDialogflowV2IntentMessagePayload'
-    {_gooAddtional = _Coerce # pGooAddtional_}
-
-
--- | Properties of the object.
-gooAddtional :: Lens' GoogleCloudDialogflowV2IntentMessagePayload (HashMap Text JSONValue)
-gooAddtional
-  = lens _gooAddtional (\ s a -> s{_gooAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessagePayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessagePayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessagePayload' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessagePayload
-         where
-        toJSON = toJSON . _gooAddtional
-
--- | Metadata in google::longrunning::Operation for Knowledge operations.
---
--- /See:/ 'googleCloudDialogflowV2beta1KnowledgeOperationMetadata' smart constructor.
-newtype GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata =
-  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata'
-    { _gcdvkomState :: Maybe GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvkomState'
-googleCloudDialogflowV2beta1KnowledgeOperationMetadata
-    :: GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-googleCloudDialogflowV2beta1KnowledgeOperationMetadata =
-  GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata'
-    {_gcdvkomState = Nothing}
-
-
--- | Required. The current state of this operation.
-gcdvkomState :: Lens' GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata (Maybe GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState)
-gcdvkomState
-  = lens _gcdvkomState (\ s a -> s{_gcdvkomState = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata'
-                   <$> (o .:? "state"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata'{..}
-          = object (catMaybes [("state" .=) <$> _gcdvkomState])
-
--- | The request message for a webhook call.
---
--- /See:/ 'googleCloudDialogflowV2beta1WebhookRequest' smart constructor.
-data GoogleCloudDialogflowV2beta1WebhookRequest =
-  GoogleCloudDialogflowV2beta1WebhookRequest'
-    { _gOriginalDetectIntentRequest :: !(Maybe GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest)
-    , _gResponseId                  :: !(Maybe Text)
-    , _gAlternativeQueryResults     :: !(Maybe [GoogleCloudDialogflowV2beta1QueryResult])
-    , _gQueryResult                 :: !(Maybe GoogleCloudDialogflowV2beta1QueryResult)
-    , _gSession                     :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1WebhookRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gOriginalDetectIntentRequest'
---
--- * 'gResponseId'
---
--- * 'gAlternativeQueryResults'
---
--- * 'gQueryResult'
---
--- * 'gSession'
-googleCloudDialogflowV2beta1WebhookRequest
-    :: GoogleCloudDialogflowV2beta1WebhookRequest
-googleCloudDialogflowV2beta1WebhookRequest =
-  GoogleCloudDialogflowV2beta1WebhookRequest'
-    { _gOriginalDetectIntentRequest = Nothing
-    , _gResponseId = Nothing
-    , _gAlternativeQueryResults = Nothing
-    , _gQueryResult = Nothing
-    , _gSession = Nothing
-    }
-
-
--- | Optional. The contents of the original request that was passed to
--- \`[Streaming]DetectIntent\` call.
-gOriginalDetectIntentRequest :: Lens' GoogleCloudDialogflowV2beta1WebhookRequest (Maybe GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest)
-gOriginalDetectIntentRequest
-  = lens _gOriginalDetectIntentRequest
-      (\ s a -> s{_gOriginalDetectIntentRequest = a})
-
--- | The unique identifier of the response. Contains the same value as
--- \`[Streaming]DetectIntentResponse.response_id\`.
-gResponseId :: Lens' GoogleCloudDialogflowV2beta1WebhookRequest (Maybe Text)
-gResponseId
-  = lens _gResponseId (\ s a -> s{_gResponseId = a})
-
--- | Alternative query results from KnowledgeService.
-gAlternativeQueryResults :: Lens' GoogleCloudDialogflowV2beta1WebhookRequest [GoogleCloudDialogflowV2beta1QueryResult]
-gAlternativeQueryResults
-  = lens _gAlternativeQueryResults
-      (\ s a -> s{_gAlternativeQueryResults = a})
-      . _Default
-      . _Coerce
-
--- | The result of the conversational query or event processing. Contains the
--- same value as \`[Streaming]DetectIntentResponse.query_result\`.
-gQueryResult :: Lens' GoogleCloudDialogflowV2beta1WebhookRequest (Maybe GoogleCloudDialogflowV2beta1QueryResult)
-gQueryResult
-  = lens _gQueryResult (\ s a -> s{_gQueryResult = a})
-
--- | The unique identifier of detectIntent request session. Can be used to
--- identify end-user inside webhook implementation. Format:
--- \`projects\/\/agent\/sessions\/\`, or
--- \`projects\/\/agent\/environments\/\/users\/\/sessions\/\`.
-gSession :: Lens' GoogleCloudDialogflowV2beta1WebhookRequest (Maybe Text)
-gSession = lens _gSession (\ s a -> s{_gSession = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1WebhookRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1WebhookRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1WebhookRequest' <$>
-                   (o .:? "originalDetectIntentRequest") <*>
-                     (o .:? "responseId")
-                     <*> (o .:? "alternativeQueryResults" .!= mempty)
-                     <*> (o .:? "queryResult")
-                     <*> (o .:? "session"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1WebhookRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1WebhookRequest'{..}
-          = object
-              (catMaybes
-                 [("originalDetectIntentRequest" .=) <$>
-                    _gOriginalDetectIntentRequest,
-                  ("responseId" .=) <$> _gResponseId,
-                  ("alternativeQueryResults" .=) <$>
-                    _gAlternativeQueryResults,
-                  ("queryResult" .=) <$> _gQueryResult,
-                  ("session" .=) <$> _gSession])
-
--- | The text response message.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageText' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageText =
-  GoogleCloudDialogflowV2beta1IntentMessageText'
-    { _gooText :: Maybe [Text]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageText' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooText'
-googleCloudDialogflowV2beta1IntentMessageText
-    :: GoogleCloudDialogflowV2beta1IntentMessageText
-googleCloudDialogflowV2beta1IntentMessageText =
-  GoogleCloudDialogflowV2beta1IntentMessageText' {_gooText = Nothing}
-
-
--- | Optional. The collection of the agent\'s responses.
-gooText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageText [Text]
-gooText
-  = lens _gooText (\ s a -> s{_gooText = a}) . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageText
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageText"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageText' <$>
-                   (o .:? "text" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageText
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageText'{..}
-          = object (catMaybes [("text" .=) <$> _gooText])
-
--- | The collection of simple response candidates. This message in
--- \`QueryResult.fulfillment_messages\` and
--- \`WebhookResponse.fulfillment_messages\` should contain only one
--- \`SimpleResponse\`.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageSimpleResponses' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageSimpleResponses =
-  GoogleCloudDialogflowV2IntentMessageSimpleResponses'
-    { _gSimpleResponses :: Maybe [GoogleCloudDialogflowV2IntentMessageSimpleResponse]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSimpleResponses' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gSimpleResponses'
-googleCloudDialogflowV2IntentMessageSimpleResponses
-    :: GoogleCloudDialogflowV2IntentMessageSimpleResponses
-googleCloudDialogflowV2IntentMessageSimpleResponses =
-  GoogleCloudDialogflowV2IntentMessageSimpleResponses'
-    {_gSimpleResponses = Nothing}
-
-
--- | Required. The list of simple responses.
-gSimpleResponses :: Lens' GoogleCloudDialogflowV2IntentMessageSimpleResponses [GoogleCloudDialogflowV2IntentMessageSimpleResponse]
-gSimpleResponses
-  = lens _gSimpleResponses
-      (\ s a -> s{_gSimpleResponses = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageSimpleResponses
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageSimpleResponses"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageSimpleResponses'
-                   <$> (o .:? "simpleResponses" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageSimpleResponses
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageSimpleResponses'{..}
-          = object
-              (catMaybes
-                 [("simpleResponses" .=) <$> _gSimpleResponses])
-
--- | Represents a single followup intent in the chain.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentFollowupIntentInfo' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo =
-  GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo'
-    { _gFollowupIntentName       :: !(Maybe Text)
-    , _gParentFollowupIntentName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gFollowupIntentName'
---
--- * 'gParentFollowupIntentName'
-googleCloudDialogflowV2beta1IntentFollowupIntentInfo
-    :: GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-googleCloudDialogflowV2beta1IntentFollowupIntentInfo =
-  GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo'
-    {_gFollowupIntentName = Nothing, _gParentFollowupIntentName = Nothing}
-
-
--- | The unique identifier of the followup intent. Format:
--- \`projects\/\/agent\/intents\/\`.
-gFollowupIntentName :: Lens' GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo (Maybe Text)
-gFollowupIntentName
-  = lens _gFollowupIntentName
-      (\ s a -> s{_gFollowupIntentName = a})
-
--- | The unique identifier of the followup intent\'s parent. Format:
--- \`projects\/\/agent\/intents\/\`.
-gParentFollowupIntentName :: Lens' GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo (Maybe Text)
-gParentFollowupIntentName
-  = lens _gParentFollowupIntentName
-      (\ s a -> s{_gParentFollowupIntentName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo'
-                   <$>
-                   (o .:? "followupIntentName") <*>
-                     (o .:? "parentFollowupIntentName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo'{..}
-          = object
-              (catMaybes
-                 [("followupIntentName" .=) <$> _gFollowupIntentName,
-                  ("parentFollowupIntentName" .=) <$>
-                    _gParentFollowupIntentName])
-
--- | The collection of extracted parameters.
---
--- /See:/ 'googleCloudDialogflowV2QueryResultParameters' smart constructor.
-newtype GoogleCloudDialogflowV2QueryResultParameters =
-  GoogleCloudDialogflowV2QueryResultParameters'
-    { _gcdvqrpsAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryResultParameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrpsAddtional'
-googleCloudDialogflowV2QueryResultParameters
-    :: HashMap Text JSONValue -- ^ 'gcdvqrpsAddtional'
-    -> GoogleCloudDialogflowV2QueryResultParameters
-googleCloudDialogflowV2QueryResultParameters pGcdvqrpsAddtional_ =
-  GoogleCloudDialogflowV2QueryResultParameters'
-    {_gcdvqrpsAddtional = _Coerce # pGcdvqrpsAddtional_}
-
-
--- | Properties of the object.
-gcdvqrpsAddtional :: Lens' GoogleCloudDialogflowV2QueryResultParameters (HashMap Text JSONValue)
-gcdvqrpsAddtional
-  = lens _gcdvqrpsAddtional
-      (\ s a -> s{_gcdvqrpsAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2QueryResultParameters
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2QueryResultParameters"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryResultParameters' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2QueryResultParameters
-         where
-        toJSON = toJSON . _gcdvqrpsAddtional
-
--- | The free-form diagnostic info. For example, this field could contain
--- webhook call latency. The string keys of the Struct\'s fields map can
--- change without notice.
---
--- /See:/ 'googleCloudDialogflowV2beta1QueryResultDiagnosticInfo' smart constructor.
-newtype GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo =
-  GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo'
-    { _gcdvqrdicAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrdicAddtional'
-googleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-    :: HashMap Text JSONValue -- ^ 'gcdvqrdicAddtional'
-    -> GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-googleCloudDialogflowV2beta1QueryResultDiagnosticInfo pGcdvqrdicAddtional_ =
-  GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo'
-    {_gcdvqrdicAddtional = _Coerce # pGcdvqrdicAddtional_}
-
-
--- | Properties of the object.
-gcdvqrdicAddtional :: Lens' GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo (HashMap Text JSONValue)
-gcdvqrdicAddtional
-  = lens _gcdvqrdicAddtional
-      (\ s a -> s{_gcdvqrdicAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo
-         where
-        toJSON = toJSON . _gcdvqrdicAddtional
-
--- | The request message for EntityTypes.BatchDeleteEntities.
---
--- /See:/ 'googleCloudDialogflowV2BatchDeleteEntitiesRequest' smart constructor.
-data GoogleCloudDialogflowV2BatchDeleteEntitiesRequest =
-  GoogleCloudDialogflowV2BatchDeleteEntitiesRequest'
-    { _gcdvbderLanguageCode :: !(Maybe Text)
-    , _gcdvbderEntityValues :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchDeleteEntitiesRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbderLanguageCode'
---
--- * 'gcdvbderEntityValues'
-googleCloudDialogflowV2BatchDeleteEntitiesRequest
-    :: GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-googleCloudDialogflowV2BatchDeleteEntitiesRequest =
-  GoogleCloudDialogflowV2BatchDeleteEntitiesRequest'
-    {_gcdvbderLanguageCode = Nothing, _gcdvbderEntityValues = Nothing}
-
-
--- | Optional. The language of entity synonyms defined in \`entities\`. If
--- not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-gcdvbderLanguageCode :: Lens' GoogleCloudDialogflowV2BatchDeleteEntitiesRequest (Maybe Text)
-gcdvbderLanguageCode
-  = lens _gcdvbderLanguageCode
-      (\ s a -> s{_gcdvbderLanguageCode = a})
-
--- | Required. The canonical \`values\` of the entities to delete. Note that
--- these are not fully-qualified names, i.e. they don\'t start with
--- \`projects\/\`.
-gcdvbderEntityValues :: Lens' GoogleCloudDialogflowV2BatchDeleteEntitiesRequest [Text]
-gcdvbderEntityValues
-  = lens _gcdvbderEntityValues
-      (\ s a -> s{_gcdvbderEntityValues = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchDeleteEntitiesRequest'
-                   <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "entityValues" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchDeleteEntitiesRequest'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvbderLanguageCode,
-                  ("entityValues" .=) <$> _gcdvbderEntityValues])
-
--- | The response message for Intents.BatchUpdateIntents.
---
--- /See:/ 'googleCloudDialogflowV2BatchUpdateIntentsResponse' smart constructor.
-newtype GoogleCloudDialogflowV2BatchUpdateIntentsResponse =
-  GoogleCloudDialogflowV2BatchUpdateIntentsResponse'
-    { _gIntents :: Maybe [GoogleCloudDialogflowV2Intent]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateIntentsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gIntents'
-googleCloudDialogflowV2BatchUpdateIntentsResponse
-    :: GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-googleCloudDialogflowV2BatchUpdateIntentsResponse =
-  GoogleCloudDialogflowV2BatchUpdateIntentsResponse' {_gIntents = Nothing}
-
-
--- | The collection of updated or created intents.
-gIntents :: Lens' GoogleCloudDialogflowV2BatchUpdateIntentsResponse [GoogleCloudDialogflowV2Intent]
-gIntents
-  = lens _gIntents (\ s a -> s{_gIntents = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchUpdateIntentsResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchUpdateIntentsResponse'
-                   <$> (o .:? "intents" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchUpdateIntentsResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchUpdateIntentsResponse'{..}
-          = object (catMaybes [("intents" .=) <$> _gIntents])
-
--- | The response message for EntityTypes.ListEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2ListEntityTypesResponse' smart constructor.
-data GoogleCloudDialogflowV2ListEntityTypesResponse =
-  GoogleCloudDialogflowV2ListEntityTypesResponse'
-    { _gcdvletrNextPageToken :: !(Maybe Text)
-    , _gcdvletrEntityTypes   :: !(Maybe [GoogleCloudDialogflowV2EntityType])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ListEntityTypesResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvletrNextPageToken'
---
--- * 'gcdvletrEntityTypes'
-googleCloudDialogflowV2ListEntityTypesResponse
-    :: GoogleCloudDialogflowV2ListEntityTypesResponse
-googleCloudDialogflowV2ListEntityTypesResponse =
-  GoogleCloudDialogflowV2ListEntityTypesResponse'
-    {_gcdvletrNextPageToken = Nothing, _gcdvletrEntityTypes = Nothing}
-
-
--- | Token to retrieve the next page of results, or empty if there are no
--- more results in the list.
-gcdvletrNextPageToken :: Lens' GoogleCloudDialogflowV2ListEntityTypesResponse (Maybe Text)
-gcdvletrNextPageToken
-  = lens _gcdvletrNextPageToken
-      (\ s a -> s{_gcdvletrNextPageToken = a})
-
--- | The list of agent entity types. There will be a maximum number of items
--- returned based on the page_size field in the request.
-gcdvletrEntityTypes :: Lens' GoogleCloudDialogflowV2ListEntityTypesResponse [GoogleCloudDialogflowV2EntityType]
-gcdvletrEntityTypes
-  = lens _gcdvletrEntityTypes
-      (\ s a -> s{_gcdvletrEntityTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2ListEntityTypesResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ListEntityTypesResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2ListEntityTypesResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "entityTypes" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ListEntityTypesResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2ListEntityTypesResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _gcdvletrNextPageToken,
-                  ("entityTypes" .=) <$> _gcdvletrEntityTypes])
-
--- | Represents a conversational agent.
---
--- /See:/ 'googleCloudDialogflowV2Agent' smart constructor.
-data GoogleCloudDialogflowV2Agent =
-  GoogleCloudDialogflowV2Agent'
-    { _gcdvaParent                  :: !(Maybe Text)
-    , _gcdvaDefaultLanguageCode     :: !(Maybe Text)
-    , _gcdvaEnableLogging           :: !(Maybe Bool)
-    , _gcdvaClassificationThreshold :: !(Maybe (Textual Double))
-    , _gcdvaAvatarURI               :: !(Maybe Text)
-    , _gcdvaSupportedLanguageCodes  :: !(Maybe [Text])
-    , _gcdvaDisplayName             :: !(Maybe Text)
-    , _gcdvaMatchMode               :: !(Maybe GoogleCloudDialogflowV2AgentMatchMode)
-    , _gcdvaTimeZone                :: !(Maybe Text)
-    , _gcdvaDescription             :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2Agent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvaParent'
---
--- * 'gcdvaDefaultLanguageCode'
---
--- * 'gcdvaEnableLogging'
---
--- * 'gcdvaClassificationThreshold'
---
--- * 'gcdvaAvatarURI'
---
--- * 'gcdvaSupportedLanguageCodes'
---
--- * 'gcdvaDisplayName'
---
--- * 'gcdvaMatchMode'
---
--- * 'gcdvaTimeZone'
---
--- * 'gcdvaDescription'
-googleCloudDialogflowV2Agent
-    :: GoogleCloudDialogflowV2Agent
-googleCloudDialogflowV2Agent =
-  GoogleCloudDialogflowV2Agent'
-    { _gcdvaParent = Nothing
-    , _gcdvaDefaultLanguageCode = Nothing
-    , _gcdvaEnableLogging = Nothing
-    , _gcdvaClassificationThreshold = Nothing
-    , _gcdvaAvatarURI = Nothing
-    , _gcdvaSupportedLanguageCodes = Nothing
-    , _gcdvaDisplayName = Nothing
-    , _gcdvaMatchMode = Nothing
-    , _gcdvaTimeZone = Nothing
-    , _gcdvaDescription = Nothing
-    }
-
-
--- | Required. The project of this agent. Format: \`projects\/\`.
-gcdvaParent :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaParent
-  = lens _gcdvaParent (\ s a -> s{_gcdvaParent = a})
-
--- | Required. The default language of the agent as a language tag. See
--- [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes. This field cannot
--- be set by the \`Update\` method.
-gcdvaDefaultLanguageCode :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaDefaultLanguageCode
-  = lens _gcdvaDefaultLanguageCode
-      (\ s a -> s{_gcdvaDefaultLanguageCode = a})
-
--- | Optional. Determines whether this agent should log conversation queries.
-gcdvaEnableLogging :: Lens' GoogleCloudDialogflowV2Agent (Maybe Bool)
-gcdvaEnableLogging
-  = lens _gcdvaEnableLogging
-      (\ s a -> s{_gcdvaEnableLogging = a})
-
--- | Optional. To filter out false positive results and still get variety in
--- matched natural language inputs for your agent, you can tune the machine
--- learning classification threshold. If the returned score value is less
--- than the threshold value, then a fallback intent will be triggered or,
--- if there are no fallback intents defined, no intent will be triggered.
--- The score values range from 0.0 (completely uncertain) to 1.0
--- (completely certain). If set to 0.0, the default of 0.3 is used.
-gcdvaClassificationThreshold :: Lens' GoogleCloudDialogflowV2Agent (Maybe Double)
-gcdvaClassificationThreshold
-  = lens _gcdvaClassificationThreshold
-      (\ s a -> s{_gcdvaClassificationThreshold = a})
-      . mapping _Coerce
-
--- | Optional. The URI of the agent\'s avatar. Avatars are used throughout
--- the Dialogflow console and in the self-hosted [Web
--- Demo](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/integrations\/web-demo)
--- integration.
-gcdvaAvatarURI :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaAvatarURI
-  = lens _gcdvaAvatarURI
-      (\ s a -> s{_gcdvaAvatarURI = a})
-
--- | Optional. The list of all languages supported by this agent (except for
--- the \`default_language_code\`).
-gcdvaSupportedLanguageCodes :: Lens' GoogleCloudDialogflowV2Agent [Text]
-gcdvaSupportedLanguageCodes
-  = lens _gcdvaSupportedLanguageCodes
-      (\ s a -> s{_gcdvaSupportedLanguageCodes = a})
-      . _Default
-      . _Coerce
-
--- | Required. The name of this agent.
-gcdvaDisplayName :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaDisplayName
-  = lens _gcdvaDisplayName
-      (\ s a -> s{_gcdvaDisplayName = a})
-
--- | Optional. Determines how intents are detected from user queries.
-gcdvaMatchMode :: Lens' GoogleCloudDialogflowV2Agent (Maybe GoogleCloudDialogflowV2AgentMatchMode)
-gcdvaMatchMode
-  = lens _gcdvaMatchMode
-      (\ s a -> s{_gcdvaMatchMode = a})
-
--- | Required. The time zone of this agent from the [time zone
--- database](https:\/\/www.iana.org\/time-zones), e.g., America\/New_York,
--- Europe\/Paris.
-gcdvaTimeZone :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaTimeZone
-  = lens _gcdvaTimeZone
-      (\ s a -> s{_gcdvaTimeZone = a})
-
--- | Optional. The description of this agent. The maximum length is 500
--- characters. If exceeded, the request is rejected.
-gcdvaDescription :: Lens' GoogleCloudDialogflowV2Agent (Maybe Text)
-gcdvaDescription
-  = lens _gcdvaDescription
-      (\ s a -> s{_gcdvaDescription = a})
-
-instance FromJSON GoogleCloudDialogflowV2Agent where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2Agent"
-              (\ o ->
-                 GoogleCloudDialogflowV2Agent' <$>
-                   (o .:? "parent") <*> (o .:? "defaultLanguageCode")
-                     <*> (o .:? "enableLogging")
-                     <*> (o .:? "classificationThreshold")
-                     <*> (o .:? "avatarUri")
-                     <*> (o .:? "supportedLanguageCodes" .!= mempty)
-                     <*> (o .:? "displayName")
-                     <*> (o .:? "matchMode")
-                     <*> (o .:? "timeZone")
-                     <*> (o .:? "description"))
-
-instance ToJSON GoogleCloudDialogflowV2Agent where
-        toJSON GoogleCloudDialogflowV2Agent'{..}
-          = object
-              (catMaybes
-                 [("parent" .=) <$> _gcdvaParent,
-                  ("defaultLanguageCode" .=) <$>
-                    _gcdvaDefaultLanguageCode,
-                  ("enableLogging" .=) <$> _gcdvaEnableLogging,
-                  ("classificationThreshold" .=) <$>
-                    _gcdvaClassificationThreshold,
-                  ("avatarUri" .=) <$> _gcdvaAvatarURI,
-                  ("supportedLanguageCodes" .=) <$>
-                    _gcdvaSupportedLanguageCodes,
-                  ("displayName" .=) <$> _gcdvaDisplayName,
-                  ("matchMode" .=) <$> _gcdvaMatchMode,
-                  ("timeZone" .=) <$> _gcdvaTimeZone,
-                  ("description" .=) <$> _gcdvaDescription])
-
--- | Corresponds to the \`Response\` field in the Dialogflow console.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessage' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessage =
-  GoogleCloudDialogflowV2beta1IntentMessage'
-    { _gcdvimCard                      :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageCard)
-    , _gcdvimImage                     :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-    , _gcdvimPlatform                  :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessagePlatform)
-    , _gcdvimLinkOutSuggestion         :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion)
-    , _gcdvimText                      :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageText)
-    , _gcdvimCarouselSelect            :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect)
-    , _gcdvimTelephonySynthesizeSpeech :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech)
-    , _gcdvimSimpleResponses           :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses)
-    , _gcdvimPayload                   :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessagePayload)
-    , _gcdvimTelephonyTransferCall     :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall)
-    , _gcdvimSuggestions               :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageSuggestions)
-    , _gcdvimListSelect                :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageListSelect)
-    , _gcdvimTelephonyPlayAudio        :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio)
-    , _gcdvimBasicCard                 :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageBasicCard)
-    , _gcdvimQuickReplies              :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageQuickReplies)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimCard'
---
--- * 'gcdvimImage'
---
--- * 'gcdvimPlatform'
---
--- * 'gcdvimLinkOutSuggestion'
---
--- * 'gcdvimText'
---
--- * 'gcdvimCarouselSelect'
---
--- * 'gcdvimTelephonySynthesizeSpeech'
---
--- * 'gcdvimSimpleResponses'
---
--- * 'gcdvimPayload'
---
--- * 'gcdvimTelephonyTransferCall'
---
--- * 'gcdvimSuggestions'
---
--- * 'gcdvimListSelect'
---
--- * 'gcdvimTelephonyPlayAudio'
---
--- * 'gcdvimBasicCard'
---
--- * 'gcdvimQuickReplies'
-googleCloudDialogflowV2beta1IntentMessage
-    :: GoogleCloudDialogflowV2beta1IntentMessage
-googleCloudDialogflowV2beta1IntentMessage =
-  GoogleCloudDialogflowV2beta1IntentMessage'
-    { _gcdvimCard = Nothing
-    , _gcdvimImage = Nothing
-    , _gcdvimPlatform = Nothing
-    , _gcdvimLinkOutSuggestion = Nothing
-    , _gcdvimText = Nothing
-    , _gcdvimCarouselSelect = Nothing
-    , _gcdvimTelephonySynthesizeSpeech = Nothing
-    , _gcdvimSimpleResponses = Nothing
-    , _gcdvimPayload = Nothing
-    , _gcdvimTelephonyTransferCall = Nothing
-    , _gcdvimSuggestions = Nothing
-    , _gcdvimListSelect = Nothing
-    , _gcdvimTelephonyPlayAudio = Nothing
-    , _gcdvimBasicCard = Nothing
-    , _gcdvimQuickReplies = Nothing
-    }
-
-
--- | Displays a card.
-gcdvimCard :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageCard)
-gcdvimCard
-  = lens _gcdvimCard (\ s a -> s{_gcdvimCard = a})
-
--- | Displays an image.
-gcdvimImage :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-gcdvimImage
-  = lens _gcdvimImage (\ s a -> s{_gcdvimImage = a})
-
--- | Optional. The platform that this message is intended for.
-gcdvimPlatform :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessagePlatform)
-gcdvimPlatform
-  = lens _gcdvimPlatform
-      (\ s a -> s{_gcdvimPlatform = a})
-
--- | Displays a link out suggestion chip for Actions on Google.
-gcdvimLinkOutSuggestion :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion)
-gcdvimLinkOutSuggestion
-  = lens _gcdvimLinkOutSuggestion
-      (\ s a -> s{_gcdvimLinkOutSuggestion = a})
-
--- | Returns a text response.
-gcdvimText :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageText)
-gcdvimText
-  = lens _gcdvimText (\ s a -> s{_gcdvimText = a})
-
--- | Displays a carousel card for Actions on Google.
-gcdvimCarouselSelect :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect)
-gcdvimCarouselSelect
-  = lens _gcdvimCarouselSelect
-      (\ s a -> s{_gcdvimCarouselSelect = a})
-
--- | Synthesizes speech in Telephony Gateway.
-gcdvimTelephonySynthesizeSpeech :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech)
-gcdvimTelephonySynthesizeSpeech
-  = lens _gcdvimTelephonySynthesizeSpeech
-      (\ s a -> s{_gcdvimTelephonySynthesizeSpeech = a})
-
--- | Returns a voice or text-only response for Actions on Google.
-gcdvimSimpleResponses :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses)
-gcdvimSimpleResponses
-  = lens _gcdvimSimpleResponses
-      (\ s a -> s{_gcdvimSimpleResponses = a})
-
--- | Returns a response containing a custom, platform-specific payload. See
--- the Intent.Message.Platform type for a description of the structure that
--- may be required for your platform.
-gcdvimPayload :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessagePayload)
-gcdvimPayload
-  = lens _gcdvimPayload
-      (\ s a -> s{_gcdvimPayload = a})
-
--- | Transfers the call in Telephony Gateway.
-gcdvimTelephonyTransferCall :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall)
-gcdvimTelephonyTransferCall
-  = lens _gcdvimTelephonyTransferCall
-      (\ s a -> s{_gcdvimTelephonyTransferCall = a})
-
--- | Displays suggestion chips for Actions on Google.
-gcdvimSuggestions :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageSuggestions)
-gcdvimSuggestions
-  = lens _gcdvimSuggestions
-      (\ s a -> s{_gcdvimSuggestions = a})
-
--- | Displays a list card for Actions on Google.
-gcdvimListSelect :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageListSelect)
-gcdvimListSelect
-  = lens _gcdvimListSelect
-      (\ s a -> s{_gcdvimListSelect = a})
-
--- | Plays audio from a file in Telephony Gateway.
-gcdvimTelephonyPlayAudio :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio)
-gcdvimTelephonyPlayAudio
-  = lens _gcdvimTelephonyPlayAudio
-      (\ s a -> s{_gcdvimTelephonyPlayAudio = a})
-
--- | Displays a basic card for Actions on Google.
-gcdvimBasicCard :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageBasicCard)
-gcdvimBasicCard
-  = lens _gcdvimBasicCard
-      (\ s a -> s{_gcdvimBasicCard = a})
-
--- | Displays quick replies.
-gcdvimQuickReplies :: Lens' GoogleCloudDialogflowV2beta1IntentMessage (Maybe GoogleCloudDialogflowV2beta1IntentMessageQuickReplies)
-gcdvimQuickReplies
-  = lens _gcdvimQuickReplies
-      (\ s a -> s{_gcdvimQuickReplies = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessage
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessage"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessage' <$>
-                   (o .:? "card") <*> (o .:? "image") <*>
-                     (o .:? "platform")
-                     <*> (o .:? "linkOutSuggestion")
-                     <*> (o .:? "text")
-                     <*> (o .:? "carouselSelect")
-                     <*> (o .:? "telephonySynthesizeSpeech")
-                     <*> (o .:? "simpleResponses")
-                     <*> (o .:? "payload")
-                     <*> (o .:? "telephonyTransferCall")
-                     <*> (o .:? "suggestions")
-                     <*> (o .:? "listSelect")
-                     <*> (o .:? "telephonyPlayAudio")
-                     <*> (o .:? "basicCard")
-                     <*> (o .:? "quickReplies"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessage
-         where
-        toJSON GoogleCloudDialogflowV2beta1IntentMessage'{..}
-          = object
-              (catMaybes
-                 [("card" .=) <$> _gcdvimCard,
-                  ("image" .=) <$> _gcdvimImage,
-                  ("platform" .=) <$> _gcdvimPlatform,
-                  ("linkOutSuggestion" .=) <$>
-                    _gcdvimLinkOutSuggestion,
-                  ("text" .=) <$> _gcdvimText,
-                  ("carouselSelect" .=) <$> _gcdvimCarouselSelect,
-                  ("telephonySynthesizeSpeech" .=) <$>
-                    _gcdvimTelephonySynthesizeSpeech,
-                  ("simpleResponses" .=) <$> _gcdvimSimpleResponses,
-                  ("payload" .=) <$> _gcdvimPayload,
-                  ("telephonyTransferCall" .=) <$>
-                    _gcdvimTelephonyTransferCall,
-                  ("suggestions" .=) <$> _gcdvimSuggestions,
-                  ("listSelect" .=) <$> _gcdvimListSelect,
-                  ("telephonyPlayAudio" .=) <$>
-                    _gcdvimTelephonyPlayAudio,
-                  ("basicCard" .=) <$> _gcdvimBasicCard,
-                  ("quickReplies" .=) <$> _gcdvimQuickReplies])
-
--- | Additional info about the select item for when it is triggered in a
--- dialog.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageSelectItemInfo' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageSelectItemInfo =
-  GoogleCloudDialogflowV2IntentMessageSelectItemInfo'
-    { _gcdvimsiiKey      :: !(Maybe Text)
-    , _gcdvimsiiSynonyms :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSelectItemInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimsiiKey'
---
--- * 'gcdvimsiiSynonyms'
-googleCloudDialogflowV2IntentMessageSelectItemInfo
-    :: GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-googleCloudDialogflowV2IntentMessageSelectItemInfo =
-  GoogleCloudDialogflowV2IntentMessageSelectItemInfo'
-    {_gcdvimsiiKey = Nothing, _gcdvimsiiSynonyms = Nothing}
-
-
--- | Required. A unique key that will be sent back to the agent if this
--- response is given.
-gcdvimsiiKey :: Lens' GoogleCloudDialogflowV2IntentMessageSelectItemInfo (Maybe Text)
-gcdvimsiiKey
-  = lens _gcdvimsiiKey (\ s a -> s{_gcdvimsiiKey = a})
-
--- | Optional. A list of synonyms that can also be used to trigger this item
--- in dialog.
-gcdvimsiiSynonyms :: Lens' GoogleCloudDialogflowV2IntentMessageSelectItemInfo [Text]
-gcdvimsiiSynonyms
-  = lens _gcdvimsiiSynonyms
-      (\ s a -> s{_gcdvimsiiSynonyms = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageSelectItemInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageSelectItemInfo'
-                   <$> (o .:? "key") <*> (o .:? "synonyms" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageSelectItemInfo
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageSelectItemInfo'{..}
-          = object
-              (catMaybes
-                 [("key" .=) <$> _gcdvimsiiKey,
-                  ("synonyms" .=) <$> _gcdvimsiiSynonyms])
-
--- | The sentiment, such as positive\/negative feeling or association, for a
--- unit of analysis, such as the query text.
---
--- /See:/ 'googleCloudDialogflowV2beta1Sentiment' smart constructor.
-data GoogleCloudDialogflowV2beta1Sentiment =
-  GoogleCloudDialogflowV2beta1Sentiment'
-    { _gcdvsScore     :: !(Maybe (Textual Double))
-    , _gcdvsMagnitude :: !(Maybe (Textual Double))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1Sentiment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvsScore'
---
--- * 'gcdvsMagnitude'
-googleCloudDialogflowV2beta1Sentiment
-    :: GoogleCloudDialogflowV2beta1Sentiment
-googleCloudDialogflowV2beta1Sentiment =
-  GoogleCloudDialogflowV2beta1Sentiment'
-    {_gcdvsScore = Nothing, _gcdvsMagnitude = Nothing}
-
-
--- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive
--- sentiment).
-gcdvsScore :: Lens' GoogleCloudDialogflowV2beta1Sentiment (Maybe Double)
-gcdvsScore
-  = lens _gcdvsScore (\ s a -> s{_gcdvsScore = a}) .
-      mapping _Coerce
-
--- | A non-negative number in the [0, +inf) range, which represents the
--- absolute magnitude of sentiment, regardless of score (positive or
--- negative).
-gcdvsMagnitude :: Lens' GoogleCloudDialogflowV2beta1Sentiment (Maybe Double)
-gcdvsMagnitude
-  = lens _gcdvsMagnitude
-      (\ s a -> s{_gcdvsMagnitude = a})
-      . mapping _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1Sentiment
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2beta1Sentiment"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1Sentiment' <$>
-                   (o .:? "score") <*> (o .:? "magnitude"))
-
-instance ToJSON GoogleCloudDialogflowV2beta1Sentiment
-         where
-        toJSON GoogleCloudDialogflowV2beta1Sentiment'{..}
-          = object
-              (catMaybes
-                 [("score" .=) <$> _gcdvsScore,
-                  ("magnitude" .=) <$> _gcdvsMagnitude])
-
--- | The request message for EntityTypes.BatchDeleteEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2BatchDeleteEntityTypesRequest' smart constructor.
-newtype GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest =
-  GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest'
-    { _gcdvbdetrEntityTypeNames :: Maybe [Text]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbdetrEntityTypeNames'
-googleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    :: GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-googleCloudDialogflowV2BatchDeleteEntityTypesRequest =
-  GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest'
-    {_gcdvbdetrEntityTypeNames = Nothing}
-
-
--- | Required. The names entity types to delete. All names must point to the
--- same agent as \`parent\`.
-gcdvbdetrEntityTypeNames :: Lens' GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest [Text]
-gcdvbdetrEntityTypeNames
-  = lens _gcdvbdetrEntityTypeNames
-      (\ s a -> s{_gcdvbdetrEntityTypeNames = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest'
-                   <$> (o .:? "entityTypeNames" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest'{..}
-          = object
-              (catMaybes
-                 [("entityTypeNames" .=) <$>
-                    _gcdvbdetrEntityTypeNames])
-
--- | Represents the query input. It can contain either: 1. An audio config
--- which instructs the speech recognizer how to process the speech audio.
--- 2. A conversational query in the form of text,. 3. An event that
--- specifies which intent to trigger.
---
--- /See:/ 'googleCloudDialogflowV2QueryInput' smart constructor.
-data GoogleCloudDialogflowV2QueryInput =
-  GoogleCloudDialogflowV2QueryInput'
-    { _gcdvqiAudioConfig :: !(Maybe GoogleCloudDialogflowV2InputAudioConfig)
-    , _gcdvqiEvent       :: !(Maybe GoogleCloudDialogflowV2EventInput)
-    , _gcdvqiText        :: !(Maybe GoogleCloudDialogflowV2TextInput)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryInput' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqiAudioConfig'
---
--- * 'gcdvqiEvent'
---
--- * 'gcdvqiText'
-googleCloudDialogflowV2QueryInput
-    :: GoogleCloudDialogflowV2QueryInput
-googleCloudDialogflowV2QueryInput =
-  GoogleCloudDialogflowV2QueryInput'
-    { _gcdvqiAudioConfig = Nothing
-    , _gcdvqiEvent = Nothing
-    , _gcdvqiText = Nothing
-    }
-
-
--- | Instructs the speech recognizer how to process the speech audio.
-gcdvqiAudioConfig :: Lens' GoogleCloudDialogflowV2QueryInput (Maybe GoogleCloudDialogflowV2InputAudioConfig)
-gcdvqiAudioConfig
-  = lens _gcdvqiAudioConfig
-      (\ s a -> s{_gcdvqiAudioConfig = a})
-
--- | The event to be processed.
-gcdvqiEvent :: Lens' GoogleCloudDialogflowV2QueryInput (Maybe GoogleCloudDialogflowV2EventInput)
-gcdvqiEvent
-  = lens _gcdvqiEvent (\ s a -> s{_gcdvqiEvent = a})
-
--- | The natural language text to be processed.
-gcdvqiText :: Lens' GoogleCloudDialogflowV2QueryInput (Maybe GoogleCloudDialogflowV2TextInput)
-gcdvqiText
-  = lens _gcdvqiText (\ s a -> s{_gcdvqiText = a})
-
-instance FromJSON GoogleCloudDialogflowV2QueryInput
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2QueryInput"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryInput' <$>
-                   (o .:? "audioConfig") <*> (o .:? "event") <*>
-                     (o .:? "text"))
-
-instance ToJSON GoogleCloudDialogflowV2QueryInput
-         where
-        toJSON GoogleCloudDialogflowV2QueryInput'{..}
-          = object
-              (catMaybes
-                 [("audioConfig" .=) <$> _gcdvqiAudioConfig,
-                  ("event" .=) <$> _gcdvqiEvent,
-                  ("text" .=) <$> _gcdvqiText])
-
--- | The request message for Agents.ExportAgent.
---
--- /See:/ 'googleCloudDialogflowV2ExportAgentRequest' smart constructor.
-newtype GoogleCloudDialogflowV2ExportAgentRequest =
-  GoogleCloudDialogflowV2ExportAgentRequest'
-    { _gcdvearAgentURI :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ExportAgentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvearAgentURI'
-googleCloudDialogflowV2ExportAgentRequest
-    :: GoogleCloudDialogflowV2ExportAgentRequest
-googleCloudDialogflowV2ExportAgentRequest =
-  GoogleCloudDialogflowV2ExportAgentRequest' {_gcdvearAgentURI = Nothing}
-
-
--- | Optional. The [Google Cloud
--- Storage](https:\/\/cloud.google.com\/storage\/docs\/) URI to export the
--- agent to. The format of this URI must be \`gs:\/\/\/\`. If left
--- unspecified, the serialized agent is returned inline.
-gcdvearAgentURI :: Lens' GoogleCloudDialogflowV2ExportAgentRequest (Maybe Text)
-gcdvearAgentURI
-  = lens _gcdvearAgentURI
-      (\ s a -> s{_gcdvearAgentURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2ExportAgentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ExportAgentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2ExportAgentRequest' <$>
-                   (o .:? "agentUri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ExportAgentRequest
-         where
-        toJSON GoogleCloudDialogflowV2ExportAgentRequest'{..}
-          = object
-              (catMaybes [("agentUri" .=) <$> _gcdvearAgentURI])
-
--- | The card for presenting a carousel of options to select from.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageCarouselSelect' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect =
-  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect'
-    { _gcdvimcsItems :: Maybe [GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimcsItems'
-googleCloudDialogflowV2beta1IntentMessageCarouselSelect
-    :: GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-googleCloudDialogflowV2beta1IntentMessageCarouselSelect =
-  GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect'
-    {_gcdvimcsItems = Nothing}
-
-
--- | Required. Carousel items.
-gcdvimcsItems :: Lens' GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect [GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem]
-gcdvimcsItems
-  = lens _gcdvimcsItems
-      (\ s a -> s{_gcdvimcsItems = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect'
-                   <$> (o .:? "items" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect'{..}
-          = object
-              (catMaybes [("items" .=) <$> _gcdvimcsItems])
-
--- | Represents a context.
---
--- /See:/ 'googleCloudDialogflowV2beta1Context' smart constructor.
-data GoogleCloudDialogflowV2beta1Context =
-  GoogleCloudDialogflowV2beta1Context'
-    { _gcdvcLifespanCount :: !(Maybe (Textual Int32))
-    , _gcdvcName          :: !(Maybe Text)
-    , _gcdvcParameters    :: !(Maybe GoogleCloudDialogflowV2beta1ContextParameters)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1Context' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvcLifespanCount'
---
--- * 'gcdvcName'
---
--- * 'gcdvcParameters'
-googleCloudDialogflowV2beta1Context
-    :: GoogleCloudDialogflowV2beta1Context
-googleCloudDialogflowV2beta1Context =
-  GoogleCloudDialogflowV2beta1Context'
-    { _gcdvcLifespanCount = Nothing
-    , _gcdvcName = Nothing
-    , _gcdvcParameters = Nothing
-    }
-
-
--- | Optional. The number of conversational query requests after which the
--- context expires. If set to \`0\` (the default) the context expires
--- immediately. Contexts expire automatically after 20 minutes if there are
--- no matching queries.
-gcdvcLifespanCount :: Lens' GoogleCloudDialogflowV2beta1Context (Maybe Int32)
-gcdvcLifespanCount
-  = lens _gcdvcLifespanCount
-      (\ s a -> s{_gcdvcLifespanCount = a})
-      . mapping _Coerce
-
--- | Required. The unique identifier of the context. Format:
--- \`projects\/\/agent\/sessions\/\/contexts\/\`, or
--- \`projects\/\/agent\/environments\/\/users\/\/sessions\/\/contexts\/\`.
--- The \`Context ID\` is always converted to lowercase, may only contain
--- characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
--- \`Environment ID\` is not specified, we assume default \'draft\'
--- environment. If \`User ID\` is not specified, we assume default \'-\'
--- user.
-gcdvcName :: Lens' GoogleCloudDialogflowV2beta1Context (Maybe Text)
-gcdvcName
-  = lens _gcdvcName (\ s a -> s{_gcdvcName = a})
-
--- | Optional. The collection of parameters associated with this context.
--- Refer to [this
--- doc](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/intents-actions-parameters)
--- for syntax.
-gcdvcParameters :: Lens' GoogleCloudDialogflowV2beta1Context (Maybe GoogleCloudDialogflowV2beta1ContextParameters)
-gcdvcParameters
-  = lens _gcdvcParameters
-      (\ s a -> s{_gcdvcParameters = a})
-
-instance FromJSON GoogleCloudDialogflowV2beta1Context
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2beta1Context"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1Context' <$>
-                   (o .:? "lifespanCount") <*> (o .:? "name") <*>
-                     (o .:? "parameters"))
-
-instance ToJSON GoogleCloudDialogflowV2beta1Context
-         where
-        toJSON GoogleCloudDialogflowV2beta1Context'{..}
-          = object
-              (catMaybes
-                 [("lifespanCount" .=) <$> _gcdvcLifespanCount,
-                  ("name" .=) <$> _gcdvcName,
-                  ("parameters" .=) <$> _gcdvcParameters])
-
--- | The request message for EntityTypes.BatchUpdateEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2BatchUpdateEntityTypesRequest' smart constructor.
-data GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest =
-  GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest'
-    { _gcdvbuetrLanguageCode          :: !(Maybe Text)
-    , _gcdvbuetrUpdateMask            :: !(Maybe GFieldMask)
-    , _gcdvbuetrEntityTypeBatchInline :: !(Maybe GoogleCloudDialogflowV2EntityTypeBatch)
-    , _gcdvbuetrEntityTypeBatchURI    :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvbuetrLanguageCode'
---
--- * 'gcdvbuetrUpdateMask'
---
--- * 'gcdvbuetrEntityTypeBatchInline'
---
--- * 'gcdvbuetrEntityTypeBatchURI'
-googleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    :: GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-googleCloudDialogflowV2BatchUpdateEntityTypesRequest =
-  GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest'
-    { _gcdvbuetrLanguageCode = Nothing
-    , _gcdvbuetrUpdateMask = Nothing
-    , _gcdvbuetrEntityTypeBatchInline = Nothing
-    , _gcdvbuetrEntityTypeBatchURI = Nothing
-    }
-
-
--- | Optional. The language of entity synonyms defined in \`entity_types\`.
--- If not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-gcdvbuetrLanguageCode :: Lens' GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest (Maybe Text)
-gcdvbuetrLanguageCode
-  = lens _gcdvbuetrLanguageCode
-      (\ s a -> s{_gcdvbuetrLanguageCode = a})
-
--- | Optional. The mask to control which fields get updated.
-gcdvbuetrUpdateMask :: Lens' GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest (Maybe GFieldMask)
-gcdvbuetrUpdateMask
-  = lens _gcdvbuetrUpdateMask
-      (\ s a -> s{_gcdvbuetrUpdateMask = a})
-
--- | The collection of entity types to update or create.
-gcdvbuetrEntityTypeBatchInline :: Lens' GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest (Maybe GoogleCloudDialogflowV2EntityTypeBatch)
-gcdvbuetrEntityTypeBatchInline
-  = lens _gcdvbuetrEntityTypeBatchInline
-      (\ s a -> s{_gcdvbuetrEntityTypeBatchInline = a})
-
--- | The URI to a Google Cloud Storage file containing entity types to update
--- or create. The file format can either be a serialized proto (of
--- EntityBatch type) or a JSON object. Note: The URI must start with
--- \"gs:\/\/\".
-gcdvbuetrEntityTypeBatchURI :: Lens' GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest (Maybe Text)
-gcdvbuetrEntityTypeBatchURI
-  = lens _gcdvbuetrEntityTypeBatchURI
-      (\ s a -> s{_gcdvbuetrEntityTypeBatchURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest'
-                   <$>
-                   (o .:? "languageCode") <*> (o .:? "updateMask") <*>
-                     (o .:? "entityTypeBatchInline")
-                     <*> (o .:? "entityTypeBatchUri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvbuetrLanguageCode,
-                  ("updateMask" .=) <$> _gcdvbuetrUpdateMask,
-                  ("entityTypeBatchInline" .=) <$>
-                    _gcdvbuetrEntityTypeBatchInline,
-                  ("entityTypeBatchUri" .=) <$>
-                    _gcdvbuetrEntityTypeBatchURI])
-
--- | The normal response of the operation in case of success. If the original
--- method returns no data on success, such as \`Delete\`, the response is
--- \`google.protobuf.Empty\`. If the original method is standard
--- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.
--- For other methods, the response should have the type \`XxxResponse\`,
--- where \`Xxx\` is the original method name. For example, if the original
--- method name is \`TakeSnapshot()\`, the inferred response type is
--- \`TakeSnapshotResponse\`.
---
--- /See:/ 'googleLongrunningOperationResponse' smart constructor.
-newtype GoogleLongrunningOperationResponse =
-  GoogleLongrunningOperationResponse'
-    { _glorAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleLongrunningOperationResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'glorAddtional'
-googleLongrunningOperationResponse
-    :: HashMap Text JSONValue -- ^ 'glorAddtional'
-    -> GoogleLongrunningOperationResponse
-googleLongrunningOperationResponse pGlorAddtional_ =
-  GoogleLongrunningOperationResponse'
-    {_glorAddtional = _Coerce # pGlorAddtional_}
-
-
--- | Properties of the object. Contains field \'type with type URL.
-glorAddtional :: Lens' GoogleLongrunningOperationResponse (HashMap Text JSONValue)
-glorAddtional
-  = lens _glorAddtional
-      (\ s a -> s{_glorAddtional = a})
-      . _Coerce
-
-instance FromJSON GoogleLongrunningOperationResponse
-         where
-        parseJSON
-          = withObject "GoogleLongrunningOperationResponse"
-              (\ o ->
-                 GoogleLongrunningOperationResponse' <$>
-                   (parseJSONObject o))
-
-instance ToJSON GoogleLongrunningOperationResponse
-         where
-        toJSON = toJSON . _glorAddtional
-
--- | Synthesizes speech and plays back the synthesized audio to the caller in
--- Telephony Gateway. Telephony Gateway takes the synthesizer settings from
--- \`DetectIntentResponse.output_audio_config\` which can either be set at
--- request-level or can come from the agent-level synthesizer config.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech'
-    { _gcdvimtssText :: !(Maybe Text)
-    , _gcdvimtssSsml :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimtssText'
---
--- * 'gcdvimtssSsml'
-googleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-    :: GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-googleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech'
-    {_gcdvimtssText = Nothing, _gcdvimtssSsml = Nothing}
-
-
--- | The raw text to be synthesized.
-gcdvimtssText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech (Maybe Text)
-gcdvimtssText
-  = lens _gcdvimtssText
-      (\ s a -> s{_gcdvimtssText = a})
-
--- | The SSML to be synthesized. For more information, see
--- [SSML](https:\/\/developers.google.com\/actions\/reference\/ssml).
-gcdvimtssSsml :: Lens' GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech (Maybe Text)
-gcdvimtssSsml
-  = lens _gcdvimtssSsml
-      (\ s a -> s{_gcdvimtssSsml = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech'
-                   <$> (o .:? "text") <*> (o .:? "ssml"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech'{..}
-          = object
-              (catMaybes
-                 [("text" .=) <$> _gcdvimtssText,
-                  ("ssml" .=) <$> _gcdvimtssSsml])
-
--- | An item in the list.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageListSelectItem' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageListSelectItem =
-  GoogleCloudDialogflowV2beta1IntentMessageListSelectItem'
-    { _gcdvimlsicImage       :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-    , _gcdvimlsicTitle       :: !(Maybe Text)
-    , _gcdvimlsicDescription :: !(Maybe Text)
-    , _gcdvimlsicInfo        :: !(Maybe GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageListSelectItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimlsicImage'
---
--- * 'gcdvimlsicTitle'
---
--- * 'gcdvimlsicDescription'
---
--- * 'gcdvimlsicInfo'
-googleCloudDialogflowV2beta1IntentMessageListSelectItem
-    :: GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-googleCloudDialogflowV2beta1IntentMessageListSelectItem =
-  GoogleCloudDialogflowV2beta1IntentMessageListSelectItem'
-    { _gcdvimlsicImage = Nothing
-    , _gcdvimlsicTitle = Nothing
-    , _gcdvimlsicDescription = Nothing
-    , _gcdvimlsicInfo = Nothing
-    }
-
-
--- | Optional. The image to display.
-gcdvimlsicImage :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (Maybe GoogleCloudDialogflowV2beta1IntentMessageImage)
-gcdvimlsicImage
-  = lens _gcdvimlsicImage
-      (\ s a -> s{_gcdvimlsicImage = a})
-
--- | Required. The title of the list item.
-gcdvimlsicTitle :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (Maybe Text)
-gcdvimlsicTitle
-  = lens _gcdvimlsicTitle
-      (\ s a -> s{_gcdvimlsicTitle = a})
-
--- | Optional. The main text describing the item.
-gcdvimlsicDescription :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (Maybe Text)
-gcdvimlsicDescription
-  = lens _gcdvimlsicDescription
-      (\ s a -> s{_gcdvimlsicDescription = a})
-
--- | Required. Additional information about this option.
-gcdvimlsicInfo :: Lens' GoogleCloudDialogflowV2beta1IntentMessageListSelectItem (Maybe GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo)
-gcdvimlsicInfo
-  = lens _gcdvimlsicInfo
-      (\ s a -> s{_gcdvimlsicInfo = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageListSelectItem'
-                   <$>
-                   (o .:? "image") <*> (o .:? "title") <*>
-                     (o .:? "description")
-                     <*> (o .:? "info"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageListSelectItem'{..}
-          = object
-              (catMaybes
-                 [("image" .=) <$> _gcdvimlsicImage,
-                  ("title" .=) <$> _gcdvimlsicTitle,
-                  ("description" .=) <$> _gcdvimlsicDescription,
-                  ("info" .=) <$> _gcdvimlsicInfo])
-
--- | The suggestion chip message that the user can tap to quickly post a
--- reply to the conversation.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageSuggestion' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageSuggestion =
-  GoogleCloudDialogflowV2IntentMessageSuggestion'
-    { _gcdvimscTitle :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageSuggestion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimscTitle'
-googleCloudDialogflowV2IntentMessageSuggestion
-    :: GoogleCloudDialogflowV2IntentMessageSuggestion
-googleCloudDialogflowV2IntentMessageSuggestion =
-  GoogleCloudDialogflowV2IntentMessageSuggestion' {_gcdvimscTitle = Nothing}
-
-
--- | Required. The text shown the in the suggestion chip.
-gcdvimscTitle :: Lens' GoogleCloudDialogflowV2IntentMessageSuggestion (Maybe Text)
-gcdvimscTitle
-  = lens _gcdvimscTitle
-      (\ s a -> s{_gcdvimscTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageSuggestion
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageSuggestion"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageSuggestion' <$>
-                   (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageSuggestion
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageSuggestion'{..}
-          = object
-              (catMaybes [("title" .=) <$> _gcdvimscTitle])
-
--- | An **entity entry** for an associated entity type.
---
--- /See:/ 'googleCloudDialogflowV2beta1EntityTypeEntity' smart constructor.
-data GoogleCloudDialogflowV2beta1EntityTypeEntity =
-  GoogleCloudDialogflowV2beta1EntityTypeEntity'
-    { _gcdveteValue    :: !(Maybe Text)
-    , _gcdveteSynonyms :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1EntityTypeEntity' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdveteValue'
---
--- * 'gcdveteSynonyms'
-googleCloudDialogflowV2beta1EntityTypeEntity
-    :: GoogleCloudDialogflowV2beta1EntityTypeEntity
-googleCloudDialogflowV2beta1EntityTypeEntity =
-  GoogleCloudDialogflowV2beta1EntityTypeEntity'
-    {_gcdveteValue = Nothing, _gcdveteSynonyms = Nothing}
-
-
--- | Required. The primary value associated with this entity entry. For
--- example, if the entity type is *vegetable*, the value could be
--- *scallions*. For \`KIND_MAP\` entity types: * A canonical value to be
--- used in place of synonyms. For \`KIND_LIST\` entity types: * A string
--- that can contain references to other entity types (with or without
--- aliases).
-gcdveteValue :: Lens' GoogleCloudDialogflowV2beta1EntityTypeEntity (Maybe Text)
-gcdveteValue
-  = lens _gcdveteValue (\ s a -> s{_gcdveteValue = a})
-
--- | Required. A collection of value synonyms. For example, if the entity
--- type is *vegetable*, and \`value\` is *scallions*, a synonym could be
--- *green onions*. For \`KIND_LIST\` entity types: * This collection must
--- contain exactly one synonym equal to \`value\`.
-gcdveteSynonyms :: Lens' GoogleCloudDialogflowV2beta1EntityTypeEntity [Text]
-gcdveteSynonyms
-  = lens _gcdveteSynonyms
-      (\ s a -> s{_gcdveteSynonyms = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1EntityTypeEntity
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1EntityTypeEntity"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1EntityTypeEntity' <$>
-                   (o .:? "value") <*> (o .:? "synonyms" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1EntityTypeEntity
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1EntityTypeEntity'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _gcdveteValue,
-                  ("synonyms" .=) <$> _gcdveteSynonyms])
-
--- | Represents an entity type. Entity types serve as a tool for extracting
--- parameter values from natural language queries.
---
--- /See:/ 'googleCloudDialogflowV2EntityType' smart constructor.
-data GoogleCloudDialogflowV2EntityType =
-  GoogleCloudDialogflowV2EntityType'
-    { _gcdvetEntities          :: !(Maybe [GoogleCloudDialogflowV2EntityTypeEntity])
-    , _gcdvetKind              :: !(Maybe GoogleCloudDialogflowV2EntityTypeKind)
-    , _gcdvetName              :: !(Maybe Text)
-    , _gcdvetAutoExpansionMode :: !(Maybe GoogleCloudDialogflowV2EntityTypeAutoExpansionMode)
-    , _gcdvetDisplayName       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2EntityType' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvetEntities'
---
--- * 'gcdvetKind'
---
--- * 'gcdvetName'
---
--- * 'gcdvetAutoExpansionMode'
---
--- * 'gcdvetDisplayName'
-googleCloudDialogflowV2EntityType
-    :: GoogleCloudDialogflowV2EntityType
-googleCloudDialogflowV2EntityType =
-  GoogleCloudDialogflowV2EntityType'
-    { _gcdvetEntities = Nothing
-    , _gcdvetKind = Nothing
-    , _gcdvetName = Nothing
-    , _gcdvetAutoExpansionMode = Nothing
-    , _gcdvetDisplayName = Nothing
-    }
-
-
--- | Optional. The collection of entity entries associated with the entity
--- type.
-gcdvetEntities :: Lens' GoogleCloudDialogflowV2EntityType [GoogleCloudDialogflowV2EntityTypeEntity]
-gcdvetEntities
-  = lens _gcdvetEntities
-      (\ s a -> s{_gcdvetEntities = a})
-      . _Default
-      . _Coerce
-
--- | Required. Indicates the kind of entity type.
-gcdvetKind :: Lens' GoogleCloudDialogflowV2EntityType (Maybe GoogleCloudDialogflowV2EntityTypeKind)
-gcdvetKind
-  = lens _gcdvetKind (\ s a -> s{_gcdvetKind = a})
-
--- | The unique identifier of the entity type. Required for
--- EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
--- methods. Format: \`projects\/\/agent\/entityTypes\/\`.
-gcdvetName :: Lens' GoogleCloudDialogflowV2EntityType (Maybe Text)
-gcdvetName
-  = lens _gcdvetName (\ s a -> s{_gcdvetName = a})
-
--- | Optional. Indicates whether the entity type can be automatically
--- expanded.
-gcdvetAutoExpansionMode :: Lens' GoogleCloudDialogflowV2EntityType (Maybe GoogleCloudDialogflowV2EntityTypeAutoExpansionMode)
-gcdvetAutoExpansionMode
-  = lens _gcdvetAutoExpansionMode
-      (\ s a -> s{_gcdvetAutoExpansionMode = a})
-
--- | Required. The name of the entity type.
-gcdvetDisplayName :: Lens' GoogleCloudDialogflowV2EntityType (Maybe Text)
-gcdvetDisplayName
-  = lens _gcdvetDisplayName
-      (\ s a -> s{_gcdvetDisplayName = a})
-
-instance FromJSON GoogleCloudDialogflowV2EntityType
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2EntityType"
-              (\ o ->
-                 GoogleCloudDialogflowV2EntityType' <$>
-                   (o .:? "entities" .!= mempty) <*> (o .:? "kind") <*>
-                     (o .:? "name")
-                     <*> (o .:? "autoExpansionMode")
-                     <*> (o .:? "displayName"))
-
-instance ToJSON GoogleCloudDialogflowV2EntityType
-         where
-        toJSON GoogleCloudDialogflowV2EntityType'{..}
-          = object
-              (catMaybes
-                 [("entities" .=) <$> _gcdvetEntities,
-                  ("kind" .=) <$> _gcdvetKind,
-                  ("name" .=) <$> _gcdvetName,
-                  ("autoExpansionMode" .=) <$>
-                    _gcdvetAutoExpansionMode,
-                  ("displayName" .=) <$> _gcdvetDisplayName])
-
--- | Represents the natural language text to be processed.
---
--- /See:/ 'googleCloudDialogflowV2TextInput' smart constructor.
-data GoogleCloudDialogflowV2TextInput =
-  GoogleCloudDialogflowV2TextInput'
-    { _gcdvtiLanguageCode :: !(Maybe Text)
-    , _gcdvtiText         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2TextInput' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvtiLanguageCode'
---
--- * 'gcdvtiText'
-googleCloudDialogflowV2TextInput
-    :: GoogleCloudDialogflowV2TextInput
-googleCloudDialogflowV2TextInput =
-  GoogleCloudDialogflowV2TextInput'
-    {_gcdvtiLanguageCode = Nothing, _gcdvtiText = Nothing}
-
-
--- | Required. The language of this conversational query. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes. Note that queries
--- in the same session do not necessarily need to specify the same
--- language.
-gcdvtiLanguageCode :: Lens' GoogleCloudDialogflowV2TextInput (Maybe Text)
-gcdvtiLanguageCode
-  = lens _gcdvtiLanguageCode
-      (\ s a -> s{_gcdvtiLanguageCode = a})
-
--- | Required. The UTF-8 encoded natural language text to be processed. Text
--- length must not exceed 256 characters.
-gcdvtiText :: Lens' GoogleCloudDialogflowV2TextInput (Maybe Text)
-gcdvtiText
-  = lens _gcdvtiText (\ s a -> s{_gcdvtiText = a})
-
-instance FromJSON GoogleCloudDialogflowV2TextInput
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2TextInput"
-              (\ o ->
-                 GoogleCloudDialogflowV2TextInput' <$>
-                   (o .:? "languageCode") <*> (o .:? "text"))
-
-instance ToJSON GoogleCloudDialogflowV2TextInput
-         where
-        toJSON GoogleCloudDialogflowV2TextInput'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gcdvtiLanguageCode,
-                  ("text" .=) <$> _gcdvtiText])
-
--- | Opens the given URI.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction =
-  GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction'
-    { _gcdvimbcbouriaURI :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbcbouriaURI'
-googleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-    :: GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-googleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction =
-  GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction'
-    {_gcdvimbcbouriaURI = Nothing}
-
-
--- | Required. The HTTP or HTTPS scheme URI.
-gcdvimbcbouriaURI :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction (Maybe Text)
-gcdvimbcbouriaURI
-  = lens _gcdvimbcbouriaURI
-      (\ s a -> s{_gcdvimbcbouriaURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction'
-                   <$> (o .:? "uri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction'{..}
-          = object
-              (catMaybes [("uri" .=) <$> _gcdvimbcbouriaURI])
-
--- | The card response message.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageCard' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageCard =
-  GoogleCloudDialogflowV2IntentMessageCard'
-    { _gcdvimccButtons  :: !(Maybe [GoogleCloudDialogflowV2IntentMessageCardButton])
-    , _gcdvimccImageURI :: !(Maybe Text)
-    , _gcdvimccSubtitle :: !(Maybe Text)
-    , _gcdvimccTitle    :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCard' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimccButtons'
---
--- * 'gcdvimccImageURI'
---
--- * 'gcdvimccSubtitle'
---
--- * 'gcdvimccTitle'
-googleCloudDialogflowV2IntentMessageCard
-    :: GoogleCloudDialogflowV2IntentMessageCard
-googleCloudDialogflowV2IntentMessageCard =
-  GoogleCloudDialogflowV2IntentMessageCard'
-    { _gcdvimccButtons = Nothing
-    , _gcdvimccImageURI = Nothing
-    , _gcdvimccSubtitle = Nothing
-    , _gcdvimccTitle = Nothing
-    }
-
-
--- | Optional. The collection of card buttons.
-gcdvimccButtons :: Lens' GoogleCloudDialogflowV2IntentMessageCard [GoogleCloudDialogflowV2IntentMessageCardButton]
-gcdvimccButtons
-  = lens _gcdvimccButtons
-      (\ s a -> s{_gcdvimccButtons = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The public URI to an image file for the card.
-gcdvimccImageURI :: Lens' GoogleCloudDialogflowV2IntentMessageCard (Maybe Text)
-gcdvimccImageURI
-  = lens _gcdvimccImageURI
-      (\ s a -> s{_gcdvimccImageURI = a})
-
--- | Optional. The subtitle of the card.
-gcdvimccSubtitle :: Lens' GoogleCloudDialogflowV2IntentMessageCard (Maybe Text)
-gcdvimccSubtitle
-  = lens _gcdvimccSubtitle
-      (\ s a -> s{_gcdvimccSubtitle = a})
-
--- | Optional. The title of the card.
-gcdvimccTitle :: Lens' GoogleCloudDialogflowV2IntentMessageCard (Maybe Text)
-gcdvimccTitle
-  = lens _gcdvimccTitle
-      (\ s a -> s{_gcdvimccTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageCard
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageCard"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageCard' <$>
-                   (o .:? "buttons" .!= mempty) <*> (o .:? "imageUri")
-                     <*> (o .:? "subtitle")
-                     <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageCard
-         where
-        toJSON GoogleCloudDialogflowV2IntentMessageCard'{..}
-          = object
-              (catMaybes
-                 [("buttons" .=) <$> _gcdvimccButtons,
-                  ("imageUri" .=) <$> _gcdvimccImageURI,
-                  ("subtitle" .=) <$> _gcdvimccSubtitle,
-                  ("title" .=) <$> _gcdvimccTitle])
-
--- | Represents the contents of the original request that was passed to the
--- \`[Streaming]DetectIntent\` call.
---
--- /See:/ 'googleCloudDialogflowV2OriginalDetectIntentRequest' smart constructor.
-data GoogleCloudDialogflowV2OriginalDetectIntentRequest =
-  GoogleCloudDialogflowV2OriginalDetectIntentRequest'
-    { _gPayload :: !(Maybe GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload)
-    , _gVersion :: !(Maybe Text)
-    , _gSource  :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2OriginalDetectIntentRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gPayload'
---
--- * 'gVersion'
---
--- * 'gSource'
-googleCloudDialogflowV2OriginalDetectIntentRequest
-    :: GoogleCloudDialogflowV2OriginalDetectIntentRequest
-googleCloudDialogflowV2OriginalDetectIntentRequest =
-  GoogleCloudDialogflowV2OriginalDetectIntentRequest'
-    {_gPayload = Nothing, _gVersion = Nothing, _gSource = Nothing}
-
-
--- | Optional. This field is set to the value of the
--- \`QueryParameters.payload\` field passed in the request. Some
--- integrations that query a Dialogflow agent may provide additional
--- information in the payload. In particular for the Telephony Gateway this
--- field has the form:
---
--- > {
--- >  "telephony": {
--- >    "caller_id": "+18558363987"
--- >  }
--- > }
---
--- Note: The caller ID field (\`caller_id\`) will be redacted for Standard
--- Edition agents and populated with the caller ID in [E.164
--- format](https:\/\/en.wikipedia.org\/wiki\/E.164) for Enterprise Edition
--- agents.
-gPayload :: Lens' GoogleCloudDialogflowV2OriginalDetectIntentRequest (Maybe GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload)
-gPayload = lens _gPayload (\ s a -> s{_gPayload = a})
-
--- | Optional. The version of the protocol used for this request. This field
--- is AoG-specific.
-gVersion :: Lens' GoogleCloudDialogflowV2OriginalDetectIntentRequest (Maybe Text)
-gVersion = lens _gVersion (\ s a -> s{_gVersion = a})
-
--- | The source of this request, e.g., \`google\`, \`facebook\`, \`slack\`.
--- It is set by Dialogflow-owned servers.
-gSource :: Lens' GoogleCloudDialogflowV2OriginalDetectIntentRequest (Maybe Text)
-gSource = lens _gSource (\ s a -> s{_gSource = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2OriginalDetectIntentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2OriginalDetectIntentRequest"
-              (\ o ->
-                 GoogleCloudDialogflowV2OriginalDetectIntentRequest'
-                   <$>
-                   (o .:? "payload") <*> (o .:? "version") <*>
-                     (o .:? "source"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2OriginalDetectIntentRequest
-         where
-        toJSON
-          GoogleCloudDialogflowV2OriginalDetectIntentRequest'{..}
-          = object
-              (catMaybes
-                 [("payload" .=) <$> _gPayload,
-                  ("version" .=) <$> _gVersion,
-                  ("source" .=) <$> _gSource])
-
--- | The image response message.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageImage' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageImage =
-  GoogleCloudDialogflowV2beta1IntentMessageImage'
-    { _gcdvimiAccessibilityText :: !(Maybe Text)
-    , _gcdvimiImageURI          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageImage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimiAccessibilityText'
---
--- * 'gcdvimiImageURI'
-googleCloudDialogflowV2beta1IntentMessageImage
-    :: GoogleCloudDialogflowV2beta1IntentMessageImage
-googleCloudDialogflowV2beta1IntentMessageImage =
-  GoogleCloudDialogflowV2beta1IntentMessageImage'
-    {_gcdvimiAccessibilityText = Nothing, _gcdvimiImageURI = Nothing}
-
-
--- | A text description of the image to be used for accessibility, e.g.,
--- screen readers. Required if image_uri is set for CarouselSelect.
-gcdvimiAccessibilityText :: Lens' GoogleCloudDialogflowV2beta1IntentMessageImage (Maybe Text)
-gcdvimiAccessibilityText
-  = lens _gcdvimiAccessibilityText
-      (\ s a -> s{_gcdvimiAccessibilityText = a})
-
--- | Optional. The public URI to an image file.
-gcdvimiImageURI :: Lens' GoogleCloudDialogflowV2beta1IntentMessageImage (Maybe Text)
-gcdvimiImageURI
-  = lens _gcdvimiImageURI
-      (\ s a -> s{_gcdvimiImageURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageImage
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageImage"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageImage' <$>
-                   (o .:? "accessibilityText") <*> (o .:? "imageUri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageImage
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageImage'{..}
-          = object
-              (catMaybes
-                 [("accessibilityText" .=) <$>
-                    _gcdvimiAccessibilityText,
-                  ("imageUri" .=) <$> _gcdvimiImageURI])
-
--- | Instructs the speech synthesizer how to generate the output audio
--- content.
---
--- /See:/ 'googleCloudDialogflowV2OutputAudioConfig' smart constructor.
-data GoogleCloudDialogflowV2OutputAudioConfig =
-  GoogleCloudDialogflowV2OutputAudioConfig'
-    { _gcdvoacSampleRateHertz        :: !(Maybe (Textual Int32))
-    , _gcdvoacSynthesizeSpeechConfig :: !(Maybe GoogleCloudDialogflowV2SynthesizeSpeechConfig)
-    , _gcdvoacAudioEncoding          :: !(Maybe GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2OutputAudioConfig' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvoacSampleRateHertz'
---
--- * 'gcdvoacSynthesizeSpeechConfig'
---
--- * 'gcdvoacAudioEncoding'
-googleCloudDialogflowV2OutputAudioConfig
-    :: GoogleCloudDialogflowV2OutputAudioConfig
-googleCloudDialogflowV2OutputAudioConfig =
-  GoogleCloudDialogflowV2OutputAudioConfig'
-    { _gcdvoacSampleRateHertz = Nothing
-    , _gcdvoacSynthesizeSpeechConfig = Nothing
-    , _gcdvoacAudioEncoding = Nothing
-    }
-
-
--- | Optional. The synthesis sample rate (in hertz) for this audio. If not
--- provided, then the synthesizer will use the default sample rate based on
--- the audio encoding. If this is different from the voice\'s natural
--- sample rate, then the synthesizer will honor this request by converting
--- to the desired sample rate (which might result in worse audio quality).
-gcdvoacSampleRateHertz :: Lens' GoogleCloudDialogflowV2OutputAudioConfig (Maybe Int32)
-gcdvoacSampleRateHertz
-  = lens _gcdvoacSampleRateHertz
-      (\ s a -> s{_gcdvoacSampleRateHertz = a})
-      . mapping _Coerce
-
--- | Optional. Configuration of how speech should be synthesized.
-gcdvoacSynthesizeSpeechConfig :: Lens' GoogleCloudDialogflowV2OutputAudioConfig (Maybe GoogleCloudDialogflowV2SynthesizeSpeechConfig)
-gcdvoacSynthesizeSpeechConfig
-  = lens _gcdvoacSynthesizeSpeechConfig
-      (\ s a -> s{_gcdvoacSynthesizeSpeechConfig = a})
-
--- | Required. Audio encoding of the synthesized audio content.
-gcdvoacAudioEncoding :: Lens' GoogleCloudDialogflowV2OutputAudioConfig (Maybe GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding)
-gcdvoacAudioEncoding
-  = lens _gcdvoacAudioEncoding
-      (\ s a -> s{_gcdvoacAudioEncoding = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2OutputAudioConfig
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2OutputAudioConfig"
-              (\ o ->
-                 GoogleCloudDialogflowV2OutputAudioConfig' <$>
-                   (o .:? "sampleRateHertz") <*>
-                     (o .:? "synthesizeSpeechConfig")
-                     <*> (o .:? "audioEncoding"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2OutputAudioConfig
-         where
-        toJSON GoogleCloudDialogflowV2OutputAudioConfig'{..}
-          = object
-              (catMaybes
-                 [("sampleRateHertz" .=) <$> _gcdvoacSampleRateHertz,
-                  ("synthesizeSpeechConfig" .=) <$>
-                    _gcdvoacSynthesizeSpeechConfig,
-                  ("audioEncoding" .=) <$> _gcdvoacAudioEncoding])
-
--- | The response message for Agents.ExportAgent.
---
--- /See:/ 'googleCloudDialogflowV2ExportAgentResponse' smart constructor.
-data GoogleCloudDialogflowV2ExportAgentResponse =
-  GoogleCloudDialogflowV2ExportAgentResponse'
-    { _gAgentURI     :: !(Maybe Text)
-    , _gAgentContent :: !(Maybe Bytes)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ExportAgentResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gAgentURI'
---
--- * 'gAgentContent'
-googleCloudDialogflowV2ExportAgentResponse
-    :: GoogleCloudDialogflowV2ExportAgentResponse
-googleCloudDialogflowV2ExportAgentResponse =
-  GoogleCloudDialogflowV2ExportAgentResponse'
-    {_gAgentURI = Nothing, _gAgentContent = Nothing}
-
-
--- | The URI to a file containing the exported agent. This field is populated
--- only if \`agent_uri\` is specified in \`ExportAgentRequest\`.
-gAgentURI :: Lens' GoogleCloudDialogflowV2ExportAgentResponse (Maybe Text)
-gAgentURI
-  = lens _gAgentURI (\ s a -> s{_gAgentURI = a})
-
--- | The exported agent. Example for how to export an agent to a zip file via
--- a command line:
---
--- > curl \
--- >   'https://dialogflow.googleapis.com/v2/projects/<project_name>/agent:export'\
--- >   -X POST \
--- >   -H 'Authorization: Bearer '$(gcloud auth application-default
--- >   print-access-token) \
--- >   -H 'Accept: application/json' \
--- >   -H 'Content-Type: application/json' \
--- >   --compressed \
--- >   --data-binary '{}' \
--- > | grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' \
--- > | base64 --decode > <agent zip file>
-gAgentContent :: Lens' GoogleCloudDialogflowV2ExportAgentResponse (Maybe ByteString)
-gAgentContent
-  = lens _gAgentContent
-      (\ s a -> s{_gAgentContent = a})
-      . mapping _Bytes
-
-instance FromJSON
-           GoogleCloudDialogflowV2ExportAgentResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ExportAgentResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2ExportAgentResponse' <$>
-                   (o .:? "agentUri") <*> (o .:? "agentContent"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ExportAgentResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2ExportAgentResponse'{..}
-          = object
-              (catMaybes
-                 [("agentUri" .=) <$> _gAgentURI,
-                  ("agentContent" .=) <$> _gAgentContent])
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_payload\`. See the related
--- \`fulfillment_messages[i].payload field\`, which may be used as an
--- alternative to this field. This field can be used for Actions on Google
--- responses. It should have a structure similar to the JSON message shown
--- here. For more information, see [Actions on Google Webhook
--- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
---
--- > {
--- >   "google": {
--- >     "expectUserResponse": true,
--- >     "richResponse": {
--- >       "items": [
--- >         {
--- >           "simpleResponse": {
--- >             "textToSpeech": "this is a simple response"
--- >           }
--- >         }
--- >       ]
--- >     }
--- >   }
--- > }
---
--- /See:/ 'googleCloudDialogflowV2WebhookResponsePayload' smart constructor.
-newtype GoogleCloudDialogflowV2WebhookResponsePayload =
-  GoogleCloudDialogflowV2WebhookResponsePayload'
-    { _gcdvwrpcAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2WebhookResponsePayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvwrpcAddtional'
-googleCloudDialogflowV2WebhookResponsePayload
-    :: HashMap Text JSONValue -- ^ 'gcdvwrpcAddtional'
-    -> GoogleCloudDialogflowV2WebhookResponsePayload
-googleCloudDialogflowV2WebhookResponsePayload pGcdvwrpcAddtional_ =
-  GoogleCloudDialogflowV2WebhookResponsePayload'
-    {_gcdvwrpcAddtional = _Coerce # pGcdvwrpcAddtional_}
-
-
--- | Properties of the object.
-gcdvwrpcAddtional :: Lens' GoogleCloudDialogflowV2WebhookResponsePayload (HashMap Text JSONValue)
-gcdvwrpcAddtional
-  = lens _gcdvwrpcAddtional
-      (\ s a -> s{_gcdvwrpcAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2WebhookResponsePayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2WebhookResponsePayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2WebhookResponsePayload' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2WebhookResponsePayload
-         where
-        toJSON = toJSON . _gcdvwrpcAddtional
-
--- | The suggestion chip message that allows the user to jump out to the app
--- or website associated with this agent.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion =
-  GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion'
-    { _gURI             :: !(Maybe Text)
-    , _gDestinationName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gURI'
---
--- * 'gDestinationName'
-googleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-    :: GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-googleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion =
-  GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion'
-    {_gURI = Nothing, _gDestinationName = Nothing}
-
-
--- | Required. The URI of the app or site to open when the user taps the
--- suggestion chip.
-gURI :: Lens' GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion (Maybe Text)
-gURI = lens _gURI (\ s a -> s{_gURI = a})
-
--- | Required. The name of the app or site this chip is linking to.
-gDestinationName :: Lens' GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion (Maybe Text)
-gDestinationName
-  = lens _gDestinationName
-      (\ s a -> s{_gDestinationName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion'
-                   <$> (o .:? "uri") <*> (o .:? "destinationName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion'{..}
-          = object
-              (catMaybes
-                 [("uri" .=) <$> _gURI,
-                  ("destinationName" .=) <$> _gDestinationName])
-
--- | The response message for Intents.ListIntents.
---
--- /See:/ 'googleCloudDialogflowV2ListIntentsResponse' smart constructor.
-data GoogleCloudDialogflowV2ListIntentsResponse =
-  GoogleCloudDialogflowV2ListIntentsResponse'
-    { _gcdvlirIntents       :: !(Maybe [GoogleCloudDialogflowV2Intent])
-    , _gcdvlirNextPageToken :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ListIntentsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvlirIntents'
---
--- * 'gcdvlirNextPageToken'
-googleCloudDialogflowV2ListIntentsResponse
-    :: GoogleCloudDialogflowV2ListIntentsResponse
-googleCloudDialogflowV2ListIntentsResponse =
-  GoogleCloudDialogflowV2ListIntentsResponse'
-    {_gcdvlirIntents = Nothing, _gcdvlirNextPageToken = Nothing}
-
-
--- | The list of agent intents. There will be a maximum number of items
--- returned based on the page_size field in the request.
-gcdvlirIntents :: Lens' GoogleCloudDialogflowV2ListIntentsResponse [GoogleCloudDialogflowV2Intent]
-gcdvlirIntents
-  = lens _gcdvlirIntents
-      (\ s a -> s{_gcdvlirIntents = a})
-      . _Default
-      . _Coerce
-
--- | Token to retrieve the next page of results, or empty if there are no
--- more results in the list.
-gcdvlirNextPageToken :: Lens' GoogleCloudDialogflowV2ListIntentsResponse (Maybe Text)
-gcdvlirNextPageToken
-  = lens _gcdvlirNextPageToken
-      (\ s a -> s{_gcdvlirNextPageToken = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2ListIntentsResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ListIntentsResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2ListIntentsResponse' <$>
-                   (o .:? "intents" .!= mempty) <*>
-                     (o .:? "nextPageToken"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ListIntentsResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2ListIntentsResponse'{..}
-          = object
-              (catMaybes
-                 [("intents" .=) <$> _gcdvlirIntents,
-                  ("nextPageToken" .=) <$> _gcdvlirNextPageToken])
-
--- | The response message for EntityTypes.BatchUpdateEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2BatchUpdateEntityTypesResponse' smart constructor.
-newtype GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse =
-  GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse'
-    { _gEntityTypes :: Maybe [GoogleCloudDialogflowV2EntityType]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gEntityTypes'
-googleCloudDialogflowV2BatchUpdateEntityTypesResponse
-    :: GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-googleCloudDialogflowV2BatchUpdateEntityTypesResponse =
-  GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse'
-    {_gEntityTypes = Nothing}
-
-
--- | The collection of updated or created entity types.
-gEntityTypes :: Lens' GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse [GoogleCloudDialogflowV2EntityType]
-gEntityTypes
-  = lens _gEntityTypes (\ s a -> s{_gEntityTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse'
-                   <$> (o .:? "entityTypes" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse'{..}
-          = object
-              (catMaybes [("entityTypes" .=) <$> _gEntityTypes])
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`payload\` field returned in the webhook response.
---
--- /See:/ 'googleCloudDialogflowV2QueryResultWebhookPayload' smart constructor.
-newtype GoogleCloudDialogflowV2QueryResultWebhookPayload =
-  GoogleCloudDialogflowV2QueryResultWebhookPayload'
-    { _gcdvqrwpAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2QueryResultWebhookPayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrwpAddtional'
-googleCloudDialogflowV2QueryResultWebhookPayload
-    :: HashMap Text JSONValue -- ^ 'gcdvqrwpAddtional'
-    -> GoogleCloudDialogflowV2QueryResultWebhookPayload
-googleCloudDialogflowV2QueryResultWebhookPayload pGcdvqrwpAddtional_ =
-  GoogleCloudDialogflowV2QueryResultWebhookPayload'
-    {_gcdvqrwpAddtional = _Coerce # pGcdvqrwpAddtional_}
-
-
--- | Properties of the object.
-gcdvqrwpAddtional :: Lens' GoogleCloudDialogflowV2QueryResultWebhookPayload (HashMap Text JSONValue)
-gcdvqrwpAddtional
-  = lens _gcdvqrwpAddtional
-      (\ s a -> s{_gcdvqrwpAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2QueryResultWebhookPayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2QueryResultWebhookPayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2QueryResultWebhookPayload' <$>
-                   (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2QueryResultWebhookPayload
-         where
-        toJSON = toJSON . _gcdvqrwpAddtional
-
--- | Represents intent parameters.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentParameter' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentParameter =
-  GoogleCloudDialogflowV2beta1IntentParameter'
-    { _gcdvipValue                 :: !(Maybe Text)
-    , _gcdvipName                  :: !(Maybe Text)
-    , _gcdvipPrompts               :: !(Maybe [Text])
-    , _gcdvipMandatory             :: !(Maybe Bool)
-    , _gcdvipDisplayName           :: !(Maybe Text)
-    , _gcdvipDefaultValue          :: !(Maybe Text)
-    , _gcdvipIsList                :: !(Maybe Bool)
-    , _gcdvipEntityTypeDisplayName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentParameter' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvipValue'
---
--- * 'gcdvipName'
---
--- * 'gcdvipPrompts'
---
--- * 'gcdvipMandatory'
---
--- * 'gcdvipDisplayName'
---
--- * 'gcdvipDefaultValue'
---
--- * 'gcdvipIsList'
---
--- * 'gcdvipEntityTypeDisplayName'
-googleCloudDialogflowV2beta1IntentParameter
-    :: GoogleCloudDialogflowV2beta1IntentParameter
-googleCloudDialogflowV2beta1IntentParameter =
-  GoogleCloudDialogflowV2beta1IntentParameter'
-    { _gcdvipValue = Nothing
-    , _gcdvipName = Nothing
-    , _gcdvipPrompts = Nothing
-    , _gcdvipMandatory = Nothing
-    , _gcdvipDisplayName = Nothing
-    , _gcdvipDefaultValue = Nothing
-    , _gcdvipIsList = Nothing
-    , _gcdvipEntityTypeDisplayName = Nothing
-    }
-
-
--- | Optional. The definition of the parameter value. It can be: - a constant
--- string, - a parameter value defined as \`$parameter_name\`, - an
--- original parameter value defined as \`$parameter_name.original\`, - a
--- parameter value from some context defined as
--- \`#context_name.parameter_name\`.
-gcdvipValue :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Text)
-gcdvipValue
-  = lens _gcdvipValue (\ s a -> s{_gcdvipValue = a})
-
--- | The unique identifier of this parameter.
-gcdvipName :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Text)
-gcdvipName
-  = lens _gcdvipName (\ s a -> s{_gcdvipName = a})
-
--- | Optional. The collection of prompts that the agent can present to the
--- user in order to collect value for the parameter.
-gcdvipPrompts :: Lens' GoogleCloudDialogflowV2beta1IntentParameter [Text]
-gcdvipPrompts
-  = lens _gcdvipPrompts
-      (\ s a -> s{_gcdvipPrompts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether the parameter is required. That is, whether
--- the intent cannot be completed without collecting the parameter value.
-gcdvipMandatory :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Bool)
-gcdvipMandatory
-  = lens _gcdvipMandatory
-      (\ s a -> s{_gcdvipMandatory = a})
-
--- | Required. The name of the parameter.
-gcdvipDisplayName :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Text)
-gcdvipDisplayName
-  = lens _gcdvipDisplayName
-      (\ s a -> s{_gcdvipDisplayName = a})
-
--- | Optional. The default value to use when the \`value\` yields an empty
--- result. Default values can be extracted from contexts by using the
--- following syntax: \`#context_name.parameter_name\`.
-gcdvipDefaultValue :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Text)
-gcdvipDefaultValue
-  = lens _gcdvipDefaultValue
-      (\ s a -> s{_gcdvipDefaultValue = a})
-
--- | Optional. Indicates whether the parameter represents a list of values.
-gcdvipIsList :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Bool)
-gcdvipIsList
-  = lens _gcdvipIsList (\ s a -> s{_gcdvipIsList = a})
-
--- | Optional. The name of the entity type, prefixed with \`\'\`, that
--- describes values of the parameter. If the parameter is required, this
--- must be provided.
-gcdvipEntityTypeDisplayName :: Lens' GoogleCloudDialogflowV2beta1IntentParameter (Maybe Text)
-gcdvipEntityTypeDisplayName
-  = lens _gcdvipEntityTypeDisplayName
-      (\ s a -> s{_gcdvipEntityTypeDisplayName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentParameter
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentParameter"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentParameter' <$>
-                   (o .:? "value") <*> (o .:? "name") <*>
-                     (o .:? "prompts" .!= mempty)
-                     <*> (o .:? "mandatory")
-                     <*> (o .:? "displayName")
-                     <*> (o .:? "defaultValue")
-                     <*> (o .:? "isList")
-                     <*> (o .:? "entityTypeDisplayName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentParameter
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentParameter'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _gcdvipValue,
-                  ("name" .=) <$> _gcdvipName,
-                  ("prompts" .=) <$> _gcdvipPrompts,
-                  ("mandatory" .=) <$> _gcdvipMandatory,
-                  ("displayName" .=) <$> _gcdvipDisplayName,
-                  ("defaultValue" .=) <$> _gcdvipDefaultValue,
-                  ("isList" .=) <$> _gcdvipIsList,
-                  ("entityTypeDisplayName" .=) <$>
-                    _gcdvipEntityTypeDisplayName])
-
--- | Represents intent parameters.
---
--- /See:/ 'googleCloudDialogflowV2IntentParameter' smart constructor.
-data GoogleCloudDialogflowV2IntentParameter =
-  GoogleCloudDialogflowV2IntentParameter'
-    { _gcdvipcValue                 :: !(Maybe Text)
-    , _gcdvipcName                  :: !(Maybe Text)
-    , _gcdvipcPrompts               :: !(Maybe [Text])
-    , _gcdvipcMandatory             :: !(Maybe Bool)
-    , _gcdvipcDisplayName           :: !(Maybe Text)
-    , _gcdvipcDefaultValue          :: !(Maybe Text)
-    , _gcdvipcIsList                :: !(Maybe Bool)
-    , _gcdvipcEntityTypeDisplayName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentParameter' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvipcValue'
---
--- * 'gcdvipcName'
---
--- * 'gcdvipcPrompts'
---
--- * 'gcdvipcMandatory'
---
--- * 'gcdvipcDisplayName'
---
--- * 'gcdvipcDefaultValue'
---
--- * 'gcdvipcIsList'
---
--- * 'gcdvipcEntityTypeDisplayName'
-googleCloudDialogflowV2IntentParameter
-    :: GoogleCloudDialogflowV2IntentParameter
-googleCloudDialogflowV2IntentParameter =
-  GoogleCloudDialogflowV2IntentParameter'
-    { _gcdvipcValue = Nothing
-    , _gcdvipcName = Nothing
-    , _gcdvipcPrompts = Nothing
-    , _gcdvipcMandatory = Nothing
-    , _gcdvipcDisplayName = Nothing
-    , _gcdvipcDefaultValue = Nothing
-    , _gcdvipcIsList = Nothing
-    , _gcdvipcEntityTypeDisplayName = Nothing
-    }
-
-
--- | Optional. The definition of the parameter value. It can be: - a constant
--- string, - a parameter value defined as \`$parameter_name\`, - an
--- original parameter value defined as \`$parameter_name.original\`, - a
--- parameter value from some context defined as
--- \`#context_name.parameter_name\`.
-gcdvipcValue :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Text)
-gcdvipcValue
-  = lens _gcdvipcValue (\ s a -> s{_gcdvipcValue = a})
-
--- | The unique identifier of this parameter.
-gcdvipcName :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Text)
-gcdvipcName
-  = lens _gcdvipcName (\ s a -> s{_gcdvipcName = a})
-
--- | Optional. The collection of prompts that the agent can present to the
--- user in order to collect value for the parameter.
-gcdvipcPrompts :: Lens' GoogleCloudDialogflowV2IntentParameter [Text]
-gcdvipcPrompts
-  = lens _gcdvipcPrompts
-      (\ s a -> s{_gcdvipcPrompts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether the parameter is required. That is, whether
--- the intent cannot be completed without collecting the parameter value.
-gcdvipcMandatory :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Bool)
-gcdvipcMandatory
-  = lens _gcdvipcMandatory
-      (\ s a -> s{_gcdvipcMandatory = a})
-
--- | Required. The name of the parameter.
-gcdvipcDisplayName :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Text)
-gcdvipcDisplayName
-  = lens _gcdvipcDisplayName
-      (\ s a -> s{_gcdvipcDisplayName = a})
-
--- | Optional. The default value to use when the \`value\` yields an empty
--- result. Default values can be extracted from contexts by using the
--- following syntax: \`#context_name.parameter_name\`.
-gcdvipcDefaultValue :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Text)
-gcdvipcDefaultValue
-  = lens _gcdvipcDefaultValue
-      (\ s a -> s{_gcdvipcDefaultValue = a})
-
--- | Optional. Indicates whether the parameter represents a list of values.
-gcdvipcIsList :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Bool)
-gcdvipcIsList
-  = lens _gcdvipcIsList
-      (\ s a -> s{_gcdvipcIsList = a})
-
--- | Optional. The name of the entity type, prefixed with \`\'\`, that
--- describes values of the parameter. If the parameter is required, this
--- must be provided.
-gcdvipcEntityTypeDisplayName :: Lens' GoogleCloudDialogflowV2IntentParameter (Maybe Text)
-gcdvipcEntityTypeDisplayName
-  = lens _gcdvipcEntityTypeDisplayName
-      (\ s a -> s{_gcdvipcEntityTypeDisplayName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentParameter
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2IntentParameter"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentParameter' <$>
-                   (o .:? "value") <*> (o .:? "name") <*>
-                     (o .:? "prompts" .!= mempty)
-                     <*> (o .:? "mandatory")
-                     <*> (o .:? "displayName")
-                     <*> (o .:? "defaultValue")
-                     <*> (o .:? "isList")
-                     <*> (o .:? "entityTypeDisplayName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentParameter
-         where
-        toJSON GoogleCloudDialogflowV2IntentParameter'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _gcdvipcValue,
-                  ("name" .=) <$> _gcdvipcName,
-                  ("prompts" .=) <$> _gcdvipcPrompts,
-                  ("mandatory" .=) <$> _gcdvipcMandatory,
-                  ("displayName" .=) <$> _gcdvipcDisplayName,
-                  ("defaultValue" .=) <$> _gcdvipcDefaultValue,
-                  ("isList" .=) <$> _gcdvipcIsList,
-                  ("entityTypeDisplayName" .=) <$>
-                    _gcdvipcEntityTypeDisplayName])
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`payload\` field returned in the webhook response.
---
--- /See:/ 'googleCloudDialogflowV2beta1QueryResultWebhookPayload' smart constructor.
-newtype GoogleCloudDialogflowV2beta1QueryResultWebhookPayload =
-  GoogleCloudDialogflowV2beta1QueryResultWebhookPayload'
-    { _gcdvqrwpcAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResultWebhookPayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvqrwpcAddtional'
-googleCloudDialogflowV2beta1QueryResultWebhookPayload
-    :: HashMap Text JSONValue -- ^ 'gcdvqrwpcAddtional'
-    -> GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-googleCloudDialogflowV2beta1QueryResultWebhookPayload pGcdvqrwpcAddtional_ =
-  GoogleCloudDialogflowV2beta1QueryResultWebhookPayload'
-    {_gcdvqrwpcAddtional = _Coerce # pGcdvqrwpcAddtional_}
-
-
--- | Properties of the object.
-gcdvqrwpcAddtional :: Lens' GoogleCloudDialogflowV2beta1QueryResultWebhookPayload (HashMap Text JSONValue)
-gcdvqrwpcAddtional
-  = lens _gcdvqrwpcAddtional
-      (\ s a -> s{_gcdvqrwpcAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1QueryResultWebhookPayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1QueryResultWebhookPayload'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1QueryResultWebhookPayload
-         where
-        toJSON = toJSON . _gcdvqrwpcAddtional
-
--- | Represents a part of a training phrase.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentTrainingPhrasePart' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart =
-  GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart'
-    { _gcdvitppcText        :: !(Maybe Text)
-    , _gcdvitppcUserDefined :: !(Maybe Bool)
-    , _gcdvitppcEntityType  :: !(Maybe Text)
-    , _gcdvitppcAlias       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvitppcText'
---
--- * 'gcdvitppcUserDefined'
---
--- * 'gcdvitppcEntityType'
---
--- * 'gcdvitppcAlias'
-googleCloudDialogflowV2beta1IntentTrainingPhrasePart
-    :: GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-googleCloudDialogflowV2beta1IntentTrainingPhrasePart =
-  GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart'
-    { _gcdvitppcText = Nothing
-    , _gcdvitppcUserDefined = Nothing
-    , _gcdvitppcEntityType = Nothing
-    , _gcdvitppcAlias = Nothing
-    }
-
-
--- | Required. The text for this part.
-gcdvitppcText :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (Maybe Text)
-gcdvitppcText
-  = lens _gcdvitppcText
-      (\ s a -> s{_gcdvitppcText = a})
-
--- | Optional. Indicates whether the text was manually annotated. This field
--- is set to true when the Dialogflow Console is used to manually annotate
--- the part. When creating an annotated part with the API, you must set
--- this to true.
-gcdvitppcUserDefined :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (Maybe Bool)
-gcdvitppcUserDefined
-  = lens _gcdvitppcUserDefined
-      (\ s a -> s{_gcdvitppcUserDefined = a})
-
--- | Optional. The entity type name prefixed with \`\'\`. This field is
--- required for annotated parts of the training phrase.
-gcdvitppcEntityType :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (Maybe Text)
-gcdvitppcEntityType
-  = lens _gcdvitppcEntityType
-      (\ s a -> s{_gcdvitppcEntityType = a})
-
--- | Optional. The parameter name for the value extracted from the annotated
--- part of the example. This field is required for annotated parts of the
--- training phrase.
-gcdvitppcAlias :: Lens' GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart (Maybe Text)
-gcdvitppcAlias
-  = lens _gcdvitppcAlias
-      (\ s a -> s{_gcdvitppcAlias = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart'
-                   <$>
-                   (o .:? "text") <*> (o .:? "userDefined") <*>
-                     (o .:? "entityType")
-                     <*> (o .:? "alias"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart'{..}
-          = object
-              (catMaybes
-                 [("text" .=) <$> _gcdvitppcText,
-                  ("userDefined" .=) <$> _gcdvitppcUserDefined,
-                  ("entityType" .=) <$> _gcdvitppcEntityType,
-                  ("alias" .=) <$> _gcdvitppcAlias])
-
--- | The response message for Contexts.ListContexts.
---
--- /See:/ 'googleCloudDialogflowV2ListContextsResponse' smart constructor.
-data GoogleCloudDialogflowV2ListContextsResponse =
-  GoogleCloudDialogflowV2ListContextsResponse'
-    { _gcdvlcrContexts      :: !(Maybe [GoogleCloudDialogflowV2Context])
-    , _gcdvlcrNextPageToken :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ListContextsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvlcrContexts'
---
--- * 'gcdvlcrNextPageToken'
-googleCloudDialogflowV2ListContextsResponse
-    :: GoogleCloudDialogflowV2ListContextsResponse
-googleCloudDialogflowV2ListContextsResponse =
-  GoogleCloudDialogflowV2ListContextsResponse'
-    {_gcdvlcrContexts = Nothing, _gcdvlcrNextPageToken = Nothing}
-
-
--- | The list of contexts. There will be a maximum number of items returned
--- based on the page_size field in the request.
-gcdvlcrContexts :: Lens' GoogleCloudDialogflowV2ListContextsResponse [GoogleCloudDialogflowV2Context]
-gcdvlcrContexts
-  = lens _gcdvlcrContexts
-      (\ s a -> s{_gcdvlcrContexts = a})
-      . _Default
-      . _Coerce
-
--- | Token to retrieve the next page of results, or empty if there are no
--- more results in the list.
-gcdvlcrNextPageToken :: Lens' GoogleCloudDialogflowV2ListContextsResponse (Maybe Text)
-gcdvlcrNextPageToken
-  = lens _gcdvlcrNextPageToken
-      (\ s a -> s{_gcdvlcrNextPageToken = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2ListContextsResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ListContextsResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2ListContextsResponse' <$>
-                   (o .:? "contexts" .!= mempty) <*>
-                     (o .:? "nextPageToken"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ListContextsResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2ListContextsResponse'{..}
-          = object
-              (catMaybes
-                 [("contexts" .=) <$> _gcdvlcrContexts,
-                  ("nextPageToken" .=) <$> _gcdvlcrNextPageToken])
-
--- | Transfers the call in Telephony Gateway.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall' smart constructor.
-newtype GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall'
-    { _gcdvimttcPhoneNumber :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimttcPhoneNumber'
-googleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-    :: GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-googleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall =
-  GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall'
-    {_gcdvimttcPhoneNumber = Nothing}
-
-
--- | Required. The phone number to transfer the call to in [E.164
--- format](https:\/\/en.wikipedia.org\/wiki\/E.164). We currently only
--- allow transferring to US numbers (+1xxxyyyzzzz).
-gcdvimttcPhoneNumber :: Lens' GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall (Maybe Text)
-gcdvimttcPhoneNumber
-  = lens _gcdvimttcPhoneNumber
-      (\ s a -> s{_gcdvimttcPhoneNumber = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall'
-                   <$> (o .:? "phoneNumber"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall'{..}
-          = object
-              (catMaybes
-                 [("phoneNumber" .=) <$> _gcdvimttcPhoneNumber])
-
--- | The response message for Agents.ExportAgent.
---
--- /See:/ 'googleCloudDialogflowV2beta1ExportAgentResponse' smart constructor.
-data GoogleCloudDialogflowV2beta1ExportAgentResponse =
-  GoogleCloudDialogflowV2beta1ExportAgentResponse'
-    { _gooAgentURI     :: !(Maybe Text)
-    , _gooAgentContent :: !(Maybe Bytes)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1ExportAgentResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooAgentURI'
---
--- * 'gooAgentContent'
-googleCloudDialogflowV2beta1ExportAgentResponse
-    :: GoogleCloudDialogflowV2beta1ExportAgentResponse
-googleCloudDialogflowV2beta1ExportAgentResponse =
-  GoogleCloudDialogflowV2beta1ExportAgentResponse'
-    {_gooAgentURI = Nothing, _gooAgentContent = Nothing}
-
-
--- | The URI to a file containing the exported agent. This field is populated
--- only if \`agent_uri\` is specified in \`ExportAgentRequest\`.
-gooAgentURI :: Lens' GoogleCloudDialogflowV2beta1ExportAgentResponse (Maybe Text)
-gooAgentURI
-  = lens _gooAgentURI (\ s a -> s{_gooAgentURI = a})
-
--- | The exported agent. Example for how to export an agent to a zip file via
--- a command line:
---
--- > curl \
--- >   'https://dialogflow.googleapis.com/v2beta1/projects/<project_name>/agent:export'\
--- >   -X POST \
--- >   -H 'Authorization: Bearer '$(gcloud auth application-default
--- >   print-access-token) \
--- >   -H 'Accept: application/json' \
--- >   -H 'Content-Type: application/json' \
--- >   --compressed \
--- >   --data-binary '{}' \
--- > | grep agentContent | sed -e 's/.*"agentContent": "\([^"]*\)".*/\1/' \
--- > | base64 --decode > <agent zip file>
-gooAgentContent :: Lens' GoogleCloudDialogflowV2beta1ExportAgentResponse (Maybe ByteString)
-gooAgentContent
-  = lens _gooAgentContent
-      (\ s a -> s{_gooAgentContent = a})
-      . mapping _Bytes
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1ExportAgentResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1ExportAgentResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1ExportAgentResponse' <$>
-                   (o .:? "agentUri") <*> (o .:? "agentContent"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1ExportAgentResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1ExportAgentResponse'{..}
-          = object
-              (catMaybes
-                 [("agentUri" .=) <$> _gooAgentURI,
-                  ("agentContent" .=) <$> _gooAgentContent])
-
--- | Optional. This field is set to the value of the
--- \`QueryParameters.payload\` field passed in the request. Some
--- integrations that query a Dialogflow agent may provide additional
--- information in the payload. In particular for the Telephony Gateway this
--- field has the form:
---
--- > {
--- >  "telephony": {
--- >    "caller_id": "+18558363987"
--- >  }
--- > }
---
--- Note: The caller ID field (\`caller_id\`) will be redacted for Standard
--- Edition agents and populated with the caller ID in [E.164
--- format](https:\/\/en.wikipedia.org\/wiki\/E.164) for Enterprise Edition
--- agents.
---
--- /See:/ 'googleCloudDialogflowV2OriginalDetectIntentRequestPayload' smart constructor.
-newtype GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload =
-  GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload'
-    { _gcdvodirpcAddtional :: HashMap Text JSONValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvodirpcAddtional'
-googleCloudDialogflowV2OriginalDetectIntentRequestPayload
-    :: HashMap Text JSONValue -- ^ 'gcdvodirpcAddtional'
-    -> GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-googleCloudDialogflowV2OriginalDetectIntentRequestPayload pGcdvodirpcAddtional_ =
-  GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload'
-    {_gcdvodirpcAddtional = _Coerce # pGcdvodirpcAddtional_}
-
-
--- | Properties of the object.
-gcdvodirpcAddtional :: Lens' GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload (HashMap Text JSONValue)
-gcdvodirpcAddtional
-  = lens _gcdvodirpcAddtional
-      (\ s a -> s{_gcdvodirpcAddtional = a})
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload"
-              (\ o ->
-                 GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload'
-                   <$> (parseJSONObject o))
-
-instance ToJSON
-           GoogleCloudDialogflowV2OriginalDetectIntentRequestPayload
-         where
-        toJSON = toJSON . _gcdvodirpcAddtional
-
--- | Represents a session entity type. Extends or replaces a developer entity
--- type at the user session level (we refer to the entity types defined at
--- the agent level as \"developer entity types\"). Note: session entity
--- types apply to all queries, regardless of the language.
---
--- /See:/ 'googleCloudDialogflowV2SessionEntityType' smart constructor.
-data GoogleCloudDialogflowV2SessionEntityType =
-  GoogleCloudDialogflowV2SessionEntityType'
-    { _gcdvSetEntityOverrideMode :: !(Maybe GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode)
-    , _gcdvSetEntities           :: !(Maybe [GoogleCloudDialogflowV2EntityTypeEntity])
-    , _gcdvSetName               :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2SessionEntityType' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvSetEntityOverrideMode'
---
--- * 'gcdvSetEntities'
---
--- * 'gcdvSetName'
-googleCloudDialogflowV2SessionEntityType
-    :: GoogleCloudDialogflowV2SessionEntityType
-googleCloudDialogflowV2SessionEntityType =
-  GoogleCloudDialogflowV2SessionEntityType'
-    { _gcdvSetEntityOverrideMode = Nothing
-    , _gcdvSetEntities = Nothing
-    , _gcdvSetName = Nothing
-    }
-
-
--- | Required. Indicates whether the additional data should override or
--- supplement the developer entity type definition.
-gcdvSetEntityOverrideMode :: Lens' GoogleCloudDialogflowV2SessionEntityType (Maybe GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode)
-gcdvSetEntityOverrideMode
-  = lens _gcdvSetEntityOverrideMode
-      (\ s a -> s{_gcdvSetEntityOverrideMode = a})
-
--- | Required. The collection of entities associated with this session entity
--- type.
-gcdvSetEntities :: Lens' GoogleCloudDialogflowV2SessionEntityType [GoogleCloudDialogflowV2EntityTypeEntity]
-gcdvSetEntities
-  = lens _gcdvSetEntities
-      (\ s a -> s{_gcdvSetEntities = a})
-      . _Default
-      . _Coerce
-
--- | Required. The unique identifier of this session entity type. Format:
--- \`projects\/\/agent\/sessions\/\/entityTypes\/\`. \`\` must be the
--- display name of an existing entity type in the same agent that will be
--- overridden or supplemented.
-gcdvSetName :: Lens' GoogleCloudDialogflowV2SessionEntityType (Maybe Text)
-gcdvSetName
-  = lens _gcdvSetName (\ s a -> s{_gcdvSetName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2SessionEntityType
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2SessionEntityType"
-              (\ o ->
-                 GoogleCloudDialogflowV2SessionEntityType' <$>
-                   (o .:? "entityOverrideMode") <*>
-                     (o .:? "entities" .!= mempty)
-                     <*> (o .:? "name"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2SessionEntityType
-         where
-        toJSON GoogleCloudDialogflowV2SessionEntityType'{..}
-          = object
-              (catMaybes
-                 [("entityOverrideMode" .=) <$>
-                    _gcdvSetEntityOverrideMode,
-                  ("entities" .=) <$> _gcdvSetEntities,
-                  ("name" .=) <$> _gcdvSetName])
-
--- | An **entity entry** for an associated entity type.
---
--- /See:/ 'googleCloudDialogflowV2EntityTypeEntity' smart constructor.
-data GoogleCloudDialogflowV2EntityTypeEntity =
-  GoogleCloudDialogflowV2EntityTypeEntity'
-    { _gValue    :: !(Maybe Text)
-    , _gSynonyms :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2EntityTypeEntity' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gValue'
---
--- * 'gSynonyms'
-googleCloudDialogflowV2EntityTypeEntity
-    :: GoogleCloudDialogflowV2EntityTypeEntity
-googleCloudDialogflowV2EntityTypeEntity =
-  GoogleCloudDialogflowV2EntityTypeEntity'
-    {_gValue = Nothing, _gSynonyms = Nothing}
-
-
--- | Required. The primary value associated with this entity entry. For
--- example, if the entity type is *vegetable*, the value could be
--- *scallions*. For \`KIND_MAP\` entity types: * A canonical value to be
--- used in place of synonyms. For \`KIND_LIST\` entity types: * A string
--- that can contain references to other entity types (with or without
--- aliases).
-gValue :: Lens' GoogleCloudDialogflowV2EntityTypeEntity (Maybe Text)
-gValue = lens _gValue (\ s a -> s{_gValue = a})
-
--- | Required. A collection of value synonyms. For example, if the entity
--- type is *vegetable*, and \`value\` is *scallions*, a synonym could be
--- *green onions*. For \`KIND_LIST\` entity types: * This collection must
--- contain exactly one synonym equal to \`value\`.
-gSynonyms :: Lens' GoogleCloudDialogflowV2EntityTypeEntity [Text]
-gSynonyms
-  = lens _gSynonyms (\ s a -> s{_gSynonyms = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2EntityTypeEntity
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2EntityTypeEntity"
-              (\ o ->
-                 GoogleCloudDialogflowV2EntityTypeEntity' <$>
-                   (o .:? "value") <*> (o .:? "synonyms" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2EntityTypeEntity
-         where
-        toJSON GoogleCloudDialogflowV2EntityTypeEntity'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _gValue,
-                  ("synonyms" .=) <$> _gSynonyms])
-
--- | Represents the result of conversational query or event processing.
---
--- /See:/ 'googleCloudDialogflowV2beta1QueryResult' smart constructor.
-data GoogleCloudDialogflowV2beta1QueryResult =
-  GoogleCloudDialogflowV2beta1QueryResult'
-    { _gLanguageCode                :: !(Maybe Text)
-    , _gAllRequiredParamsPresent    :: !(Maybe Bool)
-    , _gIntentDetectionConfidence   :: !(Maybe (Textual Double))
-    , _gFulfillmentMessages         :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessage])
-    , _gKnowledgeAnswers            :: !(Maybe GoogleCloudDialogflowV2beta1KnowledgeAnswers)
-    , _gSpeechRecognitionConfidence :: !(Maybe (Textual Double))
-    , _gAction                      :: !(Maybe Text)
-    , _gIntent                      :: !(Maybe GoogleCloudDialogflowV2beta1Intent)
-    , _gSentimentAnalysisResult     :: !(Maybe GoogleCloudDialogflowV2beta1SentimentAnalysisResult)
-    , _gQueryText                   :: !(Maybe Text)
-    , _gFulfillmentText             :: !(Maybe Text)
-    , _gParameters                  :: !(Maybe GoogleCloudDialogflowV2beta1QueryResultParameters)
-    , _gWebhookPayload              :: !(Maybe GoogleCloudDialogflowV2beta1QueryResultWebhookPayload)
-    , _gOutputContexts              :: !(Maybe [GoogleCloudDialogflowV2beta1Context])
-    , _gWebhookSource               :: !(Maybe Text)
-    , _gDiagnosticInfo              :: !(Maybe GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1QueryResult' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gLanguageCode'
---
--- * 'gAllRequiredParamsPresent'
---
--- * 'gIntentDetectionConfidence'
---
--- * 'gFulfillmentMessages'
---
--- * 'gKnowledgeAnswers'
---
--- * 'gSpeechRecognitionConfidence'
---
--- * 'gAction'
---
--- * 'gIntent'
---
--- * 'gSentimentAnalysisResult'
---
--- * 'gQueryText'
---
--- * 'gFulfillmentText'
---
--- * 'gParameters'
---
--- * 'gWebhookPayload'
---
--- * 'gOutputContexts'
---
--- * 'gWebhookSource'
---
--- * 'gDiagnosticInfo'
-googleCloudDialogflowV2beta1QueryResult
-    :: GoogleCloudDialogflowV2beta1QueryResult
-googleCloudDialogflowV2beta1QueryResult =
-  GoogleCloudDialogflowV2beta1QueryResult'
-    { _gLanguageCode = Nothing
-    , _gAllRequiredParamsPresent = Nothing
-    , _gIntentDetectionConfidence = Nothing
-    , _gFulfillmentMessages = Nothing
-    , _gKnowledgeAnswers = Nothing
-    , _gSpeechRecognitionConfidence = Nothing
-    , _gAction = Nothing
-    , _gIntent = Nothing
-    , _gSentimentAnalysisResult = Nothing
-    , _gQueryText = Nothing
-    , _gFulfillmentText = Nothing
-    , _gParameters = Nothing
-    , _gWebhookPayload = Nothing
-    , _gOutputContexts = Nothing
-    , _gWebhookSource = Nothing
-    , _gDiagnosticInfo = Nothing
-    }
-
-
--- | The language that was triggered during intent detection. See [Language
--- Support](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- for a list of the currently supported language codes.
-gLanguageCode :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Text)
-gLanguageCode
-  = lens _gLanguageCode
-      (\ s a -> s{_gLanguageCode = a})
-
--- | This field is set to: - \`false\` if the matched intent has required
--- parameters and not all of the required parameter values have been
--- collected. - \`true\` if all required parameter values have been
--- collected, or if the matched intent doesn\'t contain any required
--- parameters.
-gAllRequiredParamsPresent :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Bool)
-gAllRequiredParamsPresent
-  = lens _gAllRequiredParamsPresent
-      (\ s a -> s{_gAllRequiredParamsPresent = a})
-
--- | The intent detection confidence. Values range from 0.0 (completely
--- uncertain) to 1.0 (completely certain). If there are \`multiple
--- knowledge_answers\` messages, this value is set to the greatest
--- \`knowledgeAnswers.match_confidence\` value in the list.
-gIntentDetectionConfidence :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Double)
-gIntentDetectionConfidence
-  = lens _gIntentDetectionConfidence
-      (\ s a -> s{_gIntentDetectionConfidence = a})
-      . mapping _Coerce
-
--- | The collection of rich messages to present to the user.
-gFulfillmentMessages :: Lens' GoogleCloudDialogflowV2beta1QueryResult [GoogleCloudDialogflowV2beta1IntentMessage]
-gFulfillmentMessages
-  = lens _gFulfillmentMessages
-      (\ s a -> s{_gFulfillmentMessages = a})
-      . _Default
-      . _Coerce
-
--- | The result from Knowledge Connector (if any), ordered by decreasing
--- \`KnowledgeAnswers.match_confidence\`.
-gKnowledgeAnswers :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1KnowledgeAnswers)
-gKnowledgeAnswers
-  = lens _gKnowledgeAnswers
-      (\ s a -> s{_gKnowledgeAnswers = a})
-
--- | The Speech recognition confidence between 0.0 and 1.0. A higher number
--- indicates an estimated greater likelihood that the recognized words are
--- correct. The default of 0.0 is a sentinel value indicating that
--- confidence was not set. This field is not guaranteed to be accurate or
--- set. In particular this field isn\'t set for StreamingDetectIntent since
--- the streaming endpoint has separate confidence estimates per portion of
--- the audio in StreamingRecognitionResult.
-gSpeechRecognitionConfidence :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Double)
-gSpeechRecognitionConfidence
-  = lens _gSpeechRecognitionConfidence
-      (\ s a -> s{_gSpeechRecognitionConfidence = a})
-      . mapping _Coerce
-
--- | The action name from the matched intent.
-gAction :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Text)
-gAction = lens _gAction (\ s a -> s{_gAction = a})
-
--- | The intent that matched the conversational query. Some, not all fields
--- are filled in this message, including but not limited to: \`name\`,
--- \`display_name\` and \`webhook_state\`.
-gIntent :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1Intent)
-gIntent = lens _gIntent (\ s a -> s{_gIntent = a})
-
--- | The sentiment analysis result, which depends on the
--- \`sentiment_analysis_request_config\` specified in the request.
-gSentimentAnalysisResult :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1SentimentAnalysisResult)
-gSentimentAnalysisResult
-  = lens _gSentimentAnalysisResult
-      (\ s a -> s{_gSentimentAnalysisResult = a})
-
--- | The original conversational query text: - If natural language text was
--- provided as input, \`query_text\` contains a copy of the input. - If
--- natural language speech audio was provided as input, \`query_text\`
--- contains the speech recognition result. If speech recognizer produced
--- multiple alternatives, a particular one is picked. - If an event was
--- provided as input, \`query_text\` is not set.
-gQueryText :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Text)
-gQueryText
-  = lens _gQueryText (\ s a -> s{_gQueryText = a})
-
--- | The text to be pronounced to the user or shown on the screen. Note: This
--- is a legacy field, \`fulfillment_messages\` should be preferred.
-gFulfillmentText :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Text)
-gFulfillmentText
-  = lens _gFulfillmentText
-      (\ s a -> s{_gFulfillmentText = a})
-
--- | The collection of extracted parameters.
-gParameters :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1QueryResultParameters)
-gParameters
-  = lens _gParameters (\ s a -> s{_gParameters = a})
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`payload\` field returned in the webhook response.
-gWebhookPayload :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1QueryResultWebhookPayload)
-gWebhookPayload
-  = lens _gWebhookPayload
-      (\ s a -> s{_gWebhookPayload = a})
-
--- | The collection of output contexts. If applicable,
--- \`output_contexts.parameters\` contains entries with name \`.original\`
--- containing the original parameter values before the query.
-gOutputContexts :: Lens' GoogleCloudDialogflowV2beta1QueryResult [GoogleCloudDialogflowV2beta1Context]
-gOutputContexts
-  = lens _gOutputContexts
-      (\ s a -> s{_gOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | If the query was fulfilled by a webhook call, this field is set to the
--- value of the \`source\` field returned in the webhook response.
-gWebhookSource :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe Text)
-gWebhookSource
-  = lens _gWebhookSource
-      (\ s a -> s{_gWebhookSource = a})
-
--- | The free-form diagnostic info. For example, this field could contain
--- webhook call latency. The string keys of the Struct\'s fields map can
--- change without notice.
-gDiagnosticInfo :: Lens' GoogleCloudDialogflowV2beta1QueryResult (Maybe GoogleCloudDialogflowV2beta1QueryResultDiagnosticInfo)
-gDiagnosticInfo
-  = lens _gDiagnosticInfo
-      (\ s a -> s{_gDiagnosticInfo = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1QueryResult
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1QueryResult"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1QueryResult' <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "allRequiredParamsPresent")
-                     <*> (o .:? "intentDetectionConfidence")
-                     <*> (o .:? "fulfillmentMessages" .!= mempty)
-                     <*> (o .:? "knowledgeAnswers")
-                     <*> (o .:? "speechRecognitionConfidence")
-                     <*> (o .:? "action")
-                     <*> (o .:? "intent")
-                     <*> (o .:? "sentimentAnalysisResult")
-                     <*> (o .:? "queryText")
-                     <*> (o .:? "fulfillmentText")
-                     <*> (o .:? "parameters")
-                     <*> (o .:? "webhookPayload")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "webhookSource")
-                     <*> (o .:? "diagnosticInfo"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1QueryResult
-         where
-        toJSON GoogleCloudDialogflowV2beta1QueryResult'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _gLanguageCode,
-                  ("allRequiredParamsPresent" .=) <$>
-                    _gAllRequiredParamsPresent,
-                  ("intentDetectionConfidence" .=) <$>
-                    _gIntentDetectionConfidence,
-                  ("fulfillmentMessages" .=) <$> _gFulfillmentMessages,
-                  ("knowledgeAnswers" .=) <$> _gKnowledgeAnswers,
-                  ("speechRecognitionConfidence" .=) <$>
-                    _gSpeechRecognitionConfidence,
-                  ("action" .=) <$> _gAction,
-                  ("intent" .=) <$> _gIntent,
-                  ("sentimentAnalysisResult" .=) <$>
-                    _gSentimentAnalysisResult,
-                  ("queryText" .=) <$> _gQueryText,
-                  ("fulfillmentText" .=) <$> _gFulfillmentText,
-                  ("parameters" .=) <$> _gParameters,
-                  ("webhookPayload" .=) <$> _gWebhookPayload,
-                  ("outputContexts" .=) <$> _gOutputContexts,
-                  ("webhookSource" .=) <$> _gWebhookSource,
-                  ("diagnosticInfo" .=) <$> _gDiagnosticInfo])
-
--- | The image response message.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageImage' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageImage =
-  GoogleCloudDialogflowV2IntentMessageImage'
-    { _gAccessibilityText :: !(Maybe Text)
-    , _gImageURI          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageImage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gAccessibilityText'
---
--- * 'gImageURI'
-googleCloudDialogflowV2IntentMessageImage
-    :: GoogleCloudDialogflowV2IntentMessageImage
-googleCloudDialogflowV2IntentMessageImage =
-  GoogleCloudDialogflowV2IntentMessageImage'
-    {_gAccessibilityText = Nothing, _gImageURI = Nothing}
-
-
--- | Optional. A text description of the image to be used for accessibility,
--- e.g., screen readers.
-gAccessibilityText :: Lens' GoogleCloudDialogflowV2IntentMessageImage (Maybe Text)
-gAccessibilityText
-  = lens _gAccessibilityText
-      (\ s a -> s{_gAccessibilityText = a})
-
--- | Optional. The public URI to an image file.
-gImageURI :: Lens' GoogleCloudDialogflowV2IntentMessageImage (Maybe Text)
-gImageURI
-  = lens _gImageURI (\ s a -> s{_gImageURI = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageImage
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageImage"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageImage' <$>
-                   (o .:? "accessibilityText") <*> (o .:? "imageUri"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageImage
-         where
-        toJSON GoogleCloudDialogflowV2IntentMessageImage'{..}
-          = object
-              (catMaybes
-                 [("accessibilityText" .=) <$> _gAccessibilityText,
-                  ("imageUri" .=) <$> _gImageURI])
-
--- | The response message for a webhook call.
---
--- /See:/ 'googleCloudDialogflowV2WebhookResponse' smart constructor.
-data GoogleCloudDialogflowV2WebhookResponse =
-  GoogleCloudDialogflowV2WebhookResponse'
-    { _gooFulfillmentMessages :: !(Maybe [GoogleCloudDialogflowV2IntentMessage])
-    , _gooPayload             :: !(Maybe GoogleCloudDialogflowV2WebhookResponsePayload)
-    , _gooFulfillmentText     :: !(Maybe Text)
-    , _gooSource              :: !(Maybe Text)
-    , _gooOutputContexts      :: !(Maybe [GoogleCloudDialogflowV2Context])
-    , _gooFollowupEventInput  :: !(Maybe GoogleCloudDialogflowV2EventInput)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2WebhookResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooFulfillmentMessages'
---
--- * 'gooPayload'
---
--- * 'gooFulfillmentText'
---
--- * 'gooSource'
---
--- * 'gooOutputContexts'
---
--- * 'gooFollowupEventInput'
-googleCloudDialogflowV2WebhookResponse
-    :: GoogleCloudDialogflowV2WebhookResponse
-googleCloudDialogflowV2WebhookResponse =
-  GoogleCloudDialogflowV2WebhookResponse'
-    { _gooFulfillmentMessages = Nothing
-    , _gooPayload = Nothing
-    , _gooFulfillmentText = Nothing
-    , _gooSource = Nothing
-    , _gooOutputContexts = Nothing
-    , _gooFollowupEventInput = Nothing
-    }
-
-
--- | Optional. The collection of rich messages to present to the user. This
--- value is passed directly to \`QueryResult.fulfillment_messages\`.
-gooFulfillmentMessages :: Lens' GoogleCloudDialogflowV2WebhookResponse [GoogleCloudDialogflowV2IntentMessage]
-gooFulfillmentMessages
-  = lens _gooFulfillmentMessages
-      (\ s a -> s{_gooFulfillmentMessages = a})
-      . _Default
-      . _Coerce
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_payload\`. See the related
--- \`fulfillment_messages[i].payload field\`, which may be used as an
--- alternative to this field. This field can be used for Actions on Google
--- responses. It should have a structure similar to the JSON message shown
--- here. For more information, see [Actions on Google Webhook
--- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
---
--- > {
--- >   "google": {
--- >     "expectUserResponse": true,
--- >     "richResponse": {
--- >       "items": [
--- >         {
--- >           "simpleResponse": {
--- >             "textToSpeech": "this is a simple response"
--- >           }
--- >         }
--- >       ]
--- >     }
--- >   }
--- > }
-gooPayload :: Lens' GoogleCloudDialogflowV2WebhookResponse (Maybe GoogleCloudDialogflowV2WebhookResponsePayload)
-gooPayload
-  = lens _gooPayload (\ s a -> s{_gooPayload = a})
-
--- | Optional. The text to be shown on the screen. This value is passed
--- directly to \`QueryResult.fulfillment_text\`.
-gooFulfillmentText :: Lens' GoogleCloudDialogflowV2WebhookResponse (Maybe Text)
-gooFulfillmentText
-  = lens _gooFulfillmentText
-      (\ s a -> s{_gooFulfillmentText = a})
-
--- | Optional. This value is passed directly to
--- \`QueryResult.webhook_source\`.
-gooSource :: Lens' GoogleCloudDialogflowV2WebhookResponse (Maybe Text)
-gooSource
-  = lens _gooSource (\ s a -> s{_gooSource = a})
-
--- | Optional. The collection of output contexts. This value is passed
--- directly to \`QueryResult.output_contexts\`.
-gooOutputContexts :: Lens' GoogleCloudDialogflowV2WebhookResponse [GoogleCloudDialogflowV2Context]
-gooOutputContexts
-  = lens _gooOutputContexts
-      (\ s a -> s{_gooOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Makes the platform immediately invoke another \`DetectIntent\`
--- call internally with the specified event as input.
-gooFollowupEventInput :: Lens' GoogleCloudDialogflowV2WebhookResponse (Maybe GoogleCloudDialogflowV2EventInput)
-gooFollowupEventInput
-  = lens _gooFollowupEventInput
-      (\ s a -> s{_gooFollowupEventInput = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2WebhookResponse
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2WebhookResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2WebhookResponse' <$>
-                   (o .:? "fulfillmentMessages" .!= mempty) <*>
-                     (o .:? "payload")
-                     <*> (o .:? "fulfillmentText")
-                     <*> (o .:? "source")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "followupEventInput"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2WebhookResponse
-         where
-        toJSON GoogleCloudDialogflowV2WebhookResponse'{..}
-          = object
-              (catMaybes
-                 [("fulfillmentMessages" .=) <$>
-                    _gooFulfillmentMessages,
-                  ("payload" .=) <$> _gooPayload,
-                  ("fulfillmentText" .=) <$> _gooFulfillmentText,
-                  ("source" .=) <$> _gooSource,
-                  ("outputContexts" .=) <$> _gooOutputContexts,
-                  ("followupEventInput" .=) <$>
-                    _gooFollowupEventInput])
-
--- | The request message for Agents.TrainAgent.
---
--- /See:/ 'googleCloudDialogflowV2TrainAgentRequest' smart constructor.
-data GoogleCloudDialogflowV2TrainAgentRequest =
-  GoogleCloudDialogflowV2TrainAgentRequest'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2TrainAgentRequest' with the minimum fields required to make a request.
---
-googleCloudDialogflowV2TrainAgentRequest
-    :: GoogleCloudDialogflowV2TrainAgentRequest
-googleCloudDialogflowV2TrainAgentRequest =
-  GoogleCloudDialogflowV2TrainAgentRequest'
-
-
-instance FromJSON
-           GoogleCloudDialogflowV2TrainAgentRequest
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2TrainAgentRequest"
-              (\ o ->
-                 pure GoogleCloudDialogflowV2TrainAgentRequest')
-
-instance ToJSON
-           GoogleCloudDialogflowV2TrainAgentRequest
-         where
-        toJSON = const emptyObject
-
--- | This message is a wrapper around a collection of intents.
---
--- /See:/ 'googleCloudDialogflowV2IntentBatch' smart constructor.
-newtype GoogleCloudDialogflowV2IntentBatch =
-  GoogleCloudDialogflowV2IntentBatch'
-    { _gcdvibIntents :: Maybe [GoogleCloudDialogflowV2Intent]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentBatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvibIntents'
-googleCloudDialogflowV2IntentBatch
-    :: GoogleCloudDialogflowV2IntentBatch
-googleCloudDialogflowV2IntentBatch =
-  GoogleCloudDialogflowV2IntentBatch' {_gcdvibIntents = Nothing}
-
-
--- | A collection of intents.
-gcdvibIntents :: Lens' GoogleCloudDialogflowV2IntentBatch [GoogleCloudDialogflowV2Intent]
-gcdvibIntents
-  = lens _gcdvibIntents
-      (\ s a -> s{_gcdvibIntents = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON GoogleCloudDialogflowV2IntentBatch
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2IntentBatch"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentBatch' <$>
-                   (o .:? "intents" .!= mempty))
-
-instance ToJSON GoogleCloudDialogflowV2IntentBatch
-         where
-        toJSON GoogleCloudDialogflowV2IntentBatch'{..}
-          = object
-              (catMaybes [("intents" .=) <$> _gcdvibIntents])
-
--- | Represents an entity type. Entity types serve as a tool for extracting
--- parameter values from natural language queries.
---
--- /See:/ 'googleCloudDialogflowV2beta1EntityType' smart constructor.
-data GoogleCloudDialogflowV2beta1EntityType =
-  GoogleCloudDialogflowV2beta1EntityType'
-    { _gcdvetcEntities          :: !(Maybe [GoogleCloudDialogflowV2beta1EntityTypeEntity])
-    , _gcdvetcKind              :: !(Maybe GoogleCloudDialogflowV2beta1EntityTypeKind)
-    , _gcdvetcName              :: !(Maybe Text)
-    , _gcdvetcAutoExpansionMode :: !(Maybe GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode)
-    , _gcdvetcDisplayName       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1EntityType' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvetcEntities'
---
--- * 'gcdvetcKind'
---
--- * 'gcdvetcName'
---
--- * 'gcdvetcAutoExpansionMode'
---
--- * 'gcdvetcDisplayName'
-googleCloudDialogflowV2beta1EntityType
-    :: GoogleCloudDialogflowV2beta1EntityType
-googleCloudDialogflowV2beta1EntityType =
-  GoogleCloudDialogflowV2beta1EntityType'
-    { _gcdvetcEntities = Nothing
-    , _gcdvetcKind = Nothing
-    , _gcdvetcName = Nothing
-    , _gcdvetcAutoExpansionMode = Nothing
-    , _gcdvetcDisplayName = Nothing
-    }
-
-
--- | Optional. The collection of entity entries associated with the entity
--- type.
-gcdvetcEntities :: Lens' GoogleCloudDialogflowV2beta1EntityType [GoogleCloudDialogflowV2beta1EntityTypeEntity]
-gcdvetcEntities
-  = lens _gcdvetcEntities
-      (\ s a -> s{_gcdvetcEntities = a})
-      . _Default
-      . _Coerce
-
--- | Required. Indicates the kind of entity type.
-gcdvetcKind :: Lens' GoogleCloudDialogflowV2beta1EntityType (Maybe GoogleCloudDialogflowV2beta1EntityTypeKind)
-gcdvetcKind
-  = lens _gcdvetcKind (\ s a -> s{_gcdvetcKind = a})
-
--- | The unique identifier of the entity type. Required for
--- EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
--- methods. Format: \`projects\/\/agent\/entityTypes\/\`.
-gcdvetcName :: Lens' GoogleCloudDialogflowV2beta1EntityType (Maybe Text)
-gcdvetcName
-  = lens _gcdvetcName (\ s a -> s{_gcdvetcName = a})
-
--- | Optional. Indicates whether the entity type can be automatically
--- expanded.
-gcdvetcAutoExpansionMode :: Lens' GoogleCloudDialogflowV2beta1EntityType (Maybe GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode)
-gcdvetcAutoExpansionMode
-  = lens _gcdvetcAutoExpansionMode
-      (\ s a -> s{_gcdvetcAutoExpansionMode = a})
-
--- | Required. The name of the entity type.
-gcdvetcDisplayName :: Lens' GoogleCloudDialogflowV2beta1EntityType (Maybe Text)
-gcdvetcDisplayName
-  = lens _gcdvetcDisplayName
-      (\ s a -> s{_gcdvetcDisplayName = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1EntityType
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2beta1EntityType"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1EntityType' <$>
-                   (o .:? "entities" .!= mempty) <*> (o .:? "kind") <*>
-                     (o .:? "name")
-                     <*> (o .:? "autoExpansionMode")
-                     <*> (o .:? "displayName"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1EntityType
-         where
-        toJSON GoogleCloudDialogflowV2beta1EntityType'{..}
-          = object
-              (catMaybes
-                 [("entities" .=) <$> _gcdvetcEntities,
-                  ("kind" .=) <$> _gcdvetcKind,
-                  ("name" .=) <$> _gcdvetcName,
-                  ("autoExpansionMode" .=) <$>
-                    _gcdvetcAutoExpansionMode,
-                  ("displayName" .=) <$> _gcdvetcDisplayName])
-
--- | The response message for Agents.SearchAgents.
---
--- /See:/ 'googleCloudDialogflowV2SearchAgentsResponse' smart constructor.
-data GoogleCloudDialogflowV2SearchAgentsResponse =
-  GoogleCloudDialogflowV2SearchAgentsResponse'
-    { _gcdvsarNextPageToken :: !(Maybe Text)
-    , _gcdvsarAgents        :: !(Maybe [GoogleCloudDialogflowV2Agent])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2SearchAgentsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvsarNextPageToken'
---
--- * 'gcdvsarAgents'
-googleCloudDialogflowV2SearchAgentsResponse
-    :: GoogleCloudDialogflowV2SearchAgentsResponse
-googleCloudDialogflowV2SearchAgentsResponse =
-  GoogleCloudDialogflowV2SearchAgentsResponse'
-    {_gcdvsarNextPageToken = Nothing, _gcdvsarAgents = Nothing}
-
-
--- | Token to retrieve the next page of results, or empty if there are no
--- more results in the list.
-gcdvsarNextPageToken :: Lens' GoogleCloudDialogflowV2SearchAgentsResponse (Maybe Text)
-gcdvsarNextPageToken
-  = lens _gcdvsarNextPageToken
-      (\ s a -> s{_gcdvsarNextPageToken = a})
-
--- | The list of agents. There will be a maximum number of items returned
--- based on the page_size field in the request.
-gcdvsarAgents :: Lens' GoogleCloudDialogflowV2SearchAgentsResponse [GoogleCloudDialogflowV2Agent]
-gcdvsarAgents
-  = lens _gcdvsarAgents
-      (\ s a -> s{_gcdvsarAgents = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2SearchAgentsResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2SearchAgentsResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2SearchAgentsResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "agents" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2SearchAgentsResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2SearchAgentsResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _gcdvsarNextPageToken,
-                  ("agents" .=) <$> _gcdvsarAgents])
-
--- | The response message for SessionEntityTypes.ListSessionEntityTypes.
---
--- /See:/ 'googleCloudDialogflowV2ListSessionEntityTypesResponse' smart constructor.
-data GoogleCloudDialogflowV2ListSessionEntityTypesResponse =
-  GoogleCloudDialogflowV2ListSessionEntityTypesResponse'
-    { _gcdvlSetrNextPageToken      :: !(Maybe Text)
-    , _gcdvlSetrSessionEntityTypes :: !(Maybe [GoogleCloudDialogflowV2SessionEntityType])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2ListSessionEntityTypesResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvlSetrNextPageToken'
---
--- * 'gcdvlSetrSessionEntityTypes'
-googleCloudDialogflowV2ListSessionEntityTypesResponse
-    :: GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-googleCloudDialogflowV2ListSessionEntityTypesResponse =
-  GoogleCloudDialogflowV2ListSessionEntityTypesResponse'
-    {_gcdvlSetrNextPageToken = Nothing, _gcdvlSetrSessionEntityTypes = Nothing}
-
-
--- | Token to retrieve the next page of results, or empty if there are no
--- more results in the list.
-gcdvlSetrNextPageToken :: Lens' GoogleCloudDialogflowV2ListSessionEntityTypesResponse (Maybe Text)
-gcdvlSetrNextPageToken
-  = lens _gcdvlSetrNextPageToken
-      (\ s a -> s{_gcdvlSetrNextPageToken = a})
-
--- | The list of session entity types. There will be a maximum number of
--- items returned based on the page_size field in the request.
-gcdvlSetrSessionEntityTypes :: Lens' GoogleCloudDialogflowV2ListSessionEntityTypesResponse [GoogleCloudDialogflowV2SessionEntityType]
-gcdvlSetrSessionEntityTypes
-  = lens _gcdvlSetrSessionEntityTypes
-      (\ s a -> s{_gcdvlSetrSessionEntityTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2ListSessionEntityTypesResponse"
-              (\ o ->
-                 GoogleCloudDialogflowV2ListSessionEntityTypesResponse'
-                   <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "sessionEntityTypes" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-         where
-        toJSON
-          GoogleCloudDialogflowV2ListSessionEntityTypesResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _gcdvlSetrNextPageToken,
-                  ("sessionEntityTypes" .=) <$>
-                    _gcdvlSetrSessionEntityTypes])
-
--- | This resource represents a long-running operation that is the result of
--- a network API call.
---
--- /See:/ 'googleLongrunningOperation' smart constructor.
-data GoogleLongrunningOperation =
-  GoogleLongrunningOperation'
-    { _gloDone     :: !(Maybe Bool)
-    , _gloError    :: !(Maybe GoogleRpcStatus)
-    , _gloResponse :: !(Maybe GoogleLongrunningOperationResponse)
-    , _gloName     :: !(Maybe Text)
-    , _gloMetadata :: !(Maybe GoogleLongrunningOperationMetadata)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleLongrunningOperation' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gloDone'
---
--- * 'gloError'
---
--- * 'gloResponse'
---
--- * 'gloName'
---
--- * 'gloMetadata'
-googleLongrunningOperation
-    :: GoogleLongrunningOperation
-googleLongrunningOperation =
-  GoogleLongrunningOperation'
-    { _gloDone = Nothing
-    , _gloError = Nothing
-    , _gloResponse = Nothing
-    , _gloName = Nothing
-    , _gloMetadata = Nothing
-    }
-
-
--- | If the value is \`false\`, it means the operation is still in progress.
--- If \`true\`, the operation is completed, and either \`error\` or
--- \`response\` is available.
-gloDone :: Lens' GoogleLongrunningOperation (Maybe Bool)
-gloDone = lens _gloDone (\ s a -> s{_gloDone = a})
-
--- | The error result of the operation in case of failure or cancellation.
-gloError :: Lens' GoogleLongrunningOperation (Maybe GoogleRpcStatus)
-gloError = lens _gloError (\ s a -> s{_gloError = a})
-
--- | The normal response of the operation in case of success. If the original
--- method returns no data on success, such as \`Delete\`, the response is
--- \`google.protobuf.Empty\`. If the original method is standard
--- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.
--- For other methods, the response should have the type \`XxxResponse\`,
--- where \`Xxx\` is the original method name. For example, if the original
--- method name is \`TakeSnapshot()\`, the inferred response type is
--- \`TakeSnapshotResponse\`.
-gloResponse :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationResponse)
-gloResponse
-  = lens _gloResponse (\ s a -> s{_gloResponse = a})
-
--- | The server-assigned name, which is only unique within the same service
--- that originally returns it. If you use the default HTTP mapping, the
--- \`name\` should have the format of \`operations\/some\/unique\/name\`.
-gloName :: Lens' GoogleLongrunningOperation (Maybe Text)
-gloName = lens _gloName (\ s a -> s{_gloName = a})
-
--- | Service-specific metadata associated with the operation. It typically
--- contains progress information and common metadata such as create time.
--- Some services might not provide such metadata. Any method that returns a
--- long-running operation should document the metadata type, if any.
-gloMetadata :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationMetadata)
-gloMetadata
-  = lens _gloMetadata (\ s a -> s{_gloMetadata = a})
-
-instance FromJSON GoogleLongrunningOperation where
-        parseJSON
-          = withObject "GoogleLongrunningOperation"
-              (\ o ->
-                 GoogleLongrunningOperation' <$>
-                   (o .:? "done") <*> (o .:? "error") <*>
-                     (o .:? "response")
-                     <*> (o .:? "name")
-                     <*> (o .:? "metadata"))
-
-instance ToJSON GoogleLongrunningOperation where
-        toJSON GoogleLongrunningOperation'{..}
-          = object
-              (catMaybes
-                 [("done" .=) <$> _gloDone,
-                  ("error" .=) <$> _gloError,
-                  ("response" .=) <$> _gloResponse,
-                  ("name" .=) <$> _gloName,
-                  ("metadata" .=) <$> _gloMetadata])
-
--- | Corresponds to the \`Response\` field in the Dialogflow console.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessage' smart constructor.
-data GoogleCloudDialogflowV2IntentMessage =
-  GoogleCloudDialogflowV2IntentMessage'
-    { _gcdvimcCard              :: !(Maybe GoogleCloudDialogflowV2IntentMessageCard)
-    , _gcdvimcImage             :: !(Maybe GoogleCloudDialogflowV2IntentMessageImage)
-    , _gcdvimcPlatform          :: !(Maybe GoogleCloudDialogflowV2IntentMessagePlatform)
-    , _gcdvimcLinkOutSuggestion :: !(Maybe GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion)
-    , _gcdvimcText              :: !(Maybe GoogleCloudDialogflowV2IntentMessageText)
-    , _gcdvimcCarouselSelect    :: !(Maybe GoogleCloudDialogflowV2IntentMessageCarouselSelect)
-    , _gcdvimcSimpleResponses   :: !(Maybe GoogleCloudDialogflowV2IntentMessageSimpleResponses)
-    , _gcdvimcPayload           :: !(Maybe GoogleCloudDialogflowV2IntentMessagePayload)
-    , _gcdvimcSuggestions       :: !(Maybe GoogleCloudDialogflowV2IntentMessageSuggestions)
-    , _gcdvimcListSelect        :: !(Maybe GoogleCloudDialogflowV2IntentMessageListSelect)
-    , _gcdvimcBasicCard         :: !(Maybe GoogleCloudDialogflowV2IntentMessageBasicCard)
-    , _gcdvimcQuickReplies      :: !(Maybe GoogleCloudDialogflowV2IntentMessageQuickReplies)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimcCard'
---
--- * 'gcdvimcImage'
---
--- * 'gcdvimcPlatform'
---
--- * 'gcdvimcLinkOutSuggestion'
---
--- * 'gcdvimcText'
---
--- * 'gcdvimcCarouselSelect'
---
--- * 'gcdvimcSimpleResponses'
---
--- * 'gcdvimcPayload'
---
--- * 'gcdvimcSuggestions'
---
--- * 'gcdvimcListSelect'
---
--- * 'gcdvimcBasicCard'
---
--- * 'gcdvimcQuickReplies'
-googleCloudDialogflowV2IntentMessage
-    :: GoogleCloudDialogflowV2IntentMessage
-googleCloudDialogflowV2IntentMessage =
-  GoogleCloudDialogflowV2IntentMessage'
-    { _gcdvimcCard = Nothing
-    , _gcdvimcImage = Nothing
-    , _gcdvimcPlatform = Nothing
-    , _gcdvimcLinkOutSuggestion = Nothing
-    , _gcdvimcText = Nothing
-    , _gcdvimcCarouselSelect = Nothing
-    , _gcdvimcSimpleResponses = Nothing
-    , _gcdvimcPayload = Nothing
-    , _gcdvimcSuggestions = Nothing
-    , _gcdvimcListSelect = Nothing
-    , _gcdvimcBasicCard = Nothing
-    , _gcdvimcQuickReplies = Nothing
-    }
-
-
--- | The card response.
-gcdvimcCard :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageCard)
-gcdvimcCard
-  = lens _gcdvimcCard (\ s a -> s{_gcdvimcCard = a})
-
--- | The image response.
-gcdvimcImage :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageImage)
-gcdvimcImage
-  = lens _gcdvimcImage (\ s a -> s{_gcdvimcImage = a})
-
--- | Optional. The platform that this message is intended for.
-gcdvimcPlatform :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessagePlatform)
-gcdvimcPlatform
-  = lens _gcdvimcPlatform
-      (\ s a -> s{_gcdvimcPlatform = a})
-
--- | The link out suggestion chip for Actions on Google.
-gcdvimcLinkOutSuggestion :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion)
-gcdvimcLinkOutSuggestion
-  = lens _gcdvimcLinkOutSuggestion
-      (\ s a -> s{_gcdvimcLinkOutSuggestion = a})
-
--- | The text response.
-gcdvimcText :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageText)
-gcdvimcText
-  = lens _gcdvimcText (\ s a -> s{_gcdvimcText = a})
-
--- | The carousel card response for Actions on Google.
-gcdvimcCarouselSelect :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageCarouselSelect)
-gcdvimcCarouselSelect
-  = lens _gcdvimcCarouselSelect
-      (\ s a -> s{_gcdvimcCarouselSelect = a})
-
--- | The voice and text-only responses for Actions on Google.
-gcdvimcSimpleResponses :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageSimpleResponses)
-gcdvimcSimpleResponses
-  = lens _gcdvimcSimpleResponses
-      (\ s a -> s{_gcdvimcSimpleResponses = a})
-
--- | Returns a response containing a custom, platform-specific payload. See
--- the Intent.Message.Platform type for a description of the structure that
--- may be required for your platform.
-gcdvimcPayload :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessagePayload)
-gcdvimcPayload
-  = lens _gcdvimcPayload
-      (\ s a -> s{_gcdvimcPayload = a})
-
--- | The suggestion chips for Actions on Google.
-gcdvimcSuggestions :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageSuggestions)
-gcdvimcSuggestions
-  = lens _gcdvimcSuggestions
-      (\ s a -> s{_gcdvimcSuggestions = a})
-
--- | The list card response for Actions on Google.
-gcdvimcListSelect :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageListSelect)
-gcdvimcListSelect
-  = lens _gcdvimcListSelect
-      (\ s a -> s{_gcdvimcListSelect = a})
-
--- | The basic card response for Actions on Google.
-gcdvimcBasicCard :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageBasicCard)
-gcdvimcBasicCard
-  = lens _gcdvimcBasicCard
-      (\ s a -> s{_gcdvimcBasicCard = a})
-
--- | The quick replies response.
-gcdvimcQuickReplies :: Lens' GoogleCloudDialogflowV2IntentMessage (Maybe GoogleCloudDialogflowV2IntentMessageQuickReplies)
-gcdvimcQuickReplies
-  = lens _gcdvimcQuickReplies
-      (\ s a -> s{_gcdvimcQuickReplies = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessage
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2IntentMessage"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessage' <$>
-                   (o .:? "card") <*> (o .:? "image") <*>
-                     (o .:? "platform")
-                     <*> (o .:? "linkOutSuggestion")
-                     <*> (o .:? "text")
-                     <*> (o .:? "carouselSelect")
-                     <*> (o .:? "simpleResponses")
-                     <*> (o .:? "payload")
-                     <*> (o .:? "suggestions")
-                     <*> (o .:? "listSelect")
-                     <*> (o .:? "basicCard")
-                     <*> (o .:? "quickReplies"))
-
-instance ToJSON GoogleCloudDialogflowV2IntentMessage
-         where
-        toJSON GoogleCloudDialogflowV2IntentMessage'{..}
-          = object
-              (catMaybes
-                 [("card" .=) <$> _gcdvimcCard,
-                  ("image" .=) <$> _gcdvimcImage,
-                  ("platform" .=) <$> _gcdvimcPlatform,
-                  ("linkOutSuggestion" .=) <$>
-                    _gcdvimcLinkOutSuggestion,
-                  ("text" .=) <$> _gcdvimcText,
-                  ("carouselSelect" .=) <$> _gcdvimcCarouselSelect,
-                  ("simpleResponses" .=) <$> _gcdvimcSimpleResponses,
-                  ("payload" .=) <$> _gcdvimcPayload,
-                  ("suggestions" .=) <$> _gcdvimcSuggestions,
-                  ("listSelect" .=) <$> _gcdvimcListSelect,
-                  ("basicCard" .=) <$> _gcdvimcBasicCard,
-                  ("quickReplies" .=) <$> _gcdvimcQuickReplies])
-
--- | The card for presenting a carousel of options to select from.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageCarouselSelect' smart constructor.
-newtype GoogleCloudDialogflowV2IntentMessageCarouselSelect =
-  GoogleCloudDialogflowV2IntentMessageCarouselSelect'
-    { _gItems :: Maybe [GoogleCloudDialogflowV2IntentMessageCarouselSelectItem]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageCarouselSelect' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gItems'
-googleCloudDialogflowV2IntentMessageCarouselSelect
-    :: GoogleCloudDialogflowV2IntentMessageCarouselSelect
-googleCloudDialogflowV2IntentMessageCarouselSelect =
-  GoogleCloudDialogflowV2IntentMessageCarouselSelect' {_gItems = Nothing}
-
-
--- | Required. Carousel items.
-gItems :: Lens' GoogleCloudDialogflowV2IntentMessageCarouselSelect [GoogleCloudDialogflowV2IntentMessageCarouselSelectItem]
-gItems
-  = lens _gItems (\ s a -> s{_gItems = a}) . _Default .
-      _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageCarouselSelect
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageCarouselSelect"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageCarouselSelect'
-                   <$> (o .:? "items" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageCarouselSelect
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageCarouselSelect'{..}
-          = object (catMaybes [("items" .=) <$> _gItems])
-
--- | The sentiment, such as positive\/negative feeling or association, for a
--- unit of analysis, such as the query text.
---
--- /See:/ 'googleCloudDialogflowV2Sentiment' smart constructor.
-data GoogleCloudDialogflowV2Sentiment =
-  GoogleCloudDialogflowV2Sentiment'
-    { _gScore     :: !(Maybe (Textual Double))
-    , _gMagnitude :: !(Maybe (Textual Double))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2Sentiment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gScore'
---
--- * 'gMagnitude'
-googleCloudDialogflowV2Sentiment
-    :: GoogleCloudDialogflowV2Sentiment
-googleCloudDialogflowV2Sentiment =
-  GoogleCloudDialogflowV2Sentiment' {_gScore = Nothing, _gMagnitude = Nothing}
-
-
--- | Sentiment score between -1.0 (negative sentiment) and 1.0 (positive
--- sentiment).
-gScore :: Lens' GoogleCloudDialogflowV2Sentiment (Maybe Double)
-gScore
-  = lens _gScore (\ s a -> s{_gScore = a}) .
-      mapping _Coerce
-
--- | A non-negative number in the [0, +inf) range, which represents the
--- absolute magnitude of sentiment, regardless of score (positive or
--- negative).
-gMagnitude :: Lens' GoogleCloudDialogflowV2Sentiment (Maybe Double)
-gMagnitude
-  = lens _gMagnitude (\ s a -> s{_gMagnitude = a}) .
-      mapping _Coerce
-
-instance FromJSON GoogleCloudDialogflowV2Sentiment
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2Sentiment"
-              (\ o ->
-                 GoogleCloudDialogflowV2Sentiment' <$>
-                   (o .:? "score") <*> (o .:? "magnitude"))
-
-instance ToJSON GoogleCloudDialogflowV2Sentiment
-         where
-        toJSON GoogleCloudDialogflowV2Sentiment'{..}
-          = object
-              (catMaybes
-                 [("score" .=) <$> _gScore,
-                  ("magnitude" .=) <$> _gMagnitude])
-
--- | Additional info about the select item for when it is triggered in a
--- dialog.
---
--- /See:/ 'googleCloudDialogflowV2beta1IntentMessageSelectItemInfo' smart constructor.
-data GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo =
-  GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo'
-    { _gooKey      :: !(Maybe Text)
-    , _gooSynonyms :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gooKey'
---
--- * 'gooSynonyms'
-googleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-    :: GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-googleCloudDialogflowV2beta1IntentMessageSelectItemInfo =
-  GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo'
-    {_gooKey = Nothing, _gooSynonyms = Nothing}
-
-
--- | Required. A unique key that will be sent back to the agent if this
--- response is given.
-gooKey :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo (Maybe Text)
-gooKey = lens _gooKey (\ s a -> s{_gooKey = a})
-
--- | Optional. A list of synonyms that can also be used to trigger this item
--- in dialog.
-gooSynonyms :: Lens' GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo [Text]
-gooSynonyms
-  = lens _gooSynonyms (\ s a -> s{_gooSynonyms = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo'
-                   <$> (o .:? "key") <*> (o .:? "synonyms" .!= mempty))
-
-instance ToJSON
-           GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
-         where
-        toJSON
-          GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo'{..}
-          = object
-              (catMaybes
-                 [("key" .=) <$> _gooKey,
-                  ("synonyms" .=) <$> _gooSynonyms])
-
--- | Represents an intent. Intents convert a number of user expressions or
--- patterns into an action. An action is an extraction of a user command or
--- sentence semantics.
---
--- /See:/ 'googleCloudDialogflowV2beta1Intent' smart constructor.
-data GoogleCloudDialogflowV2beta1Intent =
-  GoogleCloudDialogflowV2beta1Intent'
-    { _gcdvicDefaultResponsePlatforms :: !(Maybe [Text])
-    , _gcdvicWebhookState             :: !(Maybe GoogleCloudDialogflowV2beta1IntentWebhookState)
-    , _gcdvicMlEnabled                :: !(Maybe Bool)
-    , _gcdvicPriority                 :: !(Maybe (Textual Int32))
-    , _gcdvicAction                   :: !(Maybe Text)
-    , _gcdvicRootFollowupIntentName   :: !(Maybe Text)
-    , _gcdvicName                     :: !(Maybe Text)
-    , _gcdvicEvents                   :: !(Maybe [Text])
-    , _gcdvicParameters               :: !(Maybe [GoogleCloudDialogflowV2beta1IntentParameter])
-    , _gcdvicDisplayName              :: !(Maybe Text)
-    , _gcdvicInputContextNames        :: !(Maybe [Text])
-    , _gcdvicEndInteraction           :: !(Maybe Bool)
-    , _gcdvicMessages                 :: !(Maybe [GoogleCloudDialogflowV2beta1IntentMessage])
-    , _gcdvicParentFollowupIntentName :: !(Maybe Text)
-    , _gcdvicOutputContexts           :: !(Maybe [GoogleCloudDialogflowV2beta1Context])
-    , _gcdvicTrainingPhrases          :: !(Maybe [GoogleCloudDialogflowV2beta1IntentTrainingPhrase])
-    , _gcdvicFollowupIntentInfo       :: !(Maybe [GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo])
-    , _gcdvicIsFallback               :: !(Maybe Bool)
-    , _gcdvicMlDisabled               :: !(Maybe Bool)
-    , _gcdvicResetContexts            :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2beta1Intent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvicDefaultResponsePlatforms'
---
--- * 'gcdvicWebhookState'
---
--- * 'gcdvicMlEnabled'
---
--- * 'gcdvicPriority'
---
--- * 'gcdvicAction'
---
--- * 'gcdvicRootFollowupIntentName'
---
--- * 'gcdvicName'
---
--- * 'gcdvicEvents'
---
--- * 'gcdvicParameters'
---
--- * 'gcdvicDisplayName'
---
--- * 'gcdvicInputContextNames'
---
--- * 'gcdvicEndInteraction'
---
--- * 'gcdvicMessages'
---
--- * 'gcdvicParentFollowupIntentName'
---
--- * 'gcdvicOutputContexts'
---
--- * 'gcdvicTrainingPhrases'
---
--- * 'gcdvicFollowupIntentInfo'
---
--- * 'gcdvicIsFallback'
---
--- * 'gcdvicMlDisabled'
---
--- * 'gcdvicResetContexts'
-googleCloudDialogflowV2beta1Intent
-    :: GoogleCloudDialogflowV2beta1Intent
-googleCloudDialogflowV2beta1Intent =
-  GoogleCloudDialogflowV2beta1Intent'
-    { _gcdvicDefaultResponsePlatforms = Nothing
-    , _gcdvicWebhookState = Nothing
-    , _gcdvicMlEnabled = Nothing
-    , _gcdvicPriority = Nothing
-    , _gcdvicAction = Nothing
-    , _gcdvicRootFollowupIntentName = Nothing
-    , _gcdvicName = Nothing
-    , _gcdvicEvents = Nothing
-    , _gcdvicParameters = Nothing
-    , _gcdvicDisplayName = Nothing
-    , _gcdvicInputContextNames = Nothing
-    , _gcdvicEndInteraction = Nothing
-    , _gcdvicMessages = Nothing
-    , _gcdvicParentFollowupIntentName = Nothing
-    , _gcdvicOutputContexts = Nothing
-    , _gcdvicTrainingPhrases = Nothing
-    , _gcdvicFollowupIntentInfo = Nothing
-    , _gcdvicIsFallback = Nothing
-    , _gcdvicMlDisabled = Nothing
-    , _gcdvicResetContexts = Nothing
-    }
-
-
--- | Optional. The list of platforms for which the first response will be
--- taken from among the messages assigned to the DEFAULT_PLATFORM.
-gcdvicDefaultResponsePlatforms :: Lens' GoogleCloudDialogflowV2beta1Intent [Text]
-gcdvicDefaultResponsePlatforms
-  = lens _gcdvicDefaultResponsePlatforms
-      (\ s a -> s{_gcdvicDefaultResponsePlatforms = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether webhooks are enabled for the intent.
-gcdvicWebhookState :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe GoogleCloudDialogflowV2beta1IntentWebhookState)
-gcdvicWebhookState
-  = lens _gcdvicWebhookState
-      (\ s a -> s{_gcdvicWebhookState = a})
-
--- | Optional. Indicates whether Machine Learning is enabled for the intent.
--- Note: If \`ml_enabled\` setting is set to false, then this intent is not
--- taken into account during inference in \`ML ONLY\` match mode. Also,
--- auto-markup in the UI is turned off. DEPRECATED! Please use
--- \`ml_disabled\` field instead. NOTE: If both \`ml_enabled\` and
--- \`ml_disabled\` are either not set or false, then the default value is
--- determined as follows: - Before April 15th, 2018 the default is:
--- ml_enabled = false \/ ml_disabled = true. - After April 15th, 2018 the
--- default is: ml_enabled = true \/ ml_disabled = false.
-gcdvicMlEnabled :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Bool)
-gcdvicMlEnabled
-  = lens _gcdvicMlEnabled
-      (\ s a -> s{_gcdvicMlEnabled = a})
-
--- | Optional. The priority of this intent. Higher numbers represent higher
--- priorities. If this is zero or unspecified, we use the default priority
--- 500000. Negative numbers mean that the intent is disabled.
-gcdvicPriority :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Int32)
-gcdvicPriority
-  = lens _gcdvicPriority
-      (\ s a -> s{_gcdvicPriority = a})
-      . mapping _Coerce
-
--- | Optional. The name of the action associated with the intent. Note: The
--- action name must not contain whitespaces.
-gcdvicAction :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Text)
-gcdvicAction
-  = lens _gcdvicAction (\ s a -> s{_gcdvicAction = a})
-
--- | Read-only. The unique identifier of the root intent in the chain of
--- followup intents. It identifies the correct followup intents chain for
--- this intent. We populate this field only in the output. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdvicRootFollowupIntentName :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Text)
-gcdvicRootFollowupIntentName
-  = lens _gcdvicRootFollowupIntentName
-      (\ s a -> s{_gcdvicRootFollowupIntentName = a})
-
--- | The unique identifier of this intent. Required for Intents.UpdateIntent
--- and Intents.BatchUpdateIntents methods. Format:
--- \`projects\/\/agent\/intents\/\`.
-gcdvicName :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Text)
-gcdvicName
-  = lens _gcdvicName (\ s a -> s{_gcdvicName = a})
-
--- | Optional. The collection of event names that trigger the intent. If the
--- collection of input contexts is not empty, all of the contexts must be
--- present in the active user session for an event to trigger this intent.
-gcdvicEvents :: Lens' GoogleCloudDialogflowV2beta1Intent [Text]
-gcdvicEvents
-  = lens _gcdvicEvents (\ s a -> s{_gcdvicEvents = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The collection of parameters associated with the intent.
-gcdvicParameters :: Lens' GoogleCloudDialogflowV2beta1Intent [GoogleCloudDialogflowV2beta1IntentParameter]
-gcdvicParameters
-  = lens _gcdvicParameters
-      (\ s a -> s{_gcdvicParameters = a})
-      . _Default
-      . _Coerce
-
--- | Required. The name of this intent.
-gcdvicDisplayName :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Text)
-gcdvicDisplayName
-  = lens _gcdvicDisplayName
-      (\ s a -> s{_gcdvicDisplayName = a})
-
--- | Optional. The list of context names required for this intent to be
--- triggered. Format: \`projects\/\/agent\/sessions\/-\/contexts\/\`.
-gcdvicInputContextNames :: Lens' GoogleCloudDialogflowV2beta1Intent [Text]
-gcdvicInputContextNames
-  = lens _gcdvicInputContextNames
-      (\ s a -> s{_gcdvicInputContextNames = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates that this intent ends an interaction. Some
--- integrations (e.g., Actions on Google or Dialogflow phone gateway) use
--- this information to close interaction with an end user. Default is
--- false.
-gcdvicEndInteraction :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Bool)
-gcdvicEndInteraction
-  = lens _gcdvicEndInteraction
-      (\ s a -> s{_gcdvicEndInteraction = a})
-
--- | Optional. The collection of rich messages corresponding to the
--- \`Response\` field in the Dialogflow console.
-gcdvicMessages :: Lens' GoogleCloudDialogflowV2beta1Intent [GoogleCloudDialogflowV2beta1IntentMessage]
-gcdvicMessages
-  = lens _gcdvicMessages
-      (\ s a -> s{_gcdvicMessages = a})
-      . _Default
-      . _Coerce
-
--- | Read-only after creation. The unique identifier of the parent intent in
--- the chain of followup intents. You can set this field when creating an
--- intent, for example with CreateIntent or BatchUpdateIntents, in order to
--- make this intent a followup intent. It identifies the parent followup
--- intent. Format: \`projects\/\/agent\/intents\/\`.
-gcdvicParentFollowupIntentName :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Text)
-gcdvicParentFollowupIntentName
-  = lens _gcdvicParentFollowupIntentName
-      (\ s a -> s{_gcdvicParentFollowupIntentName = a})
-
--- | Optional. The collection of contexts that are activated when the intent
--- is matched. Context messages in this collection should not set the
--- parameters field. Setting the \`lifespan_count\` to 0 will reset the
--- context when the intent is matched. Format:
--- \`projects\/\/agent\/sessions\/-\/contexts\/\`.
-gcdvicOutputContexts :: Lens' GoogleCloudDialogflowV2beta1Intent [GoogleCloudDialogflowV2beta1Context]
-gcdvicOutputContexts
-  = lens _gcdvicOutputContexts
-      (\ s a -> s{_gcdvicOutputContexts = a})
-      . _Default
-      . _Coerce
-
--- | Optional. The collection of examples that the agent is trained on.
-gcdvicTrainingPhrases :: Lens' GoogleCloudDialogflowV2beta1Intent [GoogleCloudDialogflowV2beta1IntentTrainingPhrase]
-gcdvicTrainingPhrases
-  = lens _gcdvicTrainingPhrases
-      (\ s a -> s{_gcdvicTrainingPhrases = a})
-      . _Default
-      . _Coerce
-
--- | Read-only. Information about all followup intents that have this intent
--- as a direct or indirect parent. We populate this field only in the
--- output.
-gcdvicFollowupIntentInfo :: Lens' GoogleCloudDialogflowV2beta1Intent [GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo]
-gcdvicFollowupIntentInfo
-  = lens _gcdvicFollowupIntentInfo
-      (\ s a -> s{_gcdvicFollowupIntentInfo = a})
-      . _Default
-      . _Coerce
-
--- | Optional. Indicates whether this is a fallback intent.
-gcdvicIsFallback :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Bool)
-gcdvicIsFallback
-  = lens _gcdvicIsFallback
-      (\ s a -> s{_gcdvicIsFallback = a})
-
--- | Optional. Indicates whether Machine Learning is disabled for the intent.
--- Note: If \`ml_disabled\` setting is set to true, then this intent is not
--- taken into account during inference in \`ML ONLY\` match mode. Also,
--- auto-markup in the UI is turned off.
-gcdvicMlDisabled :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Bool)
-gcdvicMlDisabled
-  = lens _gcdvicMlDisabled
-      (\ s a -> s{_gcdvicMlDisabled = a})
-
--- | Optional. Indicates whether to delete all contexts in the current
--- session when this intent is matched.
-gcdvicResetContexts :: Lens' GoogleCloudDialogflowV2beta1Intent (Maybe Bool)
-gcdvicResetContexts
-  = lens _gcdvicResetContexts
-      (\ s a -> s{_gcdvicResetContexts = a})
-
-instance FromJSON GoogleCloudDialogflowV2beta1Intent
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2beta1Intent"
-              (\ o ->
-                 GoogleCloudDialogflowV2beta1Intent' <$>
-                   (o .:? "defaultResponsePlatforms" .!= mempty) <*>
-                     (o .:? "webhookState")
-                     <*> (o .:? "mlEnabled")
-                     <*> (o .:? "priority")
-                     <*> (o .:? "action")
-                     <*> (o .:? "rootFollowupIntentName")
-                     <*> (o .:? "name")
-                     <*> (o .:? "events" .!= mempty)
-                     <*> (o .:? "parameters" .!= mempty)
-                     <*> (o .:? "displayName")
-                     <*> (o .:? "inputContextNames" .!= mempty)
-                     <*> (o .:? "endInteraction")
-                     <*> (o .:? "messages" .!= mempty)
-                     <*> (o .:? "parentFollowupIntentName")
-                     <*> (o .:? "outputContexts" .!= mempty)
-                     <*> (o .:? "trainingPhrases" .!= mempty)
-                     <*> (o .:? "followupIntentInfo" .!= mempty)
-                     <*> (o .:? "isFallback")
-                     <*> (o .:? "mlDisabled")
-                     <*> (o .:? "resetContexts"))
-
-instance ToJSON GoogleCloudDialogflowV2beta1Intent
-         where
-        toJSON GoogleCloudDialogflowV2beta1Intent'{..}
-          = object
-              (catMaybes
-                 [("defaultResponsePlatforms" .=) <$>
-                    _gcdvicDefaultResponsePlatforms,
-                  ("webhookState" .=) <$> _gcdvicWebhookState,
-                  ("mlEnabled" .=) <$> _gcdvicMlEnabled,
-                  ("priority" .=) <$> _gcdvicPriority,
-                  ("action" .=) <$> _gcdvicAction,
-                  ("rootFollowupIntentName" .=) <$>
-                    _gcdvicRootFollowupIntentName,
-                  ("name" .=) <$> _gcdvicName,
-                  ("events" .=) <$> _gcdvicEvents,
-                  ("parameters" .=) <$> _gcdvicParameters,
-                  ("displayName" .=) <$> _gcdvicDisplayName,
-                  ("inputContextNames" .=) <$>
-                    _gcdvicInputContextNames,
-                  ("endInteraction" .=) <$> _gcdvicEndInteraction,
-                  ("messages" .=) <$> _gcdvicMessages,
-                  ("parentFollowupIntentName" .=) <$>
-                    _gcdvicParentFollowupIntentName,
-                  ("outputContexts" .=) <$> _gcdvicOutputContexts,
-                  ("trainingPhrases" .=) <$> _gcdvicTrainingPhrases,
-                  ("followupIntentInfo" .=) <$>
-                    _gcdvicFollowupIntentInfo,
-                  ("isFallback" .=) <$> _gcdvicIsFallback,
-                  ("mlDisabled" .=) <$> _gcdvicMlDisabled,
-                  ("resetContexts" .=) <$> _gcdvicResetContexts])
-
--- | Represents a context.
---
--- /See:/ 'googleCloudDialogflowV2Context' smart constructor.
-data GoogleCloudDialogflowV2Context =
-  GoogleCloudDialogflowV2Context'
-    { _gcdvccLifespanCount :: !(Maybe (Textual Int32))
-    , _gcdvccName          :: !(Maybe Text)
-    , _gcdvccParameters    :: !(Maybe GoogleCloudDialogflowV2ContextParameters)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2Context' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvccLifespanCount'
---
--- * 'gcdvccName'
---
--- * 'gcdvccParameters'
-googleCloudDialogflowV2Context
-    :: GoogleCloudDialogflowV2Context
-googleCloudDialogflowV2Context =
-  GoogleCloudDialogflowV2Context'
-    { _gcdvccLifespanCount = Nothing
-    , _gcdvccName = Nothing
-    , _gcdvccParameters = Nothing
-    }
-
-
--- | Optional. The number of conversational query requests after which the
--- context expires. If set to \`0\` (the default) the context expires
--- immediately. Contexts expire automatically after 20 minutes if there are
--- no matching queries.
-gcdvccLifespanCount :: Lens' GoogleCloudDialogflowV2Context (Maybe Int32)
-gcdvccLifespanCount
-  = lens _gcdvccLifespanCount
-      (\ s a -> s{_gcdvccLifespanCount = a})
-      . mapping _Coerce
-
--- | Required. The unique identifier of the context. Format:
--- \`projects\/\/agent\/sessions\/\/contexts\/\`. The \`Context ID\` is
--- always converted to lowercase, may only contain characters in
--- [a-zA-Z0-9_-%] and may be at most 250 bytes long.
-gcdvccName :: Lens' GoogleCloudDialogflowV2Context (Maybe Text)
-gcdvccName
-  = lens _gcdvccName (\ s a -> s{_gcdvccName = a})
-
--- | Optional. The collection of parameters associated with this context.
--- Refer to [this
--- doc](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/intents-actions-parameters)
--- for syntax.
-gcdvccParameters :: Lens' GoogleCloudDialogflowV2Context (Maybe GoogleCloudDialogflowV2ContextParameters)
-gcdvccParameters
-  = lens _gcdvccParameters
-      (\ s a -> s{_gcdvccParameters = a})
-
-instance FromJSON GoogleCloudDialogflowV2Context
-         where
-        parseJSON
-          = withObject "GoogleCloudDialogflowV2Context"
-              (\ o ->
-                 GoogleCloudDialogflowV2Context' <$>
-                   (o .:? "lifespanCount") <*> (o .:? "name") <*>
-                     (o .:? "parameters"))
-
-instance ToJSON GoogleCloudDialogflowV2Context where
-        toJSON GoogleCloudDialogflowV2Context'{..}
-          = object
-              (catMaybes
-                 [("lifespanCount" .=) <$> _gcdvccLifespanCount,
-                  ("name" .=) <$> _gcdvccName,
-                  ("parameters" .=) <$> _gcdvccParameters])
-
--- | The button object that appears at the bottom of a card.
---
--- /See:/ 'googleCloudDialogflowV2IntentMessageBasicCardButton' smart constructor.
-data GoogleCloudDialogflowV2IntentMessageBasicCardButton =
-  GoogleCloudDialogflowV2IntentMessageBasicCardButton'
-    { _gcdvimbcbcOpenURIAction :: !(Maybe GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction)
-    , _gcdvimbcbcTitle         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GoogleCloudDialogflowV2IntentMessageBasicCardButton' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gcdvimbcbcOpenURIAction'
---
--- * 'gcdvimbcbcTitle'
-googleCloudDialogflowV2IntentMessageBasicCardButton
-    :: GoogleCloudDialogflowV2IntentMessageBasicCardButton
-googleCloudDialogflowV2IntentMessageBasicCardButton =
-  GoogleCloudDialogflowV2IntentMessageBasicCardButton'
-    {_gcdvimbcbcOpenURIAction = Nothing, _gcdvimbcbcTitle = Nothing}
-
-
--- | Required. Action to take when a user taps on the button.
-gcdvimbcbcOpenURIAction :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCardButton (Maybe GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenURIAction)
-gcdvimbcbcOpenURIAction
-  = lens _gcdvimbcbcOpenURIAction
-      (\ s a -> s{_gcdvimbcbcOpenURIAction = a})
-
--- | Required. The title of the button.
-gcdvimbcbcTitle :: Lens' GoogleCloudDialogflowV2IntentMessageBasicCardButton (Maybe Text)
-gcdvimbcbcTitle
-  = lens _gcdvimbcbcTitle
-      (\ s a -> s{_gcdvimbcbcTitle = a})
-
-instance FromJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCardButton
-         where
-        parseJSON
-          = withObject
-              "GoogleCloudDialogflowV2IntentMessageBasicCardButton"
-              (\ o ->
-                 GoogleCloudDialogflowV2IntentMessageBasicCardButton'
-                   <$> (o .:? "openUriAction") <*> (o .:? "title"))
-
-instance ToJSON
-           GoogleCloudDialogflowV2IntentMessageBasicCardButton
-         where
-        toJSON
-          GoogleCloudDialogflowV2IntentMessageBasicCardButton'{..}
-          = object
-              (catMaybes
-                 [("openUriAction" .=) <$> _gcdvimbcbcOpenURIAction,
-                  ("title" .=) <$> _gcdvimbcbcTitle])
diff --git a/gen/Network/Google/DialogFlow/Types/Sum.hs b/gen/Network/Google/DialogFlow/Types/Sum.hs
deleted file mode 100644
--- a/gen/Network/Google/DialogFlow/Types/Sum.hs
+++ /dev/null
@@ -1,994 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE LambdaCase         #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DialogFlow.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.DialogFlow.Types.Sum where
-
-import           Network.Google.Prelude hiding (Bytes)
-
--- | Optional. The resource view to apply to the returned intent.
-data GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView
-    = IntentViewUnspecified
-      -- ^ @INTENT_VIEW_UNSPECIFIED@
-      -- Training phrases field is not populated in the response.
-    | IntentViewFull
-      -- ^ @INTENT_VIEW_FULL@
-      -- All fields are populated.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView
-
-instance FromHttpApiData GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView where
-    parseQueryParam = \case
-        "INTENT_VIEW_UNSPECIFIED" -> Right IntentViewUnspecified
-        "INTENT_VIEW_FULL" -> Right IntentViewFull
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView where
-    toQueryParam = \case
-        IntentViewUnspecified -> "INTENT_VIEW_UNSPECIFIED"
-        IntentViewFull -> "INTENT_VIEW_FULL"
-
-instance FromJSON GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView"
-
-instance ToJSON GoogleCloudDialogflowV2BatchUpdateIntentsRequestIntentView where
-    toJSON = toJSONText
-
--- | Required. The type of the training phrase.
-data GoogleCloudDialogflowV2beta1IntentTrainingPhraseType
-    = TypeUnspecified
-      -- ^ @TYPE_UNSPECIFIED@
-      -- Not specified. This value should never be used.
-    | Example
-      -- ^ @EXAMPLE@
-      -- Examples do not contain \@-prefixed entity type names, but example parts
-      -- can be annotated with entity types.
-    | Template
-      -- ^ @TEMPLATE@
-      -- Templates are not annotated with entity types, but they can contain
-      -- \@-prefixed entity type names as substrings. Template mode has been
-      -- deprecated. Example mode is the only supported way to create new
-      -- training phrases. If you have existing training phrases that you\'ve
-      -- created in template mode, those will continue to work.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1IntentTrainingPhraseType
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1IntentTrainingPhraseType where
-    parseQueryParam = \case
-        "TYPE_UNSPECIFIED" -> Right TypeUnspecified
-        "EXAMPLE" -> Right Example
-        "TEMPLATE" -> Right Template
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1IntentTrainingPhraseType from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1IntentTrainingPhraseType where
-    toQueryParam = \case
-        TypeUnspecified -> "TYPE_UNSPECIFIED"
-        Example -> "EXAMPLE"
-        Template -> "TEMPLATE"
-
-instance FromJSON GoogleCloudDialogflowV2beta1IntentTrainingPhraseType where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1IntentTrainingPhraseType"
-
-instance ToJSON GoogleCloudDialogflowV2beta1IntentTrainingPhraseType where
-    toJSON = toJSONText
-
--- | Optional. Which variant of the Speech model to use.
-data GoogleCloudDialogflowV2InputAudioConfigModelVariant
-    = SpeechModelVariantUnspecified
-      -- ^ @SPEECH_MODEL_VARIANT_UNSPECIFIED@
-      -- No model variant specified. In this case we default to
-      -- USE_BEST_AVAILABLE.
-    | UseBestAvailable
-      -- ^ @USE_BEST_AVAILABLE@
-      -- Use the best available variant of the Speech model that the caller is
-      -- eligible for. Please see the [Dialogflow
-      -- docs](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/data-logging)
-      -- for how to make your project eligible for enhanced models.
-    | UseStandard
-      -- ^ @USE_STANDARD@
-      -- Use standard model variant even if an enhanced model is available. See
-      -- the [Cloud Speech
-      -- documentation](https:\/\/cloud.google.com\/speech-to-text\/docs\/enhanced-models)
-      -- for details about enhanced models.
-    | UseEnhanced
-      -- ^ @USE_ENHANCED@
-      -- Use an enhanced model variant: * If an enhanced variant does not exist
-      -- for the given model and request language, we fall back to the standard
-      -- variant. The [Cloud Speech
-      -- documentation](https:\/\/cloud.google.com\/speech-to-text\/docs\/enhanced-models)
-      -- describes which models have enhanced variants. * If the API caller
-      -- isn\'t eligible for enhanced models, we return an error. Please see the
-      -- [Dialogflow
-      -- docs](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/data-logging)
-      -- for how to make your project eligible.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2InputAudioConfigModelVariant
-
-instance FromHttpApiData GoogleCloudDialogflowV2InputAudioConfigModelVariant where
-    parseQueryParam = \case
-        "SPEECH_MODEL_VARIANT_UNSPECIFIED" -> Right SpeechModelVariantUnspecified
-        "USE_BEST_AVAILABLE" -> Right UseBestAvailable
-        "USE_STANDARD" -> Right UseStandard
-        "USE_ENHANCED" -> Right UseEnhanced
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2InputAudioConfigModelVariant from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2InputAudioConfigModelVariant where
-    toQueryParam = \case
-        SpeechModelVariantUnspecified -> "SPEECH_MODEL_VARIANT_UNSPECIFIED"
-        UseBestAvailable -> "USE_BEST_AVAILABLE"
-        UseStandard -> "USE_STANDARD"
-        UseEnhanced -> "USE_ENHANCED"
-
-instance FromJSON GoogleCloudDialogflowV2InputAudioConfigModelVariant where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2InputAudioConfigModelVariant"
-
-instance ToJSON GoogleCloudDialogflowV2InputAudioConfigModelVariant where
-    toJSON = toJSONText
-
--- | Optional. The preferred gender of the voice. If not set, the service
--- will choose a voice based on the other parameters such as language_code
--- and name. Note that this is only a preference, not requirement. If a
--- voice of the appropriate gender is not available, the synthesizer should
--- substitute a voice with a different gender rather than failing the
--- request.
-data GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender
-    = SsmlVoiceGenderUnspecified
-      -- ^ @SSML_VOICE_GENDER_UNSPECIFIED@
-      -- An unspecified gender, which means that the client doesn\'t care which
-      -- gender the selected voice will have.
-    | SsmlVoiceGenderMale
-      -- ^ @SSML_VOICE_GENDER_MALE@
-      -- A male voice.
-    | SsmlVoiceGenderFemale
-      -- ^ @SSML_VOICE_GENDER_FEMALE@
-      -- A female voice.
-    | SsmlVoiceGenderNeutral
-      -- ^ @SSML_VOICE_GENDER_NEUTRAL@
-      -- A gender-neutral voice.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender
-
-instance FromHttpApiData GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender where
-    parseQueryParam = \case
-        "SSML_VOICE_GENDER_UNSPECIFIED" -> Right SsmlVoiceGenderUnspecified
-        "SSML_VOICE_GENDER_MALE" -> Right SsmlVoiceGenderMale
-        "SSML_VOICE_GENDER_FEMALE" -> Right SsmlVoiceGenderFemale
-        "SSML_VOICE_GENDER_NEUTRAL" -> Right SsmlVoiceGenderNeutral
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender where
-    toQueryParam = \case
-        SsmlVoiceGenderUnspecified -> "SSML_VOICE_GENDER_UNSPECIFIED"
-        SsmlVoiceGenderMale -> "SSML_VOICE_GENDER_MALE"
-        SsmlVoiceGenderFemale -> "SSML_VOICE_GENDER_FEMALE"
-        SsmlVoiceGenderNeutral -> "SSML_VOICE_GENDER_NEUTRAL"
-
-instance FromJSON GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender"
-
-instance ToJSON GoogleCloudDialogflowV2VoiceSelectionParamsSsmlGender where
-    toJSON = toJSONText
-
--- | The system\'s confidence level that this knowledge answer is a good
--- match for this conversational query. NOTE: The confidence level for a
--- given \`\` pair may change without notice, as it depends on models that
--- are constantly being improved. However, it will change less frequently
--- than the confidence score below, and should be preferred for referencing
--- the quality of an answer.
-data GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel
-    = MatchConfidenceLevelUnspecified
-      -- ^ @MATCH_CONFIDENCE_LEVEL_UNSPECIFIED@
-      -- Not specified.
-    | Low
-      -- ^ @LOW@
-      -- Indicates that the confidence is low.
-    | Medium
-      -- ^ @MEDIUM@
-      -- Indicates our confidence is medium.
-    | High
-      -- ^ @HIGH@
-      -- Indicates our confidence is high.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel where
-    parseQueryParam = \case
-        "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED" -> Right MatchConfidenceLevelUnspecified
-        "LOW" -> Right Low
-        "MEDIUM" -> Right Medium
-        "HIGH" -> Right High
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel where
-    toQueryParam = \case
-        MatchConfidenceLevelUnspecified -> "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED"
-        Low -> "LOW"
-        Medium -> "MEDIUM"
-        High -> "HIGH"
-
-instance FromJSON GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel"
-
-instance ToJSON GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswerMatchConfidenceLevel where
-    toJSON = toJSONText
-
--- | Required. The current state of this operation.
-data GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState
-    = StateUnspecified
-      -- ^ @STATE_UNSPECIFIED@
-      -- State unspecified.
-    | Pending
-      -- ^ @PENDING@
-      -- The operation has been created.
-    | Running
-      -- ^ @RUNNING@
-      -- The operation is currently running.
-    | Done
-      -- ^ @DONE@
-      -- The operation is done, either cancelled or completed.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState where
-    parseQueryParam = \case
-        "STATE_UNSPECIFIED" -> Right StateUnspecified
-        "PENDING" -> Right Pending
-        "RUNNING" -> Right Running
-        "DONE" -> Right Done
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState where
-    toQueryParam = \case
-        StateUnspecified -> "STATE_UNSPECIFIED"
-        Pending -> "PENDING"
-        Running -> "RUNNING"
-        Done -> "DONE"
-
-instance FromJSON GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState"
-
-instance ToJSON GoogleCloudDialogflowV2beta1KnowledgeOperationMetadataState where
-    toJSON = toJSONText
-
--- | Optional. The platform that this message is intended for.
-data GoogleCloudDialogflowV2IntentMessagePlatform
-    = PlatformUnspecified
-      -- ^ @PLATFORM_UNSPECIFIED@
-      -- Not specified.
-    | Facebook
-      -- ^ @FACEBOOK@
-      -- Facebook.
-    | Slack
-      -- ^ @SLACK@
-      -- Slack.
-    | Telegram
-      -- ^ @TELEGRAM@
-      -- Telegram.
-    | Kik
-      -- ^ @KIK@
-      -- Kik.
-    | Skype
-      -- ^ @SKYPE@
-      -- Skype.
-    | Line
-      -- ^ @LINE@
-      -- Line.
-    | Viber
-      -- ^ @VIBER@
-      -- Viber.
-    | ActionsOnGoogle
-      -- ^ @ACTIONS_ON_GOOGLE@
-      -- Actions on Google. When using Actions on Google, you can choose one of
-      -- the specific Intent.Message types that mention support for Actions on
-      -- Google, or you can use the advanced Intent.Message.payload field. The
-      -- payload field provides access to AoG features not available in the
-      -- specific message types. If using the Intent.Message.payload field, it
-      -- should have a structure similar to the JSON message shown here. For more
-      -- information, see [Actions on Google Webhook
-      -- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
-      --
-      -- > {
-      -- >   "expectUserResponse": true,
-      -- >   "isSsml": false,
-      -- >   "noInputPrompts": [],
-      -- >   "richResponse": {
-      -- >     "items": [
-      -- >       {
-      -- >         "simpleResponse": {
-      -- >           "displayText": "hi",
-      -- >           "textToSpeech": "hello"
-      -- >         }
-      -- >       }
-      -- >     ],
-      -- >     "suggestions": [
-      -- >       {
-      -- >         "title": "Say this"
-      -- >       },
-      -- >       {
-      -- >         "title": "or this"
-      -- >       }
-      -- >     ]
-      -- >   },
-      -- >   "systemIntent": {
-      -- >     "data": {
-      -- >       "@type": "type.googleapis.com/google.actions.v2.OptionValueSpec",
-      -- >       "listSelect": {
-      -- >         "items": [
-      -- >           {
-      -- >             "optionInfo": {
-      -- >               "key": "key1",
-      -- >               "synonyms": [
-      -- >                 "key one"
-      -- >               ]
-      -- >             },
-      -- >             "title": "must not be empty, but unique"
-      -- >           },
-      -- >           {
-      -- >             "optionInfo": {
-      -- >               "key": "key2",
-      -- >               "synonyms": [
-      -- >                 "key two"
-      -- >               ]
-      -- >             },
-      -- >             "title": "must not be empty, but unique"
-      -- >           }
-      -- >         ]
-      -- >       }
-      -- >     },
-      -- >     "intent": "actions.intent.OPTION"
-      -- >   }
-      -- > }
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2IntentMessagePlatform
-
-instance FromHttpApiData GoogleCloudDialogflowV2IntentMessagePlatform where
-    parseQueryParam = \case
-        "PLATFORM_UNSPECIFIED" -> Right PlatformUnspecified
-        "FACEBOOK" -> Right Facebook
-        "SLACK" -> Right Slack
-        "TELEGRAM" -> Right Telegram
-        "KIK" -> Right Kik
-        "SKYPE" -> Right Skype
-        "LINE" -> Right Line
-        "VIBER" -> Right Viber
-        "ACTIONS_ON_GOOGLE" -> Right ActionsOnGoogle
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2IntentMessagePlatform from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2IntentMessagePlatform where
-    toQueryParam = \case
-        PlatformUnspecified -> "PLATFORM_UNSPECIFIED"
-        Facebook -> "FACEBOOK"
-        Slack -> "SLACK"
-        Telegram -> "TELEGRAM"
-        Kik -> "KIK"
-        Skype -> "SKYPE"
-        Line -> "LINE"
-        Viber -> "VIBER"
-        ActionsOnGoogle -> "ACTIONS_ON_GOOGLE"
-
-instance FromJSON GoogleCloudDialogflowV2IntentMessagePlatform where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2IntentMessagePlatform"
-
-instance ToJSON GoogleCloudDialogflowV2IntentMessagePlatform where
-    toJSON = toJSONText
-
--- | Required. The type of the training phrase.
-data GoogleCloudDialogflowV2IntentTrainingPhraseType
-    = GCDVITPTTypeUnspecified
-      -- ^ @TYPE_UNSPECIFIED@
-      -- Not specified. This value should never be used.
-    | GCDVITPTExample
-      -- ^ @EXAMPLE@
-      -- Examples do not contain \@-prefixed entity type names, but example parts
-      -- can be annotated with entity types.
-    | GCDVITPTTemplate
-      -- ^ @TEMPLATE@
-      -- Templates are not annotated with entity types, but they can contain
-      -- \@-prefixed entity type names as substrings. Template mode has been
-      -- deprecated. Example mode is the only supported way to create new
-      -- training phrases. If you have existing training phrases that you\'ve
-      -- created in template mode, those will continue to work.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2IntentTrainingPhraseType
-
-instance FromHttpApiData GoogleCloudDialogflowV2IntentTrainingPhraseType where
-    parseQueryParam = \case
-        "TYPE_UNSPECIFIED" -> Right GCDVITPTTypeUnspecified
-        "EXAMPLE" -> Right GCDVITPTExample
-        "TEMPLATE" -> Right GCDVITPTTemplate
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2IntentTrainingPhraseType from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2IntentTrainingPhraseType where
-    toQueryParam = \case
-        GCDVITPTTypeUnspecified -> "TYPE_UNSPECIFIED"
-        GCDVITPTExample -> "EXAMPLE"
-        GCDVITPTTemplate -> "TEMPLATE"
-
-instance FromJSON GoogleCloudDialogflowV2IntentTrainingPhraseType where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2IntentTrainingPhraseType"
-
-instance ToJSON GoogleCloudDialogflowV2IntentTrainingPhraseType where
-    toJSON = toJSONText
-
--- | Optional. Determines how intents are detected from user queries.
-data GoogleCloudDialogflowV2AgentMatchMode
-    = MatchModeUnspecified
-      -- ^ @MATCH_MODE_UNSPECIFIED@
-      -- Not specified.
-    | MatchModeHybrid
-      -- ^ @MATCH_MODE_HYBRID@
-      -- Best for agents with a small number of examples in intents and\/or wide
-      -- use of templates syntax and composite entities.
-    | MatchModeMlOnly
-      -- ^ @MATCH_MODE_ML_ONLY@
-      -- Can be used for agents with a large number of examples in intents,
-      -- especially the ones using \@sys.any or very large developer entities.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2AgentMatchMode
-
-instance FromHttpApiData GoogleCloudDialogflowV2AgentMatchMode where
-    parseQueryParam = \case
-        "MATCH_MODE_UNSPECIFIED" -> Right MatchModeUnspecified
-        "MATCH_MODE_HYBRID" -> Right MatchModeHybrid
-        "MATCH_MODE_ML_ONLY" -> Right MatchModeMlOnly
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2AgentMatchMode from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2AgentMatchMode where
-    toQueryParam = \case
-        MatchModeUnspecified -> "MATCH_MODE_UNSPECIFIED"
-        MatchModeHybrid -> "MATCH_MODE_HYBRID"
-        MatchModeMlOnly -> "MATCH_MODE_ML_ONLY"
-
-instance FromJSON GoogleCloudDialogflowV2AgentMatchMode where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2AgentMatchMode"
-
-instance ToJSON GoogleCloudDialogflowV2AgentMatchMode where
-    toJSON = toJSONText
-
--- | Required. Indicates whether the additional data should override or
--- supplement the developer entity type definition.
-data GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode
-    = EntityOverrideModeUnspecified
-      -- ^ @ENTITY_OVERRIDE_MODE_UNSPECIFIED@
-      -- Not specified. This value should be never used.
-    | EntityOverrideModeOverride
-      -- ^ @ENTITY_OVERRIDE_MODE_OVERRIDE@
-      -- The collection of session entities overrides the collection of entities
-      -- in the corresponding developer entity type.
-    | EntityOverrideModeSupplement
-      -- ^ @ENTITY_OVERRIDE_MODE_SUPPLEMENT@
-      -- The collection of session entities extends the collection of entities in
-      -- the corresponding developer entity type. Note: Even in this override
-      -- mode calls to \`ListSessionEntityTypes\`, \`GetSessionEntityType\`,
-      -- \`CreateSessionEntityType\` and \`UpdateSessionEntityType\` only return
-      -- the additional entities added in this session entity type. If you want
-      -- to get the supplemented list, please call EntityTypes.GetEntityType on
-      -- the developer entity type and merge.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode
-
-instance FromHttpApiData GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode where
-    parseQueryParam = \case
-        "ENTITY_OVERRIDE_MODE_UNSPECIFIED" -> Right EntityOverrideModeUnspecified
-        "ENTITY_OVERRIDE_MODE_OVERRIDE" -> Right EntityOverrideModeOverride
-        "ENTITY_OVERRIDE_MODE_SUPPLEMENT" -> Right EntityOverrideModeSupplement
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode where
-    toQueryParam = \case
-        EntityOverrideModeUnspecified -> "ENTITY_OVERRIDE_MODE_UNSPECIFIED"
-        EntityOverrideModeOverride -> "ENTITY_OVERRIDE_MODE_OVERRIDE"
-        EntityOverrideModeSupplement -> "ENTITY_OVERRIDE_MODE_SUPPLEMENT"
-
-instance FromJSON GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode"
-
-instance ToJSON GoogleCloudDialogflowV2SessionEntityTypeEntityOverrideMode where
-    toJSON = toJSONText
-
--- | V1 error format.
-data Xgafv
-    = X1
-      -- ^ @1@
-      -- v1 error format
-    | X2
-      -- ^ @2@
-      -- v2 error format
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable Xgafv
-
-instance FromHttpApiData Xgafv where
-    parseQueryParam = \case
-        "1" -> Right X1
-        "2" -> Right X2
-        x -> Left ("Unable to parse Xgafv from: " <> x)
-
-instance ToHttpApiData Xgafv where
-    toQueryParam = \case
-        X1 -> "1"
-        X2 -> "2"
-
-instance FromJSON Xgafv where
-    parseJSON = parseJSONText "Xgafv"
-
-instance ToJSON Xgafv where
-    toJSON = toJSONText
-
--- | Optional. The platform that this message is intended for.
-data GoogleCloudDialogflowV2beta1IntentMessagePlatform
-    = GCDVIMPPlatformUnspecified
-      -- ^ @PLATFORM_UNSPECIFIED@
-      -- Not specified.
-    | GCDVIMPFacebook
-      -- ^ @FACEBOOK@
-      -- Facebook.
-    | GCDVIMPSlack
-      -- ^ @SLACK@
-      -- Slack.
-    | GCDVIMPTelegram
-      -- ^ @TELEGRAM@
-      -- Telegram.
-    | GCDVIMPKik
-      -- ^ @KIK@
-      -- Kik.
-    | GCDVIMPSkype
-      -- ^ @SKYPE@
-      -- Skype.
-    | GCDVIMPLine
-      -- ^ @LINE@
-      -- Line.
-    | GCDVIMPViber
-      -- ^ @VIBER@
-      -- Viber.
-    | GCDVIMPActionsOnGoogle
-      -- ^ @ACTIONS_ON_GOOGLE@
-      -- Actions on Google. When using Actions on Google, you can choose one of
-      -- the specific Intent.Message types that mention support for Actions on
-      -- Google, or you can use the advanced Intent.Message.payload field. The
-      -- payload field provides access to AoG features not available in the
-      -- specific message types. If using the Intent.Message.payload field, it
-      -- should have a structure similar to the JSON message shown here. For more
-      -- information, see [Actions on Google Webhook
-      -- Format](https:\/\/developers.google.com\/actions\/dialogflow\/webhook)
-      --
-      -- > {
-      -- >   "expectUserResponse": true,
-      -- >   "isSsml": false,
-      -- >   "noInputPrompts": [],
-      -- >   "richResponse": {
-      -- >     "items": [
-      -- >       {
-      -- >         "simpleResponse": {
-      -- >           "displayText": "hi",
-      -- >           "textToSpeech": "hello"
-      -- >         }
-      -- >       }
-      -- >     ],
-      -- >     "suggestions": [
-      -- >       {
-      -- >         "title": "Say this"
-      -- >       },
-      -- >       {
-      -- >         "title": "or this"
-      -- >       }
-      -- >     ]
-      -- >   },
-      -- >   "systemIntent": {
-      -- >     "data": {
-      -- >       "@type": "type.googleapis.com/google.actions.v2.OptionValueSpec",
-      -- >       "listSelect": {
-      -- >         "items": [
-      -- >           {
-      -- >             "optionInfo": {
-      -- >               "key": "key1",
-      -- >               "synonyms": [
-      -- >                 "key one"
-      -- >               ]
-      -- >             },
-      -- >             "title": "must not be empty, but unique"
-      -- >           },
-      -- >           {
-      -- >             "optionInfo": {
-      -- >               "key": "key2",
-      -- >               "synonyms": [
-      -- >                 "key two"
-      -- >               ]
-      -- >             },
-      -- >             "title": "must not be empty, but unique"
-      -- >           }
-      -- >         ]
-      -- >       }
-      -- >     },
-      -- >     "intent": "actions.intent.OPTION"
-      -- >   }
-      -- > }
-    | GCDVIMPTelephony
-      -- ^ @TELEPHONY@
-      -- Telephony Gateway.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1IntentMessagePlatform
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1IntentMessagePlatform where
-    parseQueryParam = \case
-        "PLATFORM_UNSPECIFIED" -> Right GCDVIMPPlatformUnspecified
-        "FACEBOOK" -> Right GCDVIMPFacebook
-        "SLACK" -> Right GCDVIMPSlack
-        "TELEGRAM" -> Right GCDVIMPTelegram
-        "KIK" -> Right GCDVIMPKik
-        "SKYPE" -> Right GCDVIMPSkype
-        "LINE" -> Right GCDVIMPLine
-        "VIBER" -> Right GCDVIMPViber
-        "ACTIONS_ON_GOOGLE" -> Right GCDVIMPActionsOnGoogle
-        "TELEPHONY" -> Right GCDVIMPTelephony
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1IntentMessagePlatform from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1IntentMessagePlatform where
-    toQueryParam = \case
-        GCDVIMPPlatformUnspecified -> "PLATFORM_UNSPECIFIED"
-        GCDVIMPFacebook -> "FACEBOOK"
-        GCDVIMPSlack -> "SLACK"
-        GCDVIMPTelegram -> "TELEGRAM"
-        GCDVIMPKik -> "KIK"
-        GCDVIMPSkype -> "SKYPE"
-        GCDVIMPLine -> "LINE"
-        GCDVIMPViber -> "VIBER"
-        GCDVIMPActionsOnGoogle -> "ACTIONS_ON_GOOGLE"
-        GCDVIMPTelephony -> "TELEPHONY"
-
-instance FromJSON GoogleCloudDialogflowV2beta1IntentMessagePlatform where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1IntentMessagePlatform"
-
-instance ToJSON GoogleCloudDialogflowV2beta1IntentMessagePlatform where
-    toJSON = toJSONText
-
--- | Required. Indicates the kind of entity type.
-data GoogleCloudDialogflowV2EntityTypeKind
-    = KindUnspecified
-      -- ^ @KIND_UNSPECIFIED@
-      -- Not specified. This value should be never used.
-    | KindMap
-      -- ^ @KIND_MAP@
-      -- Map entity types allow mapping of a group of synonyms to a canonical
-      -- value.
-    | KindList
-      -- ^ @KIND_LIST@
-      -- List entity types contain a set of entries that do not map to canonical
-      -- values. However, list entity types can contain references to other
-      -- entity types (with or without aliases).
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2EntityTypeKind
-
-instance FromHttpApiData GoogleCloudDialogflowV2EntityTypeKind where
-    parseQueryParam = \case
-        "KIND_UNSPECIFIED" -> Right KindUnspecified
-        "KIND_MAP" -> Right KindMap
-        "KIND_LIST" -> Right KindList
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2EntityTypeKind from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2EntityTypeKind where
-    toQueryParam = \case
-        KindUnspecified -> "KIND_UNSPECIFIED"
-        KindMap -> "KIND_MAP"
-        KindList -> "KIND_LIST"
-
-instance FromJSON GoogleCloudDialogflowV2EntityTypeKind where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2EntityTypeKind"
-
-instance ToJSON GoogleCloudDialogflowV2EntityTypeKind where
-    toJSON = toJSONText
-
--- | Optional. Indicates whether webhooks are enabled for the intent.
-data GoogleCloudDialogflowV2beta1IntentWebhookState
-    = WebhookStateUnspecified
-      -- ^ @WEBHOOK_STATE_UNSPECIFIED@
-      -- Webhook is disabled in the agent and in the intent.
-    | WebhookStateEnabled
-      -- ^ @WEBHOOK_STATE_ENABLED@
-      -- Webhook is enabled in the agent and in the intent.
-    | WebhookStateEnabledForSlotFilling
-      -- ^ @WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING@
-      -- Webhook is enabled in the agent and in the intent. Also, each slot
-      -- filling prompt is forwarded to the webhook.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1IntentWebhookState
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1IntentWebhookState where
-    parseQueryParam = \case
-        "WEBHOOK_STATE_UNSPECIFIED" -> Right WebhookStateUnspecified
-        "WEBHOOK_STATE_ENABLED" -> Right WebhookStateEnabled
-        "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" -> Right WebhookStateEnabledForSlotFilling
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1IntentWebhookState from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1IntentWebhookState where
-    toQueryParam = \case
-        WebhookStateUnspecified -> "WEBHOOK_STATE_UNSPECIFIED"
-        WebhookStateEnabled -> "WEBHOOK_STATE_ENABLED"
-        WebhookStateEnabledForSlotFilling -> "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING"
-
-instance FromJSON GoogleCloudDialogflowV2beta1IntentWebhookState where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1IntentWebhookState"
-
-instance ToJSON GoogleCloudDialogflowV2beta1IntentWebhookState where
-    toJSON = toJSONText
-
--- | Required. Audio encoding of the synthesized audio content.
-data GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding
-    = OutputAudioEncodingUnspecified
-      -- ^ @OUTPUT_AUDIO_ENCODING_UNSPECIFIED@
-      -- Not specified.
-    | OutputAudioEncodingLinear16
-      -- ^ @OUTPUT_AUDIO_ENCODING_LINEAR_16@
-      -- Uncompressed 16-bit signed little-endian samples (Linear PCM). Audio
-      -- content returned as LINEAR16 also contains a WAV header.
-    | OutputAudioEncodingMP3
-      -- ^ @OUTPUT_AUDIO_ENCODING_MP3@
-      -- MP3 audio.
-    | OutputAudioEncodingOggOpus
-      -- ^ @OUTPUT_AUDIO_ENCODING_OGG_OPUS@
-      -- Opus encoded audio wrapped in an ogg container. The result will be a
-      -- file which can be played natively on Android, and in browsers (at least
-      -- Chrome and Firefox). The quality of the encoding is considerably higher
-      -- than MP3 while using approximately the same bitrate.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding
-
-instance FromHttpApiData GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding where
-    parseQueryParam = \case
-        "OUTPUT_AUDIO_ENCODING_UNSPECIFIED" -> Right OutputAudioEncodingUnspecified
-        "OUTPUT_AUDIO_ENCODING_LINEAR_16" -> Right OutputAudioEncodingLinear16
-        "OUTPUT_AUDIO_ENCODING_MP3" -> Right OutputAudioEncodingMP3
-        "OUTPUT_AUDIO_ENCODING_OGG_OPUS" -> Right OutputAudioEncodingOggOpus
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding where
-    toQueryParam = \case
-        OutputAudioEncodingUnspecified -> "OUTPUT_AUDIO_ENCODING_UNSPECIFIED"
-        OutputAudioEncodingLinear16 -> "OUTPUT_AUDIO_ENCODING_LINEAR_16"
-        OutputAudioEncodingMP3 -> "OUTPUT_AUDIO_ENCODING_MP3"
-        OutputAudioEncodingOggOpus -> "OUTPUT_AUDIO_ENCODING_OGG_OPUS"
-
-instance FromJSON GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding"
-
-instance ToJSON GoogleCloudDialogflowV2OutputAudioConfigAudioEncoding where
-    toJSON = toJSONText
-
--- | Optional. Indicates whether the entity type can be automatically
--- expanded.
-data GoogleCloudDialogflowV2EntityTypeAutoExpansionMode
-    = AutoExpansionModeUnspecified
-      -- ^ @AUTO_EXPANSION_MODE_UNSPECIFIED@
-      -- Auto expansion disabled for the entity.
-    | AutoExpansionModeDefault
-      -- ^ @AUTO_EXPANSION_MODE_DEFAULT@
-      -- Allows an agent to recognize values that have not been explicitly listed
-      -- in the entity.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2EntityTypeAutoExpansionMode
-
-instance FromHttpApiData GoogleCloudDialogflowV2EntityTypeAutoExpansionMode where
-    parseQueryParam = \case
-        "AUTO_EXPANSION_MODE_UNSPECIFIED" -> Right AutoExpansionModeUnspecified
-        "AUTO_EXPANSION_MODE_DEFAULT" -> Right AutoExpansionModeDefault
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2EntityTypeAutoExpansionMode from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2EntityTypeAutoExpansionMode where
-    toQueryParam = \case
-        AutoExpansionModeUnspecified -> "AUTO_EXPANSION_MODE_UNSPECIFIED"
-        AutoExpansionModeDefault -> "AUTO_EXPANSION_MODE_DEFAULT"
-
-instance FromJSON GoogleCloudDialogflowV2EntityTypeAutoExpansionMode where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2EntityTypeAutoExpansionMode"
-
-instance ToJSON GoogleCloudDialogflowV2EntityTypeAutoExpansionMode where
-    toJSON = toJSONText
-
--- | Optional. Indicates whether the entity type can be automatically
--- expanded.
-data GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode
-    = GCDVETAEMAutoExpansionModeUnspecified
-      -- ^ @AUTO_EXPANSION_MODE_UNSPECIFIED@
-      -- Auto expansion disabled for the entity.
-    | GCDVETAEMAutoExpansionModeDefault
-      -- ^ @AUTO_EXPANSION_MODE_DEFAULT@
-      -- Allows an agent to recognize values that have not been explicitly listed
-      -- in the entity.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode where
-    parseQueryParam = \case
-        "AUTO_EXPANSION_MODE_UNSPECIFIED" -> Right GCDVETAEMAutoExpansionModeUnspecified
-        "AUTO_EXPANSION_MODE_DEFAULT" -> Right GCDVETAEMAutoExpansionModeDefault
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode where
-    toQueryParam = \case
-        GCDVETAEMAutoExpansionModeUnspecified -> "AUTO_EXPANSION_MODE_UNSPECIFIED"
-        GCDVETAEMAutoExpansionModeDefault -> "AUTO_EXPANSION_MODE_DEFAULT"
-
-instance FromJSON GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode"
-
-instance ToJSON GoogleCloudDialogflowV2beta1EntityTypeAutoExpansionMode where
-    toJSON = toJSONText
-
--- | Required. Indicates the kind of entity type.
-data GoogleCloudDialogflowV2beta1EntityTypeKind
-    = GCDVETKKindUnspecified
-      -- ^ @KIND_UNSPECIFIED@
-      -- Not specified. This value should be never used.
-    | GCDVETKKindMap
-      -- ^ @KIND_MAP@
-      -- Map entity types allow mapping of a group of synonyms to a canonical
-      -- value.
-    | GCDVETKKindList
-      -- ^ @KIND_LIST@
-      -- List entity types contain a set of entries that do not map to canonical
-      -- values. However, list entity types can contain references to other
-      -- entity types (with or without aliases).
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2beta1EntityTypeKind
-
-instance FromHttpApiData GoogleCloudDialogflowV2beta1EntityTypeKind where
-    parseQueryParam = \case
-        "KIND_UNSPECIFIED" -> Right GCDVETKKindUnspecified
-        "KIND_MAP" -> Right GCDVETKKindMap
-        "KIND_LIST" -> Right GCDVETKKindList
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2beta1EntityTypeKind from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2beta1EntityTypeKind where
-    toQueryParam = \case
-        GCDVETKKindUnspecified -> "KIND_UNSPECIFIED"
-        GCDVETKKindMap -> "KIND_MAP"
-        GCDVETKKindList -> "KIND_LIST"
-
-instance FromJSON GoogleCloudDialogflowV2beta1EntityTypeKind where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2beta1EntityTypeKind"
-
-instance ToJSON GoogleCloudDialogflowV2beta1EntityTypeKind where
-    toJSON = toJSONText
-
--- | Optional. Indicates whether webhooks are enabled for the intent.
-data GoogleCloudDialogflowV2IntentWebhookState
-    = GCDVIWSWebhookStateUnspecified
-      -- ^ @WEBHOOK_STATE_UNSPECIFIED@
-      -- Webhook is disabled in the agent and in the intent.
-    | GCDVIWSWebhookStateEnabled
-      -- ^ @WEBHOOK_STATE_ENABLED@
-      -- Webhook is enabled in the agent and in the intent.
-    | GCDVIWSWebhookStateEnabledForSlotFilling
-      -- ^ @WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING@
-      -- Webhook is enabled in the agent and in the intent. Also, each slot
-      -- filling prompt is forwarded to the webhook.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2IntentWebhookState
-
-instance FromHttpApiData GoogleCloudDialogflowV2IntentWebhookState where
-    parseQueryParam = \case
-        "WEBHOOK_STATE_UNSPECIFIED" -> Right GCDVIWSWebhookStateUnspecified
-        "WEBHOOK_STATE_ENABLED" -> Right GCDVIWSWebhookStateEnabled
-        "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" -> Right GCDVIWSWebhookStateEnabledForSlotFilling
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2IntentWebhookState from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2IntentWebhookState where
-    toQueryParam = \case
-        GCDVIWSWebhookStateUnspecified -> "WEBHOOK_STATE_UNSPECIFIED"
-        GCDVIWSWebhookStateEnabled -> "WEBHOOK_STATE_ENABLED"
-        GCDVIWSWebhookStateEnabledForSlotFilling -> "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING"
-
-instance FromJSON GoogleCloudDialogflowV2IntentWebhookState where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2IntentWebhookState"
-
-instance ToJSON GoogleCloudDialogflowV2IntentWebhookState where
-    toJSON = toJSONText
-
--- | Required. Audio encoding of the audio content to process.
-data GoogleCloudDialogflowV2InputAudioConfigAudioEncoding
-    = AudioEncodingUnspecified
-      -- ^ @AUDIO_ENCODING_UNSPECIFIED@
-      -- Not specified.
-    | AudioEncodingLinear16
-      -- ^ @AUDIO_ENCODING_LINEAR_16@
-      -- Uncompressed 16-bit signed little-endian samples (Linear PCM).
-    | AudioEncodingFlac
-      -- ^ @AUDIO_ENCODING_FLAC@
-      -- [\`FLAC\`](https:\/\/xiph.org\/flac\/documentation.html) (Free Lossless
-      -- Audio Codec) is the recommended encoding because it is lossless
-      -- (therefore recognition is not compromised) and requires only about half
-      -- the bandwidth of \`LINEAR16\`. \`FLAC\` stream encoding supports 16-bit
-      -- and 24-bit samples, however, not all fields in \`STREAMINFO\` are
-      -- supported.
-    | AudioEncodingMulaw
-      -- ^ @AUDIO_ENCODING_MULAW@
-      -- 8-bit samples that compand 14-bit audio samples using G.711
-      -- PCMU\/mu-law.
-    | AudioEncodingAmr
-      -- ^ @AUDIO_ENCODING_AMR@
-      -- Adaptive Multi-Rate Narrowband codec. \`sample_rate_hertz\` must be
-      -- 8000.
-    | AudioEncodingAmrWb
-      -- ^ @AUDIO_ENCODING_AMR_WB@
-      -- Adaptive Multi-Rate Wideband codec. \`sample_rate_hertz\` must be 16000.
-    | AudioEncodingOggOpus
-      -- ^ @AUDIO_ENCODING_OGG_OPUS@
-      -- Opus encoded audio frames in Ogg container
-      -- ([OggOpus](https:\/\/wiki.xiph.org\/OggOpus)). \`sample_rate_hertz\`
-      -- must be 16000.
-    | AudioEncodingSpeexWithHeaderByte
-      -- ^ @AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE@
-      -- Although the use of lossy encodings is not recommended, if a very low
-      -- bitrate encoding is required, \`OGG_OPUS\` is highly preferred over
-      -- Speex encoding. The [Speex](https:\/\/speex.org\/) encoding supported by
-      -- Dialogflow API has a header byte in each block, as in MIME type
-      -- \`audio\/x-speex-with-header-byte\`. It is a variant of the RTP Speex
-      -- encoding defined in [RFC 5574](https:\/\/tools.ietf.org\/html\/rfc5574).
-      -- The stream is a sequence of blocks, one block per RTP packet. Each block
-      -- starts with a byte containing the length of the block, in bytes,
-      -- followed by one or more frames of Speex data, padded to an integral
-      -- number of bytes (octets) as specified in RFC 5574. In other words, each
-      -- RTP header is replaced with a single byte containing the block length.
-      -- Only Speex wideband is supported. \`sample_rate_hertz\` must be 16000.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable GoogleCloudDialogflowV2InputAudioConfigAudioEncoding
-
-instance FromHttpApiData GoogleCloudDialogflowV2InputAudioConfigAudioEncoding where
-    parseQueryParam = \case
-        "AUDIO_ENCODING_UNSPECIFIED" -> Right AudioEncodingUnspecified
-        "AUDIO_ENCODING_LINEAR_16" -> Right AudioEncodingLinear16
-        "AUDIO_ENCODING_FLAC" -> Right AudioEncodingFlac
-        "AUDIO_ENCODING_MULAW" -> Right AudioEncodingMulaw
-        "AUDIO_ENCODING_AMR" -> Right AudioEncodingAmr
-        "AUDIO_ENCODING_AMR_WB" -> Right AudioEncodingAmrWb
-        "AUDIO_ENCODING_OGG_OPUS" -> Right AudioEncodingOggOpus
-        "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" -> Right AudioEncodingSpeexWithHeaderByte
-        x -> Left ("Unable to parse GoogleCloudDialogflowV2InputAudioConfigAudioEncoding from: " <> x)
-
-instance ToHttpApiData GoogleCloudDialogflowV2InputAudioConfigAudioEncoding where
-    toQueryParam = \case
-        AudioEncodingUnspecified -> "AUDIO_ENCODING_UNSPECIFIED"
-        AudioEncodingLinear16 -> "AUDIO_ENCODING_LINEAR_16"
-        AudioEncodingFlac -> "AUDIO_ENCODING_FLAC"
-        AudioEncodingMulaw -> "AUDIO_ENCODING_MULAW"
-        AudioEncodingAmr -> "AUDIO_ENCODING_AMR"
-        AudioEncodingAmrWb -> "AUDIO_ENCODING_AMR_WB"
-        AudioEncodingOggOpus -> "AUDIO_ENCODING_OGG_OPUS"
-        AudioEncodingSpeexWithHeaderByte -> "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE"
-
-instance FromJSON GoogleCloudDialogflowV2InputAudioConfigAudioEncoding where
-    parseJSON = parseJSONText "GoogleCloudDialogflowV2InputAudioConfigAudioEncoding"
-
-instance ToJSON GoogleCloudDialogflowV2InputAudioConfigAudioEncoding where
-    toJSON = toJSONText
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchDelete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchDelete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchDelete.hs
+++ /dev/null
@@ -1,175 +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.DialogFlow.Projects.Agent.EntityTypes.BatchDelete
--- 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)
---
--- Deletes entity types in the specified agent. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.batchDelete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchDelete
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesBatchDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesBatchDelete
-    , ProjectsAgentEntityTypesBatchDelete
-
-    -- * Request Lenses
-    , paetbdParent
-    , paetbdXgafv
-    , paetbdUploadProtocol
-    , paetbdAccessToken
-    , paetbdUploadType
-    , paetbdPayload
-    , paetbdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.batchDelete@ method which the
--- 'ProjectsAgentEntityTypesBatchDelete' request conforms to.
-type ProjectsAgentEntityTypesBatchDeleteResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes:batchDelete" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Deletes entity types in the specified agent. Operation
---
--- /See:/ 'projectsAgentEntityTypesBatchDelete' smart constructor.
-data ProjectsAgentEntityTypesBatchDelete =
-  ProjectsAgentEntityTypesBatchDelete'
-    { _paetbdParent         :: !Text
-    , _paetbdXgafv          :: !(Maybe Xgafv)
-    , _paetbdUploadProtocol :: !(Maybe Text)
-    , _paetbdAccessToken    :: !(Maybe Text)
-    , _paetbdUploadType     :: !(Maybe Text)
-    , _paetbdPayload        :: !GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-    , _paetbdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesBatchDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetbdParent'
---
--- * 'paetbdXgafv'
---
--- * 'paetbdUploadProtocol'
---
--- * 'paetbdAccessToken'
---
--- * 'paetbdUploadType'
---
--- * 'paetbdPayload'
---
--- * 'paetbdCallback'
-projectsAgentEntityTypesBatchDelete
-    :: Text -- ^ 'paetbdParent'
-    -> GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest -- ^ 'paetbdPayload'
-    -> ProjectsAgentEntityTypesBatchDelete
-projectsAgentEntityTypesBatchDelete pPaetbdParent_ pPaetbdPayload_ =
-  ProjectsAgentEntityTypesBatchDelete'
-    { _paetbdParent = pPaetbdParent_
-    , _paetbdXgafv = Nothing
-    , _paetbdUploadProtocol = Nothing
-    , _paetbdAccessToken = Nothing
-    , _paetbdUploadType = Nothing
-    , _paetbdPayload = pPaetbdPayload_
-    , _paetbdCallback = Nothing
-    }
-
-
--- | Required. The name of the agent to delete all entities types for.
--- Format: \`projects\/\/agent\`.
-paetbdParent :: Lens' ProjectsAgentEntityTypesBatchDelete Text
-paetbdParent
-  = lens _paetbdParent (\ s a -> s{_paetbdParent = a})
-
--- | V1 error format.
-paetbdXgafv :: Lens' ProjectsAgentEntityTypesBatchDelete (Maybe Xgafv)
-paetbdXgafv
-  = lens _paetbdXgafv (\ s a -> s{_paetbdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetbdUploadProtocol :: Lens' ProjectsAgentEntityTypesBatchDelete (Maybe Text)
-paetbdUploadProtocol
-  = lens _paetbdUploadProtocol
-      (\ s a -> s{_paetbdUploadProtocol = a})
-
--- | OAuth access token.
-paetbdAccessToken :: Lens' ProjectsAgentEntityTypesBatchDelete (Maybe Text)
-paetbdAccessToken
-  = lens _paetbdAccessToken
-      (\ s a -> s{_paetbdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetbdUploadType :: Lens' ProjectsAgentEntityTypesBatchDelete (Maybe Text)
-paetbdUploadType
-  = lens _paetbdUploadType
-      (\ s a -> s{_paetbdUploadType = a})
-
--- | Multipart request metadata.
-paetbdPayload :: Lens' ProjectsAgentEntityTypesBatchDelete GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest
-paetbdPayload
-  = lens _paetbdPayload
-      (\ s a -> s{_paetbdPayload = a})
-
--- | JSONP
-paetbdCallback :: Lens' ProjectsAgentEntityTypesBatchDelete (Maybe Text)
-paetbdCallback
-  = lens _paetbdCallback
-      (\ s a -> s{_paetbdCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentEntityTypesBatchDelete
-         where
-        type Rs ProjectsAgentEntityTypesBatchDelete =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentEntityTypesBatchDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentEntityTypesBatchDelete'{..}
-          = go _paetbdParent _paetbdXgafv _paetbdUploadProtocol
-              _paetbdAccessToken
-              _paetbdUploadType
-              _paetbdCallback
-              (Just AltJSON)
-              _paetbdPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentEntityTypesBatchDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchUpdate.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchUpdate.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/BatchUpdate.hs
+++ /dev/null
@@ -1,175 +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.DialogFlow.Projects.Agent.EntityTypes.BatchUpdate
--- 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\/Creates multiple entity types in the specified agent. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.batchUpdate@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchUpdate
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesBatchUpdateResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesBatchUpdate
-    , ProjectsAgentEntityTypesBatchUpdate
-
-    -- * Request Lenses
-    , paetbuParent
-    , paetbuXgafv
-    , paetbuUploadProtocol
-    , paetbuAccessToken
-    , paetbuUploadType
-    , paetbuPayload
-    , paetbuCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.batchUpdate@ method which the
--- 'ProjectsAgentEntityTypesBatchUpdate' request conforms to.
-type ProjectsAgentEntityTypesBatchUpdateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes:batchUpdate" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Updates\/Creates multiple entity types in the specified agent. Operation
---
--- /See:/ 'projectsAgentEntityTypesBatchUpdate' smart constructor.
-data ProjectsAgentEntityTypesBatchUpdate =
-  ProjectsAgentEntityTypesBatchUpdate'
-    { _paetbuParent         :: !Text
-    , _paetbuXgafv          :: !(Maybe Xgafv)
-    , _paetbuUploadProtocol :: !(Maybe Text)
-    , _paetbuAccessToken    :: !(Maybe Text)
-    , _paetbuUploadType     :: !(Maybe Text)
-    , _paetbuPayload        :: !GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-    , _paetbuCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesBatchUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetbuParent'
---
--- * 'paetbuXgafv'
---
--- * 'paetbuUploadProtocol'
---
--- * 'paetbuAccessToken'
---
--- * 'paetbuUploadType'
---
--- * 'paetbuPayload'
---
--- * 'paetbuCallback'
-projectsAgentEntityTypesBatchUpdate
-    :: Text -- ^ 'paetbuParent'
-    -> GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest -- ^ 'paetbuPayload'
-    -> ProjectsAgentEntityTypesBatchUpdate
-projectsAgentEntityTypesBatchUpdate pPaetbuParent_ pPaetbuPayload_ =
-  ProjectsAgentEntityTypesBatchUpdate'
-    { _paetbuParent = pPaetbuParent_
-    , _paetbuXgafv = Nothing
-    , _paetbuUploadProtocol = Nothing
-    , _paetbuAccessToken = Nothing
-    , _paetbuUploadType = Nothing
-    , _paetbuPayload = pPaetbuPayload_
-    , _paetbuCallback = Nothing
-    }
-
-
--- | Required. The name of the agent to update or create entity types in.
--- Format: \`projects\/\/agent\`.
-paetbuParent :: Lens' ProjectsAgentEntityTypesBatchUpdate Text
-paetbuParent
-  = lens _paetbuParent (\ s a -> s{_paetbuParent = a})
-
--- | V1 error format.
-paetbuXgafv :: Lens' ProjectsAgentEntityTypesBatchUpdate (Maybe Xgafv)
-paetbuXgafv
-  = lens _paetbuXgafv (\ s a -> s{_paetbuXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetbuUploadProtocol :: Lens' ProjectsAgentEntityTypesBatchUpdate (Maybe Text)
-paetbuUploadProtocol
-  = lens _paetbuUploadProtocol
-      (\ s a -> s{_paetbuUploadProtocol = a})
-
--- | OAuth access token.
-paetbuAccessToken :: Lens' ProjectsAgentEntityTypesBatchUpdate (Maybe Text)
-paetbuAccessToken
-  = lens _paetbuAccessToken
-      (\ s a -> s{_paetbuAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetbuUploadType :: Lens' ProjectsAgentEntityTypesBatchUpdate (Maybe Text)
-paetbuUploadType
-  = lens _paetbuUploadType
-      (\ s a -> s{_paetbuUploadType = a})
-
--- | Multipart request metadata.
-paetbuPayload :: Lens' ProjectsAgentEntityTypesBatchUpdate GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest
-paetbuPayload
-  = lens _paetbuPayload
-      (\ s a -> s{_paetbuPayload = a})
-
--- | JSONP
-paetbuCallback :: Lens' ProjectsAgentEntityTypesBatchUpdate (Maybe Text)
-paetbuCallback
-  = lens _paetbuCallback
-      (\ s a -> s{_paetbuCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentEntityTypesBatchUpdate
-         where
-        type Rs ProjectsAgentEntityTypesBatchUpdate =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentEntityTypesBatchUpdate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentEntityTypesBatchUpdate'{..}
-          = go _paetbuParent _paetbuXgafv _paetbuUploadProtocol
-              _paetbuAccessToken
-              _paetbuUploadType
-              _paetbuCallback
-              (Just AltJSON)
-              _paetbuPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentEntityTypesBatchUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Create.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Create.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Create.hs
+++ /dev/null
@@ -1,188 +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.DialogFlow.Projects.Agent.EntityTypes.Create
--- 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 an entity type in the specified agent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.create@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Create
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesCreateResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesCreate
-    , ProjectsAgentEntityTypesCreate
-
-    -- * Request Lenses
-    , paetcParent
-    , paetcXgafv
-    , paetcLanguageCode
-    , paetcUploadProtocol
-    , paetcAccessToken
-    , paetcUploadType
-    , paetcPayload
-    , paetcCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.create@ method which the
--- 'ProjectsAgentEntityTypesCreate' request conforms to.
-type ProjectsAgentEntityTypesCreateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "languageCode" Text :>
-               QueryParam "upload_protocol" Text :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "callback" Text :>
-                       QueryParam "alt" AltJSON :>
-                         ReqBody '[JSON] GoogleCloudDialogflowV2EntityType :>
-                           Post '[JSON] GoogleCloudDialogflowV2EntityType
-
--- | Creates an entity type in the specified agent.
---
--- /See:/ 'projectsAgentEntityTypesCreate' smart constructor.
-data ProjectsAgentEntityTypesCreate =
-  ProjectsAgentEntityTypesCreate'
-    { _paetcParent         :: !Text
-    , _paetcXgafv          :: !(Maybe Xgafv)
-    , _paetcLanguageCode   :: !(Maybe Text)
-    , _paetcUploadProtocol :: !(Maybe Text)
-    , _paetcAccessToken    :: !(Maybe Text)
-    , _paetcUploadType     :: !(Maybe Text)
-    , _paetcPayload        :: !GoogleCloudDialogflowV2EntityType
-    , _paetcCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesCreate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetcParent'
---
--- * 'paetcXgafv'
---
--- * 'paetcLanguageCode'
---
--- * 'paetcUploadProtocol'
---
--- * 'paetcAccessToken'
---
--- * 'paetcUploadType'
---
--- * 'paetcPayload'
---
--- * 'paetcCallback'
-projectsAgentEntityTypesCreate
-    :: Text -- ^ 'paetcParent'
-    -> GoogleCloudDialogflowV2EntityType -- ^ 'paetcPayload'
-    -> ProjectsAgentEntityTypesCreate
-projectsAgentEntityTypesCreate pPaetcParent_ pPaetcPayload_ =
-  ProjectsAgentEntityTypesCreate'
-    { _paetcParent = pPaetcParent_
-    , _paetcXgafv = Nothing
-    , _paetcLanguageCode = Nothing
-    , _paetcUploadProtocol = Nothing
-    , _paetcAccessToken = Nothing
-    , _paetcUploadType = Nothing
-    , _paetcPayload = pPaetcPayload_
-    , _paetcCallback = Nothing
-    }
-
-
--- | Required. The agent to create a entity type for. Format:
--- \`projects\/\/agent\`.
-paetcParent :: Lens' ProjectsAgentEntityTypesCreate Text
-paetcParent
-  = lens _paetcParent (\ s a -> s{_paetcParent = a})
-
--- | V1 error format.
-paetcXgafv :: Lens' ProjectsAgentEntityTypesCreate (Maybe Xgafv)
-paetcXgafv
-  = lens _paetcXgafv (\ s a -> s{_paetcXgafv = a})
-
--- | Optional. The language of entity synonyms defined in \`entity_type\`. If
--- not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paetcLanguageCode :: Lens' ProjectsAgentEntityTypesCreate (Maybe Text)
-paetcLanguageCode
-  = lens _paetcLanguageCode
-      (\ s a -> s{_paetcLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetcUploadProtocol :: Lens' ProjectsAgentEntityTypesCreate (Maybe Text)
-paetcUploadProtocol
-  = lens _paetcUploadProtocol
-      (\ s a -> s{_paetcUploadProtocol = a})
-
--- | OAuth access token.
-paetcAccessToken :: Lens' ProjectsAgentEntityTypesCreate (Maybe Text)
-paetcAccessToken
-  = lens _paetcAccessToken
-      (\ s a -> s{_paetcAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetcUploadType :: Lens' ProjectsAgentEntityTypesCreate (Maybe Text)
-paetcUploadType
-  = lens _paetcUploadType
-      (\ s a -> s{_paetcUploadType = a})
-
--- | Multipart request metadata.
-paetcPayload :: Lens' ProjectsAgentEntityTypesCreate GoogleCloudDialogflowV2EntityType
-paetcPayload
-  = lens _paetcPayload (\ s a -> s{_paetcPayload = a})
-
--- | JSONP
-paetcCallback :: Lens' ProjectsAgentEntityTypesCreate (Maybe Text)
-paetcCallback
-  = lens _paetcCallback
-      (\ s a -> s{_paetcCallback = a})
-
-instance GoogleRequest ProjectsAgentEntityTypesCreate
-         where
-        type Rs ProjectsAgentEntityTypesCreate =
-             GoogleCloudDialogflowV2EntityType
-        type Scopes ProjectsAgentEntityTypesCreate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentEntityTypesCreate'{..}
-          = go _paetcParent _paetcXgafv _paetcLanguageCode
-              _paetcUploadProtocol
-              _paetcAccessToken
-              _paetcUploadType
-              _paetcCallback
-              (Just AltJSON)
-              _paetcPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentEntityTypesCreateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Delete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Delete.hs
+++ /dev/null
@@ -1,157 +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.DialogFlow.Projects.Agent.EntityTypes.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)
---
--- Deletes the specified entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.delete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Delete
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesDelete
-    , ProjectsAgentEntityTypesDelete
-
-    -- * Request Lenses
-    , paetdXgafv
-    , paetdUploadProtocol
-    , paetdAccessToken
-    , paetdUploadType
-    , paetdName
-    , paetdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.delete@ method which the
--- 'ProjectsAgentEntityTypesDelete' request conforms to.
-type ProjectsAgentEntityTypesDeleteResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Delete '[JSON] GoogleProtobufEmpty
-
--- | Deletes the specified entity type.
---
--- /See:/ 'projectsAgentEntityTypesDelete' smart constructor.
-data ProjectsAgentEntityTypesDelete =
-  ProjectsAgentEntityTypesDelete'
-    { _paetdXgafv          :: !(Maybe Xgafv)
-    , _paetdUploadProtocol :: !(Maybe Text)
-    , _paetdAccessToken    :: !(Maybe Text)
-    , _paetdUploadType     :: !(Maybe Text)
-    , _paetdName           :: !Text
-    , _paetdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetdXgafv'
---
--- * 'paetdUploadProtocol'
---
--- * 'paetdAccessToken'
---
--- * 'paetdUploadType'
---
--- * 'paetdName'
---
--- * 'paetdCallback'
-projectsAgentEntityTypesDelete
-    :: Text -- ^ 'paetdName'
-    -> ProjectsAgentEntityTypesDelete
-projectsAgentEntityTypesDelete pPaetdName_ =
-  ProjectsAgentEntityTypesDelete'
-    { _paetdXgafv = Nothing
-    , _paetdUploadProtocol = Nothing
-    , _paetdAccessToken = Nothing
-    , _paetdUploadType = Nothing
-    , _paetdName = pPaetdName_
-    , _paetdCallback = Nothing
-    }
-
-
--- | V1 error format.
-paetdXgafv :: Lens' ProjectsAgentEntityTypesDelete (Maybe Xgafv)
-paetdXgafv
-  = lens _paetdXgafv (\ s a -> s{_paetdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetdUploadProtocol :: Lens' ProjectsAgentEntityTypesDelete (Maybe Text)
-paetdUploadProtocol
-  = lens _paetdUploadProtocol
-      (\ s a -> s{_paetdUploadProtocol = a})
-
--- | OAuth access token.
-paetdAccessToken :: Lens' ProjectsAgentEntityTypesDelete (Maybe Text)
-paetdAccessToken
-  = lens _paetdAccessToken
-      (\ s a -> s{_paetdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetdUploadType :: Lens' ProjectsAgentEntityTypesDelete (Maybe Text)
-paetdUploadType
-  = lens _paetdUploadType
-      (\ s a -> s{_paetdUploadType = a})
-
--- | Required. The name of the entity type to delete. Format:
--- \`projects\/\/agent\/entityTypes\/\`.
-paetdName :: Lens' ProjectsAgentEntityTypesDelete Text
-paetdName
-  = lens _paetdName (\ s a -> s{_paetdName = a})
-
--- | JSONP
-paetdCallback :: Lens' ProjectsAgentEntityTypesDelete (Maybe Text)
-paetdCallback
-  = lens _paetdCallback
-      (\ s a -> s{_paetdCallback = a})
-
-instance GoogleRequest ProjectsAgentEntityTypesDelete
-         where
-        type Rs ProjectsAgentEntityTypesDelete =
-             GoogleProtobufEmpty
-        type Scopes ProjectsAgentEntityTypesDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentEntityTypesDelete'{..}
-          = go _paetdName _paetdXgafv _paetdUploadProtocol
-              _paetdAccessToken
-              _paetdUploadType
-              _paetdCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentEntityTypesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchCreate.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchCreate.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchCreate.hs
+++ /dev/null
@@ -1,181 +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.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchCreate
--- 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 multiple new entities in the specified entity type. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.entities.batchCreate@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchCreate
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesEntitiesBatchCreateResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesEntitiesBatchCreate
-    , ProjectsAgentEntityTypesEntitiesBatchCreate
-
-    -- * Request Lenses
-    , paetebcParent
-    , paetebcXgafv
-    , paetebcUploadProtocol
-    , paetebcAccessToken
-    , paetebcUploadType
-    , paetebcPayload
-    , paetebcCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.entities.batchCreate@ method which the
--- 'ProjectsAgentEntityTypesEntitiesBatchCreate' request conforms to.
-type ProjectsAgentEntityTypesEntitiesBatchCreateResource
-     =
-     "v2" :>
-       Capture "parent" Text :>
-         "entities:batchCreate" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Creates multiple new entities in the specified entity type. Operation
---
--- /See:/ 'projectsAgentEntityTypesEntitiesBatchCreate' smart constructor.
-data ProjectsAgentEntityTypesEntitiesBatchCreate =
-  ProjectsAgentEntityTypesEntitiesBatchCreate'
-    { _paetebcParent         :: !Text
-    , _paetebcXgafv          :: !(Maybe Xgafv)
-    , _paetebcUploadProtocol :: !(Maybe Text)
-    , _paetebcAccessToken    :: !(Maybe Text)
-    , _paetebcUploadType     :: !(Maybe Text)
-    , _paetebcPayload        :: !GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-    , _paetebcCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesEntitiesBatchCreate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetebcParent'
---
--- * 'paetebcXgafv'
---
--- * 'paetebcUploadProtocol'
---
--- * 'paetebcAccessToken'
---
--- * 'paetebcUploadType'
---
--- * 'paetebcPayload'
---
--- * 'paetebcCallback'
-projectsAgentEntityTypesEntitiesBatchCreate
-    :: Text -- ^ 'paetebcParent'
-    -> GoogleCloudDialogflowV2BatchCreateEntitiesRequest -- ^ 'paetebcPayload'
-    -> ProjectsAgentEntityTypesEntitiesBatchCreate
-projectsAgentEntityTypesEntitiesBatchCreate pPaetebcParent_ pPaetebcPayload_ =
-  ProjectsAgentEntityTypesEntitiesBatchCreate'
-    { _paetebcParent = pPaetebcParent_
-    , _paetebcXgafv = Nothing
-    , _paetebcUploadProtocol = Nothing
-    , _paetebcAccessToken = Nothing
-    , _paetebcUploadType = Nothing
-    , _paetebcPayload = pPaetebcPayload_
-    , _paetebcCallback = Nothing
-    }
-
-
--- | Required. The name of the entity type to create entities in. Format:
--- \`projects\/\/agent\/entityTypes\/\`.
-paetebcParent :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate Text
-paetebcParent
-  = lens _paetebcParent
-      (\ s a -> s{_paetebcParent = a})
-
--- | V1 error format.
-paetebcXgafv :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate (Maybe Xgafv)
-paetebcXgafv
-  = lens _paetebcXgafv (\ s a -> s{_paetebcXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetebcUploadProtocol :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate (Maybe Text)
-paetebcUploadProtocol
-  = lens _paetebcUploadProtocol
-      (\ s a -> s{_paetebcUploadProtocol = a})
-
--- | OAuth access token.
-paetebcAccessToken :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate (Maybe Text)
-paetebcAccessToken
-  = lens _paetebcAccessToken
-      (\ s a -> s{_paetebcAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetebcUploadType :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate (Maybe Text)
-paetebcUploadType
-  = lens _paetebcUploadType
-      (\ s a -> s{_paetebcUploadType = a})
-
--- | Multipart request metadata.
-paetebcPayload :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate GoogleCloudDialogflowV2BatchCreateEntitiesRequest
-paetebcPayload
-  = lens _paetebcPayload
-      (\ s a -> s{_paetebcPayload = a})
-
--- | JSONP
-paetebcCallback :: Lens' ProjectsAgentEntityTypesEntitiesBatchCreate (Maybe Text)
-paetebcCallback
-  = lens _paetebcCallback
-      (\ s a -> s{_paetebcCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentEntityTypesEntitiesBatchCreate
-         where
-        type Rs ProjectsAgentEntityTypesEntitiesBatchCreate =
-             GoogleLongrunningOperation
-        type Scopes
-               ProjectsAgentEntityTypesEntitiesBatchCreate
-             =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentEntityTypesEntitiesBatchCreate'{..}
-          = go _paetebcParent _paetebcXgafv
-              _paetebcUploadProtocol
-              _paetebcAccessToken
-              _paetebcUploadType
-              _paetebcCallback
-              (Just AltJSON)
-              _paetebcPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy
-                           ProjectsAgentEntityTypesEntitiesBatchCreateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchDelete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchDelete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchDelete.hs
+++ /dev/null
@@ -1,181 +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.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchDelete
--- 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)
---
--- Deletes entities in the specified entity type. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.entities.batchDelete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchDelete
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesEntitiesBatchDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesEntitiesBatchDelete
-    , ProjectsAgentEntityTypesEntitiesBatchDelete
-
-    -- * Request Lenses
-    , paetebdParent
-    , paetebdXgafv
-    , paetebdUploadProtocol
-    , paetebdAccessToken
-    , paetebdUploadType
-    , paetebdPayload
-    , paetebdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.entities.batchDelete@ method which the
--- 'ProjectsAgentEntityTypesEntitiesBatchDelete' request conforms to.
-type ProjectsAgentEntityTypesEntitiesBatchDeleteResource
-     =
-     "v2" :>
-       Capture "parent" Text :>
-         "entities:batchDelete" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Deletes entities in the specified entity type. Operation
---
--- /See:/ 'projectsAgentEntityTypesEntitiesBatchDelete' smart constructor.
-data ProjectsAgentEntityTypesEntitiesBatchDelete =
-  ProjectsAgentEntityTypesEntitiesBatchDelete'
-    { _paetebdParent         :: !Text
-    , _paetebdXgafv          :: !(Maybe Xgafv)
-    , _paetebdUploadProtocol :: !(Maybe Text)
-    , _paetebdAccessToken    :: !(Maybe Text)
-    , _paetebdUploadType     :: !(Maybe Text)
-    , _paetebdPayload        :: !GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-    , _paetebdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesEntitiesBatchDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetebdParent'
---
--- * 'paetebdXgafv'
---
--- * 'paetebdUploadProtocol'
---
--- * 'paetebdAccessToken'
---
--- * 'paetebdUploadType'
---
--- * 'paetebdPayload'
---
--- * 'paetebdCallback'
-projectsAgentEntityTypesEntitiesBatchDelete
-    :: Text -- ^ 'paetebdParent'
-    -> GoogleCloudDialogflowV2BatchDeleteEntitiesRequest -- ^ 'paetebdPayload'
-    -> ProjectsAgentEntityTypesEntitiesBatchDelete
-projectsAgentEntityTypesEntitiesBatchDelete pPaetebdParent_ pPaetebdPayload_ =
-  ProjectsAgentEntityTypesEntitiesBatchDelete'
-    { _paetebdParent = pPaetebdParent_
-    , _paetebdXgafv = Nothing
-    , _paetebdUploadProtocol = Nothing
-    , _paetebdAccessToken = Nothing
-    , _paetebdUploadType = Nothing
-    , _paetebdPayload = pPaetebdPayload_
-    , _paetebdCallback = Nothing
-    }
-
-
--- | Required. The name of the entity type to delete entries for. Format:
--- \`projects\/\/agent\/entityTypes\/\`.
-paetebdParent :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete Text
-paetebdParent
-  = lens _paetebdParent
-      (\ s a -> s{_paetebdParent = a})
-
--- | V1 error format.
-paetebdXgafv :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete (Maybe Xgafv)
-paetebdXgafv
-  = lens _paetebdXgafv (\ s a -> s{_paetebdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetebdUploadProtocol :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete (Maybe Text)
-paetebdUploadProtocol
-  = lens _paetebdUploadProtocol
-      (\ s a -> s{_paetebdUploadProtocol = a})
-
--- | OAuth access token.
-paetebdAccessToken :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete (Maybe Text)
-paetebdAccessToken
-  = lens _paetebdAccessToken
-      (\ s a -> s{_paetebdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetebdUploadType :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete (Maybe Text)
-paetebdUploadType
-  = lens _paetebdUploadType
-      (\ s a -> s{_paetebdUploadType = a})
-
--- | Multipart request metadata.
-paetebdPayload :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete GoogleCloudDialogflowV2BatchDeleteEntitiesRequest
-paetebdPayload
-  = lens _paetebdPayload
-      (\ s a -> s{_paetebdPayload = a})
-
--- | JSONP
-paetebdCallback :: Lens' ProjectsAgentEntityTypesEntitiesBatchDelete (Maybe Text)
-paetebdCallback
-  = lens _paetebdCallback
-      (\ s a -> s{_paetebdCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentEntityTypesEntitiesBatchDelete
-         where
-        type Rs ProjectsAgentEntityTypesEntitiesBatchDelete =
-             GoogleLongrunningOperation
-        type Scopes
-               ProjectsAgentEntityTypesEntitiesBatchDelete
-             =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentEntityTypesEntitiesBatchDelete'{..}
-          = go _paetebdParent _paetebdXgafv
-              _paetebdUploadProtocol
-              _paetebdAccessToken
-              _paetebdUploadType
-              _paetebdCallback
-              (Just AltJSON)
-              _paetebdPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy
-                           ProjectsAgentEntityTypesEntitiesBatchDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchUpdate.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchUpdate.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Entities/BatchUpdate.hs
+++ /dev/null
@@ -1,185 +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.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchUpdate
--- 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 or creates multiple entities in the specified entity type. This
--- method does not affect entities in the entity type that aren\'t
--- explicitly specified in the request. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.entities.batchUpdate@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchUpdate
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesEntitiesBatchUpdateResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesEntitiesBatchUpdate
-    , ProjectsAgentEntityTypesEntitiesBatchUpdate
-
-    -- * Request Lenses
-    , paetebuParent
-    , paetebuXgafv
-    , paetebuUploadProtocol
-    , paetebuAccessToken
-    , paetebuUploadType
-    , paetebuPayload
-    , paetebuCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.entities.batchUpdate@ method which the
--- 'ProjectsAgentEntityTypesEntitiesBatchUpdate' request conforms to.
-type ProjectsAgentEntityTypesEntitiesBatchUpdateResource
-     =
-     "v2" :>
-       Capture "parent" Text :>
-         "entities:batchUpdate" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Updates or creates multiple entities in the specified entity type. This
--- method does not affect entities in the entity type that aren\'t
--- explicitly specified in the request. Operation
---
--- /See:/ 'projectsAgentEntityTypesEntitiesBatchUpdate' smart constructor.
-data ProjectsAgentEntityTypesEntitiesBatchUpdate =
-  ProjectsAgentEntityTypesEntitiesBatchUpdate'
-    { _paetebuParent         :: !Text
-    , _paetebuXgafv          :: !(Maybe Xgafv)
-    , _paetebuUploadProtocol :: !(Maybe Text)
-    , _paetebuAccessToken    :: !(Maybe Text)
-    , _paetebuUploadType     :: !(Maybe Text)
-    , _paetebuPayload        :: !GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-    , _paetebuCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesEntitiesBatchUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetebuParent'
---
--- * 'paetebuXgafv'
---
--- * 'paetebuUploadProtocol'
---
--- * 'paetebuAccessToken'
---
--- * 'paetebuUploadType'
---
--- * 'paetebuPayload'
---
--- * 'paetebuCallback'
-projectsAgentEntityTypesEntitiesBatchUpdate
-    :: Text -- ^ 'paetebuParent'
-    -> GoogleCloudDialogflowV2BatchUpdateEntitiesRequest -- ^ 'paetebuPayload'
-    -> ProjectsAgentEntityTypesEntitiesBatchUpdate
-projectsAgentEntityTypesEntitiesBatchUpdate pPaetebuParent_ pPaetebuPayload_ =
-  ProjectsAgentEntityTypesEntitiesBatchUpdate'
-    { _paetebuParent = pPaetebuParent_
-    , _paetebuXgafv = Nothing
-    , _paetebuUploadProtocol = Nothing
-    , _paetebuAccessToken = Nothing
-    , _paetebuUploadType = Nothing
-    , _paetebuPayload = pPaetebuPayload_
-    , _paetebuCallback = Nothing
-    }
-
-
--- | Required. The name of the entity type to update or create entities in.
--- Format: \`projects\/\/agent\/entityTypes\/\`.
-paetebuParent :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate Text
-paetebuParent
-  = lens _paetebuParent
-      (\ s a -> s{_paetebuParent = a})
-
--- | V1 error format.
-paetebuXgafv :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate (Maybe Xgafv)
-paetebuXgafv
-  = lens _paetebuXgafv (\ s a -> s{_paetebuXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetebuUploadProtocol :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate (Maybe Text)
-paetebuUploadProtocol
-  = lens _paetebuUploadProtocol
-      (\ s a -> s{_paetebuUploadProtocol = a})
-
--- | OAuth access token.
-paetebuAccessToken :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate (Maybe Text)
-paetebuAccessToken
-  = lens _paetebuAccessToken
-      (\ s a -> s{_paetebuAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetebuUploadType :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate (Maybe Text)
-paetebuUploadType
-  = lens _paetebuUploadType
-      (\ s a -> s{_paetebuUploadType = a})
-
--- | Multipart request metadata.
-paetebuPayload :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate GoogleCloudDialogflowV2BatchUpdateEntitiesRequest
-paetebuPayload
-  = lens _paetebuPayload
-      (\ s a -> s{_paetebuPayload = a})
-
--- | JSONP
-paetebuCallback :: Lens' ProjectsAgentEntityTypesEntitiesBatchUpdate (Maybe Text)
-paetebuCallback
-  = lens _paetebuCallback
-      (\ s a -> s{_paetebuCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentEntityTypesEntitiesBatchUpdate
-         where
-        type Rs ProjectsAgentEntityTypesEntitiesBatchUpdate =
-             GoogleLongrunningOperation
-        type Scopes
-               ProjectsAgentEntityTypesEntitiesBatchUpdate
-             =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentEntityTypesEntitiesBatchUpdate'{..}
-          = go _paetebuParent _paetebuXgafv
-              _paetebuUploadProtocol
-              _paetebuAccessToken
-              _paetebuUploadType
-              _paetebuCallback
-              (Just AltJSON)
-              _paetebuPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy
-                           ProjectsAgentEntityTypesEntitiesBatchUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Get.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Get.hs
+++ /dev/null
@@ -1,173 +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.DialogFlow.Projects.Agent.EntityTypes.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 the specified entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.get@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Get
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesGetResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesGet
-    , ProjectsAgentEntityTypesGet
-
-    -- * Request Lenses
-    , paetgXgafv
-    , paetgLanguageCode
-    , paetgUploadProtocol
-    , paetgAccessToken
-    , paetgUploadType
-    , paetgName
-    , paetgCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.get@ method which the
--- 'ProjectsAgentEntityTypesGet' request conforms to.
-type ProjectsAgentEntityTypesGetResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "languageCode" Text :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       Get '[JSON] GoogleCloudDialogflowV2EntityType
-
--- | Retrieves the specified entity type.
---
--- /See:/ 'projectsAgentEntityTypesGet' smart constructor.
-data ProjectsAgentEntityTypesGet =
-  ProjectsAgentEntityTypesGet'
-    { _paetgXgafv          :: !(Maybe Xgafv)
-    , _paetgLanguageCode   :: !(Maybe Text)
-    , _paetgUploadProtocol :: !(Maybe Text)
-    , _paetgAccessToken    :: !(Maybe Text)
-    , _paetgUploadType     :: !(Maybe Text)
-    , _paetgName           :: !Text
-    , _paetgCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetgXgafv'
---
--- * 'paetgLanguageCode'
---
--- * 'paetgUploadProtocol'
---
--- * 'paetgAccessToken'
---
--- * 'paetgUploadType'
---
--- * 'paetgName'
---
--- * 'paetgCallback'
-projectsAgentEntityTypesGet
-    :: Text -- ^ 'paetgName'
-    -> ProjectsAgentEntityTypesGet
-projectsAgentEntityTypesGet pPaetgName_ =
-  ProjectsAgentEntityTypesGet'
-    { _paetgXgafv = Nothing
-    , _paetgLanguageCode = Nothing
-    , _paetgUploadProtocol = Nothing
-    , _paetgAccessToken = Nothing
-    , _paetgUploadType = Nothing
-    , _paetgName = pPaetgName_
-    , _paetgCallback = Nothing
-    }
-
-
--- | V1 error format.
-paetgXgafv :: Lens' ProjectsAgentEntityTypesGet (Maybe Xgafv)
-paetgXgafv
-  = lens _paetgXgafv (\ s a -> s{_paetgXgafv = a})
-
--- | Optional. The language to retrieve entity synonyms for. If not
--- specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paetgLanguageCode :: Lens' ProjectsAgentEntityTypesGet (Maybe Text)
-paetgLanguageCode
-  = lens _paetgLanguageCode
-      (\ s a -> s{_paetgLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetgUploadProtocol :: Lens' ProjectsAgentEntityTypesGet (Maybe Text)
-paetgUploadProtocol
-  = lens _paetgUploadProtocol
-      (\ s a -> s{_paetgUploadProtocol = a})
-
--- | OAuth access token.
-paetgAccessToken :: Lens' ProjectsAgentEntityTypesGet (Maybe Text)
-paetgAccessToken
-  = lens _paetgAccessToken
-      (\ s a -> s{_paetgAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetgUploadType :: Lens' ProjectsAgentEntityTypesGet (Maybe Text)
-paetgUploadType
-  = lens _paetgUploadType
-      (\ s a -> s{_paetgUploadType = a})
-
--- | Required. The name of the entity type. Format:
--- \`projects\/\/agent\/entityTypes\/\`.
-paetgName :: Lens' ProjectsAgentEntityTypesGet Text
-paetgName
-  = lens _paetgName (\ s a -> s{_paetgName = a})
-
--- | JSONP
-paetgCallback :: Lens' ProjectsAgentEntityTypesGet (Maybe Text)
-paetgCallback
-  = lens _paetgCallback
-      (\ s a -> s{_paetgCallback = a})
-
-instance GoogleRequest ProjectsAgentEntityTypesGet
-         where
-        type Rs ProjectsAgentEntityTypesGet =
-             GoogleCloudDialogflowV2EntityType
-        type Scopes ProjectsAgentEntityTypesGet =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentEntityTypesGet'{..}
-          = go _paetgName _paetgXgafv _paetgLanguageCode
-              _paetgUploadProtocol
-              _paetgAccessToken
-              _paetgUploadType
-              _paetgCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentEntityTypesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/List.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/List.hs
+++ /dev/null
@@ -1,204 +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.DialogFlow.Projects.Agent.EntityTypes.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)
---
--- Returns the list of all entity types in the specified agent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.list@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.List
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesListResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesList
-    , ProjectsAgentEntityTypesList
-
-    -- * Request Lenses
-    , paetlParent
-    , paetlXgafv
-    , paetlLanguageCode
-    , paetlUploadProtocol
-    , paetlAccessToken
-    , paetlUploadType
-    , paetlPageToken
-    , paetlPageSize
-    , paetlCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.list@ method which the
--- 'ProjectsAgentEntityTypesList' request conforms to.
-type ProjectsAgentEntityTypesListResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "languageCode" Text :>
-               QueryParam "upload_protocol" Text :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "pageSize" (Textual Int32) :>
-                         QueryParam "callback" Text :>
-                           QueryParam "alt" AltJSON :>
-                             Get '[JSON]
-                               GoogleCloudDialogflowV2ListEntityTypesResponse
-
--- | Returns the list of all entity types in the specified agent.
---
--- /See:/ 'projectsAgentEntityTypesList' smart constructor.
-data ProjectsAgentEntityTypesList =
-  ProjectsAgentEntityTypesList'
-    { _paetlParent         :: !Text
-    , _paetlXgafv          :: !(Maybe Xgafv)
-    , _paetlLanguageCode   :: !(Maybe Text)
-    , _paetlUploadProtocol :: !(Maybe Text)
-    , _paetlAccessToken    :: !(Maybe Text)
-    , _paetlUploadType     :: !(Maybe Text)
-    , _paetlPageToken      :: !(Maybe Text)
-    , _paetlPageSize       :: !(Maybe (Textual Int32))
-    , _paetlCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetlParent'
---
--- * 'paetlXgafv'
---
--- * 'paetlLanguageCode'
---
--- * 'paetlUploadProtocol'
---
--- * 'paetlAccessToken'
---
--- * 'paetlUploadType'
---
--- * 'paetlPageToken'
---
--- * 'paetlPageSize'
---
--- * 'paetlCallback'
-projectsAgentEntityTypesList
-    :: Text -- ^ 'paetlParent'
-    -> ProjectsAgentEntityTypesList
-projectsAgentEntityTypesList pPaetlParent_ =
-  ProjectsAgentEntityTypesList'
-    { _paetlParent = pPaetlParent_
-    , _paetlXgafv = Nothing
-    , _paetlLanguageCode = Nothing
-    , _paetlUploadProtocol = Nothing
-    , _paetlAccessToken = Nothing
-    , _paetlUploadType = Nothing
-    , _paetlPageToken = Nothing
-    , _paetlPageSize = Nothing
-    , _paetlCallback = Nothing
-    }
-
-
--- | Required. The agent to list all entity types from. Format:
--- \`projects\/\/agent\`.
-paetlParent :: Lens' ProjectsAgentEntityTypesList Text
-paetlParent
-  = lens _paetlParent (\ s a -> s{_paetlParent = a})
-
--- | V1 error format.
-paetlXgafv :: Lens' ProjectsAgentEntityTypesList (Maybe Xgafv)
-paetlXgafv
-  = lens _paetlXgafv (\ s a -> s{_paetlXgafv = a})
-
--- | Optional. The language to list entity synonyms for. If not specified,
--- the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paetlLanguageCode :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlLanguageCode
-  = lens _paetlLanguageCode
-      (\ s a -> s{_paetlLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetlUploadProtocol :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlUploadProtocol
-  = lens _paetlUploadProtocol
-      (\ s a -> s{_paetlUploadProtocol = a})
-
--- | OAuth access token.
-paetlAccessToken :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlAccessToken
-  = lens _paetlAccessToken
-      (\ s a -> s{_paetlAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetlUploadType :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlUploadType
-  = lens _paetlUploadType
-      (\ s a -> s{_paetlUploadType = a})
-
--- | Optional. The next_page_token value returned from a previous list
--- request.
-paetlPageToken :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlPageToken
-  = lens _paetlPageToken
-      (\ s a -> s{_paetlPageToken = a})
-
--- | Optional. The maximum number of items to return in a single page. By
--- default 100 and at most 1000.
-paetlPageSize :: Lens' ProjectsAgentEntityTypesList (Maybe Int32)
-paetlPageSize
-  = lens _paetlPageSize
-      (\ s a -> s{_paetlPageSize = a})
-      . mapping _Coerce
-
--- | JSONP
-paetlCallback :: Lens' ProjectsAgentEntityTypesList (Maybe Text)
-paetlCallback
-  = lens _paetlCallback
-      (\ s a -> s{_paetlCallback = a})
-
-instance GoogleRequest ProjectsAgentEntityTypesList
-         where
-        type Rs ProjectsAgentEntityTypesList =
-             GoogleCloudDialogflowV2ListEntityTypesResponse
-        type Scopes ProjectsAgentEntityTypesList =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentEntityTypesList'{..}
-          = go _paetlParent _paetlXgafv _paetlLanguageCode
-              _paetlUploadProtocol
-              _paetlAccessToken
-              _paetlUploadType
-              _paetlPageToken
-              _paetlPageSize
-              _paetlCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentEntityTypesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Patch.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/EntityTypes/Patch.hs
+++ /dev/null
@@ -1,201 +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.DialogFlow.Projects.Agent.EntityTypes.Patch
--- 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 the specified entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.entityTypes.patch@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Patch
-    (
-    -- * REST Resource
-      ProjectsAgentEntityTypesPatchResource
-
-    -- * Creating a Request
-    , projectsAgentEntityTypesPatch
-    , ProjectsAgentEntityTypesPatch
-
-    -- * Request Lenses
-    , paetpXgafv
-    , paetpLanguageCode
-    , paetpUploadProtocol
-    , paetpUpdateMask
-    , paetpAccessToken
-    , paetpUploadType
-    , paetpPayload
-    , paetpName
-    , paetpCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.entityTypes.patch@ method which the
--- 'ProjectsAgentEntityTypesPatch' request conforms to.
-type ProjectsAgentEntityTypesPatchResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "languageCode" Text :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "updateMask" GFieldMask :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "callback" Text :>
-                       QueryParam "alt" AltJSON :>
-                         ReqBody '[JSON] GoogleCloudDialogflowV2EntityType :>
-                           Patch '[JSON] GoogleCloudDialogflowV2EntityType
-
--- | Updates the specified entity type.
---
--- /See:/ 'projectsAgentEntityTypesPatch' smart constructor.
-data ProjectsAgentEntityTypesPatch =
-  ProjectsAgentEntityTypesPatch'
-    { _paetpXgafv          :: !(Maybe Xgafv)
-    , _paetpLanguageCode   :: !(Maybe Text)
-    , _paetpUploadProtocol :: !(Maybe Text)
-    , _paetpUpdateMask     :: !(Maybe GFieldMask)
-    , _paetpAccessToken    :: !(Maybe Text)
-    , _paetpUploadType     :: !(Maybe Text)
-    , _paetpPayload        :: !GoogleCloudDialogflowV2EntityType
-    , _paetpName           :: !Text
-    , _paetpCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentEntityTypesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paetpXgafv'
---
--- * 'paetpLanguageCode'
---
--- * 'paetpUploadProtocol'
---
--- * 'paetpUpdateMask'
---
--- * 'paetpAccessToken'
---
--- * 'paetpUploadType'
---
--- * 'paetpPayload'
---
--- * 'paetpName'
---
--- * 'paetpCallback'
-projectsAgentEntityTypesPatch
-    :: GoogleCloudDialogflowV2EntityType -- ^ 'paetpPayload'
-    -> Text -- ^ 'paetpName'
-    -> ProjectsAgentEntityTypesPatch
-projectsAgentEntityTypesPatch pPaetpPayload_ pPaetpName_ =
-  ProjectsAgentEntityTypesPatch'
-    { _paetpXgafv = Nothing
-    , _paetpLanguageCode = Nothing
-    , _paetpUploadProtocol = Nothing
-    , _paetpUpdateMask = Nothing
-    , _paetpAccessToken = Nothing
-    , _paetpUploadType = Nothing
-    , _paetpPayload = pPaetpPayload_
-    , _paetpName = pPaetpName_
-    , _paetpCallback = Nothing
-    }
-
-
--- | V1 error format.
-paetpXgafv :: Lens' ProjectsAgentEntityTypesPatch (Maybe Xgafv)
-paetpXgafv
-  = lens _paetpXgafv (\ s a -> s{_paetpXgafv = a})
-
--- | Optional. The language of entity synonyms defined in \`entity_type\`. If
--- not specified, the agent\'s default language is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paetpLanguageCode :: Lens' ProjectsAgentEntityTypesPatch (Maybe Text)
-paetpLanguageCode
-  = lens _paetpLanguageCode
-      (\ s a -> s{_paetpLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paetpUploadProtocol :: Lens' ProjectsAgentEntityTypesPatch (Maybe Text)
-paetpUploadProtocol
-  = lens _paetpUploadProtocol
-      (\ s a -> s{_paetpUploadProtocol = a})
-
--- | Optional. The mask to control which fields get updated.
-paetpUpdateMask :: Lens' ProjectsAgentEntityTypesPatch (Maybe GFieldMask)
-paetpUpdateMask
-  = lens _paetpUpdateMask
-      (\ s a -> s{_paetpUpdateMask = a})
-
--- | OAuth access token.
-paetpAccessToken :: Lens' ProjectsAgentEntityTypesPatch (Maybe Text)
-paetpAccessToken
-  = lens _paetpAccessToken
-      (\ s a -> s{_paetpAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paetpUploadType :: Lens' ProjectsAgentEntityTypesPatch (Maybe Text)
-paetpUploadType
-  = lens _paetpUploadType
-      (\ s a -> s{_paetpUploadType = a})
-
--- | Multipart request metadata.
-paetpPayload :: Lens' ProjectsAgentEntityTypesPatch GoogleCloudDialogflowV2EntityType
-paetpPayload
-  = lens _paetpPayload (\ s a -> s{_paetpPayload = a})
-
--- | The unique identifier of the entity type. Required for
--- EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
--- methods. Format: \`projects\/\/agent\/entityTypes\/\`.
-paetpName :: Lens' ProjectsAgentEntityTypesPatch Text
-paetpName
-  = lens _paetpName (\ s a -> s{_paetpName = a})
-
--- | JSONP
-paetpCallback :: Lens' ProjectsAgentEntityTypesPatch (Maybe Text)
-paetpCallback
-  = lens _paetpCallback
-      (\ s a -> s{_paetpCallback = a})
-
-instance GoogleRequest ProjectsAgentEntityTypesPatch
-         where
-        type Rs ProjectsAgentEntityTypesPatch =
-             GoogleCloudDialogflowV2EntityType
-        type Scopes ProjectsAgentEntityTypesPatch =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentEntityTypesPatch'{..}
-          = go _paetpName _paetpXgafv _paetpLanguageCode
-              _paetpUploadProtocol
-              _paetpUpdateMask
-              _paetpAccessToken
-              _paetpUploadType
-              _paetpCallback
-              (Just AltJSON)
-              _paetpPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentEntityTypesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Export.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Export.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Export.hs
+++ /dev/null
@@ -1,168 +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.DialogFlow.Projects.Agent.Export
--- 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)
---
--- Exports the specified agent to a ZIP file. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.export@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Export
-    (
-    -- * REST Resource
-      ProjectsAgentExportResource
-
-    -- * Creating a Request
-    , projectsAgentExport
-    , ProjectsAgentExport
-
-    -- * Request Lenses
-    , paeParent
-    , paeXgafv
-    , paeUploadProtocol
-    , paeAccessToken
-    , paeUploadType
-    , paePayload
-    , paeCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.export@ method which the
--- 'ProjectsAgentExport' request conforms to.
-type ProjectsAgentExportResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent:export" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2ExportAgentRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Exports the specified agent to a ZIP file. Operation
---
--- /See:/ 'projectsAgentExport' smart constructor.
-data ProjectsAgentExport =
-  ProjectsAgentExport'
-    { _paeParent         :: !Text
-    , _paeXgafv          :: !(Maybe Xgafv)
-    , _paeUploadProtocol :: !(Maybe Text)
-    , _paeAccessToken    :: !(Maybe Text)
-    , _paeUploadType     :: !(Maybe Text)
-    , _paePayload        :: !GoogleCloudDialogflowV2ExportAgentRequest
-    , _paeCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentExport' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paeParent'
---
--- * 'paeXgafv'
---
--- * 'paeUploadProtocol'
---
--- * 'paeAccessToken'
---
--- * 'paeUploadType'
---
--- * 'paePayload'
---
--- * 'paeCallback'
-projectsAgentExport
-    :: Text -- ^ 'paeParent'
-    -> GoogleCloudDialogflowV2ExportAgentRequest -- ^ 'paePayload'
-    -> ProjectsAgentExport
-projectsAgentExport pPaeParent_ pPaePayload_ =
-  ProjectsAgentExport'
-    { _paeParent = pPaeParent_
-    , _paeXgafv = Nothing
-    , _paeUploadProtocol = Nothing
-    , _paeAccessToken = Nothing
-    , _paeUploadType = Nothing
-    , _paePayload = pPaePayload_
-    , _paeCallback = Nothing
-    }
-
-
--- | Required. The project that the agent to export is associated with.
--- Format: \`projects\/\`.
-paeParent :: Lens' ProjectsAgentExport Text
-paeParent
-  = lens _paeParent (\ s a -> s{_paeParent = a})
-
--- | V1 error format.
-paeXgafv :: Lens' ProjectsAgentExport (Maybe Xgafv)
-paeXgafv = lens _paeXgafv (\ s a -> s{_paeXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paeUploadProtocol :: Lens' ProjectsAgentExport (Maybe Text)
-paeUploadProtocol
-  = lens _paeUploadProtocol
-      (\ s a -> s{_paeUploadProtocol = a})
-
--- | OAuth access token.
-paeAccessToken :: Lens' ProjectsAgentExport (Maybe Text)
-paeAccessToken
-  = lens _paeAccessToken
-      (\ s a -> s{_paeAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paeUploadType :: Lens' ProjectsAgentExport (Maybe Text)
-paeUploadType
-  = lens _paeUploadType
-      (\ s a -> s{_paeUploadType = a})
-
--- | Multipart request metadata.
-paePayload :: Lens' ProjectsAgentExport GoogleCloudDialogflowV2ExportAgentRequest
-paePayload
-  = lens _paePayload (\ s a -> s{_paePayload = a})
-
--- | JSONP
-paeCallback :: Lens' ProjectsAgentExport (Maybe Text)
-paeCallback
-  = lens _paeCallback (\ s a -> s{_paeCallback = a})
-
-instance GoogleRequest ProjectsAgentExport where
-        type Rs ProjectsAgentExport =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentExport =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentExport'{..}
-          = go _paeParent _paeXgafv _paeUploadProtocol
-              _paeAccessToken
-              _paeUploadType
-              _paeCallback
-              (Just AltJSON)
-              _paePayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentExportResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Import.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Import.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Import.hs
+++ /dev/null
@@ -1,174 +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.DialogFlow.Projects.Agent.Import
--- 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)
---
--- Imports the specified agent from a ZIP file. Uploads new intents and
--- entity types without deleting the existing ones. Intents and entity
--- types with the same name are replaced with the new versions from
--- ImportAgentRequest. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.import@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Import
-    (
-    -- * REST Resource
-      ProjectsAgentImportResource
-
-    -- * Creating a Request
-    , projectsAgentImport
-    , ProjectsAgentImport
-
-    -- * Request Lenses
-    , paiParent
-    , paiXgafv
-    , paiUploadProtocol
-    , paiAccessToken
-    , paiUploadType
-    , paiPayload
-    , paiCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.import@ method which the
--- 'ProjectsAgentImport' request conforms to.
-type ProjectsAgentImportResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent:import" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2ImportAgentRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Imports the specified agent from a ZIP file. Uploads new intents and
--- entity types without deleting the existing ones. Intents and entity
--- types with the same name are replaced with the new versions from
--- ImportAgentRequest. Operation
---
--- /See:/ 'projectsAgentImport' smart constructor.
-data ProjectsAgentImport =
-  ProjectsAgentImport'
-    { _paiParent         :: !Text
-    , _paiXgafv          :: !(Maybe Xgafv)
-    , _paiUploadProtocol :: !(Maybe Text)
-    , _paiAccessToken    :: !(Maybe Text)
-    , _paiUploadType     :: !(Maybe Text)
-    , _paiPayload        :: !GoogleCloudDialogflowV2ImportAgentRequest
-    , _paiCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentImport' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paiParent'
---
--- * 'paiXgafv'
---
--- * 'paiUploadProtocol'
---
--- * 'paiAccessToken'
---
--- * 'paiUploadType'
---
--- * 'paiPayload'
---
--- * 'paiCallback'
-projectsAgentImport
-    :: Text -- ^ 'paiParent'
-    -> GoogleCloudDialogflowV2ImportAgentRequest -- ^ 'paiPayload'
-    -> ProjectsAgentImport
-projectsAgentImport pPaiParent_ pPaiPayload_ =
-  ProjectsAgentImport'
-    { _paiParent = pPaiParent_
-    , _paiXgafv = Nothing
-    , _paiUploadProtocol = Nothing
-    , _paiAccessToken = Nothing
-    , _paiUploadType = Nothing
-    , _paiPayload = pPaiPayload_
-    , _paiCallback = Nothing
-    }
-
-
--- | Required. The project that the agent to import is associated with.
--- Format: \`projects\/\`.
-paiParent :: Lens' ProjectsAgentImport Text
-paiParent
-  = lens _paiParent (\ s a -> s{_paiParent = a})
-
--- | V1 error format.
-paiXgafv :: Lens' ProjectsAgentImport (Maybe Xgafv)
-paiXgafv = lens _paiXgafv (\ s a -> s{_paiXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paiUploadProtocol :: Lens' ProjectsAgentImport (Maybe Text)
-paiUploadProtocol
-  = lens _paiUploadProtocol
-      (\ s a -> s{_paiUploadProtocol = a})
-
--- | OAuth access token.
-paiAccessToken :: Lens' ProjectsAgentImport (Maybe Text)
-paiAccessToken
-  = lens _paiAccessToken
-      (\ s a -> s{_paiAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paiUploadType :: Lens' ProjectsAgentImport (Maybe Text)
-paiUploadType
-  = lens _paiUploadType
-      (\ s a -> s{_paiUploadType = a})
-
--- | Multipart request metadata.
-paiPayload :: Lens' ProjectsAgentImport GoogleCloudDialogflowV2ImportAgentRequest
-paiPayload
-  = lens _paiPayload (\ s a -> s{_paiPayload = a})
-
--- | JSONP
-paiCallback :: Lens' ProjectsAgentImport (Maybe Text)
-paiCallback
-  = lens _paiCallback (\ s a -> s{_paiCallback = a})
-
-instance GoogleRequest ProjectsAgentImport where
-        type Rs ProjectsAgentImport =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentImport =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentImport'{..}
-          = go _paiParent _paiXgafv _paiUploadProtocol
-              _paiAccessToken
-              _paiUploadType
-              _paiCallback
-              (Just AltJSON)
-              _paiPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentImportResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchDelete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchDelete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchDelete.hs
+++ /dev/null
@@ -1,173 +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.DialogFlow.Projects.Agent.Intents.BatchDelete
--- 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)
---
--- Deletes intents in the specified agent. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.batchDelete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchDelete
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsBatchDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsBatchDelete
-    , ProjectsAgentIntentsBatchDelete
-
-    -- * Request Lenses
-    , paibdParent
-    , paibdXgafv
-    , paibdUploadProtocol
-    , paibdAccessToken
-    , paibdUploadType
-    , paibdPayload
-    , paibdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.batchDelete@ method which the
--- 'ProjectsAgentIntentsBatchDelete' request conforms to.
-type ProjectsAgentIntentsBatchDeleteResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "intents:batchDelete" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Deletes intents in the specified agent. Operation
---
--- /See:/ 'projectsAgentIntentsBatchDelete' smart constructor.
-data ProjectsAgentIntentsBatchDelete =
-  ProjectsAgentIntentsBatchDelete'
-    { _paibdParent         :: !Text
-    , _paibdXgafv          :: !(Maybe Xgafv)
-    , _paibdUploadProtocol :: !(Maybe Text)
-    , _paibdAccessToken    :: !(Maybe Text)
-    , _paibdUploadType     :: !(Maybe Text)
-    , _paibdPayload        :: !GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-    , _paibdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsBatchDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paibdParent'
---
--- * 'paibdXgafv'
---
--- * 'paibdUploadProtocol'
---
--- * 'paibdAccessToken'
---
--- * 'paibdUploadType'
---
--- * 'paibdPayload'
---
--- * 'paibdCallback'
-projectsAgentIntentsBatchDelete
-    :: Text -- ^ 'paibdParent'
-    -> GoogleCloudDialogflowV2BatchDeleteIntentsRequest -- ^ 'paibdPayload'
-    -> ProjectsAgentIntentsBatchDelete
-projectsAgentIntentsBatchDelete pPaibdParent_ pPaibdPayload_ =
-  ProjectsAgentIntentsBatchDelete'
-    { _paibdParent = pPaibdParent_
-    , _paibdXgafv = Nothing
-    , _paibdUploadProtocol = Nothing
-    , _paibdAccessToken = Nothing
-    , _paibdUploadType = Nothing
-    , _paibdPayload = pPaibdPayload_
-    , _paibdCallback = Nothing
-    }
-
-
--- | Required. The name of the agent to delete all entities types for.
--- Format: \`projects\/\/agent\`.
-paibdParent :: Lens' ProjectsAgentIntentsBatchDelete Text
-paibdParent
-  = lens _paibdParent (\ s a -> s{_paibdParent = a})
-
--- | V1 error format.
-paibdXgafv :: Lens' ProjectsAgentIntentsBatchDelete (Maybe Xgafv)
-paibdXgafv
-  = lens _paibdXgafv (\ s a -> s{_paibdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paibdUploadProtocol :: Lens' ProjectsAgentIntentsBatchDelete (Maybe Text)
-paibdUploadProtocol
-  = lens _paibdUploadProtocol
-      (\ s a -> s{_paibdUploadProtocol = a})
-
--- | OAuth access token.
-paibdAccessToken :: Lens' ProjectsAgentIntentsBatchDelete (Maybe Text)
-paibdAccessToken
-  = lens _paibdAccessToken
-      (\ s a -> s{_paibdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paibdUploadType :: Lens' ProjectsAgentIntentsBatchDelete (Maybe Text)
-paibdUploadType
-  = lens _paibdUploadType
-      (\ s a -> s{_paibdUploadType = a})
-
--- | Multipart request metadata.
-paibdPayload :: Lens' ProjectsAgentIntentsBatchDelete GoogleCloudDialogflowV2BatchDeleteIntentsRequest
-paibdPayload
-  = lens _paibdPayload (\ s a -> s{_paibdPayload = a})
-
--- | JSONP
-paibdCallback :: Lens' ProjectsAgentIntentsBatchDelete (Maybe Text)
-paibdCallback
-  = lens _paibdCallback
-      (\ s a -> s{_paibdCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentIntentsBatchDelete
-         where
-        type Rs ProjectsAgentIntentsBatchDelete =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentIntentsBatchDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsBatchDelete'{..}
-          = go _paibdParent _paibdXgafv _paibdUploadProtocol
-              _paibdAccessToken
-              _paibdUploadType
-              _paibdCallback
-              (Just AltJSON)
-              _paibdPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentIntentsBatchDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchUpdate.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchUpdate.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/BatchUpdate.hs
+++ /dev/null
@@ -1,173 +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.DialogFlow.Projects.Agent.Intents.BatchUpdate
--- 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\/Creates multiple intents in the specified agent. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.batchUpdate@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchUpdate
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsBatchUpdateResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsBatchUpdate
-    , ProjectsAgentIntentsBatchUpdate
-
-    -- * Request Lenses
-    , paibuParent
-    , paibuXgafv
-    , paibuUploadProtocol
-    , paibuAccessToken
-    , paibuUploadType
-    , paibuPayload
-    , paibuCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.batchUpdate@ method which the
--- 'ProjectsAgentIntentsBatchUpdate' request conforms to.
-type ProjectsAgentIntentsBatchUpdateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "intents:batchUpdate" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Updates\/Creates multiple intents in the specified agent. Operation
---
--- /See:/ 'projectsAgentIntentsBatchUpdate' smart constructor.
-data ProjectsAgentIntentsBatchUpdate =
-  ProjectsAgentIntentsBatchUpdate'
-    { _paibuParent         :: !Text
-    , _paibuXgafv          :: !(Maybe Xgafv)
-    , _paibuUploadProtocol :: !(Maybe Text)
-    , _paibuAccessToken    :: !(Maybe Text)
-    , _paibuUploadType     :: !(Maybe Text)
-    , _paibuPayload        :: !GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-    , _paibuCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsBatchUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paibuParent'
---
--- * 'paibuXgafv'
---
--- * 'paibuUploadProtocol'
---
--- * 'paibuAccessToken'
---
--- * 'paibuUploadType'
---
--- * 'paibuPayload'
---
--- * 'paibuCallback'
-projectsAgentIntentsBatchUpdate
-    :: Text -- ^ 'paibuParent'
-    -> GoogleCloudDialogflowV2BatchUpdateIntentsRequest -- ^ 'paibuPayload'
-    -> ProjectsAgentIntentsBatchUpdate
-projectsAgentIntentsBatchUpdate pPaibuParent_ pPaibuPayload_ =
-  ProjectsAgentIntentsBatchUpdate'
-    { _paibuParent = pPaibuParent_
-    , _paibuXgafv = Nothing
-    , _paibuUploadProtocol = Nothing
-    , _paibuAccessToken = Nothing
-    , _paibuUploadType = Nothing
-    , _paibuPayload = pPaibuPayload_
-    , _paibuCallback = Nothing
-    }
-
-
--- | Required. The name of the agent to update or create intents in. Format:
--- \`projects\/\/agent\`.
-paibuParent :: Lens' ProjectsAgentIntentsBatchUpdate Text
-paibuParent
-  = lens _paibuParent (\ s a -> s{_paibuParent = a})
-
--- | V1 error format.
-paibuXgafv :: Lens' ProjectsAgentIntentsBatchUpdate (Maybe Xgafv)
-paibuXgafv
-  = lens _paibuXgafv (\ s a -> s{_paibuXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paibuUploadProtocol :: Lens' ProjectsAgentIntentsBatchUpdate (Maybe Text)
-paibuUploadProtocol
-  = lens _paibuUploadProtocol
-      (\ s a -> s{_paibuUploadProtocol = a})
-
--- | OAuth access token.
-paibuAccessToken :: Lens' ProjectsAgentIntentsBatchUpdate (Maybe Text)
-paibuAccessToken
-  = lens _paibuAccessToken
-      (\ s a -> s{_paibuAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paibuUploadType :: Lens' ProjectsAgentIntentsBatchUpdate (Maybe Text)
-paibuUploadType
-  = lens _paibuUploadType
-      (\ s a -> s{_paibuUploadType = a})
-
--- | Multipart request metadata.
-paibuPayload :: Lens' ProjectsAgentIntentsBatchUpdate GoogleCloudDialogflowV2BatchUpdateIntentsRequest
-paibuPayload
-  = lens _paibuPayload (\ s a -> s{_paibuPayload = a})
-
--- | JSONP
-paibuCallback :: Lens' ProjectsAgentIntentsBatchUpdate (Maybe Text)
-paibuCallback
-  = lens _paibuCallback
-      (\ s a -> s{_paibuCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentIntentsBatchUpdate
-         where
-        type Rs ProjectsAgentIntentsBatchUpdate =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentIntentsBatchUpdate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsBatchUpdate'{..}
-          = go _paibuParent _paibuXgafv _paibuUploadProtocol
-              _paibuAccessToken
-              _paibuUploadType
-              _paibuCallback
-              (Just AltJSON)
-              _paibuPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentIntentsBatchUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Create.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Create.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Create.hs
+++ /dev/null
@@ -1,200 +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.DialogFlow.Projects.Agent.Intents.Create
--- 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 an intent in the specified agent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.create@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Create
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsCreateResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsCreate
-    , ProjectsAgentIntentsCreate
-
-    -- * Request Lenses
-    , paicParent
-    , paicXgafv
-    , paicLanguageCode
-    , paicUploadProtocol
-    , paicAccessToken
-    , paicUploadType
-    , paicPayload
-    , paicIntentView
-    , paicCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.create@ method which the
--- 'ProjectsAgentIntentsCreate' request conforms to.
-type ProjectsAgentIntentsCreateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "intents" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "languageCode" Text :>
-               QueryParam "upload_protocol" Text :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "intentView" Text :>
-                       QueryParam "callback" Text :>
-                         QueryParam "alt" AltJSON :>
-                           ReqBody '[JSON] GoogleCloudDialogflowV2Intent :>
-                             Post '[JSON] GoogleCloudDialogflowV2Intent
-
--- | Creates an intent in the specified agent.
---
--- /See:/ 'projectsAgentIntentsCreate' smart constructor.
-data ProjectsAgentIntentsCreate =
-  ProjectsAgentIntentsCreate'
-    { _paicParent         :: !Text
-    , _paicXgafv          :: !(Maybe Xgafv)
-    , _paicLanguageCode   :: !(Maybe Text)
-    , _paicUploadProtocol :: !(Maybe Text)
-    , _paicAccessToken    :: !(Maybe Text)
-    , _paicUploadType     :: !(Maybe Text)
-    , _paicPayload        :: !GoogleCloudDialogflowV2Intent
-    , _paicIntentView     :: !(Maybe Text)
-    , _paicCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsCreate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paicParent'
---
--- * 'paicXgafv'
---
--- * 'paicLanguageCode'
---
--- * 'paicUploadProtocol'
---
--- * 'paicAccessToken'
---
--- * 'paicUploadType'
---
--- * 'paicPayload'
---
--- * 'paicIntentView'
---
--- * 'paicCallback'
-projectsAgentIntentsCreate
-    :: Text -- ^ 'paicParent'
-    -> GoogleCloudDialogflowV2Intent -- ^ 'paicPayload'
-    -> ProjectsAgentIntentsCreate
-projectsAgentIntentsCreate pPaicParent_ pPaicPayload_ =
-  ProjectsAgentIntentsCreate'
-    { _paicParent = pPaicParent_
-    , _paicXgafv = Nothing
-    , _paicLanguageCode = Nothing
-    , _paicUploadProtocol = Nothing
-    , _paicAccessToken = Nothing
-    , _paicUploadType = Nothing
-    , _paicPayload = pPaicPayload_
-    , _paicIntentView = Nothing
-    , _paicCallback = Nothing
-    }
-
-
--- | Required. The agent to create a intent for. Format:
--- \`projects\/\/agent\`.
-paicParent :: Lens' ProjectsAgentIntentsCreate Text
-paicParent
-  = lens _paicParent (\ s a -> s{_paicParent = a})
-
--- | V1 error format.
-paicXgafv :: Lens' ProjectsAgentIntentsCreate (Maybe Xgafv)
-paicXgafv
-  = lens _paicXgafv (\ s a -> s{_paicXgafv = a})
-
--- | Optional. The language of training phrases, parameters and rich messages
--- defined in \`intent\`. If not specified, the agent\'s default language
--- is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paicLanguageCode :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicLanguageCode
-  = lens _paicLanguageCode
-      (\ s a -> s{_paicLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paicUploadProtocol :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicUploadProtocol
-  = lens _paicUploadProtocol
-      (\ s a -> s{_paicUploadProtocol = a})
-
--- | OAuth access token.
-paicAccessToken :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicAccessToken
-  = lens _paicAccessToken
-      (\ s a -> s{_paicAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paicUploadType :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicUploadType
-  = lens _paicUploadType
-      (\ s a -> s{_paicUploadType = a})
-
--- | Multipart request metadata.
-paicPayload :: Lens' ProjectsAgentIntentsCreate GoogleCloudDialogflowV2Intent
-paicPayload
-  = lens _paicPayload (\ s a -> s{_paicPayload = a})
-
--- | Optional. The resource view to apply to the returned intent.
-paicIntentView :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicIntentView
-  = lens _paicIntentView
-      (\ s a -> s{_paicIntentView = a})
-
--- | JSONP
-paicCallback :: Lens' ProjectsAgentIntentsCreate (Maybe Text)
-paicCallback
-  = lens _paicCallback (\ s a -> s{_paicCallback = a})
-
-instance GoogleRequest ProjectsAgentIntentsCreate
-         where
-        type Rs ProjectsAgentIntentsCreate =
-             GoogleCloudDialogflowV2Intent
-        type Scopes ProjectsAgentIntentsCreate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsCreate'{..}
-          = go _paicParent _paicXgafv _paicLanguageCode
-              _paicUploadProtocol
-              _paicAccessToken
-              _paicUploadType
-              _paicIntentView
-              _paicCallback
-              (Just AltJSON)
-              _paicPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentIntentsCreateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Delete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Delete.hs
+++ /dev/null
@@ -1,157 +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.DialogFlow.Projects.Agent.Intents.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)
---
--- Deletes the specified intent and its direct or indirect followup
--- intents.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.delete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Delete
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsDelete
-    , ProjectsAgentIntentsDelete
-
-    -- * Request Lenses
-    , paidXgafv
-    , paidUploadProtocol
-    , paidAccessToken
-    , paidUploadType
-    , paidName
-    , paidCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.delete@ method which the
--- 'ProjectsAgentIntentsDelete' request conforms to.
-type ProjectsAgentIntentsDeleteResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Delete '[JSON] GoogleProtobufEmpty
-
--- | Deletes the specified intent and its direct or indirect followup
--- intents.
---
--- /See:/ 'projectsAgentIntentsDelete' smart constructor.
-data ProjectsAgentIntentsDelete =
-  ProjectsAgentIntentsDelete'
-    { _paidXgafv          :: !(Maybe Xgafv)
-    , _paidUploadProtocol :: !(Maybe Text)
-    , _paidAccessToken    :: !(Maybe Text)
-    , _paidUploadType     :: !(Maybe Text)
-    , _paidName           :: !Text
-    , _paidCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paidXgafv'
---
--- * 'paidUploadProtocol'
---
--- * 'paidAccessToken'
---
--- * 'paidUploadType'
---
--- * 'paidName'
---
--- * 'paidCallback'
-projectsAgentIntentsDelete
-    :: Text -- ^ 'paidName'
-    -> ProjectsAgentIntentsDelete
-projectsAgentIntentsDelete pPaidName_ =
-  ProjectsAgentIntentsDelete'
-    { _paidXgafv = Nothing
-    , _paidUploadProtocol = Nothing
-    , _paidAccessToken = Nothing
-    , _paidUploadType = Nothing
-    , _paidName = pPaidName_
-    , _paidCallback = Nothing
-    }
-
-
--- | V1 error format.
-paidXgafv :: Lens' ProjectsAgentIntentsDelete (Maybe Xgafv)
-paidXgafv
-  = lens _paidXgafv (\ s a -> s{_paidXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paidUploadProtocol :: Lens' ProjectsAgentIntentsDelete (Maybe Text)
-paidUploadProtocol
-  = lens _paidUploadProtocol
-      (\ s a -> s{_paidUploadProtocol = a})
-
--- | OAuth access token.
-paidAccessToken :: Lens' ProjectsAgentIntentsDelete (Maybe Text)
-paidAccessToken
-  = lens _paidAccessToken
-      (\ s a -> s{_paidAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paidUploadType :: Lens' ProjectsAgentIntentsDelete (Maybe Text)
-paidUploadType
-  = lens _paidUploadType
-      (\ s a -> s{_paidUploadType = a})
-
--- | Required. The name of the intent to delete. If this intent has direct or
--- indirect followup intents, we also delete them. Format:
--- \`projects\/\/agent\/intents\/\`.
-paidName :: Lens' ProjectsAgentIntentsDelete Text
-paidName = lens _paidName (\ s a -> s{_paidName = a})
-
--- | JSONP
-paidCallback :: Lens' ProjectsAgentIntentsDelete (Maybe Text)
-paidCallback
-  = lens _paidCallback (\ s a -> s{_paidCallback = a})
-
-instance GoogleRequest ProjectsAgentIntentsDelete
-         where
-        type Rs ProjectsAgentIntentsDelete =
-             GoogleProtobufEmpty
-        type Scopes ProjectsAgentIntentsDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsDelete'{..}
-          = go _paidName _paidXgafv _paidUploadProtocol
-              _paidAccessToken
-              _paidUploadType
-              _paidCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentIntentsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Get.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Get.hs
+++ /dev/null
@@ -1,184 +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.DialogFlow.Projects.Agent.Intents.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 the specified intent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.get@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Get
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsGetResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsGet
-    , ProjectsAgentIntentsGet
-
-    -- * Request Lenses
-    , paigXgafv
-    , paigLanguageCode
-    , paigUploadProtocol
-    , paigAccessToken
-    , paigUploadType
-    , paigIntentView
-    , paigName
-    , paigCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.get@ method which the
--- 'ProjectsAgentIntentsGet' request conforms to.
-type ProjectsAgentIntentsGetResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "languageCode" Text :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "intentView" Text :>
-                     QueryParam "callback" Text :>
-                       QueryParam "alt" AltJSON :>
-                         Get '[JSON] GoogleCloudDialogflowV2Intent
-
--- | Retrieves the specified intent.
---
--- /See:/ 'projectsAgentIntentsGet' smart constructor.
-data ProjectsAgentIntentsGet =
-  ProjectsAgentIntentsGet'
-    { _paigXgafv          :: !(Maybe Xgafv)
-    , _paigLanguageCode   :: !(Maybe Text)
-    , _paigUploadProtocol :: !(Maybe Text)
-    , _paigAccessToken    :: !(Maybe Text)
-    , _paigUploadType     :: !(Maybe Text)
-    , _paigIntentView     :: !(Maybe Text)
-    , _paigName           :: !Text
-    , _paigCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paigXgafv'
---
--- * 'paigLanguageCode'
---
--- * 'paigUploadProtocol'
---
--- * 'paigAccessToken'
---
--- * 'paigUploadType'
---
--- * 'paigIntentView'
---
--- * 'paigName'
---
--- * 'paigCallback'
-projectsAgentIntentsGet
-    :: Text -- ^ 'paigName'
-    -> ProjectsAgentIntentsGet
-projectsAgentIntentsGet pPaigName_ =
-  ProjectsAgentIntentsGet'
-    { _paigXgafv = Nothing
-    , _paigLanguageCode = Nothing
-    , _paigUploadProtocol = Nothing
-    , _paigAccessToken = Nothing
-    , _paigUploadType = Nothing
-    , _paigIntentView = Nothing
-    , _paigName = pPaigName_
-    , _paigCallback = Nothing
-    }
-
-
--- | V1 error format.
-paigXgafv :: Lens' ProjectsAgentIntentsGet (Maybe Xgafv)
-paigXgafv
-  = lens _paigXgafv (\ s a -> s{_paigXgafv = a})
-
--- | Optional. The language to retrieve training phrases, parameters and rich
--- messages for. If not specified, the agent\'s default language is used.
--- [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paigLanguageCode :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigLanguageCode
-  = lens _paigLanguageCode
-      (\ s a -> s{_paigLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paigUploadProtocol :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigUploadProtocol
-  = lens _paigUploadProtocol
-      (\ s a -> s{_paigUploadProtocol = a})
-
--- | OAuth access token.
-paigAccessToken :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigAccessToken
-  = lens _paigAccessToken
-      (\ s a -> s{_paigAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paigUploadType :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigUploadType
-  = lens _paigUploadType
-      (\ s a -> s{_paigUploadType = a})
-
--- | Optional. The resource view to apply to the returned intent.
-paigIntentView :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigIntentView
-  = lens _paigIntentView
-      (\ s a -> s{_paigIntentView = a})
-
--- | Required. The name of the intent. Format:
--- \`projects\/\/agent\/intents\/\`.
-paigName :: Lens' ProjectsAgentIntentsGet Text
-paigName = lens _paigName (\ s a -> s{_paigName = a})
-
--- | JSONP
-paigCallback :: Lens' ProjectsAgentIntentsGet (Maybe Text)
-paigCallback
-  = lens _paigCallback (\ s a -> s{_paigCallback = a})
-
-instance GoogleRequest ProjectsAgentIntentsGet where
-        type Rs ProjectsAgentIntentsGet =
-             GoogleCloudDialogflowV2Intent
-        type Scopes ProjectsAgentIntentsGet =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsGet'{..}
-          = go _paigName _paigXgafv _paigLanguageCode
-              _paigUploadProtocol
-              _paigAccessToken
-              _paigUploadType
-              _paigIntentView
-              _paigCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentIntentsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/List.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/List.hs
+++ /dev/null
@@ -1,215 +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.DialogFlow.Projects.Agent.Intents.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)
---
--- Returns the list of all intents in the specified agent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.list@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.List
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsListResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsList
-    , ProjectsAgentIntentsList
-
-    -- * Request Lenses
-    , pailParent
-    , pailXgafv
-    , pailLanguageCode
-    , pailUploadProtocol
-    , pailAccessToken
-    , pailUploadType
-    , pailIntentView
-    , pailPageToken
-    , pailPageSize
-    , pailCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.list@ method which the
--- 'ProjectsAgentIntentsList' request conforms to.
-type ProjectsAgentIntentsListResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "intents" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "languageCode" Text :>
-               QueryParam "upload_protocol" Text :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "intentView" Text :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "pageSize" (Textual Int32) :>
-                           QueryParam "callback" Text :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON]
-                                 GoogleCloudDialogflowV2ListIntentsResponse
-
--- | Returns the list of all intents in the specified agent.
---
--- /See:/ 'projectsAgentIntentsList' smart constructor.
-data ProjectsAgentIntentsList =
-  ProjectsAgentIntentsList'
-    { _pailParent         :: !Text
-    , _pailXgafv          :: !(Maybe Xgafv)
-    , _pailLanguageCode   :: !(Maybe Text)
-    , _pailUploadProtocol :: !(Maybe Text)
-    , _pailAccessToken    :: !(Maybe Text)
-    , _pailUploadType     :: !(Maybe Text)
-    , _pailIntentView     :: !(Maybe Text)
-    , _pailPageToken      :: !(Maybe Text)
-    , _pailPageSize       :: !(Maybe (Textual Int32))
-    , _pailCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pailParent'
---
--- * 'pailXgafv'
---
--- * 'pailLanguageCode'
---
--- * 'pailUploadProtocol'
---
--- * 'pailAccessToken'
---
--- * 'pailUploadType'
---
--- * 'pailIntentView'
---
--- * 'pailPageToken'
---
--- * 'pailPageSize'
---
--- * 'pailCallback'
-projectsAgentIntentsList
-    :: Text -- ^ 'pailParent'
-    -> ProjectsAgentIntentsList
-projectsAgentIntentsList pPailParent_ =
-  ProjectsAgentIntentsList'
-    { _pailParent = pPailParent_
-    , _pailXgafv = Nothing
-    , _pailLanguageCode = Nothing
-    , _pailUploadProtocol = Nothing
-    , _pailAccessToken = Nothing
-    , _pailUploadType = Nothing
-    , _pailIntentView = Nothing
-    , _pailPageToken = Nothing
-    , _pailPageSize = Nothing
-    , _pailCallback = Nothing
-    }
-
-
--- | Required. The agent to list all intents from. Format:
--- \`projects\/\/agent\`.
-pailParent :: Lens' ProjectsAgentIntentsList Text
-pailParent
-  = lens _pailParent (\ s a -> s{_pailParent = a})
-
--- | V1 error format.
-pailXgafv :: Lens' ProjectsAgentIntentsList (Maybe Xgafv)
-pailXgafv
-  = lens _pailXgafv (\ s a -> s{_pailXgafv = a})
-
--- | Optional. The language to list training phrases, parameters and rich
--- messages for. If not specified, the agent\'s default language is used.
--- [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-pailLanguageCode :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailLanguageCode
-  = lens _pailLanguageCode
-      (\ s a -> s{_pailLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pailUploadProtocol :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailUploadProtocol
-  = lens _pailUploadProtocol
-      (\ s a -> s{_pailUploadProtocol = a})
-
--- | OAuth access token.
-pailAccessToken :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailAccessToken
-  = lens _pailAccessToken
-      (\ s a -> s{_pailAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pailUploadType :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailUploadType
-  = lens _pailUploadType
-      (\ s a -> s{_pailUploadType = a})
-
--- | Optional. The resource view to apply to the returned intent.
-pailIntentView :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailIntentView
-  = lens _pailIntentView
-      (\ s a -> s{_pailIntentView = a})
-
--- | Optional. The next_page_token value returned from a previous list
--- request.
-pailPageToken :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailPageToken
-  = lens _pailPageToken
-      (\ s a -> s{_pailPageToken = a})
-
--- | Optional. The maximum number of items to return in a single page. By
--- default 100 and at most 1000.
-pailPageSize :: Lens' ProjectsAgentIntentsList (Maybe Int32)
-pailPageSize
-  = lens _pailPageSize (\ s a -> s{_pailPageSize = a})
-      . mapping _Coerce
-
--- | JSONP
-pailCallback :: Lens' ProjectsAgentIntentsList (Maybe Text)
-pailCallback
-  = lens _pailCallback (\ s a -> s{_pailCallback = a})
-
-instance GoogleRequest ProjectsAgentIntentsList where
-        type Rs ProjectsAgentIntentsList =
-             GoogleCloudDialogflowV2ListIntentsResponse
-        type Scopes ProjectsAgentIntentsList =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsList'{..}
-          = go _pailParent _pailXgafv _pailLanguageCode
-              _pailUploadProtocol
-              _pailAccessToken
-              _pailUploadType
-              _pailIntentView
-              _pailPageToken
-              _pailPageSize
-              _pailCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentIntentsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Patch.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Intents/Patch.hs
+++ /dev/null
@@ -1,212 +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.DialogFlow.Projects.Agent.Intents.Patch
--- 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 the specified intent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.intents.patch@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Patch
-    (
-    -- * REST Resource
-      ProjectsAgentIntentsPatchResource
-
-    -- * Creating a Request
-    , projectsAgentIntentsPatch
-    , ProjectsAgentIntentsPatch
-
-    -- * Request Lenses
-    , paipXgafv
-    , paipLanguageCode
-    , paipUploadProtocol
-    , paipUpdateMask
-    , paipAccessToken
-    , paipUploadType
-    , paipPayload
-    , paipIntentView
-    , paipName
-    , paipCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.intents.patch@ method which the
--- 'ProjectsAgentIntentsPatch' request conforms to.
-type ProjectsAgentIntentsPatchResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "languageCode" Text :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "updateMask" GFieldMask :>
-                 QueryParam "access_token" Text :>
-                   QueryParam "uploadType" Text :>
-                     QueryParam "intentView" Text :>
-                       QueryParam "callback" Text :>
-                         QueryParam "alt" AltJSON :>
-                           ReqBody '[JSON] GoogleCloudDialogflowV2Intent :>
-                             Patch '[JSON] GoogleCloudDialogflowV2Intent
-
--- | Updates the specified intent.
---
--- /See:/ 'projectsAgentIntentsPatch' smart constructor.
-data ProjectsAgentIntentsPatch =
-  ProjectsAgentIntentsPatch'
-    { _paipXgafv          :: !(Maybe Xgafv)
-    , _paipLanguageCode   :: !(Maybe Text)
-    , _paipUploadProtocol :: !(Maybe Text)
-    , _paipUpdateMask     :: !(Maybe GFieldMask)
-    , _paipAccessToken    :: !(Maybe Text)
-    , _paipUploadType     :: !(Maybe Text)
-    , _paipPayload        :: !GoogleCloudDialogflowV2Intent
-    , _paipIntentView     :: !(Maybe Text)
-    , _paipName           :: !Text
-    , _paipCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentIntentsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paipXgafv'
---
--- * 'paipLanguageCode'
---
--- * 'paipUploadProtocol'
---
--- * 'paipUpdateMask'
---
--- * 'paipAccessToken'
---
--- * 'paipUploadType'
---
--- * 'paipPayload'
---
--- * 'paipIntentView'
---
--- * 'paipName'
---
--- * 'paipCallback'
-projectsAgentIntentsPatch
-    :: GoogleCloudDialogflowV2Intent -- ^ 'paipPayload'
-    -> Text -- ^ 'paipName'
-    -> ProjectsAgentIntentsPatch
-projectsAgentIntentsPatch pPaipPayload_ pPaipName_ =
-  ProjectsAgentIntentsPatch'
-    { _paipXgafv = Nothing
-    , _paipLanguageCode = Nothing
-    , _paipUploadProtocol = Nothing
-    , _paipUpdateMask = Nothing
-    , _paipAccessToken = Nothing
-    , _paipUploadType = Nothing
-    , _paipPayload = pPaipPayload_
-    , _paipIntentView = Nothing
-    , _paipName = pPaipName_
-    , _paipCallback = Nothing
-    }
-
-
--- | V1 error format.
-paipXgafv :: Lens' ProjectsAgentIntentsPatch (Maybe Xgafv)
-paipXgafv
-  = lens _paipXgafv (\ s a -> s{_paipXgafv = a})
-
--- | Optional. The language of training phrases, parameters and rich messages
--- defined in \`intent\`. If not specified, the agent\'s default language
--- is used. [Many
--- languages](https:\/\/cloud.google.com\/dialogflow-enterprise\/docs\/reference\/language)
--- are supported. Note: languages must be enabled in the agent before they
--- can be used.
-paipLanguageCode :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipLanguageCode
-  = lens _paipLanguageCode
-      (\ s a -> s{_paipLanguageCode = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paipUploadProtocol :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipUploadProtocol
-  = lens _paipUploadProtocol
-      (\ s a -> s{_paipUploadProtocol = a})
-
--- | Optional. The mask to control which fields get updated.
-paipUpdateMask :: Lens' ProjectsAgentIntentsPatch (Maybe GFieldMask)
-paipUpdateMask
-  = lens _paipUpdateMask
-      (\ s a -> s{_paipUpdateMask = a})
-
--- | OAuth access token.
-paipAccessToken :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipAccessToken
-  = lens _paipAccessToken
-      (\ s a -> s{_paipAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paipUploadType :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipUploadType
-  = lens _paipUploadType
-      (\ s a -> s{_paipUploadType = a})
-
--- | Multipart request metadata.
-paipPayload :: Lens' ProjectsAgentIntentsPatch GoogleCloudDialogflowV2Intent
-paipPayload
-  = lens _paipPayload (\ s a -> s{_paipPayload = a})
-
--- | Optional. The resource view to apply to the returned intent.
-paipIntentView :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipIntentView
-  = lens _paipIntentView
-      (\ s a -> s{_paipIntentView = a})
-
--- | The unique identifier of this intent. Required for Intents.UpdateIntent
--- and Intents.BatchUpdateIntents methods. Format:
--- \`projects\/\/agent\/intents\/\`.
-paipName :: Lens' ProjectsAgentIntentsPatch Text
-paipName = lens _paipName (\ s a -> s{_paipName = a})
-
--- | JSONP
-paipCallback :: Lens' ProjectsAgentIntentsPatch (Maybe Text)
-paipCallback
-  = lens _paipCallback (\ s a -> s{_paipCallback = a})
-
-instance GoogleRequest ProjectsAgentIntentsPatch
-         where
-        type Rs ProjectsAgentIntentsPatch =
-             GoogleCloudDialogflowV2Intent
-        type Scopes ProjectsAgentIntentsPatch =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentIntentsPatch'{..}
-          = go _paipName _paipXgafv _paipLanguageCode
-              _paipUploadProtocol
-              _paipUpdateMask
-              _paipAccessToken
-              _paipUploadType
-              _paipIntentView
-              _paipCallback
-              (Just AltJSON)
-              _paipPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentIntentsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Restore.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Restore.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Restore.hs
+++ /dev/null
@@ -1,172 +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.DialogFlow.Projects.Agent.Restore
--- 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)
---
--- Restores the specified agent from a ZIP file. Replaces the current agent
--- version with a new one. All the intents and entity types in the older
--- version are deleted. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.restore@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Restore
-    (
-    -- * REST Resource
-      ProjectsAgentRestoreResource
-
-    -- * Creating a Request
-    , projectsAgentRestore
-    , ProjectsAgentRestore
-
-    -- * Request Lenses
-    , parParent
-    , parXgafv
-    , parUploadProtocol
-    , parAccessToken
-    , parUploadType
-    , parPayload
-    , parCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.restore@ method which the
--- 'ProjectsAgentRestore' request conforms to.
-type ProjectsAgentRestoreResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent:restore" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2RestoreAgentRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Restores the specified agent from a ZIP file. Replaces the current agent
--- version with a new one. All the intents and entity types in the older
--- version are deleted. Operation
---
--- /See:/ 'projectsAgentRestore' smart constructor.
-data ProjectsAgentRestore =
-  ProjectsAgentRestore'
-    { _parParent         :: !Text
-    , _parXgafv          :: !(Maybe Xgafv)
-    , _parUploadProtocol :: !(Maybe Text)
-    , _parAccessToken    :: !(Maybe Text)
-    , _parUploadType     :: !(Maybe Text)
-    , _parPayload        :: !GoogleCloudDialogflowV2RestoreAgentRequest
-    , _parCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentRestore' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'parParent'
---
--- * 'parXgafv'
---
--- * 'parUploadProtocol'
---
--- * 'parAccessToken'
---
--- * 'parUploadType'
---
--- * 'parPayload'
---
--- * 'parCallback'
-projectsAgentRestore
-    :: Text -- ^ 'parParent'
-    -> GoogleCloudDialogflowV2RestoreAgentRequest -- ^ 'parPayload'
-    -> ProjectsAgentRestore
-projectsAgentRestore pParParent_ pParPayload_ =
-  ProjectsAgentRestore'
-    { _parParent = pParParent_
-    , _parXgafv = Nothing
-    , _parUploadProtocol = Nothing
-    , _parAccessToken = Nothing
-    , _parUploadType = Nothing
-    , _parPayload = pParPayload_
-    , _parCallback = Nothing
-    }
-
-
--- | Required. The project that the agent to restore is associated with.
--- Format: \`projects\/\`.
-parParent :: Lens' ProjectsAgentRestore Text
-parParent
-  = lens _parParent (\ s a -> s{_parParent = a})
-
--- | V1 error format.
-parXgafv :: Lens' ProjectsAgentRestore (Maybe Xgafv)
-parXgafv = lens _parXgafv (\ s a -> s{_parXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-parUploadProtocol :: Lens' ProjectsAgentRestore (Maybe Text)
-parUploadProtocol
-  = lens _parUploadProtocol
-      (\ s a -> s{_parUploadProtocol = a})
-
--- | OAuth access token.
-parAccessToken :: Lens' ProjectsAgentRestore (Maybe Text)
-parAccessToken
-  = lens _parAccessToken
-      (\ s a -> s{_parAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-parUploadType :: Lens' ProjectsAgentRestore (Maybe Text)
-parUploadType
-  = lens _parUploadType
-      (\ s a -> s{_parUploadType = a})
-
--- | Multipart request metadata.
-parPayload :: Lens' ProjectsAgentRestore GoogleCloudDialogflowV2RestoreAgentRequest
-parPayload
-  = lens _parPayload (\ s a -> s{_parPayload = a})
-
--- | JSONP
-parCallback :: Lens' ProjectsAgentRestore (Maybe Text)
-parCallback
-  = lens _parCallback (\ s a -> s{_parCallback = a})
-
-instance GoogleRequest ProjectsAgentRestore where
-        type Rs ProjectsAgentRestore =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentRestore =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentRestore'{..}
-          = go _parParent _parXgafv _parUploadProtocol
-              _parAccessToken
-              _parUploadType
-              _parCallback
-              (Just AltJSON)
-              _parPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentRestoreResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Search.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Search.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Search.hs
+++ /dev/null
@@ -1,189 +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.DialogFlow.Projects.Agent.Search
--- 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)
---
--- Returns the list of agents. Since there is at most one conversational
--- agent per project, this method is useful primarily for listing all
--- agents across projects the caller has access to. One can achieve that
--- with a wildcard project collection id \"-\". Refer to [List
--- Sub-Collections](https:\/\/cloud.google.com\/apis\/design\/design_patterns#list_sub-collections).
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.search@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Search
-    (
-    -- * REST Resource
-      ProjectsAgentSearchResource
-
-    -- * Creating a Request
-    , projectsAgentSearch
-    , ProjectsAgentSearch
-
-    -- * Request Lenses
-    , pasParent
-    , pasXgafv
-    , pasUploadProtocol
-    , pasAccessToken
-    , pasUploadType
-    , pasPageToken
-    , pasPageSize
-    , pasCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.search@ method which the
--- 'ProjectsAgentSearch' request conforms to.
-type ProjectsAgentSearchResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent:search" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "pageToken" Text :>
-                     QueryParam "pageSize" (Textual Int32) :>
-                       QueryParam "callback" Text :>
-                         QueryParam "alt" AltJSON :>
-                           Get '[JSON]
-                             GoogleCloudDialogflowV2SearchAgentsResponse
-
--- | Returns the list of agents. Since there is at most one conversational
--- agent per project, this method is useful primarily for listing all
--- agents across projects the caller has access to. One can achieve that
--- with a wildcard project collection id \"-\". Refer to [List
--- Sub-Collections](https:\/\/cloud.google.com\/apis\/design\/design_patterns#list_sub-collections).
---
--- /See:/ 'projectsAgentSearch' smart constructor.
-data ProjectsAgentSearch =
-  ProjectsAgentSearch'
-    { _pasParent         :: !Text
-    , _pasXgafv          :: !(Maybe Xgafv)
-    , _pasUploadProtocol :: !(Maybe Text)
-    , _pasAccessToken    :: !(Maybe Text)
-    , _pasUploadType     :: !(Maybe Text)
-    , _pasPageToken      :: !(Maybe Text)
-    , _pasPageSize       :: !(Maybe (Textual Int32))
-    , _pasCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSearch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pasParent'
---
--- * 'pasXgafv'
---
--- * 'pasUploadProtocol'
---
--- * 'pasAccessToken'
---
--- * 'pasUploadType'
---
--- * 'pasPageToken'
---
--- * 'pasPageSize'
---
--- * 'pasCallback'
-projectsAgentSearch
-    :: Text -- ^ 'pasParent'
-    -> ProjectsAgentSearch
-projectsAgentSearch pPasParent_ =
-  ProjectsAgentSearch'
-    { _pasParent = pPasParent_
-    , _pasXgafv = Nothing
-    , _pasUploadProtocol = Nothing
-    , _pasAccessToken = Nothing
-    , _pasUploadType = Nothing
-    , _pasPageToken = Nothing
-    , _pasPageSize = Nothing
-    , _pasCallback = Nothing
-    }
-
-
--- | Required. The project to list agents from. Format: \`projects\/\`.
-pasParent :: Lens' ProjectsAgentSearch Text
-pasParent
-  = lens _pasParent (\ s a -> s{_pasParent = a})
-
--- | V1 error format.
-pasXgafv :: Lens' ProjectsAgentSearch (Maybe Xgafv)
-pasXgafv = lens _pasXgafv (\ s a -> s{_pasXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pasUploadProtocol :: Lens' ProjectsAgentSearch (Maybe Text)
-pasUploadProtocol
-  = lens _pasUploadProtocol
-      (\ s a -> s{_pasUploadProtocol = a})
-
--- | OAuth access token.
-pasAccessToken :: Lens' ProjectsAgentSearch (Maybe Text)
-pasAccessToken
-  = lens _pasAccessToken
-      (\ s a -> s{_pasAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pasUploadType :: Lens' ProjectsAgentSearch (Maybe Text)
-pasUploadType
-  = lens _pasUploadType
-      (\ s a -> s{_pasUploadType = a})
-
--- | Optional. The next_page_token value returned from a previous list
--- request.
-pasPageToken :: Lens' ProjectsAgentSearch (Maybe Text)
-pasPageToken
-  = lens _pasPageToken (\ s a -> s{_pasPageToken = a})
-
--- | Optional. The maximum number of items to return in a single page. By
--- default 100 and at most 1000.
-pasPageSize :: Lens' ProjectsAgentSearch (Maybe Int32)
-pasPageSize
-  = lens _pasPageSize (\ s a -> s{_pasPageSize = a}) .
-      mapping _Coerce
-
--- | JSONP
-pasCallback :: Lens' ProjectsAgentSearch (Maybe Text)
-pasCallback
-  = lens _pasCallback (\ s a -> s{_pasCallback = a})
-
-instance GoogleRequest ProjectsAgentSearch where
-        type Rs ProjectsAgentSearch =
-             GoogleCloudDialogflowV2SearchAgentsResponse
-        type Scopes ProjectsAgentSearch =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentSearch'{..}
-          = go _pasParent _pasXgafv _pasUploadProtocol
-              _pasAccessToken
-              _pasUploadType
-              _pasPageToken
-              _pasPageSize
-              _pasCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentSearchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Create.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Create.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Create.hs
+++ /dev/null
@@ -1,175 +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.DialogFlow.Projects.Agent.Sessions.Contexts.Create
--- 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 context. If the specified context already exists, overrides
--- the context.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.contexts.create@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Create
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsContextsCreateResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsContextsCreate
-    , ProjectsAgentSessionsContextsCreate
-
-    -- * Request Lenses
-    , pasccParent
-    , pasccXgafv
-    , pasccUploadProtocol
-    , pasccAccessToken
-    , pasccUploadType
-    , pasccPayload
-    , pasccCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.contexts.create@ method which the
--- 'ProjectsAgentSessionsContextsCreate' request conforms to.
-type ProjectsAgentSessionsContextsCreateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "contexts" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON] GoogleCloudDialogflowV2Context :>
-                         Post '[JSON] GoogleCloudDialogflowV2Context
-
--- | Creates a context. If the specified context already exists, overrides
--- the context.
---
--- /See:/ 'projectsAgentSessionsContextsCreate' smart constructor.
-data ProjectsAgentSessionsContextsCreate =
-  ProjectsAgentSessionsContextsCreate'
-    { _pasccParent         :: !Text
-    , _pasccXgafv          :: !(Maybe Xgafv)
-    , _pasccUploadProtocol :: !(Maybe Text)
-    , _pasccAccessToken    :: !(Maybe Text)
-    , _pasccUploadType     :: !(Maybe Text)
-    , _pasccPayload        :: !GoogleCloudDialogflowV2Context
-    , _pasccCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsContextsCreate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pasccParent'
---
--- * 'pasccXgafv'
---
--- * 'pasccUploadProtocol'
---
--- * 'pasccAccessToken'
---
--- * 'pasccUploadType'
---
--- * 'pasccPayload'
---
--- * 'pasccCallback'
-projectsAgentSessionsContextsCreate
-    :: Text -- ^ 'pasccParent'
-    -> GoogleCloudDialogflowV2Context -- ^ 'pasccPayload'
-    -> ProjectsAgentSessionsContextsCreate
-projectsAgentSessionsContextsCreate pPasccParent_ pPasccPayload_ =
-  ProjectsAgentSessionsContextsCreate'
-    { _pasccParent = pPasccParent_
-    , _pasccXgafv = Nothing
-    , _pasccUploadProtocol = Nothing
-    , _pasccAccessToken = Nothing
-    , _pasccUploadType = Nothing
-    , _pasccPayload = pPasccPayload_
-    , _pasccCallback = Nothing
-    }
-
-
--- | Required. The session to create a context for. Format:
--- \`projects\/\/agent\/sessions\/\`.
-pasccParent :: Lens' ProjectsAgentSessionsContextsCreate Text
-pasccParent
-  = lens _pasccParent (\ s a -> s{_pasccParent = a})
-
--- | V1 error format.
-pasccXgafv :: Lens' ProjectsAgentSessionsContextsCreate (Maybe Xgafv)
-pasccXgafv
-  = lens _pasccXgafv (\ s a -> s{_pasccXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pasccUploadProtocol :: Lens' ProjectsAgentSessionsContextsCreate (Maybe Text)
-pasccUploadProtocol
-  = lens _pasccUploadProtocol
-      (\ s a -> s{_pasccUploadProtocol = a})
-
--- | OAuth access token.
-pasccAccessToken :: Lens' ProjectsAgentSessionsContextsCreate (Maybe Text)
-pasccAccessToken
-  = lens _pasccAccessToken
-      (\ s a -> s{_pasccAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pasccUploadType :: Lens' ProjectsAgentSessionsContextsCreate (Maybe Text)
-pasccUploadType
-  = lens _pasccUploadType
-      (\ s a -> s{_pasccUploadType = a})
-
--- | Multipart request metadata.
-pasccPayload :: Lens' ProjectsAgentSessionsContextsCreate GoogleCloudDialogflowV2Context
-pasccPayload
-  = lens _pasccPayload (\ s a -> s{_pasccPayload = a})
-
--- | JSONP
-pasccCallback :: Lens' ProjectsAgentSessionsContextsCreate (Maybe Text)
-pasccCallback
-  = lens _pasccCallback
-      (\ s a -> s{_pasccCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsContextsCreate
-         where
-        type Rs ProjectsAgentSessionsContextsCreate =
-             GoogleCloudDialogflowV2Context
-        type Scopes ProjectsAgentSessionsContextsCreate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsContextsCreate'{..}
-          = go _pasccParent _pasccXgafv _pasccUploadProtocol
-              _pasccAccessToken
-              _pasccUploadType
-              _pasccCallback
-              (Just AltJSON)
-              _pasccPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsContextsCreateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Delete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Delete.hs
+++ /dev/null
@@ -1,159 +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.DialogFlow.Projects.Agent.Sessions.Contexts.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)
---
--- Deletes the specified context.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.contexts.delete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Delete
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsContextsDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsContextsDelete
-    , ProjectsAgentSessionsContextsDelete
-
-    -- * Request Lenses
-    , pascdXgafv
-    , pascdUploadProtocol
-    , pascdAccessToken
-    , pascdUploadType
-    , pascdName
-    , pascdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.contexts.delete@ method which the
--- 'ProjectsAgentSessionsContextsDelete' request conforms to.
-type ProjectsAgentSessionsContextsDeleteResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Delete '[JSON] GoogleProtobufEmpty
-
--- | Deletes the specified context.
---
--- /See:/ 'projectsAgentSessionsContextsDelete' smart constructor.
-data ProjectsAgentSessionsContextsDelete =
-  ProjectsAgentSessionsContextsDelete'
-    { _pascdXgafv          :: !(Maybe Xgafv)
-    , _pascdUploadProtocol :: !(Maybe Text)
-    , _pascdAccessToken    :: !(Maybe Text)
-    , _pascdUploadType     :: !(Maybe Text)
-    , _pascdName           :: !Text
-    , _pascdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsContextsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pascdXgafv'
---
--- * 'pascdUploadProtocol'
---
--- * 'pascdAccessToken'
---
--- * 'pascdUploadType'
---
--- * 'pascdName'
---
--- * 'pascdCallback'
-projectsAgentSessionsContextsDelete
-    :: Text -- ^ 'pascdName'
-    -> ProjectsAgentSessionsContextsDelete
-projectsAgentSessionsContextsDelete pPascdName_ =
-  ProjectsAgentSessionsContextsDelete'
-    { _pascdXgafv = Nothing
-    , _pascdUploadProtocol = Nothing
-    , _pascdAccessToken = Nothing
-    , _pascdUploadType = Nothing
-    , _pascdName = pPascdName_
-    , _pascdCallback = Nothing
-    }
-
-
--- | V1 error format.
-pascdXgafv :: Lens' ProjectsAgentSessionsContextsDelete (Maybe Xgafv)
-pascdXgafv
-  = lens _pascdXgafv (\ s a -> s{_pascdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pascdUploadProtocol :: Lens' ProjectsAgentSessionsContextsDelete (Maybe Text)
-pascdUploadProtocol
-  = lens _pascdUploadProtocol
-      (\ s a -> s{_pascdUploadProtocol = a})
-
--- | OAuth access token.
-pascdAccessToken :: Lens' ProjectsAgentSessionsContextsDelete (Maybe Text)
-pascdAccessToken
-  = lens _pascdAccessToken
-      (\ s a -> s{_pascdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pascdUploadType :: Lens' ProjectsAgentSessionsContextsDelete (Maybe Text)
-pascdUploadType
-  = lens _pascdUploadType
-      (\ s a -> s{_pascdUploadType = a})
-
--- | Required. The name of the context to delete. Format:
--- \`projects\/\/agent\/sessions\/\/contexts\/\`.
-pascdName :: Lens' ProjectsAgentSessionsContextsDelete Text
-pascdName
-  = lens _pascdName (\ s a -> s{_pascdName = a})
-
--- | JSONP
-pascdCallback :: Lens' ProjectsAgentSessionsContextsDelete (Maybe Text)
-pascdCallback
-  = lens _pascdCallback
-      (\ s a -> s{_pascdCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsContextsDelete
-         where
-        type Rs ProjectsAgentSessionsContextsDelete =
-             GoogleProtobufEmpty
-        type Scopes ProjectsAgentSessionsContextsDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsContextsDelete'{..}
-          = go _pascdName _pascdXgafv _pascdUploadProtocol
-              _pascdAccessToken
-              _pascdUploadType
-              _pascdCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsContextsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Get.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Get.hs
+++ /dev/null
@@ -1,158 +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.DialogFlow.Projects.Agent.Sessions.Contexts.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 the specified context.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.contexts.get@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Get
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsContextsGetResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsContextsGet
-    , ProjectsAgentSessionsContextsGet
-
-    -- * Request Lenses
-    , pascgXgafv
-    , pascgUploadProtocol
-    , pascgAccessToken
-    , pascgUploadType
-    , pascgName
-    , pascgCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.contexts.get@ method which the
--- 'ProjectsAgentSessionsContextsGet' request conforms to.
-type ProjectsAgentSessionsContextsGetResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Get '[JSON] GoogleCloudDialogflowV2Context
-
--- | Retrieves the specified context.
---
--- /See:/ 'projectsAgentSessionsContextsGet' smart constructor.
-data ProjectsAgentSessionsContextsGet =
-  ProjectsAgentSessionsContextsGet'
-    { _pascgXgafv          :: !(Maybe Xgafv)
-    , _pascgUploadProtocol :: !(Maybe Text)
-    , _pascgAccessToken    :: !(Maybe Text)
-    , _pascgUploadType     :: !(Maybe Text)
-    , _pascgName           :: !Text
-    , _pascgCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsContextsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pascgXgafv'
---
--- * 'pascgUploadProtocol'
---
--- * 'pascgAccessToken'
---
--- * 'pascgUploadType'
---
--- * 'pascgName'
---
--- * 'pascgCallback'
-projectsAgentSessionsContextsGet
-    :: Text -- ^ 'pascgName'
-    -> ProjectsAgentSessionsContextsGet
-projectsAgentSessionsContextsGet pPascgName_ =
-  ProjectsAgentSessionsContextsGet'
-    { _pascgXgafv = Nothing
-    , _pascgUploadProtocol = Nothing
-    , _pascgAccessToken = Nothing
-    , _pascgUploadType = Nothing
-    , _pascgName = pPascgName_
-    , _pascgCallback = Nothing
-    }
-
-
--- | V1 error format.
-pascgXgafv :: Lens' ProjectsAgentSessionsContextsGet (Maybe Xgafv)
-pascgXgafv
-  = lens _pascgXgafv (\ s a -> s{_pascgXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pascgUploadProtocol :: Lens' ProjectsAgentSessionsContextsGet (Maybe Text)
-pascgUploadProtocol
-  = lens _pascgUploadProtocol
-      (\ s a -> s{_pascgUploadProtocol = a})
-
--- | OAuth access token.
-pascgAccessToken :: Lens' ProjectsAgentSessionsContextsGet (Maybe Text)
-pascgAccessToken
-  = lens _pascgAccessToken
-      (\ s a -> s{_pascgAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pascgUploadType :: Lens' ProjectsAgentSessionsContextsGet (Maybe Text)
-pascgUploadType
-  = lens _pascgUploadType
-      (\ s a -> s{_pascgUploadType = a})
-
--- | Required. The name of the context. Format:
--- \`projects\/\/agent\/sessions\/\/contexts\/\`.
-pascgName :: Lens' ProjectsAgentSessionsContextsGet Text
-pascgName
-  = lens _pascgName (\ s a -> s{_pascgName = a})
-
--- | JSONP
-pascgCallback :: Lens' ProjectsAgentSessionsContextsGet (Maybe Text)
-pascgCallback
-  = lens _pascgCallback
-      (\ s a -> s{_pascgCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsContextsGet
-         where
-        type Rs ProjectsAgentSessionsContextsGet =
-             GoogleCloudDialogflowV2Context
-        type Scopes ProjectsAgentSessionsContextsGet =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentSessionsContextsGet'{..}
-          = go _pascgName _pascgXgafv _pascgUploadProtocol
-              _pascgAccessToken
-              _pascgUploadType
-              _pascgCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsContextsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/List.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/List.hs
+++ /dev/null
@@ -1,189 +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.DialogFlow.Projects.Agent.Sessions.Contexts.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)
---
--- Returns the list of all contexts in the specified session.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.contexts.list@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.List
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsContextsListResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsContextsList
-    , ProjectsAgentSessionsContextsList
-
-    -- * Request Lenses
-    , pasclParent
-    , pasclXgafv
-    , pasclUploadProtocol
-    , pasclAccessToken
-    , pasclUploadType
-    , pasclPageToken
-    , pasclPageSize
-    , pasclCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.contexts.list@ method which the
--- 'ProjectsAgentSessionsContextsList' request conforms to.
-type ProjectsAgentSessionsContextsListResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "contexts" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "pageToken" Text :>
-                     QueryParam "pageSize" (Textual Int32) :>
-                       QueryParam "callback" Text :>
-                         QueryParam "alt" AltJSON :>
-                           Get '[JSON]
-                             GoogleCloudDialogflowV2ListContextsResponse
-
--- | Returns the list of all contexts in the specified session.
---
--- /See:/ 'projectsAgentSessionsContextsList' smart constructor.
-data ProjectsAgentSessionsContextsList =
-  ProjectsAgentSessionsContextsList'
-    { _pasclParent         :: !Text
-    , _pasclXgafv          :: !(Maybe Xgafv)
-    , _pasclUploadProtocol :: !(Maybe Text)
-    , _pasclAccessToken    :: !(Maybe Text)
-    , _pasclUploadType     :: !(Maybe Text)
-    , _pasclPageToken      :: !(Maybe Text)
-    , _pasclPageSize       :: !(Maybe (Textual Int32))
-    , _pasclCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsContextsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pasclParent'
---
--- * 'pasclXgafv'
---
--- * 'pasclUploadProtocol'
---
--- * 'pasclAccessToken'
---
--- * 'pasclUploadType'
---
--- * 'pasclPageToken'
---
--- * 'pasclPageSize'
---
--- * 'pasclCallback'
-projectsAgentSessionsContextsList
-    :: Text -- ^ 'pasclParent'
-    -> ProjectsAgentSessionsContextsList
-projectsAgentSessionsContextsList pPasclParent_ =
-  ProjectsAgentSessionsContextsList'
-    { _pasclParent = pPasclParent_
-    , _pasclXgafv = Nothing
-    , _pasclUploadProtocol = Nothing
-    , _pasclAccessToken = Nothing
-    , _pasclUploadType = Nothing
-    , _pasclPageToken = Nothing
-    , _pasclPageSize = Nothing
-    , _pasclCallback = Nothing
-    }
-
-
--- | Required. The session to list all contexts from. Format:
--- \`projects\/\/agent\/sessions\/\`.
-pasclParent :: Lens' ProjectsAgentSessionsContextsList Text
-pasclParent
-  = lens _pasclParent (\ s a -> s{_pasclParent = a})
-
--- | V1 error format.
-pasclXgafv :: Lens' ProjectsAgentSessionsContextsList (Maybe Xgafv)
-pasclXgafv
-  = lens _pasclXgafv (\ s a -> s{_pasclXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pasclUploadProtocol :: Lens' ProjectsAgentSessionsContextsList (Maybe Text)
-pasclUploadProtocol
-  = lens _pasclUploadProtocol
-      (\ s a -> s{_pasclUploadProtocol = a})
-
--- | OAuth access token.
-pasclAccessToken :: Lens' ProjectsAgentSessionsContextsList (Maybe Text)
-pasclAccessToken
-  = lens _pasclAccessToken
-      (\ s a -> s{_pasclAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pasclUploadType :: Lens' ProjectsAgentSessionsContextsList (Maybe Text)
-pasclUploadType
-  = lens _pasclUploadType
-      (\ s a -> s{_pasclUploadType = a})
-
--- | Optional. The next_page_token value returned from a previous list
--- request.
-pasclPageToken :: Lens' ProjectsAgentSessionsContextsList (Maybe Text)
-pasclPageToken
-  = lens _pasclPageToken
-      (\ s a -> s{_pasclPageToken = a})
-
--- | Optional. The maximum number of items to return in a single page. By
--- default 100 and at most 1000.
-pasclPageSize :: Lens' ProjectsAgentSessionsContextsList (Maybe Int32)
-pasclPageSize
-  = lens _pasclPageSize
-      (\ s a -> s{_pasclPageSize = a})
-      . mapping _Coerce
-
--- | JSONP
-pasclCallback :: Lens' ProjectsAgentSessionsContextsList (Maybe Text)
-pasclCallback
-  = lens _pasclCallback
-      (\ s a -> s{_pasclCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsContextsList
-         where
-        type Rs ProjectsAgentSessionsContextsList =
-             GoogleCloudDialogflowV2ListContextsResponse
-        type Scopes ProjectsAgentSessionsContextsList =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentSessionsContextsList'{..}
-          = go _pasclParent _pasclXgafv _pasclUploadProtocol
-              _pasclAccessToken
-              _pasclUploadType
-              _pasclPageToken
-              _pasclPageSize
-              _pasclCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsContextsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Patch.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/Contexts/Patch.hs
+++ /dev/null
@@ -1,186 +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.DialogFlow.Projects.Agent.Sessions.Contexts.Patch
--- 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 the specified context.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.contexts.patch@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Patch
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsContextsPatchResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsContextsPatch
-    , ProjectsAgentSessionsContextsPatch
-
-    -- * Request Lenses
-    , pascpXgafv
-    , pascpUploadProtocol
-    , pascpUpdateMask
-    , pascpAccessToken
-    , pascpUploadType
-    , pascpPayload
-    , pascpName
-    , pascpCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.contexts.patch@ method which the
--- 'ProjectsAgentSessionsContextsPatch' request conforms to.
-type ProjectsAgentSessionsContextsPatchResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "updateMask" GFieldMask :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON] GoogleCloudDialogflowV2Context :>
-                         Patch '[JSON] GoogleCloudDialogflowV2Context
-
--- | Updates the specified context.
---
--- /See:/ 'projectsAgentSessionsContextsPatch' smart constructor.
-data ProjectsAgentSessionsContextsPatch =
-  ProjectsAgentSessionsContextsPatch'
-    { _pascpXgafv          :: !(Maybe Xgafv)
-    , _pascpUploadProtocol :: !(Maybe Text)
-    , _pascpUpdateMask     :: !(Maybe GFieldMask)
-    , _pascpAccessToken    :: !(Maybe Text)
-    , _pascpUploadType     :: !(Maybe Text)
-    , _pascpPayload        :: !GoogleCloudDialogflowV2Context
-    , _pascpName           :: !Text
-    , _pascpCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsContextsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pascpXgafv'
---
--- * 'pascpUploadProtocol'
---
--- * 'pascpUpdateMask'
---
--- * 'pascpAccessToken'
---
--- * 'pascpUploadType'
---
--- * 'pascpPayload'
---
--- * 'pascpName'
---
--- * 'pascpCallback'
-projectsAgentSessionsContextsPatch
-    :: GoogleCloudDialogflowV2Context -- ^ 'pascpPayload'
-    -> Text -- ^ 'pascpName'
-    -> ProjectsAgentSessionsContextsPatch
-projectsAgentSessionsContextsPatch pPascpPayload_ pPascpName_ =
-  ProjectsAgentSessionsContextsPatch'
-    { _pascpXgafv = Nothing
-    , _pascpUploadProtocol = Nothing
-    , _pascpUpdateMask = Nothing
-    , _pascpAccessToken = Nothing
-    , _pascpUploadType = Nothing
-    , _pascpPayload = pPascpPayload_
-    , _pascpName = pPascpName_
-    , _pascpCallback = Nothing
-    }
-
-
--- | V1 error format.
-pascpXgafv :: Lens' ProjectsAgentSessionsContextsPatch (Maybe Xgafv)
-pascpXgafv
-  = lens _pascpXgafv (\ s a -> s{_pascpXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pascpUploadProtocol :: Lens' ProjectsAgentSessionsContextsPatch (Maybe Text)
-pascpUploadProtocol
-  = lens _pascpUploadProtocol
-      (\ s a -> s{_pascpUploadProtocol = a})
-
--- | Optional. The mask to control which fields get updated.
-pascpUpdateMask :: Lens' ProjectsAgentSessionsContextsPatch (Maybe GFieldMask)
-pascpUpdateMask
-  = lens _pascpUpdateMask
-      (\ s a -> s{_pascpUpdateMask = a})
-
--- | OAuth access token.
-pascpAccessToken :: Lens' ProjectsAgentSessionsContextsPatch (Maybe Text)
-pascpAccessToken
-  = lens _pascpAccessToken
-      (\ s a -> s{_pascpAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pascpUploadType :: Lens' ProjectsAgentSessionsContextsPatch (Maybe Text)
-pascpUploadType
-  = lens _pascpUploadType
-      (\ s a -> s{_pascpUploadType = a})
-
--- | Multipart request metadata.
-pascpPayload :: Lens' ProjectsAgentSessionsContextsPatch GoogleCloudDialogflowV2Context
-pascpPayload
-  = lens _pascpPayload (\ s a -> s{_pascpPayload = a})
-
--- | Required. The unique identifier of the context. Format:
--- \`projects\/\/agent\/sessions\/\/contexts\/\`. The \`Context ID\` is
--- always converted to lowercase, may only contain characters in
--- [a-zA-Z0-9_-%] and may be at most 250 bytes long.
-pascpName :: Lens' ProjectsAgentSessionsContextsPatch Text
-pascpName
-  = lens _pascpName (\ s a -> s{_pascpName = a})
-
--- | JSONP
-pascpCallback :: Lens' ProjectsAgentSessionsContextsPatch (Maybe Text)
-pascpCallback
-  = lens _pascpCallback
-      (\ s a -> s{_pascpCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsContextsPatch
-         where
-        type Rs ProjectsAgentSessionsContextsPatch =
-             GoogleCloudDialogflowV2Context
-        type Scopes ProjectsAgentSessionsContextsPatch =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentSessionsContextsPatch'{..}
-          = go _pascpName _pascpXgafv _pascpUploadProtocol
-              _pascpUpdateMask
-              _pascpAccessToken
-              _pascpUploadType
-              _pascpCallback
-              (Just AltJSON)
-              _pascpPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsContextsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DeleteContexts.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DeleteContexts.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DeleteContexts.hs
+++ /dev/null
@@ -1,160 +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.DialogFlow.Projects.Agent.Sessions.DeleteContexts
--- 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)
---
--- Deletes all active contexts in the specified session.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.deleteContexts@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DeleteContexts
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsDeleteContextsResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsDeleteContexts
-    , ProjectsAgentSessionsDeleteContexts
-
-    -- * Request Lenses
-    , pasdcParent
-    , pasdcXgafv
-    , pasdcUploadProtocol
-    , pasdcAccessToken
-    , pasdcUploadType
-    , pasdcCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.deleteContexts@ method which the
--- 'ProjectsAgentSessionsDeleteContexts' request conforms to.
-type ProjectsAgentSessionsDeleteContextsResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "contexts" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       Delete '[JSON] GoogleProtobufEmpty
-
--- | Deletes all active contexts in the specified session.
---
--- /See:/ 'projectsAgentSessionsDeleteContexts' smart constructor.
-data ProjectsAgentSessionsDeleteContexts =
-  ProjectsAgentSessionsDeleteContexts'
-    { _pasdcParent         :: !Text
-    , _pasdcXgafv          :: !(Maybe Xgafv)
-    , _pasdcUploadProtocol :: !(Maybe Text)
-    , _pasdcAccessToken    :: !(Maybe Text)
-    , _pasdcUploadType     :: !(Maybe Text)
-    , _pasdcCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsDeleteContexts' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pasdcParent'
---
--- * 'pasdcXgafv'
---
--- * 'pasdcUploadProtocol'
---
--- * 'pasdcAccessToken'
---
--- * 'pasdcUploadType'
---
--- * 'pasdcCallback'
-projectsAgentSessionsDeleteContexts
-    :: Text -- ^ 'pasdcParent'
-    -> ProjectsAgentSessionsDeleteContexts
-projectsAgentSessionsDeleteContexts pPasdcParent_ =
-  ProjectsAgentSessionsDeleteContexts'
-    { _pasdcParent = pPasdcParent_
-    , _pasdcXgafv = Nothing
-    , _pasdcUploadProtocol = Nothing
-    , _pasdcAccessToken = Nothing
-    , _pasdcUploadType = Nothing
-    , _pasdcCallback = Nothing
-    }
-
-
--- | Required. The name of the session to delete all contexts from. Format:
--- \`projects\/\/agent\/sessions\/\`.
-pasdcParent :: Lens' ProjectsAgentSessionsDeleteContexts Text
-pasdcParent
-  = lens _pasdcParent (\ s a -> s{_pasdcParent = a})
-
--- | V1 error format.
-pasdcXgafv :: Lens' ProjectsAgentSessionsDeleteContexts (Maybe Xgafv)
-pasdcXgafv
-  = lens _pasdcXgafv (\ s a -> s{_pasdcXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pasdcUploadProtocol :: Lens' ProjectsAgentSessionsDeleteContexts (Maybe Text)
-pasdcUploadProtocol
-  = lens _pasdcUploadProtocol
-      (\ s a -> s{_pasdcUploadProtocol = a})
-
--- | OAuth access token.
-pasdcAccessToken :: Lens' ProjectsAgentSessionsDeleteContexts (Maybe Text)
-pasdcAccessToken
-  = lens _pasdcAccessToken
-      (\ s a -> s{_pasdcAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pasdcUploadType :: Lens' ProjectsAgentSessionsDeleteContexts (Maybe Text)
-pasdcUploadType
-  = lens _pasdcUploadType
-      (\ s a -> s{_pasdcUploadType = a})
-
--- | JSONP
-pasdcCallback :: Lens' ProjectsAgentSessionsDeleteContexts (Maybe Text)
-pasdcCallback
-  = lens _pasdcCallback
-      (\ s a -> s{_pasdcCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsDeleteContexts
-         where
-        type Rs ProjectsAgentSessionsDeleteContexts =
-             GoogleProtobufEmpty
-        type Scopes ProjectsAgentSessionsDeleteContexts =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsDeleteContexts'{..}
-          = go _pasdcParent _pasdcXgafv _pasdcUploadProtocol
-              _pasdcAccessToken
-              _pasdcUploadType
-              _pasdcCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsDeleteContextsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DetectIntent.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DetectIntent.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/DetectIntent.hs
+++ /dev/null
@@ -1,183 +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.DialogFlow.Projects.Agent.Sessions.DetectIntent
--- 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)
---
--- Processes a natural language query and returns structured, actionable
--- data as a result. This method is not idempotent, because it may cause
--- contexts and session entity types to be updated, which in turn might
--- affect results of future queries.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.detectIntent@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DetectIntent
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsDetectIntentResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsDetectIntent
-    , ProjectsAgentSessionsDetectIntent
-
-    -- * Request Lenses
-    , pasdiXgafv
-    , pasdiUploadProtocol
-    , pasdiAccessToken
-    , pasdiUploadType
-    , pasdiPayload
-    , pasdiSession
-    , pasdiCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.detectIntent@ method which the
--- 'ProjectsAgentSessionsDetectIntent' request conforms to.
-type ProjectsAgentSessionsDetectIntentResource =
-     "v2" :>
-       CaptureMode "session" "detectIntent" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON]
-                       GoogleCloudDialogflowV2DetectIntentRequest
-                       :>
-                       Post '[JSON]
-                         GoogleCloudDialogflowV2DetectIntentResponse
-
--- | Processes a natural language query and returns structured, actionable
--- data as a result. This method is not idempotent, because it may cause
--- contexts and session entity types to be updated, which in turn might
--- affect results of future queries.
---
--- /See:/ 'projectsAgentSessionsDetectIntent' smart constructor.
-data ProjectsAgentSessionsDetectIntent =
-  ProjectsAgentSessionsDetectIntent'
-    { _pasdiXgafv          :: !(Maybe Xgafv)
-    , _pasdiUploadProtocol :: !(Maybe Text)
-    , _pasdiAccessToken    :: !(Maybe Text)
-    , _pasdiUploadType     :: !(Maybe Text)
-    , _pasdiPayload        :: !GoogleCloudDialogflowV2DetectIntentRequest
-    , _pasdiSession        :: !Text
-    , _pasdiCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsDetectIntent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pasdiXgafv'
---
--- * 'pasdiUploadProtocol'
---
--- * 'pasdiAccessToken'
---
--- * 'pasdiUploadType'
---
--- * 'pasdiPayload'
---
--- * 'pasdiSession'
---
--- * 'pasdiCallback'
-projectsAgentSessionsDetectIntent
-    :: GoogleCloudDialogflowV2DetectIntentRequest -- ^ 'pasdiPayload'
-    -> Text -- ^ 'pasdiSession'
-    -> ProjectsAgentSessionsDetectIntent
-projectsAgentSessionsDetectIntent pPasdiPayload_ pPasdiSession_ =
-  ProjectsAgentSessionsDetectIntent'
-    { _pasdiXgafv = Nothing
-    , _pasdiUploadProtocol = Nothing
-    , _pasdiAccessToken = Nothing
-    , _pasdiUploadType = Nothing
-    , _pasdiPayload = pPasdiPayload_
-    , _pasdiSession = pPasdiSession_
-    , _pasdiCallback = Nothing
-    }
-
-
--- | V1 error format.
-pasdiXgafv :: Lens' ProjectsAgentSessionsDetectIntent (Maybe Xgafv)
-pasdiXgafv
-  = lens _pasdiXgafv (\ s a -> s{_pasdiXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pasdiUploadProtocol :: Lens' ProjectsAgentSessionsDetectIntent (Maybe Text)
-pasdiUploadProtocol
-  = lens _pasdiUploadProtocol
-      (\ s a -> s{_pasdiUploadProtocol = a})
-
--- | OAuth access token.
-pasdiAccessToken :: Lens' ProjectsAgentSessionsDetectIntent (Maybe Text)
-pasdiAccessToken
-  = lens _pasdiAccessToken
-      (\ s a -> s{_pasdiAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pasdiUploadType :: Lens' ProjectsAgentSessionsDetectIntent (Maybe Text)
-pasdiUploadType
-  = lens _pasdiUploadType
-      (\ s a -> s{_pasdiUploadType = a})
-
--- | Multipart request metadata.
-pasdiPayload :: Lens' ProjectsAgentSessionsDetectIntent GoogleCloudDialogflowV2DetectIntentRequest
-pasdiPayload
-  = lens _pasdiPayload (\ s a -> s{_pasdiPayload = a})
-
--- | Required. The name of the session this query is sent to. Format:
--- \`projects\/\/agent\/sessions\/\`. It\'s up to the API caller to choose
--- an appropriate session ID. It can be a random number or some type of
--- user identifier (preferably hashed). The length of the session ID must
--- not exceed 36 bytes.
-pasdiSession :: Lens' ProjectsAgentSessionsDetectIntent Text
-pasdiSession
-  = lens _pasdiSession (\ s a -> s{_pasdiSession = a})
-
--- | JSONP
-pasdiCallback :: Lens' ProjectsAgentSessionsDetectIntent (Maybe Text)
-pasdiCallback
-  = lens _pasdiCallback
-      (\ s a -> s{_pasdiCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsDetectIntent
-         where
-        type Rs ProjectsAgentSessionsDetectIntent =
-             GoogleCloudDialogflowV2DetectIntentResponse
-        type Scopes ProjectsAgentSessionsDetectIntent =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentSessionsDetectIntent'{..}
-          = go _pasdiSession _pasdiXgafv _pasdiUploadProtocol
-              _pasdiAccessToken
-              _pasdiUploadType
-              _pasdiCallback
-              (Just AltJSON)
-              _pasdiPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsDetectIntentResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Create.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Create.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Create.hs
+++ /dev/null
@@ -1,178 +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.DialogFlow.Projects.Agent.Sessions.EntityTypes.Create
--- 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 session entity type. If the specified session entity type
--- already exists, overrides the session entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.entityTypes.create@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Create
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsEntityTypesCreateResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsEntityTypesCreate
-    , ProjectsAgentSessionsEntityTypesCreate
-
-    -- * Request Lenses
-    , paSetcParent
-    , paSetcXgafv
-    , paSetcUploadProtocol
-    , paSetcAccessToken
-    , paSetcUploadType
-    , paSetcPayload
-    , paSetcCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.entityTypes.create@ method which the
--- 'ProjectsAgentSessionsEntityTypesCreate' request conforms to.
-type ProjectsAgentSessionsEntityTypesCreateResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2SessionEntityType
-                         :>
-                         Post '[JSON] GoogleCloudDialogflowV2SessionEntityType
-
--- | Creates a session entity type. If the specified session entity type
--- already exists, overrides the session entity type.
---
--- /See:/ 'projectsAgentSessionsEntityTypesCreate' smart constructor.
-data ProjectsAgentSessionsEntityTypesCreate =
-  ProjectsAgentSessionsEntityTypesCreate'
-    { _paSetcParent         :: !Text
-    , _paSetcXgafv          :: !(Maybe Xgafv)
-    , _paSetcUploadProtocol :: !(Maybe Text)
-    , _paSetcAccessToken    :: !(Maybe Text)
-    , _paSetcUploadType     :: !(Maybe Text)
-    , _paSetcPayload        :: !GoogleCloudDialogflowV2SessionEntityType
-    , _paSetcCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsEntityTypesCreate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paSetcParent'
---
--- * 'paSetcXgafv'
---
--- * 'paSetcUploadProtocol'
---
--- * 'paSetcAccessToken'
---
--- * 'paSetcUploadType'
---
--- * 'paSetcPayload'
---
--- * 'paSetcCallback'
-projectsAgentSessionsEntityTypesCreate
-    :: Text -- ^ 'paSetcParent'
-    -> GoogleCloudDialogflowV2SessionEntityType -- ^ 'paSetcPayload'
-    -> ProjectsAgentSessionsEntityTypesCreate
-projectsAgentSessionsEntityTypesCreate pPaSetcParent_ pPaSetcPayload_ =
-  ProjectsAgentSessionsEntityTypesCreate'
-    { _paSetcParent = pPaSetcParent_
-    , _paSetcXgafv = Nothing
-    , _paSetcUploadProtocol = Nothing
-    , _paSetcAccessToken = Nothing
-    , _paSetcUploadType = Nothing
-    , _paSetcPayload = pPaSetcPayload_
-    , _paSetcCallback = Nothing
-    }
-
-
--- | Required. The session to create a session entity type for. Format:
--- \`projects\/\/agent\/sessions\/\`.
-paSetcParent :: Lens' ProjectsAgentSessionsEntityTypesCreate Text
-paSetcParent
-  = lens _paSetcParent (\ s a -> s{_paSetcParent = a})
-
--- | V1 error format.
-paSetcXgafv :: Lens' ProjectsAgentSessionsEntityTypesCreate (Maybe Xgafv)
-paSetcXgafv
-  = lens _paSetcXgafv (\ s a -> s{_paSetcXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paSetcUploadProtocol :: Lens' ProjectsAgentSessionsEntityTypesCreate (Maybe Text)
-paSetcUploadProtocol
-  = lens _paSetcUploadProtocol
-      (\ s a -> s{_paSetcUploadProtocol = a})
-
--- | OAuth access token.
-paSetcAccessToken :: Lens' ProjectsAgentSessionsEntityTypesCreate (Maybe Text)
-paSetcAccessToken
-  = lens _paSetcAccessToken
-      (\ s a -> s{_paSetcAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paSetcUploadType :: Lens' ProjectsAgentSessionsEntityTypesCreate (Maybe Text)
-paSetcUploadType
-  = lens _paSetcUploadType
-      (\ s a -> s{_paSetcUploadType = a})
-
--- | Multipart request metadata.
-paSetcPayload :: Lens' ProjectsAgentSessionsEntityTypesCreate GoogleCloudDialogflowV2SessionEntityType
-paSetcPayload
-  = lens _paSetcPayload
-      (\ s a -> s{_paSetcPayload = a})
-
--- | JSONP
-paSetcCallback :: Lens' ProjectsAgentSessionsEntityTypesCreate (Maybe Text)
-paSetcCallback
-  = lens _paSetcCallback
-      (\ s a -> s{_paSetcCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsEntityTypesCreate
-         where
-        type Rs ProjectsAgentSessionsEntityTypesCreate =
-             GoogleCloudDialogflowV2SessionEntityType
-        type Scopes ProjectsAgentSessionsEntityTypesCreate =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsEntityTypesCreate'{..}
-          = go _paSetcParent _paSetcXgafv _paSetcUploadProtocol
-              _paSetcAccessToken
-              _paSetcUploadType
-              _paSetcCallback
-              (Just AltJSON)
-              _paSetcPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsEntityTypesCreateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Delete.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Delete.hs
+++ /dev/null
@@ -1,159 +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.DialogFlow.Projects.Agent.Sessions.EntityTypes.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)
---
--- Deletes the specified session entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.entityTypes.delete@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Delete
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsEntityTypesDeleteResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsEntityTypesDelete
-    , ProjectsAgentSessionsEntityTypesDelete
-
-    -- * Request Lenses
-    , paSetdXgafv
-    , paSetdUploadProtocol
-    , paSetdAccessToken
-    , paSetdUploadType
-    , paSetdName
-    , paSetdCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.entityTypes.delete@ method which the
--- 'ProjectsAgentSessionsEntityTypesDelete' request conforms to.
-type ProjectsAgentSessionsEntityTypesDeleteResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Delete '[JSON] GoogleProtobufEmpty
-
--- | Deletes the specified session entity type.
---
--- /See:/ 'projectsAgentSessionsEntityTypesDelete' smart constructor.
-data ProjectsAgentSessionsEntityTypesDelete =
-  ProjectsAgentSessionsEntityTypesDelete'
-    { _paSetdXgafv          :: !(Maybe Xgafv)
-    , _paSetdUploadProtocol :: !(Maybe Text)
-    , _paSetdAccessToken    :: !(Maybe Text)
-    , _paSetdUploadType     :: !(Maybe Text)
-    , _paSetdName           :: !Text
-    , _paSetdCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsEntityTypesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paSetdXgafv'
---
--- * 'paSetdUploadProtocol'
---
--- * 'paSetdAccessToken'
---
--- * 'paSetdUploadType'
---
--- * 'paSetdName'
---
--- * 'paSetdCallback'
-projectsAgentSessionsEntityTypesDelete
-    :: Text -- ^ 'paSetdName'
-    -> ProjectsAgentSessionsEntityTypesDelete
-projectsAgentSessionsEntityTypesDelete pPaSetdName_ =
-  ProjectsAgentSessionsEntityTypesDelete'
-    { _paSetdXgafv = Nothing
-    , _paSetdUploadProtocol = Nothing
-    , _paSetdAccessToken = Nothing
-    , _paSetdUploadType = Nothing
-    , _paSetdName = pPaSetdName_
-    , _paSetdCallback = Nothing
-    }
-
-
--- | V1 error format.
-paSetdXgafv :: Lens' ProjectsAgentSessionsEntityTypesDelete (Maybe Xgafv)
-paSetdXgafv
-  = lens _paSetdXgafv (\ s a -> s{_paSetdXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paSetdUploadProtocol :: Lens' ProjectsAgentSessionsEntityTypesDelete (Maybe Text)
-paSetdUploadProtocol
-  = lens _paSetdUploadProtocol
-      (\ s a -> s{_paSetdUploadProtocol = a})
-
--- | OAuth access token.
-paSetdAccessToken :: Lens' ProjectsAgentSessionsEntityTypesDelete (Maybe Text)
-paSetdAccessToken
-  = lens _paSetdAccessToken
-      (\ s a -> s{_paSetdAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paSetdUploadType :: Lens' ProjectsAgentSessionsEntityTypesDelete (Maybe Text)
-paSetdUploadType
-  = lens _paSetdUploadType
-      (\ s a -> s{_paSetdUploadType = a})
-
--- | Required. The name of the entity type to delete. Format:
--- \`projects\/\/agent\/sessions\/\/entityTypes\/\`.
-paSetdName :: Lens' ProjectsAgentSessionsEntityTypesDelete Text
-paSetdName
-  = lens _paSetdName (\ s a -> s{_paSetdName = a})
-
--- | JSONP
-paSetdCallback :: Lens' ProjectsAgentSessionsEntityTypesDelete (Maybe Text)
-paSetdCallback
-  = lens _paSetdCallback
-      (\ s a -> s{_paSetdCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsEntityTypesDelete
-         where
-        type Rs ProjectsAgentSessionsEntityTypesDelete =
-             GoogleProtobufEmpty
-        type Scopes ProjectsAgentSessionsEntityTypesDelete =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsEntityTypesDelete'{..}
-          = go _paSetdName _paSetdXgafv _paSetdUploadProtocol
-              _paSetdAccessToken
-              _paSetdUploadType
-              _paSetdCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsEntityTypesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Get.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Get.hs
+++ /dev/null
@@ -1,159 +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.DialogFlow.Projects.Agent.Sessions.EntityTypes.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 the specified session entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.entityTypes.get@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Get
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsEntityTypesGetResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsEntityTypesGet
-    , ProjectsAgentSessionsEntityTypesGet
-
-    -- * Request Lenses
-    , paSetgXgafv
-    , paSetgUploadProtocol
-    , paSetgAccessToken
-    , paSetgUploadType
-    , paSetgName
-    , paSetgCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.entityTypes.get@ method which the
--- 'ProjectsAgentSessionsEntityTypesGet' request conforms to.
-type ProjectsAgentSessionsEntityTypesGetResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Get '[JSON] GoogleCloudDialogflowV2SessionEntityType
-
--- | Retrieves the specified session entity type.
---
--- /See:/ 'projectsAgentSessionsEntityTypesGet' smart constructor.
-data ProjectsAgentSessionsEntityTypesGet =
-  ProjectsAgentSessionsEntityTypesGet'
-    { _paSetgXgafv          :: !(Maybe Xgafv)
-    , _paSetgUploadProtocol :: !(Maybe Text)
-    , _paSetgAccessToken    :: !(Maybe Text)
-    , _paSetgUploadType     :: !(Maybe Text)
-    , _paSetgName           :: !Text
-    , _paSetgCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsEntityTypesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paSetgXgafv'
---
--- * 'paSetgUploadProtocol'
---
--- * 'paSetgAccessToken'
---
--- * 'paSetgUploadType'
---
--- * 'paSetgName'
---
--- * 'paSetgCallback'
-projectsAgentSessionsEntityTypesGet
-    :: Text -- ^ 'paSetgName'
-    -> ProjectsAgentSessionsEntityTypesGet
-projectsAgentSessionsEntityTypesGet pPaSetgName_ =
-  ProjectsAgentSessionsEntityTypesGet'
-    { _paSetgXgafv = Nothing
-    , _paSetgUploadProtocol = Nothing
-    , _paSetgAccessToken = Nothing
-    , _paSetgUploadType = Nothing
-    , _paSetgName = pPaSetgName_
-    , _paSetgCallback = Nothing
-    }
-
-
--- | V1 error format.
-paSetgXgafv :: Lens' ProjectsAgentSessionsEntityTypesGet (Maybe Xgafv)
-paSetgXgafv
-  = lens _paSetgXgafv (\ s a -> s{_paSetgXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paSetgUploadProtocol :: Lens' ProjectsAgentSessionsEntityTypesGet (Maybe Text)
-paSetgUploadProtocol
-  = lens _paSetgUploadProtocol
-      (\ s a -> s{_paSetgUploadProtocol = a})
-
--- | OAuth access token.
-paSetgAccessToken :: Lens' ProjectsAgentSessionsEntityTypesGet (Maybe Text)
-paSetgAccessToken
-  = lens _paSetgAccessToken
-      (\ s a -> s{_paSetgAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paSetgUploadType :: Lens' ProjectsAgentSessionsEntityTypesGet (Maybe Text)
-paSetgUploadType
-  = lens _paSetgUploadType
-      (\ s a -> s{_paSetgUploadType = a})
-
--- | Required. The name of the session entity type. Format:
--- \`projects\/\/agent\/sessions\/\/entityTypes\/\`.
-paSetgName :: Lens' ProjectsAgentSessionsEntityTypesGet Text
-paSetgName
-  = lens _paSetgName (\ s a -> s{_paSetgName = a})
-
--- | JSONP
-paSetgCallback :: Lens' ProjectsAgentSessionsEntityTypesGet (Maybe Text)
-paSetgCallback
-  = lens _paSetgCallback
-      (\ s a -> s{_paSetgCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsEntityTypesGet
-         where
-        type Rs ProjectsAgentSessionsEntityTypesGet =
-             GoogleCloudDialogflowV2SessionEntityType
-        type Scopes ProjectsAgentSessionsEntityTypesGet =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsEntityTypesGet'{..}
-          = go _paSetgName _paSetgXgafv _paSetgUploadProtocol
-              _paSetgAccessToken
-              _paSetgUploadType
-              _paSetgCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsEntityTypesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/List.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/List.hs
+++ /dev/null
@@ -1,190 +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.DialogFlow.Projects.Agent.Sessions.EntityTypes.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)
---
--- Returns the list of all session entity types in the specified session.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.entityTypes.list@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.List
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsEntityTypesListResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsEntityTypesList
-    , ProjectsAgentSessionsEntityTypesList
-
-    -- * Request Lenses
-    , paSetlParent
-    , paSetlXgafv
-    , paSetlUploadProtocol
-    , paSetlAccessToken
-    , paSetlUploadType
-    , paSetlPageToken
-    , paSetlPageSize
-    , paSetlCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.entityTypes.list@ method which the
--- 'ProjectsAgentSessionsEntityTypesList' request conforms to.
-type ProjectsAgentSessionsEntityTypesListResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "entityTypes" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "pageToken" Text :>
-                     QueryParam "pageSize" (Textual Int32) :>
-                       QueryParam "callback" Text :>
-                         QueryParam "alt" AltJSON :>
-                           Get '[JSON]
-                             GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-
--- | Returns the list of all session entity types in the specified session.
---
--- /See:/ 'projectsAgentSessionsEntityTypesList' smart constructor.
-data ProjectsAgentSessionsEntityTypesList =
-  ProjectsAgentSessionsEntityTypesList'
-    { _paSetlParent         :: !Text
-    , _paSetlXgafv          :: !(Maybe Xgafv)
-    , _paSetlUploadProtocol :: !(Maybe Text)
-    , _paSetlAccessToken    :: !(Maybe Text)
-    , _paSetlUploadType     :: !(Maybe Text)
-    , _paSetlPageToken      :: !(Maybe Text)
-    , _paSetlPageSize       :: !(Maybe (Textual Int32))
-    , _paSetlCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsEntityTypesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paSetlParent'
---
--- * 'paSetlXgafv'
---
--- * 'paSetlUploadProtocol'
---
--- * 'paSetlAccessToken'
---
--- * 'paSetlUploadType'
---
--- * 'paSetlPageToken'
---
--- * 'paSetlPageSize'
---
--- * 'paSetlCallback'
-projectsAgentSessionsEntityTypesList
-    :: Text -- ^ 'paSetlParent'
-    -> ProjectsAgentSessionsEntityTypesList
-projectsAgentSessionsEntityTypesList pPaSetlParent_ =
-  ProjectsAgentSessionsEntityTypesList'
-    { _paSetlParent = pPaSetlParent_
-    , _paSetlXgafv = Nothing
-    , _paSetlUploadProtocol = Nothing
-    , _paSetlAccessToken = Nothing
-    , _paSetlUploadType = Nothing
-    , _paSetlPageToken = Nothing
-    , _paSetlPageSize = Nothing
-    , _paSetlCallback = Nothing
-    }
-
-
--- | Required. The session to list all session entity types from. Format:
--- \`projects\/\/agent\/sessions\/\`.
-paSetlParent :: Lens' ProjectsAgentSessionsEntityTypesList Text
-paSetlParent
-  = lens _paSetlParent (\ s a -> s{_paSetlParent = a})
-
--- | V1 error format.
-paSetlXgafv :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Xgafv)
-paSetlXgafv
-  = lens _paSetlXgafv (\ s a -> s{_paSetlXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paSetlUploadProtocol :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Text)
-paSetlUploadProtocol
-  = lens _paSetlUploadProtocol
-      (\ s a -> s{_paSetlUploadProtocol = a})
-
--- | OAuth access token.
-paSetlAccessToken :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Text)
-paSetlAccessToken
-  = lens _paSetlAccessToken
-      (\ s a -> s{_paSetlAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paSetlUploadType :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Text)
-paSetlUploadType
-  = lens _paSetlUploadType
-      (\ s a -> s{_paSetlUploadType = a})
-
--- | Optional. The next_page_token value returned from a previous list
--- request.
-paSetlPageToken :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Text)
-paSetlPageToken
-  = lens _paSetlPageToken
-      (\ s a -> s{_paSetlPageToken = a})
-
--- | Optional. The maximum number of items to return in a single page. By
--- default 100 and at most 1000.
-paSetlPageSize :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Int32)
-paSetlPageSize
-  = lens _paSetlPageSize
-      (\ s a -> s{_paSetlPageSize = a})
-      . mapping _Coerce
-
--- | JSONP
-paSetlCallback :: Lens' ProjectsAgentSessionsEntityTypesList (Maybe Text)
-paSetlCallback
-  = lens _paSetlCallback
-      (\ s a -> s{_paSetlCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsEntityTypesList
-         where
-        type Rs ProjectsAgentSessionsEntityTypesList =
-             GoogleCloudDialogflowV2ListSessionEntityTypesResponse
-        type Scopes ProjectsAgentSessionsEntityTypesList =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsEntityTypesList'{..}
-          = go _paSetlParent _paSetlXgafv _paSetlUploadProtocol
-              _paSetlAccessToken
-              _paSetlUploadType
-              _paSetlPageToken
-              _paSetlPageSize
-              _paSetlCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsEntityTypesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Patch.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Sessions/EntityTypes/Patch.hs
+++ /dev/null
@@ -1,191 +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.DialogFlow.Projects.Agent.Sessions.EntityTypes.Patch
--- 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 the specified session entity type.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.sessions.entityTypes.patch@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Patch
-    (
-    -- * REST Resource
-      ProjectsAgentSessionsEntityTypesPatchResource
-
-    -- * Creating a Request
-    , projectsAgentSessionsEntityTypesPatch
-    , ProjectsAgentSessionsEntityTypesPatch
-
-    -- * Request Lenses
-    , paSetpXgafv
-    , paSetpUploadProtocol
-    , paSetpUpdateMask
-    , paSetpAccessToken
-    , paSetpUploadType
-    , paSetpPayload
-    , paSetpName
-    , paSetpCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.sessions.entityTypes.patch@ method which the
--- 'ProjectsAgentSessionsEntityTypesPatch' request conforms to.
-type ProjectsAgentSessionsEntityTypesPatchResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "updateMask" GFieldMask :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2SessionEntityType
-                         :>
-                         Patch '[JSON]
-                           GoogleCloudDialogflowV2SessionEntityType
-
--- | Updates the specified session entity type.
---
--- /See:/ 'projectsAgentSessionsEntityTypesPatch' smart constructor.
-data ProjectsAgentSessionsEntityTypesPatch =
-  ProjectsAgentSessionsEntityTypesPatch'
-    { _paSetpXgafv          :: !(Maybe Xgafv)
-    , _paSetpUploadProtocol :: !(Maybe Text)
-    , _paSetpUpdateMask     :: !(Maybe GFieldMask)
-    , _paSetpAccessToken    :: !(Maybe Text)
-    , _paSetpUploadType     :: !(Maybe Text)
-    , _paSetpPayload        :: !GoogleCloudDialogflowV2SessionEntityType
-    , _paSetpName           :: !Text
-    , _paSetpCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentSessionsEntityTypesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paSetpXgafv'
---
--- * 'paSetpUploadProtocol'
---
--- * 'paSetpUpdateMask'
---
--- * 'paSetpAccessToken'
---
--- * 'paSetpUploadType'
---
--- * 'paSetpPayload'
---
--- * 'paSetpName'
---
--- * 'paSetpCallback'
-projectsAgentSessionsEntityTypesPatch
-    :: GoogleCloudDialogflowV2SessionEntityType -- ^ 'paSetpPayload'
-    -> Text -- ^ 'paSetpName'
-    -> ProjectsAgentSessionsEntityTypesPatch
-projectsAgentSessionsEntityTypesPatch pPaSetpPayload_ pPaSetpName_ =
-  ProjectsAgentSessionsEntityTypesPatch'
-    { _paSetpXgafv = Nothing
-    , _paSetpUploadProtocol = Nothing
-    , _paSetpUpdateMask = Nothing
-    , _paSetpAccessToken = Nothing
-    , _paSetpUploadType = Nothing
-    , _paSetpPayload = pPaSetpPayload_
-    , _paSetpName = pPaSetpName_
-    , _paSetpCallback = Nothing
-    }
-
-
--- | V1 error format.
-paSetpXgafv :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe Xgafv)
-paSetpXgafv
-  = lens _paSetpXgafv (\ s a -> s{_paSetpXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-paSetpUploadProtocol :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe Text)
-paSetpUploadProtocol
-  = lens _paSetpUploadProtocol
-      (\ s a -> s{_paSetpUploadProtocol = a})
-
--- | Optional. The mask to control which fields get updated.
-paSetpUpdateMask :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe GFieldMask)
-paSetpUpdateMask
-  = lens _paSetpUpdateMask
-      (\ s a -> s{_paSetpUpdateMask = a})
-
--- | OAuth access token.
-paSetpAccessToken :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe Text)
-paSetpAccessToken
-  = lens _paSetpAccessToken
-      (\ s a -> s{_paSetpAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-paSetpUploadType :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe Text)
-paSetpUploadType
-  = lens _paSetpUploadType
-      (\ s a -> s{_paSetpUploadType = a})
-
--- | Multipart request metadata.
-paSetpPayload :: Lens' ProjectsAgentSessionsEntityTypesPatch GoogleCloudDialogflowV2SessionEntityType
-paSetpPayload
-  = lens _paSetpPayload
-      (\ s a -> s{_paSetpPayload = a})
-
--- | Required. The unique identifier of this session entity type. Format:
--- \`projects\/\/agent\/sessions\/\/entityTypes\/\`. \`\` must be the
--- display name of an existing entity type in the same agent that will be
--- overridden or supplemented.
-paSetpName :: Lens' ProjectsAgentSessionsEntityTypesPatch Text
-paSetpName
-  = lens _paSetpName (\ s a -> s{_paSetpName = a})
-
--- | JSONP
-paSetpCallback :: Lens' ProjectsAgentSessionsEntityTypesPatch (Maybe Text)
-paSetpCallback
-  = lens _paSetpCallback
-      (\ s a -> s{_paSetpCallback = a})
-
-instance GoogleRequest
-           ProjectsAgentSessionsEntityTypesPatch
-         where
-        type Rs ProjectsAgentSessionsEntityTypesPatch =
-             GoogleCloudDialogflowV2SessionEntityType
-        type Scopes ProjectsAgentSessionsEntityTypesPatch =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient
-          ProjectsAgentSessionsEntityTypesPatch'{..}
-          = go _paSetpName _paSetpXgafv _paSetpUploadProtocol
-              _paSetpUpdateMask
-              _paSetpAccessToken
-              _paSetpUploadType
-              _paSetpCallback
-              (Just AltJSON)
-              _paSetpPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy ProjectsAgentSessionsEntityTypesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Train.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Train.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Agent/Train.hs
+++ /dev/null
@@ -1,168 +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.DialogFlow.Projects.Agent.Train
--- 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)
---
--- Trains the specified agent. Operation
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.agent.train@.
-module Network.Google.Resource.DialogFlow.Projects.Agent.Train
-    (
-    -- * REST Resource
-      ProjectsAgentTrainResource
-
-    -- * Creating a Request
-    , projectsAgentTrain
-    , ProjectsAgentTrain
-
-    -- * Request Lenses
-    , patParent
-    , patXgafv
-    , patUploadProtocol
-    , patAccessToken
-    , patUploadType
-    , patPayload
-    , patCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.agent.train@ method which the
--- 'ProjectsAgentTrain' request conforms to.
-type ProjectsAgentTrainResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent:train" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON]
-                         GoogleCloudDialogflowV2TrainAgentRequest
-                         :> Post '[JSON] GoogleLongrunningOperation
-
--- | Trains the specified agent. Operation
---
--- /See:/ 'projectsAgentTrain' smart constructor.
-data ProjectsAgentTrain =
-  ProjectsAgentTrain'
-    { _patParent         :: !Text
-    , _patXgafv          :: !(Maybe Xgafv)
-    , _patUploadProtocol :: !(Maybe Text)
-    , _patAccessToken    :: !(Maybe Text)
-    , _patUploadType     :: !(Maybe Text)
-    , _patPayload        :: !GoogleCloudDialogflowV2TrainAgentRequest
-    , _patCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsAgentTrain' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'patParent'
---
--- * 'patXgafv'
---
--- * 'patUploadProtocol'
---
--- * 'patAccessToken'
---
--- * 'patUploadType'
---
--- * 'patPayload'
---
--- * 'patCallback'
-projectsAgentTrain
-    :: Text -- ^ 'patParent'
-    -> GoogleCloudDialogflowV2TrainAgentRequest -- ^ 'patPayload'
-    -> ProjectsAgentTrain
-projectsAgentTrain pPatParent_ pPatPayload_ =
-  ProjectsAgentTrain'
-    { _patParent = pPatParent_
-    , _patXgafv = Nothing
-    , _patUploadProtocol = Nothing
-    , _patAccessToken = Nothing
-    , _patUploadType = Nothing
-    , _patPayload = pPatPayload_
-    , _patCallback = Nothing
-    }
-
-
--- | Required. The project that the agent to train is associated with.
--- Format: \`projects\/\`.
-patParent :: Lens' ProjectsAgentTrain Text
-patParent
-  = lens _patParent (\ s a -> s{_patParent = a})
-
--- | V1 error format.
-patXgafv :: Lens' ProjectsAgentTrain (Maybe Xgafv)
-patXgafv = lens _patXgafv (\ s a -> s{_patXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-patUploadProtocol :: Lens' ProjectsAgentTrain (Maybe Text)
-patUploadProtocol
-  = lens _patUploadProtocol
-      (\ s a -> s{_patUploadProtocol = a})
-
--- | OAuth access token.
-patAccessToken :: Lens' ProjectsAgentTrain (Maybe Text)
-patAccessToken
-  = lens _patAccessToken
-      (\ s a -> s{_patAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-patUploadType :: Lens' ProjectsAgentTrain (Maybe Text)
-patUploadType
-  = lens _patUploadType
-      (\ s a -> s{_patUploadType = a})
-
--- | Multipart request metadata.
-patPayload :: Lens' ProjectsAgentTrain GoogleCloudDialogflowV2TrainAgentRequest
-patPayload
-  = lens _patPayload (\ s a -> s{_patPayload = a})
-
--- | JSONP
-patCallback :: Lens' ProjectsAgentTrain (Maybe Text)
-patCallback
-  = lens _patCallback (\ s a -> s{_patCallback = a})
-
-instance GoogleRequest ProjectsAgentTrain where
-        type Rs ProjectsAgentTrain =
-             GoogleLongrunningOperation
-        type Scopes ProjectsAgentTrain =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsAgentTrain'{..}
-          = go _patParent _patXgafv _patUploadProtocol
-              _patAccessToken
-              _patUploadType
-              _patCallback
-              (Just AltJSON)
-              _patPayload
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsAgentTrainResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/GetAgent.hs b/gen/Network/Google/Resource/DialogFlow/Projects/GetAgent.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/GetAgent.hs
+++ /dev/null
@@ -1,154 +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.DialogFlow.Projects.GetAgent
--- 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 the specified agent.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.getAgent@.
-module Network.Google.Resource.DialogFlow.Projects.GetAgent
-    (
-    -- * REST Resource
-      ProjectsGetAgentResource
-
-    -- * Creating a Request
-    , projectsGetAgent
-    , ProjectsGetAgent
-
-    -- * Request Lenses
-    , pgaParent
-    , pgaXgafv
-    , pgaUploadProtocol
-    , pgaAccessToken
-    , pgaUploadType
-    , pgaCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.getAgent@ method which the
--- 'ProjectsGetAgent' request conforms to.
-type ProjectsGetAgentResource =
-     "v2" :>
-       Capture "parent" Text :>
-         "agent" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       Get '[JSON] GoogleCloudDialogflowV2Agent
-
--- | Retrieves the specified agent.
---
--- /See:/ 'projectsGetAgent' smart constructor.
-data ProjectsGetAgent =
-  ProjectsGetAgent'
-    { _pgaParent         :: !Text
-    , _pgaXgafv          :: !(Maybe Xgafv)
-    , _pgaUploadProtocol :: !(Maybe Text)
-    , _pgaAccessToken    :: !(Maybe Text)
-    , _pgaUploadType     :: !(Maybe Text)
-    , _pgaCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsGetAgent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgaParent'
---
--- * 'pgaXgafv'
---
--- * 'pgaUploadProtocol'
---
--- * 'pgaAccessToken'
---
--- * 'pgaUploadType'
---
--- * 'pgaCallback'
-projectsGetAgent
-    :: Text -- ^ 'pgaParent'
-    -> ProjectsGetAgent
-projectsGetAgent pPgaParent_ =
-  ProjectsGetAgent'
-    { _pgaParent = pPgaParent_
-    , _pgaXgafv = Nothing
-    , _pgaUploadProtocol = Nothing
-    , _pgaAccessToken = Nothing
-    , _pgaUploadType = Nothing
-    , _pgaCallback = Nothing
-    }
-
-
--- | Required. The project that the agent to fetch is associated with.
--- Format: \`projects\/\`.
-pgaParent :: Lens' ProjectsGetAgent Text
-pgaParent
-  = lens _pgaParent (\ s a -> s{_pgaParent = a})
-
--- | V1 error format.
-pgaXgafv :: Lens' ProjectsGetAgent (Maybe Xgafv)
-pgaXgafv = lens _pgaXgafv (\ s a -> s{_pgaXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pgaUploadProtocol :: Lens' ProjectsGetAgent (Maybe Text)
-pgaUploadProtocol
-  = lens _pgaUploadProtocol
-      (\ s a -> s{_pgaUploadProtocol = a})
-
--- | OAuth access token.
-pgaAccessToken :: Lens' ProjectsGetAgent (Maybe Text)
-pgaAccessToken
-  = lens _pgaAccessToken
-      (\ s a -> s{_pgaAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pgaUploadType :: Lens' ProjectsGetAgent (Maybe Text)
-pgaUploadType
-  = lens _pgaUploadType
-      (\ s a -> s{_pgaUploadType = a})
-
--- | JSONP
-pgaCallback :: Lens' ProjectsGetAgent (Maybe Text)
-pgaCallback
-  = lens _pgaCallback (\ s a -> s{_pgaCallback = a})
-
-instance GoogleRequest ProjectsGetAgent where
-        type Rs ProjectsGetAgent =
-             GoogleCloudDialogflowV2Agent
-        type Scopes ProjectsGetAgent =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsGetAgent'{..}
-          = go _pgaParent _pgaXgafv _pgaUploadProtocol
-              _pgaAccessToken
-              _pgaUploadType
-              _pgaCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsGetAgentResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DialogFlow/Projects/Operations/Get.hs b/gen/Network/Google/Resource/DialogFlow/Projects/Operations/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DialogFlow/Projects/Operations/Get.hs
+++ /dev/null
@@ -1,155 +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.DialogFlow.Projects.Operations.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)
---
--- Gets the latest state of a long-running operation. Clients can use this
--- method to poll the operation result at intervals as recommended by the
--- API service.
---
--- /See:/ <https://cloud.google.com/dialogflow-enterprise/ Dialogflow API Reference> for @dialogflow.projects.operations.get@.
-module Network.Google.Resource.DialogFlow.Projects.Operations.Get
-    (
-    -- * REST Resource
-      ProjectsOperationsGetResource
-
-    -- * Creating a Request
-    , projectsOperationsGet
-    , ProjectsOperationsGet
-
-    -- * Request Lenses
-    , pogXgafv
-    , pogUploadProtocol
-    , pogAccessToken
-    , pogUploadType
-    , pogName
-    , pogCallback
-    ) where
-
-import           Network.Google.DialogFlow.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dialogflow.projects.operations.get@ method which the
--- 'ProjectsOperationsGet' request conforms to.
-type ProjectsOperationsGetResource =
-     "v2" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     Get '[JSON] GoogleLongrunningOperation
-
--- | Gets the latest state of a long-running operation. Clients can use this
--- method to poll the operation result at intervals as recommended by the
--- API service.
---
--- /See:/ 'projectsOperationsGet' smart constructor.
-data ProjectsOperationsGet =
-  ProjectsOperationsGet'
-    { _pogXgafv          :: !(Maybe Xgafv)
-    , _pogUploadProtocol :: !(Maybe Text)
-    , _pogAccessToken    :: !(Maybe Text)
-    , _pogUploadType     :: !(Maybe Text)
-    , _pogName           :: !Text
-    , _pogCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsOperationsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pogXgafv'
---
--- * 'pogUploadProtocol'
---
--- * 'pogAccessToken'
---
--- * 'pogUploadType'
---
--- * 'pogName'
---
--- * 'pogCallback'
-projectsOperationsGet
-    :: Text -- ^ 'pogName'
-    -> ProjectsOperationsGet
-projectsOperationsGet pPogName_ =
-  ProjectsOperationsGet'
-    { _pogXgafv = Nothing
-    , _pogUploadProtocol = Nothing
-    , _pogAccessToken = Nothing
-    , _pogUploadType = Nothing
-    , _pogName = pPogName_
-    , _pogCallback = Nothing
-    }
-
-
--- | V1 error format.
-pogXgafv :: Lens' ProjectsOperationsGet (Maybe Xgafv)
-pogXgafv = lens _pogXgafv (\ s a -> s{_pogXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pogUploadProtocol :: Lens' ProjectsOperationsGet (Maybe Text)
-pogUploadProtocol
-  = lens _pogUploadProtocol
-      (\ s a -> s{_pogUploadProtocol = a})
-
--- | OAuth access token.
-pogAccessToken :: Lens' ProjectsOperationsGet (Maybe Text)
-pogAccessToken
-  = lens _pogAccessToken
-      (\ s a -> s{_pogAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pogUploadType :: Lens' ProjectsOperationsGet (Maybe Text)
-pogUploadType
-  = lens _pogUploadType
-      (\ s a -> s{_pogUploadType = a})
-
--- | The name of the operation resource.
-pogName :: Lens' ProjectsOperationsGet Text
-pogName = lens _pogName (\ s a -> s{_pogName = a})
-
--- | JSONP
-pogCallback :: Lens' ProjectsOperationsGet (Maybe Text)
-pogCallback
-  = lens _pogCallback (\ s a -> s{_pogCallback = a})
-
-instance GoogleRequest ProjectsOperationsGet where
-        type Rs ProjectsOperationsGet =
-             GoogleLongrunningOperation
-        type Scopes ProjectsOperationsGet =
-             '["https://www.googleapis.com/auth/cloud-platform",
-               "https://www.googleapis.com/auth/dialogflow"]
-        requestClient ProjectsOperationsGet'{..}
-          = go _pogName _pogXgafv _pogUploadProtocol
-              _pogAccessToken
-              _pogUploadType
-              _pogCallback
-              (Just AltJSON)
-              dialogFlowService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsOperationsGetResource)
-                      mempty
diff --git a/gogol-dialogflow.cabal b/gogol-dialogflow.cabal
--- a/gogol-dialogflow.cabal
+++ b/gogol-dialogflow.cabal
@@ -1,82 +1,191 @@
-name:                  gogol-dialogflow
-version:               0.5.0
-synopsis:              Google Dialogflow 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-dialogflow
+version:            1.0.0
+synopsis:           Google Dialogflow 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:
-    Builds conversational interfaces (for example, chatbots, and
-    voice-powered apps and devices).
-    .
-    /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.
+  Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).
+  .
+  /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 @v3@
+  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-dialogflow
 
+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.DialogFlow
-        , Network.Google.DialogFlow.Types
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchDelete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.BatchUpdate
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Create
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Delete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchCreate
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchDelete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Entities.BatchUpdate
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Get
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.List
-        , Network.Google.Resource.DialogFlow.Projects.Agent.EntityTypes.Patch
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Export
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Import
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchDelete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.BatchUpdate
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Create
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Delete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Get
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.List
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Intents.Patch
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Restore
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Search
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Create
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Delete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Get
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.List
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.Contexts.Patch
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DeleteContexts
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.DetectIntent
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Create
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Delete
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Get
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.List
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Sessions.EntityTypes.Patch
-        , Network.Google.Resource.DialogFlow.Projects.Agent.Train
-        , Network.Google.Resource.DialogFlow.Projects.GetAgent
-        , Network.Google.Resource.DialogFlow.Projects.Operations.Get
+  exposed-modules:
+    Gogol.DialogFlow
+    Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Changelogs.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Export
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Import
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.List
+    Gogol.DialogFlow.Projects.Locations.Agents.EntityTypes.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.ContinuousTestResults.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.DeployFlow
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Deployments.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Start
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Experiments.Stop
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.LookupEnvironmentHistory
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.RunContinuousTest
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.DetectIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.EntityTypes.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.FulfillIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.MatchIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Environments.Sessions.ServerStreamingDetectIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Export
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Export
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.GetValidationResult
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Import
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Pages.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Train
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.TransitionRouteGroups.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Validate
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.CompareVersions
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Load
+    Gogol.DialogFlow.Projects.Locations.Agents.Flows.Versions.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Generators.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Generators.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Generators.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Generators.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Generators.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.GetGenerativeSettings
+    Gogol.DialogFlow.Projects.Locations.Agents.GetValidationResult
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Export
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Import
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Intents.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Restore
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.DetectIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.EntityTypes.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.FulfillIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.MatchIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.ServerStreamingDetectIntent
+    Gogol.DialogFlow.Projects.Locations.Agents.Sessions.SubmitAnswerFeedback
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchDelete
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.BatchRun
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.CalculateCoverage
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Export
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Import
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.List
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Results.List
+    Gogol.DialogFlow.Projects.Locations.Agents.TestCases.Run
+    Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.List
+    Gogol.DialogFlow.Projects.Locations.Agents.TransitionRouteGroups.Patch
+    Gogol.DialogFlow.Projects.Locations.Agents.UpdateGenerativeSettings
+    Gogol.DialogFlow.Projects.Locations.Agents.Validate
+    Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Create
+    Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Delete
+    Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Get
+    Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.List
+    Gogol.DialogFlow.Projects.Locations.Agents.Webhooks.Patch
+    Gogol.DialogFlow.Projects.Locations.Get
+    Gogol.DialogFlow.Projects.Locations.List
+    Gogol.DialogFlow.Projects.Locations.Operations.Cancel
+    Gogol.DialogFlow.Projects.Locations.Operations.Get
+    Gogol.DialogFlow.Projects.Locations.Operations.List
+    Gogol.DialogFlow.Projects.Locations.SecuritySettings.Create
+    Gogol.DialogFlow.Projects.Locations.SecuritySettings.Delete
+    Gogol.DialogFlow.Projects.Locations.SecuritySettings.Get
+    Gogol.DialogFlow.Projects.Locations.SecuritySettings.List
+    Gogol.DialogFlow.Projects.Locations.SecuritySettings.Patch
+    Gogol.DialogFlow.Projects.Operations.Cancel
+    Gogol.DialogFlow.Projects.Operations.Get
+    Gogol.DialogFlow.Projects.Operations.List
+    Gogol.DialogFlow.Types
 
-    other-modules:
-          Network.Google.DialogFlow.Types.Product
-        , Network.Google.DialogFlow.Types.Sum
+  other-modules:
+    Gogol.DialogFlow.Internal.Product
+    Gogol.DialogFlow.Internal.Sum
 
-    build-depends:
-          gogol-core == 0.5.0.*
-        , base       >= 4.7 && < 5
+  build-depends:    gogol-core ^>=1.0.0
