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/DoubleClickBids.hs b/gen/Gogol/DoubleClickBids.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids.hs
@@ -0,0 +1,166 @@
+{-# 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.DoubleClickBids
+-- 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)
+--
+-- DoubleClick Bid Manager API allows users to manage and create campaigns and reports.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference>
+module Gogol.DoubleClickBids
+  ( -- * Configuration
+    doubleClickBidsService,
+
+    -- * OAuth Scopes
+    Doubleclickbidmanager'FullControl,
+
+    -- * Resources
+
+    -- ** doubleclickbidmanager.queries.create
+    DoubleclickbidmanagerQueriesCreateResource,
+    DoubleclickbidmanagerQueriesCreate (..),
+    newDoubleclickbidmanagerQueriesCreate,
+
+    -- ** doubleclickbidmanager.queries.delete
+    DoubleclickbidmanagerQueriesDeleteResource,
+    DoubleclickbidmanagerQueriesDelete (..),
+    newDoubleclickbidmanagerQueriesDelete,
+
+    -- ** doubleclickbidmanager.queries.get
+    DoubleclickbidmanagerQueriesGetResource,
+    DoubleclickbidmanagerQueriesGet (..),
+    newDoubleclickbidmanagerQueriesGet,
+
+    -- ** doubleclickbidmanager.queries.list
+    DoubleclickbidmanagerQueriesListResource,
+    DoubleclickbidmanagerQueriesList (..),
+    newDoubleclickbidmanagerQueriesList,
+
+    -- ** doubleclickbidmanager.queries.reports.get
+    DoubleclickbidmanagerQueriesReportsGetResource,
+    DoubleclickbidmanagerQueriesReportsGet (..),
+    newDoubleclickbidmanagerQueriesReportsGet,
+
+    -- ** doubleclickbidmanager.queries.reports.list
+    DoubleclickbidmanagerQueriesReportsListResource,
+    DoubleclickbidmanagerQueriesReportsList (..),
+    newDoubleclickbidmanagerQueriesReportsList,
+
+    -- ** doubleclickbidmanager.queries.run
+    DoubleclickbidmanagerQueriesRunResource,
+    DoubleclickbidmanagerQueriesRun (..),
+    newDoubleclickbidmanagerQueriesRun,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** DataRange
+    DataRange (..),
+    newDataRange,
+
+    -- ** DataRange_Range
+    DataRange_Range (..),
+
+    -- ** Date
+    Date (..),
+    newDate,
+
+    -- ** FilterPair
+    FilterPair (..),
+    newFilterPair,
+
+    -- ** ListQueriesResponse
+    ListQueriesResponse (..),
+    newListQueriesResponse,
+
+    -- ** ListReportsResponse
+    ListReportsResponse (..),
+    newListReportsResponse,
+
+    -- ** Options
+    Options (..),
+    newOptions,
+
+    -- ** Parameters
+    Parameters (..),
+    newParameters,
+
+    -- ** Parameters_Type
+    Parameters_Type (..),
+
+    -- ** Query
+    Query (..),
+    newQuery,
+
+    -- ** QueryMetadata
+    QueryMetadata (..),
+    newQueryMetadata,
+
+    -- ** QueryMetadata_Format
+    QueryMetadata_Format (..),
+
+    -- ** QuerySchedule
+    QuerySchedule (..),
+    newQuerySchedule,
+
+    -- ** QuerySchedule_Frequency
+    QuerySchedule_Frequency (..),
+
+    -- ** Report
+    Report (..),
+    newReport,
+
+    -- ** ReportKey
+    ReportKey (..),
+    newReportKey,
+
+    -- ** ReportMetadata
+    ReportMetadata (..),
+    newReportMetadata,
+
+    -- ** ReportStatus
+    ReportStatus (..),
+    newReportStatus,
+
+    -- ** ReportStatus_Format
+    ReportStatus_Format (..),
+
+    -- ** ReportStatus_State
+    ReportStatus_State (..),
+
+    -- ** RunQueryRequest
+    RunQueryRequest (..),
+    newRunQueryRequest,
+  )
+where
+
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Create
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Delete
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Get
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.List
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.Get
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.List
+import Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Run
+import Gogol.DoubleClickBids.Types
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Create.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Create.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Create.hs
@@ -0,0 +1,112 @@
+{-# 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.DoubleClickBids.Doubleclickbidmanager.Queries.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 new query.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.create@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Create
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesCreateResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesCreate (..),
+    newDoubleclickbidmanagerQueriesCreate,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.create@ method which the
+-- 'DoubleclickbidmanagerQueriesCreate' request conforms to.
+type DoubleclickbidmanagerQueriesCreateResource =
+  "v2"
+    Core.:> "queries"
+    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] Query
+    Core.:> Core.Post '[Core.JSON] Query
+
+-- | Creates a new query.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesCreate' smart constructor.
+data DoubleclickbidmanagerQueriesCreate = DoubleclickbidmanagerQueriesCreate
+  { -- | 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 :: Query,
+    -- | 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 'DoubleclickbidmanagerQueriesCreate' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesCreate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Query ->
+  DoubleclickbidmanagerQueriesCreate
+newDoubleclickbidmanagerQueriesCreate payload =
+  DoubleclickbidmanagerQueriesCreate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesCreate where
+  type Rs DoubleclickbidmanagerQueriesCreate = Query
+  type
+    Scopes DoubleclickbidmanagerQueriesCreate =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesCreate {..} =
+    go
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DoubleclickbidmanagerQueriesCreateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Delete.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Delete.hs
@@ -0,0 +1,112 @@
+{-# 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.DoubleClickBids.Doubleclickbidmanager.Queries.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 an existing query as well as its generated reports.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.delete@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Delete
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesDeleteResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesDelete (..),
+    newDoubleclickbidmanagerQueriesDelete,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.delete@ method which the
+-- 'DoubleclickbidmanagerQueriesDelete' request conforms to.
+type DoubleclickbidmanagerQueriesDeleteResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.Capture "queryId" Core.Int64
+    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] ()
+
+-- | Deletes an existing query as well as its generated reports.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesDelete' smart constructor.
+data DoubleclickbidmanagerQueriesDelete = DoubleclickbidmanagerQueriesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The ID of the query to delete.
+    queryId :: Core.Int64,
+    -- | 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 'DoubleclickbidmanagerQueriesDelete' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesDelete ::
+  -- |  Required. The ID of the query to delete. See 'queryId'.
+  Core.Int64 ->
+  DoubleclickbidmanagerQueriesDelete
+newDoubleclickbidmanagerQueriesDelete queryId =
+  DoubleclickbidmanagerQueriesDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      queryId = queryId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesDelete where
+  type Rs DoubleclickbidmanagerQueriesDelete = ()
+  type
+    Scopes DoubleclickbidmanagerQueriesDelete =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesDelete {..} =
+    go
+      queryId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DoubleclickbidmanagerQueriesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Get.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Get.hs
@@ -0,0 +1,110 @@
+{-# 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.DoubleClickBids.Doubleclickbidmanager.Queries.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves a query.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.get@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Get
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesGetResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesGet (..),
+    newDoubleclickbidmanagerQueriesGet,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.get@ method which the
+-- 'DoubleclickbidmanagerQueriesGet' request conforms to.
+type DoubleclickbidmanagerQueriesGetResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.Capture "queryId" Core.Int64
+    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] Query
+
+-- | Retrieves a query.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesGet' smart constructor.
+data DoubleclickbidmanagerQueriesGet = DoubleclickbidmanagerQueriesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The ID of the query to retrieve.
+    queryId :: Core.Int64,
+    -- | 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 'DoubleclickbidmanagerQueriesGet' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesGet ::
+  -- |  Required. The ID of the query to retrieve. See 'queryId'.
+  Core.Int64 ->
+  DoubleclickbidmanagerQueriesGet
+newDoubleclickbidmanagerQueriesGet queryId =
+  DoubleclickbidmanagerQueriesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      queryId = queryId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesGet where
+  type Rs DoubleclickbidmanagerQueriesGet = Query
+  type
+    Scopes DoubleclickbidmanagerQueriesGet =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesGet {..} =
+    go
+      queryId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DoubleclickbidmanagerQueriesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/List.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/List.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.DoubleClickBids.Doubleclickbidmanager.Queries.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 queries created by the current user.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.list@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.List
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesListResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesList (..),
+    newDoubleclickbidmanagerQueriesList,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.list@ method which the
+-- 'DoubleclickbidmanagerQueriesList' request conforms to.
+type DoubleclickbidmanagerQueriesListResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "orderBy" 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] ListQueriesResponse
+
+-- | Lists queries created by the current user.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesList' smart constructor.
+data DoubleclickbidmanagerQueriesList = DoubleclickbidmanagerQueriesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Field to sort the list by. Accepts the following values: * @queryId@ (default) * @metadata.title@ The default sorting order is ascending. To specify descending order for a field, add the suffix @desc@ to the field name. For example, @queryId desc@.
+    orderBy :: (Core.Maybe Core.Text),
+    -- | Maximum number of results per page. Must be between @1@ and @100@. Defaults to @100@ if unspecified.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | A token identifying which page of results the server should return. Typically, this is the value of nextPageToken, returned from the previous call to the @queries.list@ method. If unspecified, the first page of results is returned.
+    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 'DoubleclickbidmanagerQueriesList' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesList ::
+  DoubleclickbidmanagerQueriesList
+newDoubleclickbidmanagerQueriesList =
+  DoubleclickbidmanagerQueriesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      orderBy = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesList where
+  type Rs DoubleclickbidmanagerQueriesList = ListQueriesResponse
+  type
+    Scopes DoubleclickbidmanagerQueriesList =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesList {..} =
+    go
+      xgafv
+      accessToken
+      callback
+      orderBy
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DoubleclickbidmanagerQueriesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/Get.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/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.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves a report.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.reports.get@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.Get
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesReportsGetResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesReportsGet (..),
+    newDoubleclickbidmanagerQueriesReportsGet,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.reports.get@ method which the
+-- 'DoubleclickbidmanagerQueriesReportsGet' request conforms to.
+type DoubleclickbidmanagerQueriesReportsGetResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.Capture "queryId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    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] Report
+
+-- | Retrieves a report.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesReportsGet' smart constructor.
+data DoubleclickbidmanagerQueriesReportsGet = DoubleclickbidmanagerQueriesReportsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The ID of the query that generated the report.
+    queryId :: Core.Int64,
+    -- | Required. The ID of the query to retrieve.
+    reportId :: Core.Int64,
+    -- | 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 'DoubleclickbidmanagerQueriesReportsGet' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesReportsGet ::
+  -- |  Required. The ID of the query that generated the report. See 'queryId'.
+  Core.Int64 ->
+  -- |  Required. The ID of the query to retrieve. See 'reportId'.
+  Core.Int64 ->
+  DoubleclickbidmanagerQueriesReportsGet
+newDoubleclickbidmanagerQueriesReportsGet queryId reportId =
+  DoubleclickbidmanagerQueriesReportsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      queryId = queryId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesReportsGet where
+  type Rs DoubleclickbidmanagerQueriesReportsGet = Report
+  type
+    Scopes DoubleclickbidmanagerQueriesReportsGet =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesReportsGet {..} =
+    go
+      queryId
+      reportId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DoubleclickbidmanagerQueriesReportsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/List.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Reports/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.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.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 reports generated by the provided query.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.reports.list@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.List
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesReportsListResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesReportsList (..),
+    newDoubleclickbidmanagerQueriesReportsList,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.reports.list@ method which the
+-- 'DoubleclickbidmanagerQueriesReportsList' request conforms to.
+type DoubleclickbidmanagerQueriesReportsListResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.Capture "queryId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "orderBy" 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] ListReportsResponse
+
+-- | Lists reports generated by the provided query.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesReportsList' smart constructor.
+data DoubleclickbidmanagerQueriesReportsList = DoubleclickbidmanagerQueriesReportsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Field to sort the list by. Accepts the following values: * @key.reportId@ (default) The default sorting order is ascending. To specify descending order for a field, add the suffix @desc@ to the field name. For example, @key.reportId desc@.
+    orderBy :: (Core.Maybe Core.Text),
+    -- | Maximum number of results per page. Must be between @1@ and @100@. Defaults to @100@ if unspecified.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | A token identifying which page of results the server should return. Typically, this is the value of nextPageToken returned from the previous call to the @queries.reports.list@ method. If unspecified, the first page of results is returned.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The ID of the query that generated the reports.
+    queryId :: Core.Int64,
+    -- | 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 'DoubleclickbidmanagerQueriesReportsList' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesReportsList ::
+  -- |  Required. The ID of the query that generated the reports. See 'queryId'.
+  Core.Int64 ->
+  DoubleclickbidmanagerQueriesReportsList
+newDoubleclickbidmanagerQueriesReportsList queryId =
+  DoubleclickbidmanagerQueriesReportsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      orderBy = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      queryId = queryId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesReportsList where
+  type
+    Rs DoubleclickbidmanagerQueriesReportsList =
+      ListReportsResponse
+  type
+    Scopes DoubleclickbidmanagerQueriesReportsList =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesReportsList {..} =
+    go
+      queryId
+      xgafv
+      accessToken
+      callback
+      orderBy
+      pageSize
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DoubleclickbidmanagerQueriesReportsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Run.hs b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Run.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Doubleclickbidmanager/Queries/Run.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.DoubleClickBids.Doubleclickbidmanager.Queries.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)
+--
+-- Runs an existing query to generate a report.
+--
+-- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.run@.
+module Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Run
+  ( -- * Resource
+    DoubleclickbidmanagerQueriesRunResource,
+
+    -- ** Constructing a Request
+    DoubleclickbidmanagerQueriesRun (..),
+    newDoubleclickbidmanagerQueriesRun,
+  )
+where
+
+import Gogol.DoubleClickBids.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @doubleclickbidmanager.queries.run@ method which the
+-- 'DoubleclickbidmanagerQueriesRun' request conforms to.
+type DoubleclickbidmanagerQueriesRunResource =
+  "v2"
+    Core.:> "queries"
+    Core.:> Core.CaptureMode "queryId" "run" Core.Int64
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "synchronous" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] RunQueryRequest
+    Core.:> Core.Post '[Core.JSON] Report
+
+-- | Runs an existing query to generate a report.
+--
+-- /See:/ 'newDoubleclickbidmanagerQueriesRun' smart constructor.
+data DoubleclickbidmanagerQueriesRun = DoubleclickbidmanagerQueriesRun
+  { -- | 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 :: RunQueryRequest,
+    -- | Required. The ID of the query to run.
+    queryId :: Core.Int64,
+    -- | Whether the query should be run synchronously. When @true@, the request won\'t return until the resulting report has finished running. This parameter is @false@ by default. Setting this parameter to @true@ is __not recommended__.
+    synchronous :: (Core.Maybe Core.Bool),
+    -- | 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 'DoubleclickbidmanagerQueriesRun' with the minimum fields required to make a request.
+newDoubleclickbidmanagerQueriesRun ::
+  -- |  Multipart request metadata. See 'payload'.
+  RunQueryRequest ->
+  -- |  Required. The ID of the query to run. See 'queryId'.
+  Core.Int64 ->
+  DoubleclickbidmanagerQueriesRun
+newDoubleclickbidmanagerQueriesRun payload queryId =
+  DoubleclickbidmanagerQueriesRun
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      queryId = queryId,
+      synchronous = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DoubleclickbidmanagerQueriesRun where
+  type Rs DoubleclickbidmanagerQueriesRun = Report
+  type
+    Scopes DoubleclickbidmanagerQueriesRun =
+      '[Doubleclickbidmanager'FullControl]
+  requestClient DoubleclickbidmanagerQueriesRun {..} =
+    go
+      queryId
+      xgafv
+      accessToken
+      callback
+      synchronous
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      doubleClickBidsService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DoubleclickbidmanagerQueriesRunResource)
+          Core.mempty
diff --git a/gen/Gogol/DoubleClickBids/Internal/Product.hs b/gen/Gogol/DoubleClickBids/Internal/Product.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Internal/Product.hs
@@ -0,0 +1,726 @@
+{-# 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.DoubleClickBids.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.DoubleClickBids.Internal.Product
+  ( -- * DataRange
+    DataRange (..),
+    newDataRange,
+
+    -- * Date
+    Date (..),
+    newDate,
+
+    -- * FilterPair
+    FilterPair (..),
+    newFilterPair,
+
+    -- * ListQueriesResponse
+    ListQueriesResponse (..),
+    newListQueriesResponse,
+
+    -- * ListReportsResponse
+    ListReportsResponse (..),
+    newListReportsResponse,
+
+    -- * Options
+    Options (..),
+    newOptions,
+
+    -- * Parameters
+    Parameters (..),
+    newParameters,
+
+    -- * Query
+    Query (..),
+    newQuery,
+
+    -- * QueryMetadata
+    QueryMetadata (..),
+    newQueryMetadata,
+
+    -- * QuerySchedule
+    QuerySchedule (..),
+    newQuerySchedule,
+
+    -- * Report
+    Report (..),
+    newReport,
+
+    -- * ReportKey
+    ReportKey (..),
+    newReportKey,
+
+    -- * ReportMetadata
+    ReportMetadata (..),
+    newReportMetadata,
+
+    -- * ReportStatus
+    ReportStatus (..),
+    newReportStatus,
+
+    -- * RunQueryRequest
+    RunQueryRequest (..),
+    newRunQueryRequest,
+  )
+where
+
+import Gogol.DoubleClickBids.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | The date range to be reported on.
+--
+-- /See:/ 'newDataRange' smart constructor.
+data DataRange = DataRange
+  { -- | If @CUSTOM_DATES@ is assigned to range, this field specifies the end date for the date range that is reported on. This field is required if using @CUSTOM_DATES@ range and will be ignored otherwise.
+    customEndDate :: (Core.Maybe Date),
+    -- | If @CUSTOM_DATES@ is assigned to range, this field specifies the starting date for the date range that is reported on. This field is required if using @CUSTOM_DATES@ range and will be ignored otherwise.
+    customStartDate :: (Core.Maybe Date),
+    -- | The preset date range to be reported on. If @CUSTOM_DATES@ is assigned to this field, fields custom/start/date and custom/end/date must be set to specify the custom date range.
+    range :: (Core.Maybe DataRange_Range)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DataRange' with the minimum fields required to make a request.
+newDataRange ::
+  DataRange
+newDataRange =
+  DataRange
+    { customEndDate = Core.Nothing,
+      customStartDate = Core.Nothing,
+      range = Core.Nothing
+    }
+
+instance Core.FromJSON DataRange where
+  parseJSON =
+    Core.withObject
+      "DataRange"
+      ( \o ->
+          DataRange
+            Core.<$> (o Core..:? "customEndDate")
+            Core.<*> (o Core..:? "customStartDate")
+            Core.<*> (o Core..:? "range")
+      )
+
+instance Core.ToJSON DataRange where
+  toJSON DataRange {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("customEndDate" Core..=) Core.<$> customEndDate,
+            ("customStartDate" Core..=) Core.<$> customStartDate,
+            ("range" Core..=) Core.<$> range
+          ]
+      )
+
+-- | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
+--
+-- /See:/ 'newDate' smart constructor.
+data Date = Date
+  { -- | Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn\'t significant.
+    day :: (Core.Maybe Core.Int32),
+    -- | Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+    month :: (Core.Maybe Core.Int32),
+    -- | Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+    year :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Date' with the minimum fields required to make a request.
+newDate ::
+  Date
+newDate =
+  Date
+    { day = Core.Nothing,
+      month = Core.Nothing,
+      year = Core.Nothing
+    }
+
+instance Core.FromJSON Date where
+  parseJSON =
+    Core.withObject
+      "Date"
+      ( \o ->
+          Date
+            Core.<$> (o Core..:? "day")
+            Core.<*> (o Core..:? "month")
+            Core.<*> (o Core..:? "year")
+      )
+
+instance Core.ToJSON Date where
+  toJSON Date {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("day" Core..=) Core.<$> day,
+            ("month" Core..=) Core.<$> month,
+            ("year" Core..=) Core.<$> year
+          ]
+      )
+
+-- | Represents a single filter rule.
+--
+-- /See:/ 'newFilterPair' smart constructor.
+data FilterPair = FilterPair
+  { -- | The type of value to filter by. Defined by a </bid-manager/reference/rest/v2/filters-metrics#filters Filter> value.
+    type' :: (Core.Maybe Core.Text),
+    -- | The identifying value to filter by, such as a relevant resource ID.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FilterPair' with the minimum fields required to make a request.
+newFilterPair ::
+  FilterPair
+newFilterPair =
+  FilterPair {type' = Core.Nothing, value = Core.Nothing}
+
+instance Core.FromJSON FilterPair where
+  parseJSON =
+    Core.withObject
+      "FilterPair"
+      ( \o ->
+          FilterPair
+            Core.<$> (o Core..:? "type")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON FilterPair where
+  toJSON FilterPair {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("type" Core..=) Core.<$> type',
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+--
+-- /See:/ 'newListQueriesResponse' smart constructor.
+data ListQueriesResponse = ListQueriesResponse
+  { -- | A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to @queries.list@ method to retrieve the next page of results.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of queries. This field will be absent if empty.
+    queries :: (Core.Maybe [Query])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListQueriesResponse' with the minimum fields required to make a request.
+newListQueriesResponse ::
+  ListQueriesResponse
+newListQueriesResponse =
+  ListQueriesResponse
+    { nextPageToken = Core.Nothing,
+      queries = Core.Nothing
+    }
+
+instance Core.FromJSON ListQueriesResponse where
+  parseJSON =
+    Core.withObject
+      "ListQueriesResponse"
+      ( \o ->
+          ListQueriesResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "queries")
+      )
+
+instance Core.ToJSON ListQueriesResponse where
+  toJSON ListQueriesResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("queries" Core..=) Core.<$> queries
+          ]
+      )
+
+--
+-- /See:/ 'newListReportsResponse' smart constructor.
+data ListReportsResponse = ListReportsResponse
+  { -- | A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to @queries.reports.list@ method to retrieve the next page of results.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The list of reports. This field will be absent if empty.
+    reports :: (Core.Maybe [Report])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListReportsResponse' with the minimum fields required to make a request.
+newListReportsResponse ::
+  ListReportsResponse
+newListReportsResponse =
+  ListReportsResponse
+    { nextPageToken = Core.Nothing,
+      reports = Core.Nothing
+    }
+
+instance Core.FromJSON ListReportsResponse where
+  parseJSON =
+    Core.withObject
+      "ListReportsResponse"
+      ( \o ->
+          ListReportsResponse
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "reports")
+      )
+
+instance Core.ToJSON ListReportsResponse where
+  toJSON ListReportsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("reports" Core..=) Core.<$> reports
+          ]
+      )
+
+-- | Report parameter options.
+--
+-- /See:/ 'newOptions' smart constructor.
+newtype Options = Options
+  { -- | Whether to include data for audience lists specifically targeted by filtered line items or insertion orders. Requires the use of @FILTER_INSERTION_ORDER@ or @FILTER_LINE_ITEM@ filters.
+    includeOnlyTargetedUserLists :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Options' with the minimum fields required to make a request.
+newOptions ::
+  Options
+newOptions = Options {includeOnlyTargetedUserLists = Core.Nothing}
+
+instance Core.FromJSON Options where
+  parseJSON =
+    Core.withObject
+      "Options"
+      ( \o ->
+          Options Core.<$> (o Core..:? "includeOnlyTargetedUserLists")
+      )
+
+instance Core.ToJSON Options where
+  toJSON Options {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("includeOnlyTargetedUserLists" Core..=)
+              Core.<$> includeOnlyTargetedUserLists
+          ]
+      )
+
+-- | Parameters of a generated report.
+--
+-- /See:/ 'newParameters' smart constructor.
+data Parameters = Parameters
+  { -- | Filters to limit the scope of reported data.
+    filters :: (Core.Maybe [FilterPair]),
+    -- | Dimensions by which to segment and group the data. Defined by </bid-manager/reference/rest/v2/filters-metrics#filters Filter> values.
+    groupBys :: (Core.Maybe [Core.Text]),
+    -- | Metrics to define the data populating the report. Defined by </bid-manager/reference/rest/v2/filters-metrics#metrics Metric> values.
+    metrics :: (Core.Maybe [Core.Text]),
+    -- | Additional report parameter options.
+    options :: (Core.Maybe Options),
+    -- | The type of the report. The type of the report determines the dimesions, filters, and metrics that can be used.
+    type' :: (Core.Maybe Parameters_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Parameters' with the minimum fields required to make a request.
+newParameters ::
+  Parameters
+newParameters =
+  Parameters
+    { filters = Core.Nothing,
+      groupBys = Core.Nothing,
+      metrics = Core.Nothing,
+      options = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON Parameters where
+  parseJSON =
+    Core.withObject
+      "Parameters"
+      ( \o ->
+          Parameters
+            Core.<$> (o Core..:? "filters")
+            Core.<*> (o Core..:? "groupBys")
+            Core.<*> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "options")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON Parameters where
+  toJSON Parameters {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("filters" Core..=) Core.<$> filters,
+            ("groupBys" Core..=) Core.<$> groupBys,
+            ("metrics" Core..=) Core.<$> metrics,
+            ("options" Core..=) Core.<$> options,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | A single query used to generate a report.
+--
+-- /See:/ 'newQuery' smart constructor.
+data Query = Query
+  { -- | The metadata of the query.
+    metadata :: (Core.Maybe QueryMetadata),
+    -- | The parameters of the report generated by the query.
+    params :: (Core.Maybe Parameters),
+    -- | Output only. The unique ID of the query.
+    queryId :: (Core.Maybe Core.Int64),
+    -- | When and how often the query is scheduled to run. If the frequency field is set to @ONE_TIME@, the query will only run when queries.run is called.
+    schedule :: (Core.Maybe QuerySchedule)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Query' with the minimum fields required to make a request.
+newQuery ::
+  Query
+newQuery =
+  Query
+    { metadata = Core.Nothing,
+      params = Core.Nothing,
+      queryId = Core.Nothing,
+      schedule = Core.Nothing
+    }
+
+instance Core.FromJSON Query where
+  parseJSON =
+    Core.withObject
+      "Query"
+      ( \o ->
+          Query
+            Core.<$> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "params")
+            Core.<*> (o Core..:? "queryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "schedule")
+      )
+
+instance Core.ToJSON Query where
+  toJSON Query {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("metadata" Core..=) Core.<$> metadata,
+            ("params" Core..=) Core.<$> params,
+            ("queryId" Core..=) Core.. Core.AsText Core.<$> queryId,
+            ("schedule" Core..=) Core.<$> schedule
+          ]
+      )
+
+-- | The metadata of the query.
+--
+-- /See:/ 'newQueryMetadata' smart constructor.
+data QueryMetadata = QueryMetadata
+  { -- | The date range the report generated by the query will report on. This date range will be defined by the time zone as used by the advertiser.
+    dataRange :: (Core.Maybe DataRange),
+    -- | The format of the report generated by the query.
+    format :: (Core.Maybe QueryMetadata_Format),
+    -- | Whether an email notification is sent to the query creator when a report generated by the query is ready. This value is @false@ by default.
+    sendNotification :: (Core.Maybe Core.Bool),
+    -- | List of additional email addresses with which to share the query. If send_notification is @true@, these email addresses will receive a notification when a report generated by the query is ready. If these email addresses are connected to Display & Video 360 users, the query will be available to them in the Display & Video 360 interface.
+    shareEmailAddress :: (Core.Maybe [Core.Text]),
+    -- | The display name of the query. This value will be used in the file name of reports generated by the query.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'QueryMetadata' with the minimum fields required to make a request.
+newQueryMetadata ::
+  QueryMetadata
+newQueryMetadata =
+  QueryMetadata
+    { dataRange = Core.Nothing,
+      format = Core.Nothing,
+      sendNotification = Core.Nothing,
+      shareEmailAddress = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance Core.FromJSON QueryMetadata where
+  parseJSON =
+    Core.withObject
+      "QueryMetadata"
+      ( \o ->
+          QueryMetadata
+            Core.<$> (o Core..:? "dataRange")
+            Core.<*> (o Core..:? "format")
+            Core.<*> (o Core..:? "sendNotification")
+            Core.<*> (o Core..:? "shareEmailAddress")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON QueryMetadata where
+  toJSON QueryMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataRange" Core..=) Core.<$> dataRange,
+            ("format" Core..=) Core.<$> format,
+            ("sendNotification" Core..=) Core.<$> sendNotification,
+            ("shareEmailAddress" Core..=) Core.<$> shareEmailAddress,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Settings on when and how frequently to run a query.
+--
+-- /See:/ 'newQuerySchedule' smart constructor.
+data QuerySchedule = QuerySchedule
+  { -- | The date on which to end the scheduled runs. This field is required if frequency is not set to @ONE_TIME@. Otherwise, it will be ignored.
+    endDate :: (Core.Maybe Date),
+    -- | How frequently to run the query. If set to @ONE_TIME@, the query will only be run when queries.run is called.
+    frequency :: (Core.Maybe QuerySchedule_Frequency),
+    -- | The canonical code for the timezone the query schedule is based on. Scheduled runs are usually conducted in the morning of a given day. Defaults to @America\/New_York@.
+    nextRunTimezoneCode :: (Core.Maybe Core.Text),
+    -- | The date on which to begin the scheduled runs. This field is required if frequency is not set to @ONE_TIME@. Otherwise, it will be ignored.
+    startDate :: (Core.Maybe Date)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'QuerySchedule' with the minimum fields required to make a request.
+newQuerySchedule ::
+  QuerySchedule
+newQuerySchedule =
+  QuerySchedule
+    { endDate = Core.Nothing,
+      frequency = Core.Nothing,
+      nextRunTimezoneCode = Core.Nothing,
+      startDate = Core.Nothing
+    }
+
+instance Core.FromJSON QuerySchedule where
+  parseJSON =
+    Core.withObject
+      "QuerySchedule"
+      ( \o ->
+          QuerySchedule
+            Core.<$> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "frequency")
+            Core.<*> (o Core..:? "nextRunTimezoneCode")
+            Core.<*> (o Core..:? "startDate")
+      )
+
+instance Core.ToJSON QuerySchedule where
+  toJSON QuerySchedule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endDate" Core..=) Core.<$> endDate,
+            ("frequency" Core..=) Core.<$> frequency,
+            ("nextRunTimezoneCode" Core..=) Core.<$> nextRunTimezoneCode,
+            ("startDate" Core..=) Core.<$> startDate
+          ]
+      )
+
+-- | A single report generated by its parent report.
+--
+-- /See:/ 'newReport' smart constructor.
+data Report = Report
+  { -- | The key information identifying the report.
+    key :: (Core.Maybe ReportKey),
+    -- | The metadata of the report.
+    metadata :: (Core.Maybe ReportMetadata),
+    -- | The parameters of the report.
+    params :: (Core.Maybe Parameters)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report' with the minimum fields required to make a request.
+newReport ::
+  Report
+newReport =
+  Report
+    { key = Core.Nothing,
+      metadata = Core.Nothing,
+      params = Core.Nothing
+    }
+
+instance Core.FromJSON Report where
+  parseJSON =
+    Core.withObject
+      "Report"
+      ( \o ->
+          Report
+            Core.<$> (o Core..:? "key")
+            Core.<*> (o Core..:? "metadata")
+            Core.<*> (o Core..:? "params")
+      )
+
+instance Core.ToJSON Report where
+  toJSON Report {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("key" Core..=) Core.<$> key,
+            ("metadata" Core..=) Core.<$> metadata,
+            ("params" Core..=) Core.<$> params
+          ]
+      )
+
+-- | Identifying information of a report.
+--
+-- /See:/ 'newReportKey' smart constructor.
+data ReportKey = ReportKey
+  { -- | Output only. The unique ID of the query that generated the report.
+    queryId :: (Core.Maybe Core.Int64),
+    -- | Output only. The unique ID of the report.
+    reportId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportKey' with the minimum fields required to make a request.
+newReportKey ::
+  ReportKey
+newReportKey =
+  ReportKey {queryId = Core.Nothing, reportId = Core.Nothing}
+
+instance Core.FromJSON ReportKey where
+  parseJSON =
+    Core.withObject
+      "ReportKey"
+      ( \o ->
+          ReportKey
+            Core.<$> (o Core..:? "queryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "reportId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON ReportKey where
+  toJSON ReportKey {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("queryId" Core..=) Core.. Core.AsText Core.<$> queryId,
+            ("reportId" Core..=) Core.. Core.AsText Core.<$> reportId
+          ]
+      )
+
+-- | The metadata of a report.
+--
+-- /See:/ 'newReportMetadata' smart constructor.
+data ReportMetadata = ReportMetadata
+  { -- | Output only. The location of the generated report file in Google Cloud Storage. This field will be absent if status.state is not @DONE@.
+    googleCloudStoragePath :: (Core.Maybe Core.Text),
+    -- | The end date of the report data date range.
+    reportDataEndDate :: (Core.Maybe Date),
+    -- | The start date of the report data date range.
+    reportDataStartDate :: (Core.Maybe Date),
+    -- | The status of the report.
+    status :: (Core.Maybe ReportStatus)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportMetadata' with the minimum fields required to make a request.
+newReportMetadata ::
+  ReportMetadata
+newReportMetadata =
+  ReportMetadata
+    { googleCloudStoragePath = Core.Nothing,
+      reportDataEndDate = Core.Nothing,
+      reportDataStartDate = Core.Nothing,
+      status = Core.Nothing
+    }
+
+instance Core.FromJSON ReportMetadata where
+  parseJSON =
+    Core.withObject
+      "ReportMetadata"
+      ( \o ->
+          ReportMetadata
+            Core.<$> (o Core..:? "googleCloudStoragePath")
+            Core.<*> (o Core..:? "reportDataEndDate")
+            Core.<*> (o Core..:? "reportDataStartDate")
+            Core.<*> (o Core..:? "status")
+      )
+
+instance Core.ToJSON ReportMetadata where
+  toJSON ReportMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("googleCloudStoragePath" Core..=)
+              Core.<$> googleCloudStoragePath,
+            ("reportDataEndDate" Core..=) Core.<$> reportDataEndDate,
+            ("reportDataStartDate" Core..=) Core.<$> reportDataStartDate,
+            ("status" Core..=) Core.<$> status
+          ]
+      )
+
+-- | The status of a report.
+--
+-- /See:/ 'newReportStatus' smart constructor.
+data ReportStatus = ReportStatus
+  { -- | Output only. The timestamp of when report generation finished successfully or in failure. This field will not be set unless state is @DONE@ or @FAILED@.
+    finishTime :: (Core.Maybe Core.DateTime),
+    -- | The format of the generated report file.
+    format :: (Core.Maybe ReportStatus_Format),
+    -- | Output only. The state of the report generation.
+    state :: (Core.Maybe ReportStatus_State)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportStatus' with the minimum fields required to make a request.
+newReportStatus ::
+  ReportStatus
+newReportStatus =
+  ReportStatus
+    { finishTime = Core.Nothing,
+      format = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance Core.FromJSON ReportStatus where
+  parseJSON =
+    Core.withObject
+      "ReportStatus"
+      ( \o ->
+          ReportStatus
+            Core.<$> (o Core..:? "finishTime")
+            Core.<*> (o Core..:? "format")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance Core.ToJSON ReportStatus where
+  toJSON ReportStatus {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("finishTime" Core..=) Core.<$> finishTime,
+            ("format" Core..=) Core.<$> format,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Details specifying how to run a query.
+--
+-- /See:/ 'newRunQueryRequest' smart constructor.
+newtype RunQueryRequest = RunQueryRequest
+  { -- | The date range used by the query to generate the report. If unspecified, the query\'s original data_range is used.
+    dataRange :: (Core.Maybe DataRange)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RunQueryRequest' with the minimum fields required to make a request.
+newRunQueryRequest ::
+  RunQueryRequest
+newRunQueryRequest = RunQueryRequest {dataRange = Core.Nothing}
+
+instance Core.FromJSON RunQueryRequest where
+  parseJSON =
+    Core.withObject
+      "RunQueryRequest"
+      (\o -> RunQueryRequest Core.<$> (o Core..:? "dataRange"))
+
+instance Core.ToJSON RunQueryRequest where
+  toJSON RunQueryRequest {..} =
+    Core.object
+      (Core.catMaybes [("dataRange" Core..=) Core.<$> dataRange])
diff --git a/gen/Gogol/DoubleClickBids/Internal/Sum.hs b/gen/Gogol/DoubleClickBids/Internal/Sum.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Internal/Sum.hs
@@ -0,0 +1,495 @@
+{-# 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.DoubleClickBids.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.DoubleClickBids.Internal.Sum
+  ( -- * Xgafv
+    Xgafv
+      ( Xgafv_1,
+        Xgafv_2,
+        ..
+      ),
+
+    -- * DataRange_Range
+    DataRange_Range
+      ( DataRange_Range_RANGEUNSPECIFIED,
+        DataRange_Range_CUSTOMDATES,
+        DataRange_Range_CURRENTDAY,
+        DataRange_Range_PREVIOUSDAY,
+        DataRange_Range_WEEKTODATE,
+        DataRange_Range_MONTHTODATE,
+        DataRange_Range_QUARTERTODATE,
+        DataRange_Range_YEARTODATE,
+        DataRange_Range_PREVIOUSWEEK,
+        DataRange_Range_PREVIOUSMONTH,
+        DataRange_Range_PREVIOUSQUARTER,
+        DataRange_Range_PREVIOUSYEAR,
+        DataRange_Range_LAST7DAYS,
+        DataRange_Range_LAST30DAYS,
+        DataRange_Range_LAST90DAYS,
+        DataRange_Range_LAST365DAYS,
+        DataRange_Range_ALLTIME,
+        DataRange_Range_LAST14DAYS,
+        DataRange_Range_LAST60DAYS,
+        ..
+      ),
+
+    -- * Parameters_Type
+    Parameters_Type
+      ( Parameters_Type_REPORTTYPEUNSPECIFIED,
+        Parameters_Type_Standard,
+        Parameters_Type_INVENTORYAVAILABILITY,
+        Parameters_Type_AUDIENCECOMPOSITION,
+        Parameters_Type_Floodlight,
+        Parameters_Type_Youtube,
+        Parameters_Type_Grp,
+        Parameters_Type_YOUTUBEPROGRAMMATICGUARANTEED,
+        Parameters_Type_Reach,
+        Parameters_Type_UNIQUEREACHAUDIENCE,
+        Parameters_Type_FULLPATH,
+        Parameters_Type_PATHATTRIBUTION,
+        ..
+      ),
+
+    -- * QueryMetadata_Format
+    QueryMetadata_Format
+      ( QueryMetadata_Format_FORMATUNSPECIFIED,
+        QueryMetadata_Format_Csv,
+        QueryMetadata_Format_Xlsx,
+        ..
+      ),
+
+    -- * QuerySchedule_Frequency
+    QuerySchedule_Frequency
+      ( QuerySchedule_Frequency_FREQUENCYUNSPECIFIED,
+        QuerySchedule_Frequency_ONETIME,
+        QuerySchedule_Frequency_Daily,
+        QuerySchedule_Frequency_Weekly,
+        QuerySchedule_Frequency_SEMIMONTHLY,
+        QuerySchedule_Frequency_Monthly,
+        QuerySchedule_Frequency_Quarterly,
+        QuerySchedule_Frequency_Yearly,
+        ..
+      ),
+
+    -- * ReportStatus_Format
+    ReportStatus_Format
+      ( ReportStatus_Format_FORMATUNSPECIFIED,
+        ReportStatus_Format_Csv,
+        ReportStatus_Format_Xlsx,
+        ..
+      ),
+
+    -- * ReportStatus_State
+    ReportStatus_State
+      ( ReportStatus_State_STATEUNSPECIFIED,
+        ReportStatus_State_Queued,
+        ReportStatus_State_Running,
+        ReportStatus_State_Done,
+        ReportStatus_State_Failed,
+        ..
+      ),
+  )
+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
+  #-}
+
+-- | The preset date range to be reported on. If @CUSTOM_DATES@ is assigned to this field, fields custom/start/date and custom/end/date must be set to specify the custom date range.
+newtype DataRange_Range = DataRange_Range {fromDataRange_Range :: 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 when range is not specified or is unknown in this version.
+pattern DataRange_Range_RANGEUNSPECIFIED :: DataRange_Range
+pattern DataRange_Range_RANGEUNSPECIFIED = DataRange_Range "RANGE_UNSPECIFIED"
+
+-- | Custom date range.
+pattern DataRange_Range_CUSTOMDATES :: DataRange_Range
+pattern DataRange_Range_CUSTOMDATES = DataRange_Range "CUSTOM_DATES"
+
+-- | Current day.
+pattern DataRange_Range_CURRENTDAY :: DataRange_Range
+pattern DataRange_Range_CURRENTDAY = DataRange_Range "CURRENT_DAY"
+
+-- | Previous day.
+pattern DataRange_Range_PREVIOUSDAY :: DataRange_Range
+pattern DataRange_Range_PREVIOUSDAY = DataRange_Range "PREVIOUS_DAY"
+
+-- | All days, including the current day, since the most recent Sunday.
+pattern DataRange_Range_WEEKTODATE :: DataRange_Range
+pattern DataRange_Range_WEEKTODATE = DataRange_Range "WEEK_TO_DATE"
+
+-- | All days, including the current day, since the start of the current month.
+pattern DataRange_Range_MONTHTODATE :: DataRange_Range
+pattern DataRange_Range_MONTHTODATE = DataRange_Range "MONTH_TO_DATE"
+
+-- | All days, including the current day, since the start of the current quarter.
+pattern DataRange_Range_QUARTERTODATE :: DataRange_Range
+pattern DataRange_Range_QUARTERTODATE = DataRange_Range "QUARTER_TO_DATE"
+
+-- | All days, including the current day, since the start of the current calendar year.
+pattern DataRange_Range_YEARTODATE :: DataRange_Range
+pattern DataRange_Range_YEARTODATE = DataRange_Range "YEAR_TO_DATE"
+
+-- | The previous completed week, beginning from Sunday.
+pattern DataRange_Range_PREVIOUSWEEK :: DataRange_Range
+pattern DataRange_Range_PREVIOUSWEEK = DataRange_Range "PREVIOUS_WEEK"
+
+-- | The previous completed calendar month.
+pattern DataRange_Range_PREVIOUSMONTH :: DataRange_Range
+pattern DataRange_Range_PREVIOUSMONTH = DataRange_Range "PREVIOUS_MONTH"
+
+-- | The previous completed quarter.
+pattern DataRange_Range_PREVIOUSQUARTER :: DataRange_Range
+pattern DataRange_Range_PREVIOUSQUARTER = DataRange_Range "PREVIOUS_QUARTER"
+
+-- | The previous completed calendar year.
+pattern DataRange_Range_PREVIOUSYEAR :: DataRange_Range
+pattern DataRange_Range_PREVIOUSYEAR = DataRange_Range "PREVIOUS_YEAR"
+
+-- | The previous 7 days, excluding the current day.
+pattern DataRange_Range_LAST7DAYS :: DataRange_Range
+pattern DataRange_Range_LAST7DAYS = DataRange_Range "LAST_7_DAYS"
+
+-- | The previous 30 days, excluding the current day.
+pattern DataRange_Range_LAST30DAYS :: DataRange_Range
+pattern DataRange_Range_LAST30DAYS = DataRange_Range "LAST_30_DAYS"
+
+-- | The previous 90 days, excluding the current day.
+pattern DataRange_Range_LAST90DAYS :: DataRange_Range
+pattern DataRange_Range_LAST90DAYS = DataRange_Range "LAST_90_DAYS"
+
+-- | The previous 365 days, excluding the current day.
+pattern DataRange_Range_LAST365DAYS :: DataRange_Range
+pattern DataRange_Range_LAST365DAYS = DataRange_Range "LAST_365_DAYS"
+
+-- | All time for which data is available, excluding the current day.
+pattern DataRange_Range_ALLTIME :: DataRange_Range
+pattern DataRange_Range_ALLTIME = DataRange_Range "ALL_TIME"
+
+-- | The previous 14 days, excluding the current day.
+pattern DataRange_Range_LAST14DAYS :: DataRange_Range
+pattern DataRange_Range_LAST14DAYS = DataRange_Range "LAST_14_DAYS"
+
+-- | The previous 60 days, excluding the current day.
+pattern DataRange_Range_LAST60DAYS :: DataRange_Range
+pattern DataRange_Range_LAST60DAYS = DataRange_Range "LAST_60_DAYS"
+
+{-# COMPLETE
+  DataRange_Range_RANGEUNSPECIFIED,
+  DataRange_Range_CUSTOMDATES,
+  DataRange_Range_CURRENTDAY,
+  DataRange_Range_PREVIOUSDAY,
+  DataRange_Range_WEEKTODATE,
+  DataRange_Range_MONTHTODATE,
+  DataRange_Range_QUARTERTODATE,
+  DataRange_Range_YEARTODATE,
+  DataRange_Range_PREVIOUSWEEK,
+  DataRange_Range_PREVIOUSMONTH,
+  DataRange_Range_PREVIOUSQUARTER,
+  DataRange_Range_PREVIOUSYEAR,
+  DataRange_Range_LAST7DAYS,
+  DataRange_Range_LAST30DAYS,
+  DataRange_Range_LAST90DAYS,
+  DataRange_Range_LAST365DAYS,
+  DataRange_Range_ALLTIME,
+  DataRange_Range_LAST14DAYS,
+  DataRange_Range_LAST60DAYS,
+  DataRange_Range
+  #-}
+
+-- | The type of the report. The type of the report determines the dimesions, filters, and metrics that can be used.
+newtype Parameters_Type = Parameters_Type {fromParameters_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
+    )
+
+-- | Default value when report type is not specified or is unknown in this version.
+pattern Parameters_Type_REPORTTYPEUNSPECIFIED :: Parameters_Type
+pattern Parameters_Type_REPORTTYPEUNSPECIFIED = Parameters_Type "REPORT_TYPE_UNSPECIFIED"
+
+-- | Standard report.
+pattern Parameters_Type_Standard :: Parameters_Type
+pattern Parameters_Type_Standard = Parameters_Type "STANDARD"
+
+-- | Inventory Availability report.
+pattern Parameters_Type_INVENTORYAVAILABILITY :: Parameters_Type
+pattern Parameters_Type_INVENTORYAVAILABILITY = Parameters_Type "INVENTORY_AVAILABILITY"
+
+-- | Audience Composition report.
+pattern Parameters_Type_AUDIENCECOMPOSITION :: Parameters_Type
+pattern Parameters_Type_AUDIENCECOMPOSITION = Parameters_Type "AUDIENCE_COMPOSITION"
+
+-- | Floodlight report.
+pattern Parameters_Type_Floodlight :: Parameters_Type
+pattern Parameters_Type_Floodlight = Parameters_Type "FLOODLIGHT"
+
+-- | YouTube report.
+pattern Parameters_Type_Youtube :: Parameters_Type
+pattern Parameters_Type_Youtube = Parameters_Type "YOUTUBE"
+
+-- | GRP report.
+pattern Parameters_Type_Grp :: Parameters_Type
+pattern Parameters_Type_Grp = Parameters_Type "GRP"
+
+-- | YouTube Programmatic Guaranteed report.
+pattern Parameters_Type_YOUTUBEPROGRAMMATICGUARANTEED :: Parameters_Type
+pattern Parameters_Type_YOUTUBEPROGRAMMATICGUARANTEED = Parameters_Type "YOUTUBE_PROGRAMMATIC_GUARANTEED"
+
+-- | Reach report.
+pattern Parameters_Type_Reach :: Parameters_Type
+pattern Parameters_Type_Reach = Parameters_Type "REACH"
+
+-- | Unique Reach Audience report.
+pattern Parameters_Type_UNIQUEREACHAUDIENCE :: Parameters_Type
+pattern Parameters_Type_UNIQUEREACHAUDIENCE = Parameters_Type "UNIQUE_REACH_AUDIENCE"
+
+-- | Full Path report.
+pattern Parameters_Type_FULLPATH :: Parameters_Type
+pattern Parameters_Type_FULLPATH = Parameters_Type "FULL_PATH"
+
+-- | Path Attribution report.
+pattern Parameters_Type_PATHATTRIBUTION :: Parameters_Type
+pattern Parameters_Type_PATHATTRIBUTION = Parameters_Type "PATH_ATTRIBUTION"
+
+{-# COMPLETE
+  Parameters_Type_REPORTTYPEUNSPECIFIED,
+  Parameters_Type_Standard,
+  Parameters_Type_INVENTORYAVAILABILITY,
+  Parameters_Type_AUDIENCECOMPOSITION,
+  Parameters_Type_Floodlight,
+  Parameters_Type_Youtube,
+  Parameters_Type_Grp,
+  Parameters_Type_YOUTUBEPROGRAMMATICGUARANTEED,
+  Parameters_Type_Reach,
+  Parameters_Type_UNIQUEREACHAUDIENCE,
+  Parameters_Type_FULLPATH,
+  Parameters_Type_PATHATTRIBUTION,
+  Parameters_Type
+  #-}
+
+-- | The format of the report generated by the query.
+newtype QueryMetadata_Format = QueryMetadata_Format {fromQueryMetadata_Format :: 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 when format is not specified or is unknown in this version.
+pattern QueryMetadata_Format_FORMATUNSPECIFIED :: QueryMetadata_Format
+pattern QueryMetadata_Format_FORMATUNSPECIFIED = QueryMetadata_Format "FORMAT_UNSPECIFIED"
+
+-- | CSV.
+pattern QueryMetadata_Format_Csv :: QueryMetadata_Format
+pattern QueryMetadata_Format_Csv = QueryMetadata_Format "CSV"
+
+-- | Excel.
+pattern QueryMetadata_Format_Xlsx :: QueryMetadata_Format
+pattern QueryMetadata_Format_Xlsx = QueryMetadata_Format "XLSX"
+
+{-# COMPLETE
+  QueryMetadata_Format_FORMATUNSPECIFIED,
+  QueryMetadata_Format_Csv,
+  QueryMetadata_Format_Xlsx,
+  QueryMetadata_Format
+  #-}
+
+-- | How frequently to run the query. If set to @ONE_TIME@, the query will only be run when queries.run is called.
+newtype QuerySchedule_Frequency = QuerySchedule_Frequency {fromQuerySchedule_Frequency :: 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 when frequency is not specified or is unknown in this version.
+pattern QuerySchedule_Frequency_FREQUENCYUNSPECIFIED :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_FREQUENCYUNSPECIFIED = QuerySchedule_Frequency "FREQUENCY_UNSPECIFIED"
+
+-- | Only when the query is run manually.
+pattern QuerySchedule_Frequency_ONETIME :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_ONETIME = QuerySchedule_Frequency "ONE_TIME"
+
+-- | Once a day.
+pattern QuerySchedule_Frequency_Daily :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_Daily = QuerySchedule_Frequency "DAILY"
+
+-- | Once a week.
+pattern QuerySchedule_Frequency_Weekly :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_Weekly = QuerySchedule_Frequency "WEEKLY"
+
+-- | Twice a month.
+pattern QuerySchedule_Frequency_SEMIMONTHLY :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_SEMIMONTHLY = QuerySchedule_Frequency "SEMI_MONTHLY"
+
+-- | Once a month.
+pattern QuerySchedule_Frequency_Monthly :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_Monthly = QuerySchedule_Frequency "MONTHLY"
+
+-- | Once a quarter.
+pattern QuerySchedule_Frequency_Quarterly :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_Quarterly = QuerySchedule_Frequency "QUARTERLY"
+
+-- | Once a year.
+pattern QuerySchedule_Frequency_Yearly :: QuerySchedule_Frequency
+pattern QuerySchedule_Frequency_Yearly = QuerySchedule_Frequency "YEARLY"
+
+{-# COMPLETE
+  QuerySchedule_Frequency_FREQUENCYUNSPECIFIED,
+  QuerySchedule_Frequency_ONETIME,
+  QuerySchedule_Frequency_Daily,
+  QuerySchedule_Frequency_Weekly,
+  QuerySchedule_Frequency_SEMIMONTHLY,
+  QuerySchedule_Frequency_Monthly,
+  QuerySchedule_Frequency_Quarterly,
+  QuerySchedule_Frequency_Yearly,
+  QuerySchedule_Frequency
+  #-}
+
+-- | The format of the generated report file.
+newtype ReportStatus_Format = ReportStatus_Format {fromReportStatus_Format :: 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 when format is not specified or is unknown in this version.
+pattern ReportStatus_Format_FORMATUNSPECIFIED :: ReportStatus_Format
+pattern ReportStatus_Format_FORMATUNSPECIFIED = ReportStatus_Format "FORMAT_UNSPECIFIED"
+
+-- | CSV.
+pattern ReportStatus_Format_Csv :: ReportStatus_Format
+pattern ReportStatus_Format_Csv = ReportStatus_Format "CSV"
+
+-- | Excel.
+pattern ReportStatus_Format_Xlsx :: ReportStatus_Format
+pattern ReportStatus_Format_Xlsx = ReportStatus_Format "XLSX"
+
+{-# COMPLETE
+  ReportStatus_Format_FORMATUNSPECIFIED,
+  ReportStatus_Format_Csv,
+  ReportStatus_Format_Xlsx,
+  ReportStatus_Format
+  #-}
+
+-- | Output only. The state of the report generation.
+newtype ReportStatus_State = ReportStatus_State {fromReportStatus_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
+    )
+
+-- | Default value when state is not specified or is unknown in this version.
+pattern ReportStatus_State_STATEUNSPECIFIED :: ReportStatus_State
+pattern ReportStatus_State_STATEUNSPECIFIED = ReportStatus_State "STATE_UNSPECIFIED"
+
+-- | The report is queued to run.
+pattern ReportStatus_State_Queued :: ReportStatus_State
+pattern ReportStatus_State_Queued = ReportStatus_State "QUEUED"
+
+-- | The report is currently running.
+pattern ReportStatus_State_Running :: ReportStatus_State
+pattern ReportStatus_State_Running = ReportStatus_State "RUNNING"
+
+-- | The report has finished running successfully.
+pattern ReportStatus_State_Done :: ReportStatus_State
+pattern ReportStatus_State_Done = ReportStatus_State "DONE"
+
+-- | The report has finished running in failure.
+pattern ReportStatus_State_Failed :: ReportStatus_State
+pattern ReportStatus_State_Failed = ReportStatus_State "FAILED"
+
+{-# COMPLETE
+  ReportStatus_State_STATEUNSPECIFIED,
+  ReportStatus_State_Queued,
+  ReportStatus_State_Running,
+  ReportStatus_State_Done,
+  ReportStatus_State_Failed,
+  ReportStatus_State
+  #-}
diff --git a/gen/Gogol/DoubleClickBids/Types.hs b/gen/Gogol/DoubleClickBids/Types.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DoubleClickBids/Types.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.DoubleClickBids.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.DoubleClickBids.Types
+  ( -- * Configuration
+    doubleClickBidsService,
+
+    -- * OAuth Scopes
+    Doubleclickbidmanager'FullControl,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** DataRange
+    DataRange (..),
+    newDataRange,
+
+    -- ** DataRange_Range
+    DataRange_Range (..),
+
+    -- ** Date
+    Date (..),
+    newDate,
+
+    -- ** FilterPair
+    FilterPair (..),
+    newFilterPair,
+
+    -- ** ListQueriesResponse
+    ListQueriesResponse (..),
+    newListQueriesResponse,
+
+    -- ** ListReportsResponse
+    ListReportsResponse (..),
+    newListReportsResponse,
+
+    -- ** Options
+    Options (..),
+    newOptions,
+
+    -- ** Parameters
+    Parameters (..),
+    newParameters,
+
+    -- ** Parameters_Type
+    Parameters_Type (..),
+
+    -- ** Query
+    Query (..),
+    newQuery,
+
+    -- ** QueryMetadata
+    QueryMetadata (..),
+    newQueryMetadata,
+
+    -- ** QueryMetadata_Format
+    QueryMetadata_Format (..),
+
+    -- ** QuerySchedule
+    QuerySchedule (..),
+    newQuerySchedule,
+
+    -- ** QuerySchedule_Frequency
+    QuerySchedule_Frequency (..),
+
+    -- ** Report
+    Report (..),
+    newReport,
+
+    -- ** ReportKey
+    ReportKey (..),
+    newReportKey,
+
+    -- ** ReportMetadata
+    ReportMetadata (..),
+    newReportMetadata,
+
+    -- ** ReportStatus
+    ReportStatus (..),
+    newReportStatus,
+
+    -- ** ReportStatus_Format
+    ReportStatus_Format (..),
+
+    -- ** ReportStatus_State
+    ReportStatus_State (..),
+
+    -- ** RunQueryRequest
+    RunQueryRequest (..),
+    newRunQueryRequest,
+  )
+where
+
+import Gogol.DoubleClickBids.Internal.Product
+import Gogol.DoubleClickBids.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Default request referring to version @v2@ of the DoubleClick Bid Manager API. This contains the host and root path used as a starting point for constructing service requests.
+doubleClickBidsService :: Core.ServiceConfig
+doubleClickBidsService =
+  Core.defaultService
+    (Core.ServiceId "doubleclickbidmanager:v2")
+    "doubleclickbidmanager.googleapis.com"
+
+-- | View and manage your reports in DoubleClick Bid Manager
+type Doubleclickbidmanager'FullControl =
+  "https://www.googleapis.com/auth/doubleclickbidmanager"
diff --git a/gen/Network/Google/DoubleClickBids.hs b/gen/Network/Google/DoubleClickBids.hs
deleted file mode 100644
--- a/gen/Network/Google/DoubleClickBids.hs
+++ /dev/null
@@ -1,301 +0,0 @@
-{-# LANGUAGE DataKinds         #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TypeOperators     #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-
--- |
--- Module      : Network.Google.DoubleClickBids
--- 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)
---
--- API for viewing and managing your reports in DoubleClick Bid Manager.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference>
-module Network.Google.DoubleClickBids
-    (
-    -- * Service Configuration
-      doubleClickBidsService
-
-    -- * OAuth Scopes
-    , doubleClickBidManagerScope
-
-    -- * API Declaration
-    , DoubleClickBidsAPI
-
-    -- * Resources
-
-    -- ** doubleclickbidmanager.lineitems.downloadlineitems
-    , module Network.Google.Resource.DoubleClickBidManager.Lineitems.Downloadlineitems
-
-    -- ** doubleclickbidmanager.lineitems.uploadlineitems
-    , module Network.Google.Resource.DoubleClickBidManager.Lineitems.Uploadlineitems
-
-    -- ** doubleclickbidmanager.queries.createquery
-    , module Network.Google.Resource.DoubleClickBidManager.Queries.CreateQuery
-
-    -- ** doubleclickbidmanager.queries.deletequery
-    , module Network.Google.Resource.DoubleClickBidManager.Queries.DeleteQuery
-
-    -- ** doubleclickbidmanager.queries.getquery
-    , module Network.Google.Resource.DoubleClickBidManager.Queries.GetQuery
-
-    -- ** doubleclickbidmanager.queries.listqueries
-    , module Network.Google.Resource.DoubleClickBidManager.Queries.Listqueries
-
-    -- ** doubleclickbidmanager.queries.runquery
-    , module Network.Google.Resource.DoubleClickBidManager.Queries.RunQuery
-
-    -- ** doubleclickbidmanager.reports.listreports
-    , module Network.Google.Resource.DoubleClickBidManager.Reports.Listreports
-
-    -- ** doubleclickbidmanager.sdf.download
-    , module Network.Google.Resource.DoubleClickBidManager.Sdf.Download
-
-    -- * Types
-
-    -- ** ListReportsResponse
-    , ListReportsResponse
-    , listReportsResponse
-    , lrrReports
-    , lrrKind
-
-    -- ** QueryMetadataFormat
-    , QueryMetadataFormat (..)
-
-    -- ** QueryMetadata
-    , QueryMetadata
-    , queryMetadata
-    , qmGoogleCloudStoragePathForLatestReport
-    , qmLocale
-    , qmFormat
-    , qmGoogleDrivePathForLatestReport
-    , qmShareEmailAddress
-    , qmRunning
-    , qmDataRange
-    , qmLatestReportRunTimeMs
-    , qmReportCount
-    , qmTitle
-    , qmSendNotification
-
-    -- ** RunQueryRequest
-    , RunQueryRequest
-    , runQueryRequest
-    , rqrReportDataEndTimeMs
-    , rqrDataRange
-    , rqrReportDataStartTimeMs
-    , rqrTimezoneCode
-
-    -- ** FilterPair
-    , FilterPair
-    , filterPair
-    , fpValue
-    , fpType
-
-    -- ** UploadLineItemsRequest
-    , UploadLineItemsRequest
-    , uploadLineItemsRequest
-    , ulirLineItems
-    , ulirFormat
-    , ulirDryRun
-
-    -- ** ParametersType
-    , ParametersType (..)
-
-    -- ** DownloadLineItemsRequestFilterType
-    , DownloadLineItemsRequestFilterType (..)
-
-    -- ** DownloadRequestFilterType
-    , DownloadRequestFilterType (..)
-
-    -- ** DownloadLineItemsRequest
-    , DownloadLineItemsRequest
-    , downloadLineItemsRequest
-    , dlirFilterType
-    , dlirFormat
-    , dlirFileSpec
-    , dlirFilterIds
-
-    -- ** DownloadRequestFileTypesItem
-    , DownloadRequestFileTypesItem (..)
-
-    -- ** DownloadRequest
-    , DownloadRequest
-    , downloadRequest
-    , drFileTypes
-    , drFilterType
-    , drVersion
-    , drFilterIds
-
-    -- ** ListQueriesResponse
-    , ListQueriesResponse
-    , listQueriesResponse
-    , lqrQueries
-    , lqrKind
-
-    -- ** UploadLineItemsResponse
-    , UploadLineItemsResponse
-    , uploadLineItemsResponse
-    , ulirUploadStatus
-
-    -- ** QueryMetadataDataRange
-    , QueryMetadataDataRange (..)
-
-    -- ** ParametersMetricsItem
-    , ParametersMetricsItem (..)
-
-    -- ** QueryScheduleFrequency
-    , QueryScheduleFrequency (..)
-
-    -- ** ReportMetadata
-    , ReportMetadata
-    , reportMetadata
-    , rmStatus
-    , rmReportDataEndTimeMs
-    , rmGoogleCloudStoragePath
-    , rmReportDataStartTimeMs
-
-    -- ** Report
-    , Report
-    , report
-    , rParams
-    , rKey
-    , rMetadata
-
-    -- ** RowStatus
-    , RowStatus
-    , rowStatus
-    , rsEntityName
-    , rsChanged
-    , rsPersisted
-    , rsRowNumber
-    , rsErrors
-    , rsEntityId
-
-    -- ** DownloadLineItemsRequestFileSpec
-    , DownloadLineItemsRequestFileSpec (..)
-
-    -- ** ReportKey
-    , ReportKey
-    , reportKey
-    , rkQueryId
-    , rkReportId
-
-    -- ** UploadLineItemsRequestFormat
-    , UploadLineItemsRequestFormat (..)
-
-    -- ** UploadStatus
-    , UploadStatus
-    , uploadStatus
-    , usRowStatus
-    , usErrors
-
-    -- ** QuerySchedule
-    , QuerySchedule
-    , querySchedule
-    , qsFrequency
-    , qsEndTimeMs
-    , qsNextRunMinuteOfDay
-    , qsNextRunTimezoneCode
-
-    -- ** DownloadLineItemsResponse
-    , DownloadLineItemsResponse
-    , downloadLineItemsResponse
-    , dlirLineItems
-
-    -- ** DownloadResponse
-    , DownloadResponse
-    , downloadResponse
-    , drInventorySources
-    , drInsertionOrders
-    , drCampaigns
-    , drLineItems
-    , drAdGroups
-    , drAds
-
-    -- ** ReportStatus
-    , ReportStatus
-    , reportStatus
-    , rsState
-    , rsFinishTimeMs
-    , rsFormat
-    , rsFailure
-
-    -- ** Query
-    , Query
-    , query
-    , qQueryId
-    , qReportDataEndTimeMs
-    , qSchedule
-    , qKind
-    , qParams
-    , qMetadata
-    , qReportDataStartTimeMs
-    , qTimezoneCode
-
-    -- ** Parameters
-    , Parameters
-    , parameters
-    , pMetrics
-    , pIncludeInviteData
-    , pFilters
-    , pGroupBys
-    , pType
-
-    -- ** FilterPairType
-    , FilterPairType (..)
-
-    -- ** RunQueryRequestDataRange
-    , RunQueryRequestDataRange (..)
-
-    -- ** ReportStatusState
-    , ReportStatusState (..)
-
-    -- ** ParametersGroupBysItem
-    , ParametersGroupBysItem (..)
-
-    -- ** ReportFailureErrorCode
-    , ReportFailureErrorCode (..)
-
-    -- ** DownloadLineItemsRequestFormat
-    , DownloadLineItemsRequestFormat (..)
-
-    -- ** ReportFailure
-    , ReportFailure
-    , reportFailure
-    , rfErrorCode
-
-    -- ** ReportStatusFormat
-    , ReportStatusFormat (..)
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-import           Network.Google.Resource.DoubleClickBidManager.Lineitems.Downloadlineitems
-import           Network.Google.Resource.DoubleClickBidManager.Lineitems.Uploadlineitems
-import           Network.Google.Resource.DoubleClickBidManager.Queries.CreateQuery
-import           Network.Google.Resource.DoubleClickBidManager.Queries.DeleteQuery
-import           Network.Google.Resource.DoubleClickBidManager.Queries.GetQuery
-import           Network.Google.Resource.DoubleClickBidManager.Queries.Listqueries
-import           Network.Google.Resource.DoubleClickBidManager.Queries.RunQuery
-import           Network.Google.Resource.DoubleClickBidManager.Reports.Listreports
-import           Network.Google.Resource.DoubleClickBidManager.Sdf.Download
-
-{- $resources
-TODO
--}
-
--- | Represents the entirety of the methods and resources available for the DoubleClick Bid Manager API service.
-type DoubleClickBidsAPI =
-     QueriesGetQueryResource :<|> QueriesRunQueryResource
-       :<|> QueriesDeleteQueryResource
-       :<|> QueriesCreateQueryResource
-       :<|> QueriesListqueriesResource
-       :<|> ReportsListreportsResource
-       :<|> LineitemsUploadlineitemsResource
-       :<|> LineitemsDownloadlineitemsResource
-       :<|> SdfDownloadResource
diff --git a/gen/Network/Google/DoubleClickBids/Types.hs b/gen/Network/Google/DoubleClickBids/Types.hs
deleted file mode 100644
--- a/gen/Network/Google/DoubleClickBids/Types.hs
+++ /dev/null
@@ -1,253 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DoubleClickBids.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.DoubleClickBids.Types
-    (
-    -- * Service Configuration
-      doubleClickBidsService
-
-    -- * OAuth Scopes
-    , doubleClickBidManagerScope
-
-    -- * ListReportsResponse
-    , ListReportsResponse
-    , listReportsResponse
-    , lrrReports
-    , lrrKind
-
-    -- * QueryMetadataFormat
-    , QueryMetadataFormat (..)
-
-    -- * QueryMetadata
-    , QueryMetadata
-    , queryMetadata
-    , qmGoogleCloudStoragePathForLatestReport
-    , qmLocale
-    , qmFormat
-    , qmGoogleDrivePathForLatestReport
-    , qmShareEmailAddress
-    , qmRunning
-    , qmDataRange
-    , qmLatestReportRunTimeMs
-    , qmReportCount
-    , qmTitle
-    , qmSendNotification
-
-    -- * RunQueryRequest
-    , RunQueryRequest
-    , runQueryRequest
-    , rqrReportDataEndTimeMs
-    , rqrDataRange
-    , rqrReportDataStartTimeMs
-    , rqrTimezoneCode
-
-    -- * FilterPair
-    , FilterPair
-    , filterPair
-    , fpValue
-    , fpType
-
-    -- * UploadLineItemsRequest
-    , UploadLineItemsRequest
-    , uploadLineItemsRequest
-    , ulirLineItems
-    , ulirFormat
-    , ulirDryRun
-
-    -- * ParametersType
-    , ParametersType (..)
-
-    -- * DownloadLineItemsRequestFilterType
-    , DownloadLineItemsRequestFilterType (..)
-
-    -- * DownloadRequestFilterType
-    , DownloadRequestFilterType (..)
-
-    -- * DownloadLineItemsRequest
-    , DownloadLineItemsRequest
-    , downloadLineItemsRequest
-    , dlirFilterType
-    , dlirFormat
-    , dlirFileSpec
-    , dlirFilterIds
-
-    -- * DownloadRequestFileTypesItem
-    , DownloadRequestFileTypesItem (..)
-
-    -- * DownloadRequest
-    , DownloadRequest
-    , downloadRequest
-    , drFileTypes
-    , drFilterType
-    , drVersion
-    , drFilterIds
-
-    -- * ListQueriesResponse
-    , ListQueriesResponse
-    , listQueriesResponse
-    , lqrQueries
-    , lqrKind
-
-    -- * UploadLineItemsResponse
-    , UploadLineItemsResponse
-    , uploadLineItemsResponse
-    , ulirUploadStatus
-
-    -- * QueryMetadataDataRange
-    , QueryMetadataDataRange (..)
-
-    -- * ParametersMetricsItem
-    , ParametersMetricsItem (..)
-
-    -- * QueryScheduleFrequency
-    , QueryScheduleFrequency (..)
-
-    -- * ReportMetadata
-    , ReportMetadata
-    , reportMetadata
-    , rmStatus
-    , rmReportDataEndTimeMs
-    , rmGoogleCloudStoragePath
-    , rmReportDataStartTimeMs
-
-    -- * Report
-    , Report
-    , report
-    , rParams
-    , rKey
-    , rMetadata
-
-    -- * RowStatus
-    , RowStatus
-    , rowStatus
-    , rsEntityName
-    , rsChanged
-    , rsPersisted
-    , rsRowNumber
-    , rsErrors
-    , rsEntityId
-
-    -- * DownloadLineItemsRequestFileSpec
-    , DownloadLineItemsRequestFileSpec (..)
-
-    -- * ReportKey
-    , ReportKey
-    , reportKey
-    , rkQueryId
-    , rkReportId
-
-    -- * UploadLineItemsRequestFormat
-    , UploadLineItemsRequestFormat (..)
-
-    -- * UploadStatus
-    , UploadStatus
-    , uploadStatus
-    , usRowStatus
-    , usErrors
-
-    -- * QuerySchedule
-    , QuerySchedule
-    , querySchedule
-    , qsFrequency
-    , qsEndTimeMs
-    , qsNextRunMinuteOfDay
-    , qsNextRunTimezoneCode
-
-    -- * DownloadLineItemsResponse
-    , DownloadLineItemsResponse
-    , downloadLineItemsResponse
-    , dlirLineItems
-
-    -- * DownloadResponse
-    , DownloadResponse
-    , downloadResponse
-    , drInventorySources
-    , drInsertionOrders
-    , drCampaigns
-    , drLineItems
-    , drAdGroups
-    , drAds
-
-    -- * ReportStatus
-    , ReportStatus
-    , reportStatus
-    , rsState
-    , rsFinishTimeMs
-    , rsFormat
-    , rsFailure
-
-    -- * Query
-    , Query
-    , query
-    , qQueryId
-    , qReportDataEndTimeMs
-    , qSchedule
-    , qKind
-    , qParams
-    , qMetadata
-    , qReportDataStartTimeMs
-    , qTimezoneCode
-
-    -- * Parameters
-    , Parameters
-    , parameters
-    , pMetrics
-    , pIncludeInviteData
-    , pFilters
-    , pGroupBys
-    , pType
-
-    -- * FilterPairType
-    , FilterPairType (..)
-
-    -- * RunQueryRequestDataRange
-    , RunQueryRequestDataRange (..)
-
-    -- * ReportStatusState
-    , ReportStatusState (..)
-
-    -- * ParametersGroupBysItem
-    , ParametersGroupBysItem (..)
-
-    -- * ReportFailureErrorCode
-    , ReportFailureErrorCode (..)
-
-    -- * DownloadLineItemsRequestFormat
-    , DownloadLineItemsRequestFormat (..)
-
-    -- * ReportFailure
-    , ReportFailure
-    , reportFailure
-    , rfErrorCode
-
-    -- * ReportStatusFormat
-    , ReportStatusFormat (..)
-    ) where
-
-import           Network.Google.DoubleClickBids.Types.Product
-import           Network.Google.DoubleClickBids.Types.Sum
-import           Network.Google.Prelude
-
--- | Default request referring to version 'v1' of the DoubleClick Bid Manager API. This contains the host and root path used as a starting point for constructing service requests.
-doubleClickBidsService :: ServiceConfig
-doubleClickBidsService
-  = defaultService
-      (ServiceId "doubleclickbidmanager:v1")
-      "www.googleapis.com"
-
--- | View and manage your reports in DoubleClick Bid Manager
-doubleClickBidManagerScope :: Proxy '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-doubleClickBidManagerScope = Proxy
diff --git a/gen/Network/Google/DoubleClickBids/Types/Product.hs b/gen/Network/Google/DoubleClickBids/Types/Product.hs
deleted file mode 100644
--- a/gen/Network/Google/DoubleClickBids/Types/Product.hs
+++ /dev/null
@@ -1,1569 +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.DoubleClickBids.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.DoubleClickBids.Types.Product where
-
-import           Network.Google.DoubleClickBids.Types.Sum
-import           Network.Google.Prelude
-
--- | List reports response.
---
--- /See:/ 'listReportsResponse' smart constructor.
-data ListReportsResponse =
-  ListReportsResponse'
-    { _lrrReports :: !(Maybe [Report])
-    , _lrrKind    :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListReportsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lrrReports'
---
--- * 'lrrKind'
-listReportsResponse
-    :: ListReportsResponse
-listReportsResponse =
-  ListReportsResponse'
-    { _lrrReports = Nothing
-    , _lrrKind = "doubleclickbidmanager#listReportsResponse"
-    }
-
-
--- | Retrieved reports.
-lrrReports :: Lens' ListReportsResponse [Report]
-lrrReports
-  = lens _lrrReports (\ s a -> s{_lrrReports = a}) .
-      _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"doubleclickbidmanager#listReportsResponse\".
-lrrKind :: Lens' ListReportsResponse Text
-lrrKind = lens _lrrKind (\ s a -> s{_lrrKind = a})
-
-instance FromJSON ListReportsResponse where
-        parseJSON
-          = withObject "ListReportsResponse"
-              (\ o ->
-                 ListReportsResponse' <$>
-                   (o .:? "reports" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "doubleclickbidmanager#listReportsResponse"))
-
-instance ToJSON ListReportsResponse where
-        toJSON ListReportsResponse'{..}
-          = object
-              (catMaybes
-                 [("reports" .=) <$> _lrrReports,
-                  Just ("kind" .= _lrrKind)])
-
--- | Query metadata.
---
--- /See:/ 'queryMetadata' smart constructor.
-data QueryMetadata =
-  QueryMetadata'
-    { _qmGoogleCloudStoragePathForLatestReport :: !(Maybe Text)
-    , _qmLocale                                :: !(Maybe Text)
-    , _qmFormat                                :: !(Maybe QueryMetadataFormat)
-    , _qmGoogleDrivePathForLatestReport        :: !(Maybe Text)
-    , _qmShareEmailAddress                     :: !(Maybe [Text])
-    , _qmRunning                               :: !(Maybe Bool)
-    , _qmDataRange                             :: !(Maybe QueryMetadataDataRange)
-    , _qmLatestReportRunTimeMs                 :: !(Maybe (Textual Int64))
-    , _qmReportCount                           :: !(Maybe (Textual Int32))
-    , _qmTitle                                 :: !(Maybe Text)
-    , _qmSendNotification                      :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueryMetadata' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qmGoogleCloudStoragePathForLatestReport'
---
--- * 'qmLocale'
---
--- * 'qmFormat'
---
--- * 'qmGoogleDrivePathForLatestReport'
---
--- * 'qmShareEmailAddress'
---
--- * 'qmRunning'
---
--- * 'qmDataRange'
---
--- * 'qmLatestReportRunTimeMs'
---
--- * 'qmReportCount'
---
--- * 'qmTitle'
---
--- * 'qmSendNotification'
-queryMetadata
-    :: QueryMetadata
-queryMetadata =
-  QueryMetadata'
-    { _qmGoogleCloudStoragePathForLatestReport = Nothing
-    , _qmLocale = Nothing
-    , _qmFormat = Nothing
-    , _qmGoogleDrivePathForLatestReport = Nothing
-    , _qmShareEmailAddress = Nothing
-    , _qmRunning = Nothing
-    , _qmDataRange = Nothing
-    , _qmLatestReportRunTimeMs = Nothing
-    , _qmReportCount = Nothing
-    , _qmTitle = Nothing
-    , _qmSendNotification = Nothing
-    }
-
-
--- | The path to the location in Google Cloud Storage where the latest report
--- is stored.
-qmGoogleCloudStoragePathForLatestReport :: Lens' QueryMetadata (Maybe Text)
-qmGoogleCloudStoragePathForLatestReport
-  = lens _qmGoogleCloudStoragePathForLatestReport
-      (\ s a ->
-         s{_qmGoogleCloudStoragePathForLatestReport = a})
-
--- | Locale of the generated reports. Valid values are cs CZECH de GERMAN en
--- ENGLISH es SPANISH fr FRENCH it ITALIAN ja JAPANESE ko KOREAN pl POLISH
--- pt-BR BRAZILIAN_PORTUGUESE ru RUSSIAN tr TURKISH uk UKRAINIAN zh-CN
--- CHINA_CHINESE zh-TW TAIWAN_CHINESE An locale string not in the list
--- above will generate reports in English.
-qmLocale :: Lens' QueryMetadata (Maybe Text)
-qmLocale = lens _qmLocale (\ s a -> s{_qmLocale = a})
-
--- | Format of the generated report.
-qmFormat :: Lens' QueryMetadata (Maybe QueryMetadataFormat)
-qmFormat = lens _qmFormat (\ s a -> s{_qmFormat = a})
-
--- | The path in Google Drive for the latest report.
-qmGoogleDrivePathForLatestReport :: Lens' QueryMetadata (Maybe Text)
-qmGoogleDrivePathForLatestReport
-  = lens _qmGoogleDrivePathForLatestReport
-      (\ s a -> s{_qmGoogleDrivePathForLatestReport = a})
-
--- | List of email addresses which are sent email notifications when the
--- report is finished. Separate from sendNotification.
-qmShareEmailAddress :: Lens' QueryMetadata [Text]
-qmShareEmailAddress
-  = lens _qmShareEmailAddress
-      (\ s a -> s{_qmShareEmailAddress = a})
-      . _Default
-      . _Coerce
-
--- | Whether the latest report is currently running.
-qmRunning :: Lens' QueryMetadata (Maybe Bool)
-qmRunning
-  = lens _qmRunning (\ s a -> s{_qmRunning = a})
-
--- | Range of report data.
-qmDataRange :: Lens' QueryMetadata (Maybe QueryMetadataDataRange)
-qmDataRange
-  = lens _qmDataRange (\ s a -> s{_qmDataRange = a})
-
--- | The time when the latest report started to run.
-qmLatestReportRunTimeMs :: Lens' QueryMetadata (Maybe Int64)
-qmLatestReportRunTimeMs
-  = lens _qmLatestReportRunTimeMs
-      (\ s a -> s{_qmLatestReportRunTimeMs = a})
-      . mapping _Coerce
-
--- | Number of reports that have been generated for the query.
-qmReportCount :: Lens' QueryMetadata (Maybe Int32)
-qmReportCount
-  = lens _qmReportCount
-      (\ s a -> s{_qmReportCount = a})
-      . mapping _Coerce
-
--- | Query title. It is used to name the reports generated from this query.
-qmTitle :: Lens' QueryMetadata (Maybe Text)
-qmTitle = lens _qmTitle (\ s a -> s{_qmTitle = a})
-
--- | Whether to send an email notification when a report is ready. Default to
--- false.
-qmSendNotification :: Lens' QueryMetadata (Maybe Bool)
-qmSendNotification
-  = lens _qmSendNotification
-      (\ s a -> s{_qmSendNotification = a})
-
-instance FromJSON QueryMetadata where
-        parseJSON
-          = withObject "QueryMetadata"
-              (\ o ->
-                 QueryMetadata' <$>
-                   (o .:? "googleCloudStoragePathForLatestReport") <*>
-                     (o .:? "locale")
-                     <*> (o .:? "format")
-                     <*> (o .:? "googleDrivePathForLatestReport")
-                     <*> (o .:? "shareEmailAddress" .!= mempty)
-                     <*> (o .:? "running")
-                     <*> (o .:? "dataRange")
-                     <*> (o .:? "latestReportRunTimeMs")
-                     <*> (o .:? "reportCount")
-                     <*> (o .:? "title")
-                     <*> (o .:? "sendNotification"))
-
-instance ToJSON QueryMetadata where
-        toJSON QueryMetadata'{..}
-          = object
-              (catMaybes
-                 [("googleCloudStoragePathForLatestReport" .=) <$>
-                    _qmGoogleCloudStoragePathForLatestReport,
-                  ("locale" .=) <$> _qmLocale,
-                  ("format" .=) <$> _qmFormat,
-                  ("googleDrivePathForLatestReport" .=) <$>
-                    _qmGoogleDrivePathForLatestReport,
-                  ("shareEmailAddress" .=) <$> _qmShareEmailAddress,
-                  ("running" .=) <$> _qmRunning,
-                  ("dataRange" .=) <$> _qmDataRange,
-                  ("latestReportRunTimeMs" .=) <$>
-                    _qmLatestReportRunTimeMs,
-                  ("reportCount" .=) <$> _qmReportCount,
-                  ("title" .=) <$> _qmTitle,
-                  ("sendNotification" .=) <$> _qmSendNotification])
-
--- | Request to run a stored query to generate a report.
---
--- /See:/ 'runQueryRequest' smart constructor.
-data RunQueryRequest =
-  RunQueryRequest'
-    { _rqrReportDataEndTimeMs   :: !(Maybe (Textual Int64))
-    , _rqrDataRange             :: !(Maybe RunQueryRequestDataRange)
-    , _rqrReportDataStartTimeMs :: !(Maybe (Textual Int64))
-    , _rqrTimezoneCode          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RunQueryRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rqrReportDataEndTimeMs'
---
--- * 'rqrDataRange'
---
--- * 'rqrReportDataStartTimeMs'
---
--- * 'rqrTimezoneCode'
-runQueryRequest
-    :: RunQueryRequest
-runQueryRequest =
-  RunQueryRequest'
-    { _rqrReportDataEndTimeMs = Nothing
-    , _rqrDataRange = Nothing
-    , _rqrReportDataStartTimeMs = Nothing
-    , _rqrTimezoneCode = Nothing
-    }
-
-
--- | The ending time for the data that is shown in the report. Note,
--- reportDataEndTimeMs is required if dataRange is CUSTOM_DATES and ignored
--- otherwise.
-rqrReportDataEndTimeMs :: Lens' RunQueryRequest (Maybe Int64)
-rqrReportDataEndTimeMs
-  = lens _rqrReportDataEndTimeMs
-      (\ s a -> s{_rqrReportDataEndTimeMs = a})
-      . mapping _Coerce
-
--- | Report data range used to generate the report.
-rqrDataRange :: Lens' RunQueryRequest (Maybe RunQueryRequestDataRange)
-rqrDataRange
-  = lens _rqrDataRange (\ s a -> s{_rqrDataRange = a})
-
--- | The starting time for the data that is shown in the report. Note,
--- reportDataStartTimeMs is required if dataRange is CUSTOM_DATES and
--- ignored otherwise.
-rqrReportDataStartTimeMs :: Lens' RunQueryRequest (Maybe Int64)
-rqrReportDataStartTimeMs
-  = lens _rqrReportDataStartTimeMs
-      (\ s a -> s{_rqrReportDataStartTimeMs = a})
-      . mapping _Coerce
-
--- | Canonical timezone code for report data time. Defaults to
--- America\/New_York.
-rqrTimezoneCode :: Lens' RunQueryRequest (Maybe Text)
-rqrTimezoneCode
-  = lens _rqrTimezoneCode
-      (\ s a -> s{_rqrTimezoneCode = a})
-
-instance FromJSON RunQueryRequest where
-        parseJSON
-          = withObject "RunQueryRequest"
-              (\ o ->
-                 RunQueryRequest' <$>
-                   (o .:? "reportDataEndTimeMs") <*> (o .:? "dataRange")
-                     <*> (o .:? "reportDataStartTimeMs")
-                     <*> (o .:? "timezoneCode"))
-
-instance ToJSON RunQueryRequest where
-        toJSON RunQueryRequest'{..}
-          = object
-              (catMaybes
-                 [("reportDataEndTimeMs" .=) <$>
-                    _rqrReportDataEndTimeMs,
-                  ("dataRange" .=) <$> _rqrDataRange,
-                  ("reportDataStartTimeMs" .=) <$>
-                    _rqrReportDataStartTimeMs,
-                  ("timezoneCode" .=) <$> _rqrTimezoneCode])
-
--- | Filter used to match traffic data in your report.
---
--- /See:/ 'filterPair' smart constructor.
-data FilterPair =
-  FilterPair'
-    { _fpValue :: !(Maybe Text)
-    , _fpType  :: !(Maybe FilterPairType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FilterPair' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fpValue'
---
--- * 'fpType'
-filterPair
-    :: FilterPair
-filterPair = FilterPair' {_fpValue = Nothing, _fpType = Nothing}
-
-
--- | Filter value.
-fpValue :: Lens' FilterPair (Maybe Text)
-fpValue = lens _fpValue (\ s a -> s{_fpValue = a})
-
--- | Filter type.
-fpType :: Lens' FilterPair (Maybe FilterPairType)
-fpType = lens _fpType (\ s a -> s{_fpType = a})
-
-instance FromJSON FilterPair where
-        parseJSON
-          = withObject "FilterPair"
-              (\ o ->
-                 FilterPair' <$> (o .:? "value") <*> (o .:? "type"))
-
-instance ToJSON FilterPair where
-        toJSON FilterPair'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _fpValue, ("type" .=) <$> _fpType])
-
--- | Request to upload line items.
---
--- /See:/ 'uploadLineItemsRequest' smart constructor.
-data UploadLineItemsRequest =
-  UploadLineItemsRequest'
-    { _ulirLineItems :: !(Maybe Text)
-    , _ulirFormat    :: !(Maybe UploadLineItemsRequestFormat)
-    , _ulirDryRun    :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UploadLineItemsRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ulirLineItems'
---
--- * 'ulirFormat'
---
--- * 'ulirDryRun'
-uploadLineItemsRequest
-    :: UploadLineItemsRequest
-uploadLineItemsRequest =
-  UploadLineItemsRequest'
-    {_ulirLineItems = Nothing, _ulirFormat = Nothing, _ulirDryRun = Nothing}
-
-
--- | Line items in CSV to upload. Refer to Entity Write File Format for more
--- information on file format.
-ulirLineItems :: Lens' UploadLineItemsRequest (Maybe Text)
-ulirLineItems
-  = lens _ulirLineItems
-      (\ s a -> s{_ulirLineItems = a})
-
--- | Format the line items are in. Default to CSV.
-ulirFormat :: Lens' UploadLineItemsRequest (Maybe UploadLineItemsRequestFormat)
-ulirFormat
-  = lens _ulirFormat (\ s a -> s{_ulirFormat = a})
-
--- | Set to true to get upload status without actually persisting the line
--- items.
-ulirDryRun :: Lens' UploadLineItemsRequest (Maybe Bool)
-ulirDryRun
-  = lens _ulirDryRun (\ s a -> s{_ulirDryRun = a})
-
-instance FromJSON UploadLineItemsRequest where
-        parseJSON
-          = withObject "UploadLineItemsRequest"
-              (\ o ->
-                 UploadLineItemsRequest' <$>
-                   (o .:? "lineItems") <*> (o .:? "format") <*>
-                     (o .:? "dryRun"))
-
-instance ToJSON UploadLineItemsRequest where
-        toJSON UploadLineItemsRequest'{..}
-          = object
-              (catMaybes
-                 [("lineItems" .=) <$> _ulirLineItems,
-                  ("format" .=) <$> _ulirFormat,
-                  ("dryRun" .=) <$> _ulirDryRun])
-
--- | Request to fetch stored line items.
---
--- /See:/ 'downloadLineItemsRequest' smart constructor.
-data DownloadLineItemsRequest =
-  DownloadLineItemsRequest'
-    { _dlirFilterType :: !(Maybe DownloadLineItemsRequestFilterType)
-    , _dlirFormat     :: !(Maybe DownloadLineItemsRequestFormat)
-    , _dlirFileSpec   :: !(Maybe DownloadLineItemsRequestFileSpec)
-    , _dlirFilterIds  :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DownloadLineItemsRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dlirFilterType'
---
--- * 'dlirFormat'
---
--- * 'dlirFileSpec'
---
--- * 'dlirFilterIds'
-downloadLineItemsRequest
-    :: DownloadLineItemsRequest
-downloadLineItemsRequest =
-  DownloadLineItemsRequest'
-    { _dlirFilterType = Nothing
-    , _dlirFormat = Nothing
-    , _dlirFileSpec = Nothing
-    , _dlirFilterIds = Nothing
-    }
-
-
--- | Filter type used to filter line items to fetch.
-dlirFilterType :: Lens' DownloadLineItemsRequest (Maybe DownloadLineItemsRequestFilterType)
-dlirFilterType
-  = lens _dlirFilterType
-      (\ s a -> s{_dlirFilterType = a})
-
--- | Format in which the line items will be returned. Default to CSV.
-dlirFormat :: Lens' DownloadLineItemsRequest (Maybe DownloadLineItemsRequestFormat)
-dlirFormat
-  = lens _dlirFormat (\ s a -> s{_dlirFormat = a})
-
--- | File specification (column names, types, order) in which the line items
--- will be returned. Default to EWF.
-dlirFileSpec :: Lens' DownloadLineItemsRequest (Maybe DownloadLineItemsRequestFileSpec)
-dlirFileSpec
-  = lens _dlirFileSpec (\ s a -> s{_dlirFileSpec = a})
-
--- | Ids of the specified filter type used to filter line items to fetch. If
--- omitted, all the line items will be returned.
-dlirFilterIds :: Lens' DownloadLineItemsRequest [Int64]
-dlirFilterIds
-  = lens _dlirFilterIds
-      (\ s a -> s{_dlirFilterIds = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON DownloadLineItemsRequest where
-        parseJSON
-          = withObject "DownloadLineItemsRequest"
-              (\ o ->
-                 DownloadLineItemsRequest' <$>
-                   (o .:? "filterType") <*> (o .:? "format") <*>
-                     (o .:? "fileSpec")
-                     <*> (o .:? "filterIds" .!= mempty))
-
-instance ToJSON DownloadLineItemsRequest where
-        toJSON DownloadLineItemsRequest'{..}
-          = object
-              (catMaybes
-                 [("filterType" .=) <$> _dlirFilterType,
-                  ("format" .=) <$> _dlirFormat,
-                  ("fileSpec" .=) <$> _dlirFileSpec,
-                  ("filterIds" .=) <$> _dlirFilterIds])
-
--- | Request to fetch stored inventory sources, campaigns, insertion orders,
--- line items, TrueView ad groups and ads.
---
--- /See:/ 'downloadRequest' smart constructor.
-data DownloadRequest =
-  DownloadRequest'
-    { _drFileTypes  :: !(Maybe [DownloadRequestFileTypesItem])
-    , _drFilterType :: !(Maybe DownloadRequestFilterType)
-    , _drVersion    :: !(Maybe Text)
-    , _drFilterIds  :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DownloadRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'drFileTypes'
---
--- * 'drFilterType'
---
--- * 'drVersion'
---
--- * 'drFilterIds'
-downloadRequest
-    :: DownloadRequest
-downloadRequest =
-  DownloadRequest'
-    { _drFileTypes = Nothing
-    , _drFilterType = Nothing
-    , _drVersion = Nothing
-    , _drFilterIds = Nothing
-    }
-
-
--- | File types that will be returned. If INVENTORY_SOURCE is requested, no
--- other file types may be requested. Acceptable values are: - \"AD\" -
--- \"AD_GROUP\" - \"CAMPAIGN\" - \"INSERTION_ORDER\" - \"INVENTORY_SOURCE\"
--- - \"LINE_ITEM\"
-drFileTypes :: Lens' DownloadRequest [DownloadRequestFileTypesItem]
-drFileTypes
-  = lens _drFileTypes (\ s a -> s{_drFileTypes = a}) .
-      _Default
-      . _Coerce
-
--- | Filter type used to filter entities to fetch. PARTNER_ID and
--- INVENTORY_SOURCE_ID may only be used when downloading inventory sources.
-drFilterType :: Lens' DownloadRequest (Maybe DownloadRequestFilterType)
-drFilterType
-  = lens _drFilterType (\ s a -> s{_drFilterType = a})
-
--- | SDF Version (column names, types, order) in which the entities will be
--- returned. Default to 3.1.
-drVersion :: Lens' DownloadRequest (Maybe Text)
-drVersion
-  = lens _drVersion (\ s a -> s{_drVersion = a})
-
--- | The IDs of the specified filter type. This is used to filter entities to
--- fetch. At least one ID must be specified.
-drFilterIds :: Lens' DownloadRequest [Int64]
-drFilterIds
-  = lens _drFilterIds (\ s a -> s{_drFilterIds = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON DownloadRequest where
-        parseJSON
-          = withObject "DownloadRequest"
-              (\ o ->
-                 DownloadRequest' <$>
-                   (o .:? "fileTypes" .!= mempty) <*>
-                     (o .:? "filterType")
-                     <*> (o .:? "version")
-                     <*> (o .:? "filterIds" .!= mempty))
-
-instance ToJSON DownloadRequest where
-        toJSON DownloadRequest'{..}
-          = object
-              (catMaybes
-                 [("fileTypes" .=) <$> _drFileTypes,
-                  ("filterType" .=) <$> _drFilterType,
-                  ("version" .=) <$> _drVersion,
-                  ("filterIds" .=) <$> _drFilterIds])
-
--- | List queries response.
---
--- /See:/ 'listQueriesResponse' smart constructor.
-data ListQueriesResponse =
-  ListQueriesResponse'
-    { _lqrQueries :: !(Maybe [Query])
-    , _lqrKind    :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListQueriesResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lqrQueries'
---
--- * 'lqrKind'
-listQueriesResponse
-    :: ListQueriesResponse
-listQueriesResponse =
-  ListQueriesResponse'
-    { _lqrQueries = Nothing
-    , _lqrKind = "doubleclickbidmanager#listQueriesResponse"
-    }
-
-
--- | Retrieved queries.
-lqrQueries :: Lens' ListQueriesResponse [Query]
-lqrQueries
-  = lens _lqrQueries (\ s a -> s{_lqrQueries = a}) .
-      _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"doubleclickbidmanager#listQueriesResponse\".
-lqrKind :: Lens' ListQueriesResponse Text
-lqrKind = lens _lqrKind (\ s a -> s{_lqrKind = a})
-
-instance FromJSON ListQueriesResponse where
-        parseJSON
-          = withObject "ListQueriesResponse"
-              (\ o ->
-                 ListQueriesResponse' <$>
-                   (o .:? "queries" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "doubleclickbidmanager#listQueriesResponse"))
-
-instance ToJSON ListQueriesResponse where
-        toJSON ListQueriesResponse'{..}
-          = object
-              (catMaybes
-                 [("queries" .=) <$> _lqrQueries,
-                  Just ("kind" .= _lqrKind)])
-
--- | Upload line items response.
---
--- /See:/ 'uploadLineItemsResponse' smart constructor.
-newtype UploadLineItemsResponse =
-  UploadLineItemsResponse'
-    { _ulirUploadStatus :: Maybe UploadStatus
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UploadLineItemsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ulirUploadStatus'
-uploadLineItemsResponse
-    :: UploadLineItemsResponse
-uploadLineItemsResponse = UploadLineItemsResponse' {_ulirUploadStatus = Nothing}
-
-
--- | Status of upload.
-ulirUploadStatus :: Lens' UploadLineItemsResponse (Maybe UploadStatus)
-ulirUploadStatus
-  = lens _ulirUploadStatus
-      (\ s a -> s{_ulirUploadStatus = a})
-
-instance FromJSON UploadLineItemsResponse where
-        parseJSON
-          = withObject "UploadLineItemsResponse"
-              (\ o ->
-                 UploadLineItemsResponse' <$> (o .:? "uploadStatus"))
-
-instance ToJSON UploadLineItemsResponse where
-        toJSON UploadLineItemsResponse'{..}
-          = object
-              (catMaybes
-                 [("uploadStatus" .=) <$> _ulirUploadStatus])
-
--- | Report metadata.
---
--- /See:/ 'reportMetadata' smart constructor.
-data ReportMetadata =
-  ReportMetadata'
-    { _rmStatus                 :: !(Maybe ReportStatus)
-    , _rmReportDataEndTimeMs    :: !(Maybe (Textual Int64))
-    , _rmGoogleCloudStoragePath :: !(Maybe Text)
-    , _rmReportDataStartTimeMs  :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportMetadata' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rmStatus'
---
--- * 'rmReportDataEndTimeMs'
---
--- * 'rmGoogleCloudStoragePath'
---
--- * 'rmReportDataStartTimeMs'
-reportMetadata
-    :: ReportMetadata
-reportMetadata =
-  ReportMetadata'
-    { _rmStatus = Nothing
-    , _rmReportDataEndTimeMs = Nothing
-    , _rmGoogleCloudStoragePath = Nothing
-    , _rmReportDataStartTimeMs = Nothing
-    }
-
-
--- | Report status.
-rmStatus :: Lens' ReportMetadata (Maybe ReportStatus)
-rmStatus = lens _rmStatus (\ s a -> s{_rmStatus = a})
-
--- | The ending time for the data that is shown in the report.
-rmReportDataEndTimeMs :: Lens' ReportMetadata (Maybe Int64)
-rmReportDataEndTimeMs
-  = lens _rmReportDataEndTimeMs
-      (\ s a -> s{_rmReportDataEndTimeMs = a})
-      . mapping _Coerce
-
--- | The path to the location in Google Cloud Storage where the report is
--- stored.
-rmGoogleCloudStoragePath :: Lens' ReportMetadata (Maybe Text)
-rmGoogleCloudStoragePath
-  = lens _rmGoogleCloudStoragePath
-      (\ s a -> s{_rmGoogleCloudStoragePath = a})
-
--- | The starting time for the data that is shown in the report.
-rmReportDataStartTimeMs :: Lens' ReportMetadata (Maybe Int64)
-rmReportDataStartTimeMs
-  = lens _rmReportDataStartTimeMs
-      (\ s a -> s{_rmReportDataStartTimeMs = a})
-      . mapping _Coerce
-
-instance FromJSON ReportMetadata where
-        parseJSON
-          = withObject "ReportMetadata"
-              (\ o ->
-                 ReportMetadata' <$>
-                   (o .:? "status") <*> (o .:? "reportDataEndTimeMs")
-                     <*> (o .:? "googleCloudStoragePath")
-                     <*> (o .:? "reportDataStartTimeMs"))
-
-instance ToJSON ReportMetadata where
-        toJSON ReportMetadata'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _rmStatus,
-                  ("reportDataEndTimeMs" .=) <$>
-                    _rmReportDataEndTimeMs,
-                  ("googleCloudStoragePath" .=) <$>
-                    _rmGoogleCloudStoragePath,
-                  ("reportDataStartTimeMs" .=) <$>
-                    _rmReportDataStartTimeMs])
-
--- | Represents a report.
---
--- /See:/ 'report' smart constructor.
-data Report =
-  Report'
-    { _rParams   :: !(Maybe Parameters)
-    , _rKey      :: !(Maybe ReportKey)
-    , _rMetadata :: !(Maybe ReportMetadata)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Report' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rParams'
---
--- * 'rKey'
---
--- * 'rMetadata'
-report
-    :: Report
-report = Report' {_rParams = Nothing, _rKey = Nothing, _rMetadata = Nothing}
-
-
--- | Report parameters.
-rParams :: Lens' Report (Maybe Parameters)
-rParams = lens _rParams (\ s a -> s{_rParams = a})
-
--- | Key used to identify a report.
-rKey :: Lens' Report (Maybe ReportKey)
-rKey = lens _rKey (\ s a -> s{_rKey = a})
-
--- | Report metadata.
-rMetadata :: Lens' Report (Maybe ReportMetadata)
-rMetadata
-  = lens _rMetadata (\ s a -> s{_rMetadata = a})
-
-instance FromJSON Report where
-        parseJSON
-          = withObject "Report"
-              (\ o ->
-                 Report' <$>
-                   (o .:? "params") <*> (o .:? "key") <*>
-                     (o .:? "metadata"))
-
-instance ToJSON Report where
-        toJSON Report'{..}
-          = object
-              (catMaybes
-                 [("params" .=) <$> _rParams, ("key" .=) <$> _rKey,
-                  ("metadata" .=) <$> _rMetadata])
-
--- | Represents the upload status of a row in the request.
---
--- /See:/ 'rowStatus' smart constructor.
-data RowStatus =
-  RowStatus'
-    { _rsEntityName :: !(Maybe Text)
-    , _rsChanged    :: !(Maybe Bool)
-    , _rsPersisted  :: !(Maybe Bool)
-    , _rsRowNumber  :: !(Maybe (Textual Int32))
-    , _rsErrors     :: !(Maybe [Text])
-    , _rsEntityId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RowStatus' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rsEntityName'
---
--- * 'rsChanged'
---
--- * 'rsPersisted'
---
--- * 'rsRowNumber'
---
--- * 'rsErrors'
---
--- * 'rsEntityId'
-rowStatus
-    :: RowStatus
-rowStatus =
-  RowStatus'
-    { _rsEntityName = Nothing
-    , _rsChanged = Nothing
-    , _rsPersisted = Nothing
-    , _rsRowNumber = Nothing
-    , _rsErrors = Nothing
-    , _rsEntityId = Nothing
-    }
-
-
--- | Entity name.
-rsEntityName :: Lens' RowStatus (Maybe Text)
-rsEntityName
-  = lens _rsEntityName (\ s a -> s{_rsEntityName = a})
-
--- | Whether the stored entity is changed as a result of upload.
-rsChanged :: Lens' RowStatus (Maybe Bool)
-rsChanged
-  = lens _rsChanged (\ s a -> s{_rsChanged = a})
-
--- | Whether the entity is persisted.
-rsPersisted :: Lens' RowStatus (Maybe Bool)
-rsPersisted
-  = lens _rsPersisted (\ s a -> s{_rsPersisted = a})
-
--- | Row number.
-rsRowNumber :: Lens' RowStatus (Maybe Int32)
-rsRowNumber
-  = lens _rsRowNumber (\ s a -> s{_rsRowNumber = a}) .
-      mapping _Coerce
-
--- | Reasons why the entity can\'t be uploaded.
-rsErrors :: Lens' RowStatus [Text]
-rsErrors
-  = lens _rsErrors (\ s a -> s{_rsErrors = a}) .
-      _Default
-      . _Coerce
-
--- | Entity Id.
-rsEntityId :: Lens' RowStatus (Maybe Int64)
-rsEntityId
-  = lens _rsEntityId (\ s a -> s{_rsEntityId = a}) .
-      mapping _Coerce
-
-instance FromJSON RowStatus where
-        parseJSON
-          = withObject "RowStatus"
-              (\ o ->
-                 RowStatus' <$>
-                   (o .:? "entityName") <*> (o .:? "changed") <*>
-                     (o .:? "persisted")
-                     <*> (o .:? "rowNumber")
-                     <*> (o .:? "errors" .!= mempty)
-                     <*> (o .:? "entityId"))
-
-instance ToJSON RowStatus where
-        toJSON RowStatus'{..}
-          = object
-              (catMaybes
-                 [("entityName" .=) <$> _rsEntityName,
-                  ("changed" .=) <$> _rsChanged,
-                  ("persisted" .=) <$> _rsPersisted,
-                  ("rowNumber" .=) <$> _rsRowNumber,
-                  ("errors" .=) <$> _rsErrors,
-                  ("entityId" .=) <$> _rsEntityId])
-
--- | Key used to identify a report.
---
--- /See:/ 'reportKey' smart constructor.
-data ReportKey =
-  ReportKey'
-    { _rkQueryId  :: !(Maybe (Textual Int64))
-    , _rkReportId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportKey' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rkQueryId'
---
--- * 'rkReportId'
-reportKey
-    :: ReportKey
-reportKey = ReportKey' {_rkQueryId = Nothing, _rkReportId = Nothing}
-
-
--- | Query ID.
-rkQueryId :: Lens' ReportKey (Maybe Int64)
-rkQueryId
-  = lens _rkQueryId (\ s a -> s{_rkQueryId = a}) .
-      mapping _Coerce
-
--- | Report ID.
-rkReportId :: Lens' ReportKey (Maybe Int64)
-rkReportId
-  = lens _rkReportId (\ s a -> s{_rkReportId = a}) .
-      mapping _Coerce
-
-instance FromJSON ReportKey where
-        parseJSON
-          = withObject "ReportKey"
-              (\ o ->
-                 ReportKey' <$>
-                   (o .:? "queryId") <*> (o .:? "reportId"))
-
-instance ToJSON ReportKey where
-        toJSON ReportKey'{..}
-          = object
-              (catMaybes
-                 [("queryId" .=) <$> _rkQueryId,
-                  ("reportId" .=) <$> _rkReportId])
-
--- | Represents the status of upload.
---
--- /See:/ 'uploadStatus' smart constructor.
-data UploadStatus =
-  UploadStatus'
-    { _usRowStatus :: !(Maybe [RowStatus])
-    , _usErrors    :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UploadStatus' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'usRowStatus'
---
--- * 'usErrors'
-uploadStatus
-    :: UploadStatus
-uploadStatus = UploadStatus' {_usRowStatus = Nothing, _usErrors = Nothing}
-
-
--- | Per-row upload status.
-usRowStatus :: Lens' UploadStatus [RowStatus]
-usRowStatus
-  = lens _usRowStatus (\ s a -> s{_usRowStatus = a}) .
-      _Default
-      . _Coerce
-
--- | Reasons why upload can\'t be completed.
-usErrors :: Lens' UploadStatus [Text]
-usErrors
-  = lens _usErrors (\ s a -> s{_usErrors = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON UploadStatus where
-        parseJSON
-          = withObject "UploadStatus"
-              (\ o ->
-                 UploadStatus' <$>
-                   (o .:? "rowStatus" .!= mempty) <*>
-                     (o .:? "errors" .!= mempty))
-
-instance ToJSON UploadStatus where
-        toJSON UploadStatus'{..}
-          = object
-              (catMaybes
-                 [("rowStatus" .=) <$> _usRowStatus,
-                  ("errors" .=) <$> _usErrors])
-
--- | Information on how frequently and when to run a query.
---
--- /See:/ 'querySchedule' smart constructor.
-data QuerySchedule =
-  QuerySchedule'
-    { _qsFrequency           :: !(Maybe QueryScheduleFrequency)
-    , _qsEndTimeMs           :: !(Maybe (Textual Int64))
-    , _qsNextRunMinuteOfDay  :: !(Maybe (Textual Int32))
-    , _qsNextRunTimezoneCode :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QuerySchedule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qsFrequency'
---
--- * 'qsEndTimeMs'
---
--- * 'qsNextRunMinuteOfDay'
---
--- * 'qsNextRunTimezoneCode'
-querySchedule
-    :: QuerySchedule
-querySchedule =
-  QuerySchedule'
-    { _qsFrequency = Nothing
-    , _qsEndTimeMs = Nothing
-    , _qsNextRunMinuteOfDay = Nothing
-    , _qsNextRunTimezoneCode = Nothing
-    }
-
-
--- | How often the query is run.
-qsFrequency :: Lens' QuerySchedule (Maybe QueryScheduleFrequency)
-qsFrequency
-  = lens _qsFrequency (\ s a -> s{_qsFrequency = a})
-
--- | Datetime to periodically run the query until.
-qsEndTimeMs :: Lens' QuerySchedule (Maybe Int64)
-qsEndTimeMs
-  = lens _qsEndTimeMs (\ s a -> s{_qsEndTimeMs = a}) .
-      mapping _Coerce
-
--- | Time of day at which a new report will be generated, represented as
--- minutes past midnight. Range is 0 to 1439. Only applies to scheduled
--- reports.
-qsNextRunMinuteOfDay :: Lens' QuerySchedule (Maybe Int32)
-qsNextRunMinuteOfDay
-  = lens _qsNextRunMinuteOfDay
-      (\ s a -> s{_qsNextRunMinuteOfDay = a})
-      . mapping _Coerce
-
--- | Canonical timezone code for report generation time. Defaults to
--- America\/New_York.
-qsNextRunTimezoneCode :: Lens' QuerySchedule (Maybe Text)
-qsNextRunTimezoneCode
-  = lens _qsNextRunTimezoneCode
-      (\ s a -> s{_qsNextRunTimezoneCode = a})
-
-instance FromJSON QuerySchedule where
-        parseJSON
-          = withObject "QuerySchedule"
-              (\ o ->
-                 QuerySchedule' <$>
-                   (o .:? "frequency") <*> (o .:? "endTimeMs") <*>
-                     (o .:? "nextRunMinuteOfDay")
-                     <*> (o .:? "nextRunTimezoneCode"))
-
-instance ToJSON QuerySchedule where
-        toJSON QuerySchedule'{..}
-          = object
-              (catMaybes
-                 [("frequency" .=) <$> _qsFrequency,
-                  ("endTimeMs" .=) <$> _qsEndTimeMs,
-                  ("nextRunMinuteOfDay" .=) <$> _qsNextRunMinuteOfDay,
-                  ("nextRunTimezoneCode" .=) <$>
-                    _qsNextRunTimezoneCode])
-
--- | Download line items response.
---
--- /See:/ 'downloadLineItemsResponse' smart constructor.
-newtype DownloadLineItemsResponse =
-  DownloadLineItemsResponse'
-    { _dlirLineItems :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DownloadLineItemsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dlirLineItems'
-downloadLineItemsResponse
-    :: DownloadLineItemsResponse
-downloadLineItemsResponse =
-  DownloadLineItemsResponse' {_dlirLineItems = Nothing}
-
-
--- | Retrieved line items in CSV format. For more information about file
--- formats, see Entity Write File Format.
-dlirLineItems :: Lens' DownloadLineItemsResponse (Maybe Text)
-dlirLineItems
-  = lens _dlirLineItems
-      (\ s a -> s{_dlirLineItems = a})
-
-instance FromJSON DownloadLineItemsResponse where
-        parseJSON
-          = withObject "DownloadLineItemsResponse"
-              (\ o ->
-                 DownloadLineItemsResponse' <$> (o .:? "lineItems"))
-
-instance ToJSON DownloadLineItemsResponse where
-        toJSON DownloadLineItemsResponse'{..}
-          = object
-              (catMaybes [("lineItems" .=) <$> _dlirLineItems])
-
--- | Download response.
---
--- /See:/ 'downloadResponse' smart constructor.
-data DownloadResponse =
-  DownloadResponse'
-    { _drInventorySources :: !(Maybe Text)
-    , _drInsertionOrders  :: !(Maybe Text)
-    , _drCampaigns        :: !(Maybe Text)
-    , _drLineItems        :: !(Maybe Text)
-    , _drAdGroups         :: !(Maybe Text)
-    , _drAds              :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DownloadResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'drInventorySources'
---
--- * 'drInsertionOrders'
---
--- * 'drCampaigns'
---
--- * 'drLineItems'
---
--- * 'drAdGroups'
---
--- * 'drAds'
-downloadResponse
-    :: DownloadResponse
-downloadResponse =
-  DownloadResponse'
-    { _drInventorySources = Nothing
-    , _drInsertionOrders = Nothing
-    , _drCampaigns = Nothing
-    , _drLineItems = Nothing
-    , _drAdGroups = Nothing
-    , _drAds = Nothing
-    }
-
-
-drInventorySources :: Lens' DownloadResponse (Maybe Text)
-drInventorySources
-  = lens _drInventorySources
-      (\ s a -> s{_drInventorySources = a})
-
--- | Retrieved insertion orders in SDF format.
-drInsertionOrders :: Lens' DownloadResponse (Maybe Text)
-drInsertionOrders
-  = lens _drInsertionOrders
-      (\ s a -> s{_drInsertionOrders = a})
-
--- | Retrieved campaigns in SDF format.
-drCampaigns :: Lens' DownloadResponse (Maybe Text)
-drCampaigns
-  = lens _drCampaigns (\ s a -> s{_drCampaigns = a})
-
--- | Retrieved line items in SDF format.
-drLineItems :: Lens' DownloadResponse (Maybe Text)
-drLineItems
-  = lens _drLineItems (\ s a -> s{_drLineItems = a})
-
--- | Retrieved ad groups in SDF format.
-drAdGroups :: Lens' DownloadResponse (Maybe Text)
-drAdGroups
-  = lens _drAdGroups (\ s a -> s{_drAdGroups = a})
-
--- | Retrieved ads in SDF format.
-drAds :: Lens' DownloadResponse (Maybe Text)
-drAds = lens _drAds (\ s a -> s{_drAds = a})
-
-instance FromJSON DownloadResponse where
-        parseJSON
-          = withObject "DownloadResponse"
-              (\ o ->
-                 DownloadResponse' <$>
-                   (o .:? "inventorySources") <*>
-                     (o .:? "insertionOrders")
-                     <*> (o .:? "campaigns")
-                     <*> (o .:? "lineItems")
-                     <*> (o .:? "adGroups")
-                     <*> (o .:? "ads"))
-
-instance ToJSON DownloadResponse where
-        toJSON DownloadResponse'{..}
-          = object
-              (catMaybes
-                 [("inventorySources" .=) <$> _drInventorySources,
-                  ("insertionOrders" .=) <$> _drInsertionOrders,
-                  ("campaigns" .=) <$> _drCampaigns,
-                  ("lineItems" .=) <$> _drLineItems,
-                  ("adGroups" .=) <$> _drAdGroups,
-                  ("ads" .=) <$> _drAds])
-
--- | Report status.
---
--- /See:/ 'reportStatus' smart constructor.
-data ReportStatus =
-  ReportStatus'
-    { _rsState        :: !(Maybe ReportStatusState)
-    , _rsFinishTimeMs :: !(Maybe (Textual Int64))
-    , _rsFormat       :: !(Maybe ReportStatusFormat)
-    , _rsFailure      :: !(Maybe ReportFailure)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportStatus' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rsState'
---
--- * 'rsFinishTimeMs'
---
--- * 'rsFormat'
---
--- * 'rsFailure'
-reportStatus
-    :: ReportStatus
-reportStatus =
-  ReportStatus'
-    { _rsState = Nothing
-    , _rsFinishTimeMs = Nothing
-    , _rsFormat = Nothing
-    , _rsFailure = Nothing
-    }
-
-
--- | The state of the report.
-rsState :: Lens' ReportStatus (Maybe ReportStatusState)
-rsState = lens _rsState (\ s a -> s{_rsState = a})
-
--- | The time when this report either completed successfully or failed.
-rsFinishTimeMs :: Lens' ReportStatus (Maybe Int64)
-rsFinishTimeMs
-  = lens _rsFinishTimeMs
-      (\ s a -> s{_rsFinishTimeMs = a})
-      . mapping _Coerce
-
--- | The file type of the report.
-rsFormat :: Lens' ReportStatus (Maybe ReportStatusFormat)
-rsFormat = lens _rsFormat (\ s a -> s{_rsFormat = a})
-
--- | If the report failed, this records the cause.
-rsFailure :: Lens' ReportStatus (Maybe ReportFailure)
-rsFailure
-  = lens _rsFailure (\ s a -> s{_rsFailure = a})
-
-instance FromJSON ReportStatus where
-        parseJSON
-          = withObject "ReportStatus"
-              (\ o ->
-                 ReportStatus' <$>
-                   (o .:? "state") <*> (o .:? "finishTimeMs") <*>
-                     (o .:? "format")
-                     <*> (o .:? "failure"))
-
-instance ToJSON ReportStatus where
-        toJSON ReportStatus'{..}
-          = object
-              (catMaybes
-                 [("state" .=) <$> _rsState,
-                  ("finishTimeMs" .=) <$> _rsFinishTimeMs,
-                  ("format" .=) <$> _rsFormat,
-                  ("failure" .=) <$> _rsFailure])
-
--- | Represents a query.
---
--- /See:/ 'query' smart constructor.
-data Query =
-  Query'
-    { _qQueryId               :: !(Maybe (Textual Int64))
-    , _qReportDataEndTimeMs   :: !(Maybe (Textual Int64))
-    , _qSchedule              :: !(Maybe QuerySchedule)
-    , _qKind                  :: !Text
-    , _qParams                :: !(Maybe Parameters)
-    , _qMetadata              :: !(Maybe QueryMetadata)
-    , _qReportDataStartTimeMs :: !(Maybe (Textual Int64))
-    , _qTimezoneCode          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Query' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qQueryId'
---
--- * 'qReportDataEndTimeMs'
---
--- * 'qSchedule'
---
--- * 'qKind'
---
--- * 'qParams'
---
--- * 'qMetadata'
---
--- * 'qReportDataStartTimeMs'
---
--- * 'qTimezoneCode'
-query
-    :: Query
-query =
-  Query'
-    { _qQueryId = Nothing
-    , _qReportDataEndTimeMs = Nothing
-    , _qSchedule = Nothing
-    , _qKind = "doubleclickbidmanager#query"
-    , _qParams = Nothing
-    , _qMetadata = Nothing
-    , _qReportDataStartTimeMs = Nothing
-    , _qTimezoneCode = Nothing
-    }
-
-
--- | Query ID.
-qQueryId :: Lens' Query (Maybe Int64)
-qQueryId
-  = lens _qQueryId (\ s a -> s{_qQueryId = a}) .
-      mapping _Coerce
-
--- | The ending time for the data that is shown in the report. Note,
--- reportDataEndTimeMs is required if metadata.dataRange is CUSTOM_DATES
--- and ignored otherwise.
-qReportDataEndTimeMs :: Lens' Query (Maybe Int64)
-qReportDataEndTimeMs
-  = lens _qReportDataEndTimeMs
-      (\ s a -> s{_qReportDataEndTimeMs = a})
-      . mapping _Coerce
-
--- | Information on how often and when to run a query.
-qSchedule :: Lens' Query (Maybe QuerySchedule)
-qSchedule
-  = lens _qSchedule (\ s a -> s{_qSchedule = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"doubleclickbidmanager#query\".
-qKind :: Lens' Query Text
-qKind = lens _qKind (\ s a -> s{_qKind = a})
-
--- | Query parameters.
-qParams :: Lens' Query (Maybe Parameters)
-qParams = lens _qParams (\ s a -> s{_qParams = a})
-
--- | Query metadata.
-qMetadata :: Lens' Query (Maybe QueryMetadata)
-qMetadata
-  = lens _qMetadata (\ s a -> s{_qMetadata = a})
-
--- | The starting time for the data that is shown in the report. Note,
--- reportDataStartTimeMs is required if metadata.dataRange is CUSTOM_DATES
--- and ignored otherwise.
-qReportDataStartTimeMs :: Lens' Query (Maybe Int64)
-qReportDataStartTimeMs
-  = lens _qReportDataStartTimeMs
-      (\ s a -> s{_qReportDataStartTimeMs = a})
-      . mapping _Coerce
-
--- | Canonical timezone code for report data time. Defaults to
--- America\/New_York.
-qTimezoneCode :: Lens' Query (Maybe Text)
-qTimezoneCode
-  = lens _qTimezoneCode
-      (\ s a -> s{_qTimezoneCode = a})
-
-instance FromJSON Query where
-        parseJSON
-          = withObject "Query"
-              (\ o ->
-                 Query' <$>
-                   (o .:? "queryId") <*> (o .:? "reportDataEndTimeMs")
-                     <*> (o .:? "schedule")
-                     <*> (o .:? "kind" .!= "doubleclickbidmanager#query")
-                     <*> (o .:? "params")
-                     <*> (o .:? "metadata")
-                     <*> (o .:? "reportDataStartTimeMs")
-                     <*> (o .:? "timezoneCode"))
-
-instance ToJSON Query where
-        toJSON Query'{..}
-          = object
-              (catMaybes
-                 [("queryId" .=) <$> _qQueryId,
-                  ("reportDataEndTimeMs" .=) <$> _qReportDataEndTimeMs,
-                  ("schedule" .=) <$> _qSchedule,
-                  Just ("kind" .= _qKind), ("params" .=) <$> _qParams,
-                  ("metadata" .=) <$> _qMetadata,
-                  ("reportDataStartTimeMs" .=) <$>
-                    _qReportDataStartTimeMs,
-                  ("timezoneCode" .=) <$> _qTimezoneCode])
-
--- | Parameters of a query or report.
---
--- /See:/ 'parameters' smart constructor.
-data Parameters =
-  Parameters'
-    { _pMetrics           :: !(Maybe [ParametersMetricsItem])
-    , _pIncludeInviteData :: !(Maybe Bool)
-    , _pFilters           :: !(Maybe [FilterPair])
-    , _pGroupBys          :: !(Maybe [ParametersGroupBysItem])
-    , _pType              :: !(Maybe ParametersType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Parameters' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pMetrics'
---
--- * 'pIncludeInviteData'
---
--- * 'pFilters'
---
--- * 'pGroupBys'
---
--- * 'pType'
-parameters
-    :: Parameters
-parameters =
-  Parameters'
-    { _pMetrics = Nothing
-    , _pIncludeInviteData = Nothing
-    , _pFilters = Nothing
-    , _pGroupBys = Nothing
-    , _pType = Nothing
-    }
-
-
--- | Metrics to include as columns in your report.
-pMetrics :: Lens' Parameters [ParametersMetricsItem]
-pMetrics
-  = lens _pMetrics (\ s a -> s{_pMetrics = a}) .
-      _Default
-      . _Coerce
-
--- | Deprecated. This field is no longer in use.
-pIncludeInviteData :: Lens' Parameters (Maybe Bool)
-pIncludeInviteData
-  = lens _pIncludeInviteData
-      (\ s a -> s{_pIncludeInviteData = a})
-
--- | Filters used to match traffic data in your report.
-pFilters :: Lens' Parameters [FilterPair]
-pFilters
-  = lens _pFilters (\ s a -> s{_pFilters = a}) .
-      _Default
-      . _Coerce
-
--- | Data is grouped by the filters listed in this field.
-pGroupBys :: Lens' Parameters [ParametersGroupBysItem]
-pGroupBys
-  = lens _pGroupBys (\ s a -> s{_pGroupBys = a}) .
-      _Default
-      . _Coerce
-
--- | Report type.
-pType :: Lens' Parameters (Maybe ParametersType)
-pType = lens _pType (\ s a -> s{_pType = a})
-
-instance FromJSON Parameters where
-        parseJSON
-          = withObject "Parameters"
-              (\ o ->
-                 Parameters' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "includeInviteData")
-                     <*> (o .:? "filters" .!= mempty)
-                     <*> (o .:? "groupBys" .!= mempty)
-                     <*> (o .:? "type"))
-
-instance ToJSON Parameters where
-        toJSON Parameters'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _pMetrics,
-                  ("includeInviteData" .=) <$> _pIncludeInviteData,
-                  ("filters" .=) <$> _pFilters,
-                  ("groupBys" .=) <$> _pGroupBys,
-                  ("type" .=) <$> _pType])
-
--- | An explanation of a report failure.
---
--- /See:/ 'reportFailure' smart constructor.
-newtype ReportFailure =
-  ReportFailure'
-    { _rfErrorCode :: Maybe ReportFailureErrorCode
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportFailure' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rfErrorCode'
-reportFailure
-    :: ReportFailure
-reportFailure = ReportFailure' {_rfErrorCode = Nothing}
-
-
--- | Error code that shows why the report was not created.
-rfErrorCode :: Lens' ReportFailure (Maybe ReportFailureErrorCode)
-rfErrorCode
-  = lens _rfErrorCode (\ s a -> s{_rfErrorCode = a})
-
-instance FromJSON ReportFailure where
-        parseJSON
-          = withObject "ReportFailure"
-              (\ o -> ReportFailure' <$> (o .:? "errorCode"))
-
-instance ToJSON ReportFailure where
-        toJSON ReportFailure'{..}
-          = object
-              (catMaybes [("errorCode" .=) <$> _rfErrorCode])
diff --git a/gen/Network/Google/DoubleClickBids/Types/Sum.hs b/gen/Network/Google/DoubleClickBids/Types/Sum.hs
deleted file mode 100644
--- a/gen/Network/Google/DoubleClickBids/Types/Sum.hs
+++ /dev/null
@@ -1,3097 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE LambdaCase         #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DoubleClickBids.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.DoubleClickBids.Types.Sum where
-
-import           Network.Google.Prelude hiding (Bytes)
-
--- | Format of the generated report.
-data QueryMetadataFormat
-    = CSV
-      -- ^ @CSV@
-    | ExcelCSV
-      -- ^ @EXCEL_CSV@
-    | Xlsx
-      -- ^ @XLSX@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable QueryMetadataFormat
-
-instance FromHttpApiData QueryMetadataFormat where
-    parseQueryParam = \case
-        "CSV" -> Right CSV
-        "EXCEL_CSV" -> Right ExcelCSV
-        "XLSX" -> Right Xlsx
-        x -> Left ("Unable to parse QueryMetadataFormat from: " <> x)
-
-instance ToHttpApiData QueryMetadataFormat where
-    toQueryParam = \case
-        CSV -> "CSV"
-        ExcelCSV -> "EXCEL_CSV"
-        Xlsx -> "XLSX"
-
-instance FromJSON QueryMetadataFormat where
-    parseJSON = parseJSONText "QueryMetadataFormat"
-
-instance ToJSON QueryMetadataFormat where
-    toJSON = toJSONText
-
--- | Report type.
-data ParametersType
-    = TypeActiveGrp
-      -- ^ @TYPE_ACTIVE_GRP@
-    | TypeAudienceComPosition
-      -- ^ @TYPE_AUDIENCE_COMPOSITION@
-    | TypeAudiencePerformance
-      -- ^ @TYPE_AUDIENCE_PERFORMANCE@
-    | TypeClientSafe
-      -- ^ @TYPE_CLIENT_SAFE@
-    | TypeComscoreVce
-      -- ^ @TYPE_COMSCORE_VCE@
-    | TypeCrossFee
-      -- ^ @TYPE_CROSS_FEE@
-    | TypeCrossPartner
-      -- ^ @TYPE_CROSS_PARTNER@
-    | TypeCrossPartnerThirdPartyDataProvider
-      -- ^ @TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER@
-    | TypeEstimatedConversion
-      -- ^ @TYPE_ESTIMATED_CONVERSION@
-    | TypeFee
-      -- ^ @TYPE_FEE@
-    | TypeGeneral
-      -- ^ @TYPE_GENERAL@
-    | TypeInventoryAvailability
-      -- ^ @TYPE_INVENTORY_AVAILABILITY@
-    | TypeKeyword
-      -- ^ @TYPE_KEYWORD@
-    | TypeLinearTvSearchLift
-      -- ^ @TYPE_LINEAR_TV_SEARCH_LIFT@
-    | TypeNielsenAudienceProFile
-      -- ^ @TYPE_NIELSEN_AUDIENCE_PROFILE@
-    | TypeNielsenDailyReachBuild
-      -- ^ @TYPE_NIELSEN_DAILY_REACH_BUILD@
-    | TypeNielsenOnlineGlobalMarket
-      -- ^ @TYPE_NIELSEN_ONLINE_GLOBAL_MARKET@
-    | TypeNielsenSite
-      -- ^ @TYPE_NIELSEN_SITE@
-    | TypeNotSupported
-      -- ^ @TYPE_NOT_SUPPORTED@
-    | TypeOrderId
-      -- ^ @TYPE_ORDER_ID@
-    | TypePageCategory
-      -- ^ @TYPE_PAGE_CATEGORY@
-    | TypePetraNielsenAudienceProFile
-      -- ^ @TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE@
-    | TypePetraNielsenDailyReachBuild
-      -- ^ @TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD@
-    | TypePetraNielsenOnlineGlobalMarket
-      -- ^ @TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET@
-    | TypePixelLoad
-      -- ^ @TYPE_PIXEL_LOAD@
-    | TypeReachAndFrequency
-      -- ^ @TYPE_REACH_AND_FREQUENCY@
-    | TypeReachAudience
-      -- ^ @TYPE_REACH_AUDIENCE@
-    | TypeThirdPartyDataProvider
-      -- ^ @TYPE_THIRD_PARTY_DATA_PROVIDER@
-    | TypeTrueview
-      -- ^ @TYPE_TRUEVIEW@
-    | TypeTrueviewIar
-      -- ^ @TYPE_TRUEVIEW_IAR@
-    | TypeVerification
-      -- ^ @TYPE_VERIFICATION@
-    | TypeYouTubeVertical
-      -- ^ @TYPE_YOUTUBE_VERTICAL@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ParametersType
-
-instance FromHttpApiData ParametersType where
-    parseQueryParam = \case
-        "TYPE_ACTIVE_GRP" -> Right TypeActiveGrp
-        "TYPE_AUDIENCE_COMPOSITION" -> Right TypeAudienceComPosition
-        "TYPE_AUDIENCE_PERFORMANCE" -> Right TypeAudiencePerformance
-        "TYPE_CLIENT_SAFE" -> Right TypeClientSafe
-        "TYPE_COMSCORE_VCE" -> Right TypeComscoreVce
-        "TYPE_CROSS_FEE" -> Right TypeCrossFee
-        "TYPE_CROSS_PARTNER" -> Right TypeCrossPartner
-        "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER" -> Right TypeCrossPartnerThirdPartyDataProvider
-        "TYPE_ESTIMATED_CONVERSION" -> Right TypeEstimatedConversion
-        "TYPE_FEE" -> Right TypeFee
-        "TYPE_GENERAL" -> Right TypeGeneral
-        "TYPE_INVENTORY_AVAILABILITY" -> Right TypeInventoryAvailability
-        "TYPE_KEYWORD" -> Right TypeKeyword
-        "TYPE_LINEAR_TV_SEARCH_LIFT" -> Right TypeLinearTvSearchLift
-        "TYPE_NIELSEN_AUDIENCE_PROFILE" -> Right TypeNielsenAudienceProFile
-        "TYPE_NIELSEN_DAILY_REACH_BUILD" -> Right TypeNielsenDailyReachBuild
-        "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET" -> Right TypeNielsenOnlineGlobalMarket
-        "TYPE_NIELSEN_SITE" -> Right TypeNielsenSite
-        "TYPE_NOT_SUPPORTED" -> Right TypeNotSupported
-        "TYPE_ORDER_ID" -> Right TypeOrderId
-        "TYPE_PAGE_CATEGORY" -> Right TypePageCategory
-        "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE" -> Right TypePetraNielsenAudienceProFile
-        "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD" -> Right TypePetraNielsenDailyReachBuild
-        "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET" -> Right TypePetraNielsenOnlineGlobalMarket
-        "TYPE_PIXEL_LOAD" -> Right TypePixelLoad
-        "TYPE_REACH_AND_FREQUENCY" -> Right TypeReachAndFrequency
-        "TYPE_REACH_AUDIENCE" -> Right TypeReachAudience
-        "TYPE_THIRD_PARTY_DATA_PROVIDER" -> Right TypeThirdPartyDataProvider
-        "TYPE_TRUEVIEW" -> Right TypeTrueview
-        "TYPE_TRUEVIEW_IAR" -> Right TypeTrueviewIar
-        "TYPE_VERIFICATION" -> Right TypeVerification
-        "TYPE_YOUTUBE_VERTICAL" -> Right TypeYouTubeVertical
-        x -> Left ("Unable to parse ParametersType from: " <> x)
-
-instance ToHttpApiData ParametersType where
-    toQueryParam = \case
-        TypeActiveGrp -> "TYPE_ACTIVE_GRP"
-        TypeAudienceComPosition -> "TYPE_AUDIENCE_COMPOSITION"
-        TypeAudiencePerformance -> "TYPE_AUDIENCE_PERFORMANCE"
-        TypeClientSafe -> "TYPE_CLIENT_SAFE"
-        TypeComscoreVce -> "TYPE_COMSCORE_VCE"
-        TypeCrossFee -> "TYPE_CROSS_FEE"
-        TypeCrossPartner -> "TYPE_CROSS_PARTNER"
-        TypeCrossPartnerThirdPartyDataProvider -> "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER"
-        TypeEstimatedConversion -> "TYPE_ESTIMATED_CONVERSION"
-        TypeFee -> "TYPE_FEE"
-        TypeGeneral -> "TYPE_GENERAL"
-        TypeInventoryAvailability -> "TYPE_INVENTORY_AVAILABILITY"
-        TypeKeyword -> "TYPE_KEYWORD"
-        TypeLinearTvSearchLift -> "TYPE_LINEAR_TV_SEARCH_LIFT"
-        TypeNielsenAudienceProFile -> "TYPE_NIELSEN_AUDIENCE_PROFILE"
-        TypeNielsenDailyReachBuild -> "TYPE_NIELSEN_DAILY_REACH_BUILD"
-        TypeNielsenOnlineGlobalMarket -> "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET"
-        TypeNielsenSite -> "TYPE_NIELSEN_SITE"
-        TypeNotSupported -> "TYPE_NOT_SUPPORTED"
-        TypeOrderId -> "TYPE_ORDER_ID"
-        TypePageCategory -> "TYPE_PAGE_CATEGORY"
-        TypePetraNielsenAudienceProFile -> "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE"
-        TypePetraNielsenDailyReachBuild -> "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD"
-        TypePetraNielsenOnlineGlobalMarket -> "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET"
-        TypePixelLoad -> "TYPE_PIXEL_LOAD"
-        TypeReachAndFrequency -> "TYPE_REACH_AND_FREQUENCY"
-        TypeReachAudience -> "TYPE_REACH_AUDIENCE"
-        TypeThirdPartyDataProvider -> "TYPE_THIRD_PARTY_DATA_PROVIDER"
-        TypeTrueview -> "TYPE_TRUEVIEW"
-        TypeTrueviewIar -> "TYPE_TRUEVIEW_IAR"
-        TypeVerification -> "TYPE_VERIFICATION"
-        TypeYouTubeVertical -> "TYPE_YOUTUBE_VERTICAL"
-
-instance FromJSON ParametersType where
-    parseJSON = parseJSONText "ParametersType"
-
-instance ToJSON ParametersType where
-    toJSON = toJSONText
-
--- | Filter type used to filter line items to fetch.
-data DownloadLineItemsRequestFilterType
-    = AdvertiserId
-      -- ^ @ADVERTISER_ID@
-    | InsertionOrderId
-      -- ^ @INSERTION_ORDER_ID@
-    | LineItemId
-      -- ^ @LINE_ITEM_ID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DownloadLineItemsRequestFilterType
-
-instance FromHttpApiData DownloadLineItemsRequestFilterType where
-    parseQueryParam = \case
-        "ADVERTISER_ID" -> Right AdvertiserId
-        "INSERTION_ORDER_ID" -> Right InsertionOrderId
-        "LINE_ITEM_ID" -> Right LineItemId
-        x -> Left ("Unable to parse DownloadLineItemsRequestFilterType from: " <> x)
-
-instance ToHttpApiData DownloadLineItemsRequestFilterType where
-    toQueryParam = \case
-        AdvertiserId -> "ADVERTISER_ID"
-        InsertionOrderId -> "INSERTION_ORDER_ID"
-        LineItemId -> "LINE_ITEM_ID"
-
-instance FromJSON DownloadLineItemsRequestFilterType where
-    parseJSON = parseJSONText "DownloadLineItemsRequestFilterType"
-
-instance ToJSON DownloadLineItemsRequestFilterType where
-    toJSON = toJSONText
-
--- | Filter type used to filter entities to fetch. PARTNER_ID and
--- INVENTORY_SOURCE_ID may only be used when downloading inventory sources.
-data DownloadRequestFilterType
-    = DRFTAdvertiserId
-      -- ^ @ADVERTISER_ID@
-    | DRFTCampaignId
-      -- ^ @CAMPAIGN_ID@
-    | DRFTInsertionOrderId
-      -- ^ @INSERTION_ORDER_ID@
-    | DRFTInventorySourceId
-      -- ^ @INVENTORY_SOURCE_ID@
-    | DRFTLineItemId
-      -- ^ @LINE_ITEM_ID@
-    | DRFTPartnerId
-      -- ^ @PARTNER_ID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DownloadRequestFilterType
-
-instance FromHttpApiData DownloadRequestFilterType where
-    parseQueryParam = \case
-        "ADVERTISER_ID" -> Right DRFTAdvertiserId
-        "CAMPAIGN_ID" -> Right DRFTCampaignId
-        "INSERTION_ORDER_ID" -> Right DRFTInsertionOrderId
-        "INVENTORY_SOURCE_ID" -> Right DRFTInventorySourceId
-        "LINE_ITEM_ID" -> Right DRFTLineItemId
-        "PARTNER_ID" -> Right DRFTPartnerId
-        x -> Left ("Unable to parse DownloadRequestFilterType from: " <> x)
-
-instance ToHttpApiData DownloadRequestFilterType where
-    toQueryParam = \case
-        DRFTAdvertiserId -> "ADVERTISER_ID"
-        DRFTCampaignId -> "CAMPAIGN_ID"
-        DRFTInsertionOrderId -> "INSERTION_ORDER_ID"
-        DRFTInventorySourceId -> "INVENTORY_SOURCE_ID"
-        DRFTLineItemId -> "LINE_ITEM_ID"
-        DRFTPartnerId -> "PARTNER_ID"
-
-instance FromJSON DownloadRequestFilterType where
-    parseJSON = parseJSONText "DownloadRequestFilterType"
-
-instance ToJSON DownloadRequestFilterType where
-    toJSON = toJSONText
-
-data DownloadRequestFileTypesItem
-    = AD
-      -- ^ @AD@
-    | AdGroup
-      -- ^ @AD_GROUP@
-    | Campaign
-      -- ^ @CAMPAIGN@
-    | InsertionOrder
-      -- ^ @INSERTION_ORDER@
-    | InventorySource
-      -- ^ @INVENTORY_SOURCE@
-    | LineItem
-      -- ^ @LINE_ITEM@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DownloadRequestFileTypesItem
-
-instance FromHttpApiData DownloadRequestFileTypesItem where
-    parseQueryParam = \case
-        "AD" -> Right AD
-        "AD_GROUP" -> Right AdGroup
-        "CAMPAIGN" -> Right Campaign
-        "INSERTION_ORDER" -> Right InsertionOrder
-        "INVENTORY_SOURCE" -> Right InventorySource
-        "LINE_ITEM" -> Right LineItem
-        x -> Left ("Unable to parse DownloadRequestFileTypesItem from: " <> x)
-
-instance ToHttpApiData DownloadRequestFileTypesItem where
-    toQueryParam = \case
-        AD -> "AD"
-        AdGroup -> "AD_GROUP"
-        Campaign -> "CAMPAIGN"
-        InsertionOrder -> "INSERTION_ORDER"
-        InventorySource -> "INVENTORY_SOURCE"
-        LineItem -> "LINE_ITEM"
-
-instance FromJSON DownloadRequestFileTypesItem where
-    parseJSON = parseJSONText "DownloadRequestFileTypesItem"
-
-instance ToJSON DownloadRequestFileTypesItem where
-    toJSON = toJSONText
-
--- | Range of report data.
-data QueryMetadataDataRange
-    = QMDRAllTime
-      -- ^ @ALL_TIME@
-    | QMDRCurrentDay
-      -- ^ @CURRENT_DAY@
-    | QMDRCustomDates
-      -- ^ @CUSTOM_DATES@
-    | QMDRLast14Days
-      -- ^ @LAST_14_DAYS@
-    | QMDRLast30Days
-      -- ^ @LAST_30_DAYS@
-    | QMDRLast365Days
-      -- ^ @LAST_365_DAYS@
-    | QMDRLast7Days
-      -- ^ @LAST_7_DAYS@
-    | QMDRLast90Days
-      -- ^ @LAST_90_DAYS@
-    | QMDRMonthToDate
-      -- ^ @MONTH_TO_DATE@
-    | QMDRPreviousDay
-      -- ^ @PREVIOUS_DAY@
-    | QMDRPreviousHalfMonth
-      -- ^ @PREVIOUS_HALF_MONTH@
-    | QMDRPreviousMonth
-      -- ^ @PREVIOUS_MONTH@
-    | QMDRPreviousQuarter
-      -- ^ @PREVIOUS_QUARTER@
-    | QMDRPreviousWeek
-      -- ^ @PREVIOUS_WEEK@
-    | QMDRPreviousYear
-      -- ^ @PREVIOUS_YEAR@
-    | QMDRQuarterToDate
-      -- ^ @QUARTER_TO_DATE@
-    | QMDRTypeNotSupported
-      -- ^ @TYPE_NOT_SUPPORTED@
-    | QMDRWeekToDate
-      -- ^ @WEEK_TO_DATE@
-    | QMDRYearToDate
-      -- ^ @YEAR_TO_DATE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable QueryMetadataDataRange
-
-instance FromHttpApiData QueryMetadataDataRange where
-    parseQueryParam = \case
-        "ALL_TIME" -> Right QMDRAllTime
-        "CURRENT_DAY" -> Right QMDRCurrentDay
-        "CUSTOM_DATES" -> Right QMDRCustomDates
-        "LAST_14_DAYS" -> Right QMDRLast14Days
-        "LAST_30_DAYS" -> Right QMDRLast30Days
-        "LAST_365_DAYS" -> Right QMDRLast365Days
-        "LAST_7_DAYS" -> Right QMDRLast7Days
-        "LAST_90_DAYS" -> Right QMDRLast90Days
-        "MONTH_TO_DATE" -> Right QMDRMonthToDate
-        "PREVIOUS_DAY" -> Right QMDRPreviousDay
-        "PREVIOUS_HALF_MONTH" -> Right QMDRPreviousHalfMonth
-        "PREVIOUS_MONTH" -> Right QMDRPreviousMonth
-        "PREVIOUS_QUARTER" -> Right QMDRPreviousQuarter
-        "PREVIOUS_WEEK" -> Right QMDRPreviousWeek
-        "PREVIOUS_YEAR" -> Right QMDRPreviousYear
-        "QUARTER_TO_DATE" -> Right QMDRQuarterToDate
-        "TYPE_NOT_SUPPORTED" -> Right QMDRTypeNotSupported
-        "WEEK_TO_DATE" -> Right QMDRWeekToDate
-        "YEAR_TO_DATE" -> Right QMDRYearToDate
-        x -> Left ("Unable to parse QueryMetadataDataRange from: " <> x)
-
-instance ToHttpApiData QueryMetadataDataRange where
-    toQueryParam = \case
-        QMDRAllTime -> "ALL_TIME"
-        QMDRCurrentDay -> "CURRENT_DAY"
-        QMDRCustomDates -> "CUSTOM_DATES"
-        QMDRLast14Days -> "LAST_14_DAYS"
-        QMDRLast30Days -> "LAST_30_DAYS"
-        QMDRLast365Days -> "LAST_365_DAYS"
-        QMDRLast7Days -> "LAST_7_DAYS"
-        QMDRLast90Days -> "LAST_90_DAYS"
-        QMDRMonthToDate -> "MONTH_TO_DATE"
-        QMDRPreviousDay -> "PREVIOUS_DAY"
-        QMDRPreviousHalfMonth -> "PREVIOUS_HALF_MONTH"
-        QMDRPreviousMonth -> "PREVIOUS_MONTH"
-        QMDRPreviousQuarter -> "PREVIOUS_QUARTER"
-        QMDRPreviousWeek -> "PREVIOUS_WEEK"
-        QMDRPreviousYear -> "PREVIOUS_YEAR"
-        QMDRQuarterToDate -> "QUARTER_TO_DATE"
-        QMDRTypeNotSupported -> "TYPE_NOT_SUPPORTED"
-        QMDRWeekToDate -> "WEEK_TO_DATE"
-        QMDRYearToDate -> "YEAR_TO_DATE"
-
-instance FromJSON QueryMetadataDataRange where
-    parseJSON = parseJSONText "QueryMetadataDataRange"
-
-instance ToJSON QueryMetadataDataRange where
-    toJSON = toJSONText
-
-data ParametersMetricsItem
-    = MetricActiveViewAudibleVisibleOnCompleteImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS@
-    | MetricActiveViewAverageViewableTime
-      -- ^ @METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME@
-    | MetricActiveViewDistributionUnmeasurable
-      -- ^ @METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE@
-    | MetricActiveViewDistributionUnviewable
-      -- ^ @METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE@
-    | MetricActiveViewDistributionViewable
-      -- ^ @METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE@
-    | MetricActiveViewEligibleImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS@
-    | MetricActiveViewMeasurableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS@
-    | MetricActiveViewPctMeasurableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS@
-    | MetricActiveViewPctViewableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS@
-    | MetricActiveViewPercentAudibleVisibleAtStart
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START@
-    | MetricActiveViewPercentAudibleVisibleFirstQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR@
-    | MetricActiveViewPercentAudibleVisibleOnComplete
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE@
-    | MetricActiveViewPercentAudibleVisibleSecondQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR@
-    | MetricActiveViewPercentAudibleVisibleThirdQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR@
-    | MetricActiveViewPercentViewableForTimeThreshold
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD@
-    | MetricActiveViewPercentVisibleAtStart
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START@
-    | MetricActiveViewPercentVisibleFirstQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR@
-    | MetricActiveViewPercentVisibleOnComplete
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE@
-    | MetricActiveViewPercentVisibleSecondQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR@
-    | MetricActiveViewPercentVisibleThirdQuar
-      -- ^ @METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR@
-    | MetricActiveViewUnmeasurableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS@
-    | MetricActiveViewUnviewableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS@
-    | MetricActiveViewViewableForTimeThreshold
-      -- ^ @METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD@
-    | MetricActiveViewViewableImpressions
-      -- ^ @METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS@
-    | MetricBidRequests
-      -- ^ @METRIC_BID_REQUESTS@
-    | MetricBillableCostAdvertiser
-      -- ^ @METRIC_BILLABLE_COST_ADVERTISER@
-    | MetricBillableCostPartner
-      -- ^ @METRIC_BILLABLE_COST_PARTNER@
-    | MetricBillableCostUsd
-      -- ^ @METRIC_BILLABLE_COST_USD@
-    | MetricClicks
-      -- ^ @METRIC_CLICKS@
-    | MetricClickToPostClickConversionRate
-      -- ^ @METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE@
-    | MetricCmPostClickRevenue
-      -- ^ @METRIC_CM_POST_CLICK_REVENUE@
-    | MetricCmPostViewRevenue
-      -- ^ @METRIC_CM_POST_VIEW_REVENUE@
-    | MetricComscoreVceAudienceAvgFrequency
-      -- ^ @METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY@
-    | MetricComscoreVceAudienceImpressions
-      -- ^ @METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS@
-    | MetricComscoreVceAudienceImpressionsShare
-      -- ^ @METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE@
-    | MetricComscoreVceAudienceReachPct
-      -- ^ @METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT@
-    | MetricComscoreVceAudienceSharePct
-      -- ^ @METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT@
-    | MetricComscoreVceGrossRatingPoints
-      -- ^ @METRIC_COMSCORE_VCE_GROSS_RATING_POINTS@
-    | MetricComscoreVcePopulation
-      -- ^ @METRIC_COMSCORE_VCE_POPULATION@
-    | MetricComscoreVceUniqueAudience
-      -- ^ @METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE@
-    | MetricConversionsPerMille
-      -- ^ @METRIC_CONVERSIONS_PER_MILLE@
-    | MetricCookieReachAverageImpressionFrequency
-      -- ^ @METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY@
-    | MetricCookieReachImpressionReach
-      -- ^ @METRIC_COOKIE_REACH_IMPRESSION_REACH@
-    | MetricCpmFEE1Advertiser
-      -- ^ @METRIC_CPM_FEE1_ADVERTISER@
-    | MetricCpmFEE1Partner
-      -- ^ @METRIC_CPM_FEE1_PARTNER@
-    | MetricCpmFEE1Usd
-      -- ^ @METRIC_CPM_FEE1_USD@
-    | MetricCpmFEE2Advertiser
-      -- ^ @METRIC_CPM_FEE2_ADVERTISER@
-    | MetricCpmFEE2Partner
-      -- ^ @METRIC_CPM_FEE2_PARTNER@
-    | MetricCpmFEE2Usd
-      -- ^ @METRIC_CPM_FEE2_USD@
-    | MetricCpmFEE3Advertiser
-      -- ^ @METRIC_CPM_FEE3_ADVERTISER@
-    | MetricCpmFEE3Partner
-      -- ^ @METRIC_CPM_FEE3_PARTNER@
-    | MetricCpmFEE3Usd
-      -- ^ @METRIC_CPM_FEE3_USD@
-    | MetricCpmFEE4Advertiser
-      -- ^ @METRIC_CPM_FEE4_ADVERTISER@
-    | MetricCpmFEE4Partner
-      -- ^ @METRIC_CPM_FEE4_PARTNER@
-    | MetricCpmFEE4Usd
-      -- ^ @METRIC_CPM_FEE4_USD@
-    | MetricCpmFEE5Advertiser
-      -- ^ @METRIC_CPM_FEE5_ADVERTISER@
-    | MetricCpmFEE5Partner
-      -- ^ @METRIC_CPM_FEE5_PARTNER@
-    | MetricCpmFEE5Usd
-      -- ^ @METRIC_CPM_FEE5_USD@
-    | MetricCtr
-      -- ^ @METRIC_CTR@
-    | MetricDataCostAdvertiser
-      -- ^ @METRIC_DATA_COST_ADVERTISER@
-    | MetricDataCostPartner
-      -- ^ @METRIC_DATA_COST_PARTNER@
-    | MetricDataCostUsd
-      -- ^ @METRIC_DATA_COST_USD@
-    | MetricDBmEngagementRate
-      -- ^ @METRIC_DBM_ENGAGEMENT_RATE@
-    | MetricFEE10Advertiser
-      -- ^ @METRIC_FEE10_ADVERTISER@
-    | MetricFEE10Partner
-      -- ^ @METRIC_FEE10_PARTNER@
-    | MetricFEE10Usd
-      -- ^ @METRIC_FEE10_USD@
-    | MetricFEE11Advertiser
-      -- ^ @METRIC_FEE11_ADVERTISER@
-    | MetricFEE11Partner
-      -- ^ @METRIC_FEE11_PARTNER@
-    | MetricFEE11Usd
-      -- ^ @METRIC_FEE11_USD@
-    | MetricFEE12Advertiser
-      -- ^ @METRIC_FEE12_ADVERTISER@
-    | MetricFEE12Partner
-      -- ^ @METRIC_FEE12_PARTNER@
-    | MetricFEE12Usd
-      -- ^ @METRIC_FEE12_USD@
-    | MetricFEE13Advertiser
-      -- ^ @METRIC_FEE13_ADVERTISER@
-    | MetricFEE13Partner
-      -- ^ @METRIC_FEE13_PARTNER@
-    | MetricFEE13Usd
-      -- ^ @METRIC_FEE13_USD@
-    | MetricFEE14Advertiser
-      -- ^ @METRIC_FEE14_ADVERTISER@
-    | MetricFEE14Partner
-      -- ^ @METRIC_FEE14_PARTNER@
-    | MetricFEE14Usd
-      -- ^ @METRIC_FEE14_USD@
-    | MetricFEE15Advertiser
-      -- ^ @METRIC_FEE15_ADVERTISER@
-    | MetricFEE15Partner
-      -- ^ @METRIC_FEE15_PARTNER@
-    | MetricFEE15Usd
-      -- ^ @METRIC_FEE15_USD@
-    | MetricFEE16Advertiser
-      -- ^ @METRIC_FEE16_ADVERTISER@
-    | MetricFEE16Partner
-      -- ^ @METRIC_FEE16_PARTNER@
-    | MetricFEE16Usd
-      -- ^ @METRIC_FEE16_USD@
-    | MetricFEE17Advertiser
-      -- ^ @METRIC_FEE17_ADVERTISER@
-    | MetricFEE17Partner
-      -- ^ @METRIC_FEE17_PARTNER@
-    | MetricFEE17Usd
-      -- ^ @METRIC_FEE17_USD@
-    | MetricFEE18Advertiser
-      -- ^ @METRIC_FEE18_ADVERTISER@
-    | MetricFEE18Partner
-      -- ^ @METRIC_FEE18_PARTNER@
-    | MetricFEE18Usd
-      -- ^ @METRIC_FEE18_USD@
-    | MetricFEE19Advertiser
-      -- ^ @METRIC_FEE19_ADVERTISER@
-    | MetricFEE19Partner
-      -- ^ @METRIC_FEE19_PARTNER@
-    | MetricFEE19Usd
-      -- ^ @METRIC_FEE19_USD@
-    | MetricFEE20Advertiser
-      -- ^ @METRIC_FEE20_ADVERTISER@
-    | MetricFEE20Partner
-      -- ^ @METRIC_FEE20_PARTNER@
-    | MetricFEE20Usd
-      -- ^ @METRIC_FEE20_USD@
-    | MetricFEE21Advertiser
-      -- ^ @METRIC_FEE21_ADVERTISER@
-    | MetricFEE21Partner
-      -- ^ @METRIC_FEE21_PARTNER@
-    | MetricFEE21Usd
-      -- ^ @METRIC_FEE21_USD@
-    | MetricFEE22Advertiser
-      -- ^ @METRIC_FEE22_ADVERTISER@
-    | MetricFEE22Partner
-      -- ^ @METRIC_FEE22_PARTNER@
-    | MetricFEE22Usd
-      -- ^ @METRIC_FEE22_USD@
-    | MetricFEE2Advertiser
-      -- ^ @METRIC_FEE2_ADVERTISER@
-    | MetricFEE2Partner
-      -- ^ @METRIC_FEE2_PARTNER@
-    | MetricFEE2Usd
-      -- ^ @METRIC_FEE2_USD@
-    | MetricFEE3Advertiser
-      -- ^ @METRIC_FEE3_ADVERTISER@
-    | MetricFEE3Partner
-      -- ^ @METRIC_FEE3_PARTNER@
-    | MetricFEE3Usd
-      -- ^ @METRIC_FEE3_USD@
-    | MetricFEE4Advertiser
-      -- ^ @METRIC_FEE4_ADVERTISER@
-    | MetricFEE4Partner
-      -- ^ @METRIC_FEE4_PARTNER@
-    | MetricFEE4Usd
-      -- ^ @METRIC_FEE4_USD@
-    | MetricFEE5Advertiser
-      -- ^ @METRIC_FEE5_ADVERTISER@
-    | MetricFEE5Partner
-      -- ^ @METRIC_FEE5_PARTNER@
-    | MetricFEE5Usd
-      -- ^ @METRIC_FEE5_USD@
-    | MetricFEE6Advertiser
-      -- ^ @METRIC_FEE6_ADVERTISER@
-    | MetricFEE6Partner
-      -- ^ @METRIC_FEE6_PARTNER@
-    | MetricFEE6Usd
-      -- ^ @METRIC_FEE6_USD@
-    | MetricFEE7Advertiser
-      -- ^ @METRIC_FEE7_ADVERTISER@
-    | MetricFEE7Partner
-      -- ^ @METRIC_FEE7_PARTNER@
-    | MetricFEE7Usd
-      -- ^ @METRIC_FEE7_USD@
-    | MetricFEE8Advertiser
-      -- ^ @METRIC_FEE8_ADVERTISER@
-    | MetricFEE8Partner
-      -- ^ @METRIC_FEE8_PARTNER@
-    | MetricFEE8Usd
-      -- ^ @METRIC_FEE8_USD@
-    | MetricFEE9Advertiser
-      -- ^ @METRIC_FEE9_ADVERTISER@
-    | MetricFEE9Partner
-      -- ^ @METRIC_FEE9_PARTNER@
-    | MetricFEE9Usd
-      -- ^ @METRIC_FEE9_USD@
-    | MetricFloodlightImpressions
-      -- ^ @METRIC_FLOODLIGHT_IMPRESSIONS@
-    | MetricImpressions
-      -- ^ @METRIC_IMPRESSIONS@
-    | MetricImpressionsToConversionRate
-      -- ^ @METRIC_IMPRESSIONS_TO_CONVERSION_RATE@
-    | MetricLastClicks
-      -- ^ @METRIC_LAST_CLICKS@
-    | MetricLastImpressions
-      -- ^ @METRIC_LAST_IMPRESSIONS@
-    | MetricMediaCostAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ADVERTISER@
-    | MetricMediaCostEcpapcAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPAPC_ADVERTISER@
-    | MetricMediaCostEcpapcPartner
-      -- ^ @METRIC_MEDIA_COST_ECPAPC_PARTNER@
-    | MetricMediaCostEcpapcUsd
-      -- ^ @METRIC_MEDIA_COST_ECPAPC_USD@
-    | MetricMediaCostEcpapvAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPAPV_ADVERTISER@
-    | MetricMediaCostEcpapvPartner
-      -- ^ @METRIC_MEDIA_COST_ECPAPV_PARTNER@
-    | MetricMediaCostEcpapvUsd
-      -- ^ @METRIC_MEDIA_COST_ECPAPV_USD@
-    | MetricMediaCostEcpaAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPA_ADVERTISER@
-    | MetricMediaCostEcpaPartner
-      -- ^ @METRIC_MEDIA_COST_ECPA_PARTNER@
-    | MetricMediaCostEcpaUsd
-      -- ^ @METRIC_MEDIA_COST_ECPA_USD@
-    | MetricMediaCostEcpcvAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPCV_ADVERTISER@
-    | MetricMediaCostEcpcvPartner
-      -- ^ @METRIC_MEDIA_COST_ECPCV_PARTNER@
-    | MetricMediaCostEcpcvUsd
-      -- ^ @METRIC_MEDIA_COST_ECPCV_USD@
-    | MetricMediaCostEcpcAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPC_ADVERTISER@
-    | MetricMediaCostEcpcPartner
-      -- ^ @METRIC_MEDIA_COST_ECPC_PARTNER@
-    | MetricMediaCostEcpcUsd
-      -- ^ @METRIC_MEDIA_COST_ECPC_USD@
-    | MetricMediaCostEcpmAdvertiser
-      -- ^ @METRIC_MEDIA_COST_ECPM_ADVERTISER@
-    | MetricMediaCostEcpmPartner
-      -- ^ @METRIC_MEDIA_COST_ECPM_PARTNER@
-    | MetricMediaCostEcpmUsd
-      -- ^ @METRIC_MEDIA_COST_ECPM_USD@
-    | MetricMediaCostPartner
-      -- ^ @METRIC_MEDIA_COST_PARTNER@
-    | MetricMediaCostUsd
-      -- ^ @METRIC_MEDIA_COST_USD@
-    | MetricMediaCostViewableEcpmAdvertiser
-      -- ^ @METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER@
-    | MetricMediaCostViewableEcpmPartner
-      -- ^ @METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER@
-    | MetricMediaCostViewableEcpmUsd
-      -- ^ @METRIC_MEDIA_COST_VIEWABLE_ECPM_USD@
-    | MetricMediaFEE1Advertiser
-      -- ^ @METRIC_MEDIA_FEE1_ADVERTISER@
-    | MetricMediaFEE1Partner
-      -- ^ @METRIC_MEDIA_FEE1_PARTNER@
-    | MetricMediaFEE1Usd
-      -- ^ @METRIC_MEDIA_FEE1_USD@
-    | MetricMediaFEE2Advertiser
-      -- ^ @METRIC_MEDIA_FEE2_ADVERTISER@
-    | MetricMediaFEE2Partner
-      -- ^ @METRIC_MEDIA_FEE2_PARTNER@
-    | MetricMediaFEE2Usd
-      -- ^ @METRIC_MEDIA_FEE2_USD@
-    | MetricMediaFEE3Advertiser
-      -- ^ @METRIC_MEDIA_FEE3_ADVERTISER@
-    | MetricMediaFEE3Partner
-      -- ^ @METRIC_MEDIA_FEE3_PARTNER@
-    | MetricMediaFEE3Usd
-      -- ^ @METRIC_MEDIA_FEE3_USD@
-    | MetricMediaFEE4Advertiser
-      -- ^ @METRIC_MEDIA_FEE4_ADVERTISER@
-    | MetricMediaFEE4Partner
-      -- ^ @METRIC_MEDIA_FEE4_PARTNER@
-    | MetricMediaFEE4Usd
-      -- ^ @METRIC_MEDIA_FEE4_USD@
-    | MetricMediaFEE5Advertiser
-      -- ^ @METRIC_MEDIA_FEE5_ADVERTISER@
-    | MetricMediaFEE5Partner
-      -- ^ @METRIC_MEDIA_FEE5_PARTNER@
-    | MetricMediaFEE5Usd
-      -- ^ @METRIC_MEDIA_FEE5_USD@
-    | MetricPixelLoads
-      -- ^ @METRIC_PIXEL_LOADS@
-    | MetricPlatformFeeAdvertiser
-      -- ^ @METRIC_PLATFORM_FEE_ADVERTISER@
-    | MetricPlatformFeePartner
-      -- ^ @METRIC_PLATFORM_FEE_PARTNER@
-    | MetricPlatformFeeUsd
-      -- ^ @METRIC_PLATFORM_FEE_USD@
-    | MetricPostClickDfaRevenue
-      -- ^ @METRIC_POST_CLICK_DFA_REVENUE@
-    | MetricPostViewDfaRevenue
-      -- ^ @METRIC_POST_VIEW_DFA_REVENUE@
-    | MetricProfitAdvertiser
-      -- ^ @METRIC_PROFIT_ADVERTISER@
-    | MetricProfitEcpapcAdvertiser
-      -- ^ @METRIC_PROFIT_ECPAPC_ADVERTISER@
-    | MetricProfitEcpapcPartner
-      -- ^ @METRIC_PROFIT_ECPAPC_PARTNER@
-    | MetricProfitEcpapcUsd
-      -- ^ @METRIC_PROFIT_ECPAPC_USD@
-    | MetricProfitEcpapvAdvertiser
-      -- ^ @METRIC_PROFIT_ECPAPV_ADVERTISER@
-    | MetricProfitEcpapvPartner
-      -- ^ @METRIC_PROFIT_ECPAPV_PARTNER@
-    | MetricProfitEcpapvUsd
-      -- ^ @METRIC_PROFIT_ECPAPV_USD@
-    | MetricProfitEcpaAdvertiser
-      -- ^ @METRIC_PROFIT_ECPA_ADVERTISER@
-    | MetricProfitEcpaPartner
-      -- ^ @METRIC_PROFIT_ECPA_PARTNER@
-    | MetricProfitEcpaUsd
-      -- ^ @METRIC_PROFIT_ECPA_USD@
-    | MetricProfitEcpcAdvertiser
-      -- ^ @METRIC_PROFIT_ECPC_ADVERTISER@
-    | MetricProfitEcpcPartner
-      -- ^ @METRIC_PROFIT_ECPC_PARTNER@
-    | MetricProfitEcpcUsd
-      -- ^ @METRIC_PROFIT_ECPC_USD@
-    | MetricProfitEcpmAdvertiser
-      -- ^ @METRIC_PROFIT_ECPM_ADVERTISER@
-    | MetricProfitEcpmPartner
-      -- ^ @METRIC_PROFIT_ECPM_PARTNER@
-    | MetricProfitEcpmUsd
-      -- ^ @METRIC_PROFIT_ECPM_USD@
-    | MetricProfitMargin
-      -- ^ @METRIC_PROFIT_MARGIN@
-    | MetricProfitPartner
-      -- ^ @METRIC_PROFIT_PARTNER@
-    | MetricProfitUsd
-      -- ^ @METRIC_PROFIT_USD@
-    | MetricProfitViewableEcpmAdvertiser
-      -- ^ @METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER@
-    | MetricProfitViewableEcpmPartner
-      -- ^ @METRIC_PROFIT_VIEWABLE_ECPM_PARTNER@
-    | MetricProfitViewableEcpmUsd
-      -- ^ @METRIC_PROFIT_VIEWABLE_ECPM_USD@
-    | MetricReachCookieFrequency
-      -- ^ @METRIC_REACH_COOKIE_FREQUENCY@
-    | MetricReachCookieReach
-      -- ^ @METRIC_REACH_COOKIE_REACH@
-    | MetricRevenueAdvertiser
-      -- ^ @METRIC_REVENUE_ADVERTISER@
-    | MetricRevenueEcpapcAdvertiser
-      -- ^ @METRIC_REVENUE_ECPAPC_ADVERTISER@
-    | MetricRevenueEcpapcPartner
-      -- ^ @METRIC_REVENUE_ECPAPC_PARTNER@
-    | MetricRevenueEcpapcUsd
-      -- ^ @METRIC_REVENUE_ECPAPC_USD@
-    | MetricRevenueEcpapvAdvertiser
-      -- ^ @METRIC_REVENUE_ECPAPV_ADVERTISER@
-    | MetricRevenueEcpapvPartner
-      -- ^ @METRIC_REVENUE_ECPAPV_PARTNER@
-    | MetricRevenueEcpapvUsd
-      -- ^ @METRIC_REVENUE_ECPAPV_USD@
-    | MetricRevenueEcpaAdvertiser
-      -- ^ @METRIC_REVENUE_ECPA_ADVERTISER@
-    | MetricRevenueEcpaPartner
-      -- ^ @METRIC_REVENUE_ECPA_PARTNER@
-    | MetricRevenueEcpaUsd
-      -- ^ @METRIC_REVENUE_ECPA_USD@
-    | MetricRevenueEcpcvAdvertiser
-      -- ^ @METRIC_REVENUE_ECPCV_ADVERTISER@
-    | MetricRevenueEcpcvPartner
-      -- ^ @METRIC_REVENUE_ECPCV_PARTNER@
-    | MetricRevenueEcpcvUsd
-      -- ^ @METRIC_REVENUE_ECPCV_USD@
-    | MetricRevenueEcpcAdvertiser
-      -- ^ @METRIC_REVENUE_ECPC_ADVERTISER@
-    | MetricRevenueEcpcPartner
-      -- ^ @METRIC_REVENUE_ECPC_PARTNER@
-    | MetricRevenueEcpcUsd
-      -- ^ @METRIC_REVENUE_ECPC_USD@
-    | MetricRevenueEcpiavcAdvertiser
-      -- ^ @METRIC_REVENUE_ECPIAVC_ADVERTISER@
-    | MetricRevenueEcpmAdvertiser
-      -- ^ @METRIC_REVENUE_ECPM_ADVERTISER@
-    | MetricRevenueEcpmPartner
-      -- ^ @METRIC_REVENUE_ECPM_PARTNER@
-    | MetricRevenueEcpmUsd
-      -- ^ @METRIC_REVENUE_ECPM_USD@
-    | MetricRevenuePartner
-      -- ^ @METRIC_REVENUE_PARTNER@
-    | MetricRevenueUsd
-      -- ^ @METRIC_REVENUE_USD@
-    | MetricRevenueViewableEcpmAdvertiser
-      -- ^ @METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER@
-    | MetricRevenueViewableEcpmPartner
-      -- ^ @METRIC_REVENUE_VIEWABLE_ECPM_PARTNER@
-    | MetricRevenueViewableEcpmUsd
-      -- ^ @METRIC_REVENUE_VIEWABLE_ECPM_USD@
-    | MetricRichMediaScrolls
-      -- ^ @METRIC_RICH_MEDIA_SCROLLS@
-    | MetricRichMediaVideoCompletions
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_COMPLETIONS@
-    | MetricRichMediaVideoFirstQuartileCompletes
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES@
-    | MetricRichMediaVideoFullScreens
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS@
-    | MetricRichMediaVideoMidpoints
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_MIDPOINTS@
-    | MetricRichMediaVideoMutes
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_MUTES@
-    | MetricRichMediaVideoPauses
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_PAUSES@
-    | MetricRichMediaVideoPlays
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_PLAYS@
-    | MetricRichMediaVideoSkips
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_SKIPS@
-    | MetricRichMediaVideoThirdQuartileCompletes
-      -- ^ @METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES@
-    | MetricTeaTrueviewImpressions
-      -- ^ @METRIC_TEA_TRUEVIEW_IMPRESSIONS@
-    | MetricTeaTrueviewUniqueCookies
-      -- ^ @METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES@
-    | MetricTeaTrueviewUniquePeople
-      -- ^ @METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE@
-    | MetricTotalConversions
-      -- ^ @METRIC_TOTAL_CONVERSIONS@
-    | MetricTotalMediaCostAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ADVERTISER@
-    | MetricTotalMediaCostEcpapcAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER@
-    | MetricTotalMediaCostEcpapcPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER@
-    | MetricTotalMediaCostEcpapcUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPC_USD@
-    | MetricTotalMediaCostEcpapvAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER@
-    | MetricTotalMediaCostEcpapvPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER@
-    | MetricTotalMediaCostEcpapvUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPAPV_USD@
-    | MetricTotalMediaCostEcpaAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER@
-    | MetricTotalMediaCostEcpaPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER@
-    | MetricTotalMediaCostEcpaUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPA_USD@
-    | MetricTotalMediaCostEcpcvAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER@
-    | MetricTotalMediaCostEcpcvPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER@
-    | MetricTotalMediaCostEcpcvUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPCV_USD@
-    | MetricTotalMediaCostEcpcAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER@
-    | MetricTotalMediaCostEcpcPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER@
-    | MetricTotalMediaCostEcpcUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPC_USD@
-    | MetricTotalMediaCostEcpmAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER@
-    | MetricTotalMediaCostEcpmPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER@
-    | MetricTotalMediaCostEcpmUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_ECPM_USD@
-    | MetricTotalMediaCostPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_PARTNER@
-    | MetricTotalMediaCostUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_USD@
-    | MetricTotalMediaCostViewableEcpmAdvertiser
-      -- ^ @METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER@
-    | MetricTotalMediaCostViewableEcpmPartner
-      -- ^ @METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER@
-    | MetricTotalMediaCostViewableEcpmUsd
-      -- ^ @METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD@
-    | MetricTrueviewAverageCpeAdvertiser
-      -- ^ @METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER@
-    | MetricTrueviewAverageCpePartner
-      -- ^ @METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER@
-    | MetricTrueviewAverageCpeUsd
-      -- ^ @METRIC_TRUEVIEW_AVERAGE_CPE_USD@
-    | MetricTrueviewConversionCostManyPerViewAdvertiser
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER@
-    | MetricTrueviewConversionCostManyPerViewPartner
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER@
-    | MetricTrueviewConversionCostManyPerViewUsd
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD@
-    | MetricTrueviewConversionCostOnePerViewAdvertiser
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER@
-    | MetricTrueviewConversionCostOnePerViewPartner
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER@
-    | MetricTrueviewConversionCostOnePerViewUsd
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD@
-    | MetricTrueviewConversionManyPerView
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW@
-    | MetricTrueviewConversionOnePerView
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW@
-    | MetricTrueviewConversionRateOnePerView
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW@
-    | MetricTrueviewConversionValueManyPerViewAdvertiser
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER@
-    | MetricTrueviewConversionValueManyPerViewPartner
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER@
-    | MetricTrueviewConversionValueManyPerViewUsd
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD@
-    | MetricTrueviewConversionValueOnePerViewAdvertiser
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER@
-    | MetricTrueviewConversionValueOnePerViewPartner
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER@
-    | MetricTrueviewConversionValueOnePerViewUsd
-      -- ^ @METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD@
-    | MetricTrueviewCostConversionManyPerViewRatio
-      -- ^ @METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO@
-    | MetricTrueviewCostConversionOnePerViewRatio
-      -- ^ @METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO@
-    | MetricTrueviewCpvAdvertiser
-      -- ^ @METRIC_TRUEVIEW_CPV_ADVERTISER@
-    | MetricTrueviewCpvPartner
-      -- ^ @METRIC_TRUEVIEW_CPV_PARTNER@
-    | MetricTrueviewCpvUsd
-      -- ^ @METRIC_TRUEVIEW_CPV_USD@
-    | MetricTrueviewEarnedLikes
-      -- ^ @METRIC_TRUEVIEW_EARNED_LIKES@
-    | MetricTrueviewEarnedPlayListAdditions
-      -- ^ @METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS@
-    | MetricTrueviewEarnedShares
-      -- ^ @METRIC_TRUEVIEW_EARNED_SHARES@
-    | MetricTrueviewEarnedSubscribers
-      -- ^ @METRIC_TRUEVIEW_EARNED_SUBSCRIBERS@
-    | MetricTrueviewEarnedViews
-      -- ^ @METRIC_TRUEVIEW_EARNED_VIEWS@
-    | MetricTrueviewEngagements
-      -- ^ @METRIC_TRUEVIEW_ENGAGEMENTS@
-    | MetricTrueviewEngagementRate
-      -- ^ @METRIC_TRUEVIEW_ENGAGEMENT_RATE@
-    | MetricTrueviewImpressionShare
-      -- ^ @METRIC_TRUEVIEW_IMPRESSION_SHARE@
-    | MetricTrueviewLostIsBudget
-      -- ^ @METRIC_TRUEVIEW_LOST_IS_BUDGET@
-    | MetricTrueviewLostIsRank
-      -- ^ @METRIC_TRUEVIEW_LOST_IS_RANK@
-    | MetricTrueviewTotalConversionValue
-      -- ^ @METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE@
-    | MetricTrueviewTotalConversionValuesAdvertiser
-      -- ^ @METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER@
-    | MetricTrueviewTotalConversionValuesPartner
-      -- ^ @METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER@
-    | MetricTrueviewTotalConversionValuesUsd
-      -- ^ @METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD@
-    | MetricTrueviewUniqueViewers
-      -- ^ @METRIC_TRUEVIEW_UNIQUE_VIEWERS@
-    | MetricTrueviewValueConversionManyPerViewRatio
-      -- ^ @METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO@
-    | MetricTrueviewValueConversionOnePerViewRatio
-      -- ^ @METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO@
-    | MetricTrueviewViews
-      -- ^ @METRIC_TRUEVIEW_VIEWS@
-    | MetricTrueviewViewRate
-      -- ^ @METRIC_TRUEVIEW_VIEW_RATE@
-    | MetricTrueviewViewThroughConversion
-      -- ^ @METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION@
-    | MetricUniqueVisitorsCookies
-      -- ^ @METRIC_UNIQUE_VISITORS_COOKIES@
-    | MetricUnknown
-      -- ^ @METRIC_UNKNOWN@
-    | MetricVideoCompanionClicks
-      -- ^ @METRIC_VIDEO_COMPANION_CLICKS@
-    | MetricVideoCompanionImpressions
-      -- ^ @METRIC_VIDEO_COMPANION_IMPRESSIONS@
-    | MetricVideoCompletionRate
-      -- ^ @METRIC_VIDEO_COMPLETION_RATE@
-    | MetricViewableBidRequests
-      -- ^ @METRIC_VIEWABLE_BID_REQUESTS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ParametersMetricsItem
-
-instance FromHttpApiData ParametersMetricsItem where
-    parseQueryParam = \case
-        "METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS" -> Right MetricActiveViewAudibleVisibleOnCompleteImpressions
-        "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME" -> Right MetricActiveViewAverageViewableTime
-        "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE" -> Right MetricActiveViewDistributionUnmeasurable
-        "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE" -> Right MetricActiveViewDistributionUnviewable
-        "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE" -> Right MetricActiveViewDistributionViewable
-        "METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS" -> Right MetricActiveViewEligibleImpressions
-        "METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS" -> Right MetricActiveViewMeasurableImpressions
-        "METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS" -> Right MetricActiveViewPctMeasurableImpressions
-        "METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS" -> Right MetricActiveViewPctViewableImpressions
-        "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START" -> Right MetricActiveViewPercentAudibleVisibleAtStart
-        "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR" -> Right MetricActiveViewPercentAudibleVisibleFirstQuar
-        "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE" -> Right MetricActiveViewPercentAudibleVisibleOnComplete
-        "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR" -> Right MetricActiveViewPercentAudibleVisibleSecondQuar
-        "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR" -> Right MetricActiveViewPercentAudibleVisibleThirdQuar
-        "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD" -> Right MetricActiveViewPercentViewableForTimeThreshold
-        "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START" -> Right MetricActiveViewPercentVisibleAtStart
-        "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR" -> Right MetricActiveViewPercentVisibleFirstQuar
-        "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE" -> Right MetricActiveViewPercentVisibleOnComplete
-        "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR" -> Right MetricActiveViewPercentVisibleSecondQuar
-        "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR" -> Right MetricActiveViewPercentVisibleThirdQuar
-        "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS" -> Right MetricActiveViewUnmeasurableImpressions
-        "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS" -> Right MetricActiveViewUnviewableImpressions
-        "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD" -> Right MetricActiveViewViewableForTimeThreshold
-        "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS" -> Right MetricActiveViewViewableImpressions
-        "METRIC_BID_REQUESTS" -> Right MetricBidRequests
-        "METRIC_BILLABLE_COST_ADVERTISER" -> Right MetricBillableCostAdvertiser
-        "METRIC_BILLABLE_COST_PARTNER" -> Right MetricBillableCostPartner
-        "METRIC_BILLABLE_COST_USD" -> Right MetricBillableCostUsd
-        "METRIC_CLICKS" -> Right MetricClicks
-        "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE" -> Right MetricClickToPostClickConversionRate
-        "METRIC_CM_POST_CLICK_REVENUE" -> Right MetricCmPostClickRevenue
-        "METRIC_CM_POST_VIEW_REVENUE" -> Right MetricCmPostViewRevenue
-        "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY" -> Right MetricComscoreVceAudienceAvgFrequency
-        "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS" -> Right MetricComscoreVceAudienceImpressions
-        "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE" -> Right MetricComscoreVceAudienceImpressionsShare
-        "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT" -> Right MetricComscoreVceAudienceReachPct
-        "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT" -> Right MetricComscoreVceAudienceSharePct
-        "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS" -> Right MetricComscoreVceGrossRatingPoints
-        "METRIC_COMSCORE_VCE_POPULATION" -> Right MetricComscoreVcePopulation
-        "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE" -> Right MetricComscoreVceUniqueAudience
-        "METRIC_CONVERSIONS_PER_MILLE" -> Right MetricConversionsPerMille
-        "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY" -> Right MetricCookieReachAverageImpressionFrequency
-        "METRIC_COOKIE_REACH_IMPRESSION_REACH" -> Right MetricCookieReachImpressionReach
-        "METRIC_CPM_FEE1_ADVERTISER" -> Right MetricCpmFEE1Advertiser
-        "METRIC_CPM_FEE1_PARTNER" -> Right MetricCpmFEE1Partner
-        "METRIC_CPM_FEE1_USD" -> Right MetricCpmFEE1Usd
-        "METRIC_CPM_FEE2_ADVERTISER" -> Right MetricCpmFEE2Advertiser
-        "METRIC_CPM_FEE2_PARTNER" -> Right MetricCpmFEE2Partner
-        "METRIC_CPM_FEE2_USD" -> Right MetricCpmFEE2Usd
-        "METRIC_CPM_FEE3_ADVERTISER" -> Right MetricCpmFEE3Advertiser
-        "METRIC_CPM_FEE3_PARTNER" -> Right MetricCpmFEE3Partner
-        "METRIC_CPM_FEE3_USD" -> Right MetricCpmFEE3Usd
-        "METRIC_CPM_FEE4_ADVERTISER" -> Right MetricCpmFEE4Advertiser
-        "METRIC_CPM_FEE4_PARTNER" -> Right MetricCpmFEE4Partner
-        "METRIC_CPM_FEE4_USD" -> Right MetricCpmFEE4Usd
-        "METRIC_CPM_FEE5_ADVERTISER" -> Right MetricCpmFEE5Advertiser
-        "METRIC_CPM_FEE5_PARTNER" -> Right MetricCpmFEE5Partner
-        "METRIC_CPM_FEE5_USD" -> Right MetricCpmFEE5Usd
-        "METRIC_CTR" -> Right MetricCtr
-        "METRIC_DATA_COST_ADVERTISER" -> Right MetricDataCostAdvertiser
-        "METRIC_DATA_COST_PARTNER" -> Right MetricDataCostPartner
-        "METRIC_DATA_COST_USD" -> Right MetricDataCostUsd
-        "METRIC_DBM_ENGAGEMENT_RATE" -> Right MetricDBmEngagementRate
-        "METRIC_FEE10_ADVERTISER" -> Right MetricFEE10Advertiser
-        "METRIC_FEE10_PARTNER" -> Right MetricFEE10Partner
-        "METRIC_FEE10_USD" -> Right MetricFEE10Usd
-        "METRIC_FEE11_ADVERTISER" -> Right MetricFEE11Advertiser
-        "METRIC_FEE11_PARTNER" -> Right MetricFEE11Partner
-        "METRIC_FEE11_USD" -> Right MetricFEE11Usd
-        "METRIC_FEE12_ADVERTISER" -> Right MetricFEE12Advertiser
-        "METRIC_FEE12_PARTNER" -> Right MetricFEE12Partner
-        "METRIC_FEE12_USD" -> Right MetricFEE12Usd
-        "METRIC_FEE13_ADVERTISER" -> Right MetricFEE13Advertiser
-        "METRIC_FEE13_PARTNER" -> Right MetricFEE13Partner
-        "METRIC_FEE13_USD" -> Right MetricFEE13Usd
-        "METRIC_FEE14_ADVERTISER" -> Right MetricFEE14Advertiser
-        "METRIC_FEE14_PARTNER" -> Right MetricFEE14Partner
-        "METRIC_FEE14_USD" -> Right MetricFEE14Usd
-        "METRIC_FEE15_ADVERTISER" -> Right MetricFEE15Advertiser
-        "METRIC_FEE15_PARTNER" -> Right MetricFEE15Partner
-        "METRIC_FEE15_USD" -> Right MetricFEE15Usd
-        "METRIC_FEE16_ADVERTISER" -> Right MetricFEE16Advertiser
-        "METRIC_FEE16_PARTNER" -> Right MetricFEE16Partner
-        "METRIC_FEE16_USD" -> Right MetricFEE16Usd
-        "METRIC_FEE17_ADVERTISER" -> Right MetricFEE17Advertiser
-        "METRIC_FEE17_PARTNER" -> Right MetricFEE17Partner
-        "METRIC_FEE17_USD" -> Right MetricFEE17Usd
-        "METRIC_FEE18_ADVERTISER" -> Right MetricFEE18Advertiser
-        "METRIC_FEE18_PARTNER" -> Right MetricFEE18Partner
-        "METRIC_FEE18_USD" -> Right MetricFEE18Usd
-        "METRIC_FEE19_ADVERTISER" -> Right MetricFEE19Advertiser
-        "METRIC_FEE19_PARTNER" -> Right MetricFEE19Partner
-        "METRIC_FEE19_USD" -> Right MetricFEE19Usd
-        "METRIC_FEE20_ADVERTISER" -> Right MetricFEE20Advertiser
-        "METRIC_FEE20_PARTNER" -> Right MetricFEE20Partner
-        "METRIC_FEE20_USD" -> Right MetricFEE20Usd
-        "METRIC_FEE21_ADVERTISER" -> Right MetricFEE21Advertiser
-        "METRIC_FEE21_PARTNER" -> Right MetricFEE21Partner
-        "METRIC_FEE21_USD" -> Right MetricFEE21Usd
-        "METRIC_FEE22_ADVERTISER" -> Right MetricFEE22Advertiser
-        "METRIC_FEE22_PARTNER" -> Right MetricFEE22Partner
-        "METRIC_FEE22_USD" -> Right MetricFEE22Usd
-        "METRIC_FEE2_ADVERTISER" -> Right MetricFEE2Advertiser
-        "METRIC_FEE2_PARTNER" -> Right MetricFEE2Partner
-        "METRIC_FEE2_USD" -> Right MetricFEE2Usd
-        "METRIC_FEE3_ADVERTISER" -> Right MetricFEE3Advertiser
-        "METRIC_FEE3_PARTNER" -> Right MetricFEE3Partner
-        "METRIC_FEE3_USD" -> Right MetricFEE3Usd
-        "METRIC_FEE4_ADVERTISER" -> Right MetricFEE4Advertiser
-        "METRIC_FEE4_PARTNER" -> Right MetricFEE4Partner
-        "METRIC_FEE4_USD" -> Right MetricFEE4Usd
-        "METRIC_FEE5_ADVERTISER" -> Right MetricFEE5Advertiser
-        "METRIC_FEE5_PARTNER" -> Right MetricFEE5Partner
-        "METRIC_FEE5_USD" -> Right MetricFEE5Usd
-        "METRIC_FEE6_ADVERTISER" -> Right MetricFEE6Advertiser
-        "METRIC_FEE6_PARTNER" -> Right MetricFEE6Partner
-        "METRIC_FEE6_USD" -> Right MetricFEE6Usd
-        "METRIC_FEE7_ADVERTISER" -> Right MetricFEE7Advertiser
-        "METRIC_FEE7_PARTNER" -> Right MetricFEE7Partner
-        "METRIC_FEE7_USD" -> Right MetricFEE7Usd
-        "METRIC_FEE8_ADVERTISER" -> Right MetricFEE8Advertiser
-        "METRIC_FEE8_PARTNER" -> Right MetricFEE8Partner
-        "METRIC_FEE8_USD" -> Right MetricFEE8Usd
-        "METRIC_FEE9_ADVERTISER" -> Right MetricFEE9Advertiser
-        "METRIC_FEE9_PARTNER" -> Right MetricFEE9Partner
-        "METRIC_FEE9_USD" -> Right MetricFEE9Usd
-        "METRIC_FLOODLIGHT_IMPRESSIONS" -> Right MetricFloodlightImpressions
-        "METRIC_IMPRESSIONS" -> Right MetricImpressions
-        "METRIC_IMPRESSIONS_TO_CONVERSION_RATE" -> Right MetricImpressionsToConversionRate
-        "METRIC_LAST_CLICKS" -> Right MetricLastClicks
-        "METRIC_LAST_IMPRESSIONS" -> Right MetricLastImpressions
-        "METRIC_MEDIA_COST_ADVERTISER" -> Right MetricMediaCostAdvertiser
-        "METRIC_MEDIA_COST_ECPAPC_ADVERTISER" -> Right MetricMediaCostEcpapcAdvertiser
-        "METRIC_MEDIA_COST_ECPAPC_PARTNER" -> Right MetricMediaCostEcpapcPartner
-        "METRIC_MEDIA_COST_ECPAPC_USD" -> Right MetricMediaCostEcpapcUsd
-        "METRIC_MEDIA_COST_ECPAPV_ADVERTISER" -> Right MetricMediaCostEcpapvAdvertiser
-        "METRIC_MEDIA_COST_ECPAPV_PARTNER" -> Right MetricMediaCostEcpapvPartner
-        "METRIC_MEDIA_COST_ECPAPV_USD" -> Right MetricMediaCostEcpapvUsd
-        "METRIC_MEDIA_COST_ECPA_ADVERTISER" -> Right MetricMediaCostEcpaAdvertiser
-        "METRIC_MEDIA_COST_ECPA_PARTNER" -> Right MetricMediaCostEcpaPartner
-        "METRIC_MEDIA_COST_ECPA_USD" -> Right MetricMediaCostEcpaUsd
-        "METRIC_MEDIA_COST_ECPCV_ADVERTISER" -> Right MetricMediaCostEcpcvAdvertiser
-        "METRIC_MEDIA_COST_ECPCV_PARTNER" -> Right MetricMediaCostEcpcvPartner
-        "METRIC_MEDIA_COST_ECPCV_USD" -> Right MetricMediaCostEcpcvUsd
-        "METRIC_MEDIA_COST_ECPC_ADVERTISER" -> Right MetricMediaCostEcpcAdvertiser
-        "METRIC_MEDIA_COST_ECPC_PARTNER" -> Right MetricMediaCostEcpcPartner
-        "METRIC_MEDIA_COST_ECPC_USD" -> Right MetricMediaCostEcpcUsd
-        "METRIC_MEDIA_COST_ECPM_ADVERTISER" -> Right MetricMediaCostEcpmAdvertiser
-        "METRIC_MEDIA_COST_ECPM_PARTNER" -> Right MetricMediaCostEcpmPartner
-        "METRIC_MEDIA_COST_ECPM_USD" -> Right MetricMediaCostEcpmUsd
-        "METRIC_MEDIA_COST_PARTNER" -> Right MetricMediaCostPartner
-        "METRIC_MEDIA_COST_USD" -> Right MetricMediaCostUsd
-        "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Right MetricMediaCostViewableEcpmAdvertiser
-        "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Right MetricMediaCostViewableEcpmPartner
-        "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD" -> Right MetricMediaCostViewableEcpmUsd
-        "METRIC_MEDIA_FEE1_ADVERTISER" -> Right MetricMediaFEE1Advertiser
-        "METRIC_MEDIA_FEE1_PARTNER" -> Right MetricMediaFEE1Partner
-        "METRIC_MEDIA_FEE1_USD" -> Right MetricMediaFEE1Usd
-        "METRIC_MEDIA_FEE2_ADVERTISER" -> Right MetricMediaFEE2Advertiser
-        "METRIC_MEDIA_FEE2_PARTNER" -> Right MetricMediaFEE2Partner
-        "METRIC_MEDIA_FEE2_USD" -> Right MetricMediaFEE2Usd
-        "METRIC_MEDIA_FEE3_ADVERTISER" -> Right MetricMediaFEE3Advertiser
-        "METRIC_MEDIA_FEE3_PARTNER" -> Right MetricMediaFEE3Partner
-        "METRIC_MEDIA_FEE3_USD" -> Right MetricMediaFEE3Usd
-        "METRIC_MEDIA_FEE4_ADVERTISER" -> Right MetricMediaFEE4Advertiser
-        "METRIC_MEDIA_FEE4_PARTNER" -> Right MetricMediaFEE4Partner
-        "METRIC_MEDIA_FEE4_USD" -> Right MetricMediaFEE4Usd
-        "METRIC_MEDIA_FEE5_ADVERTISER" -> Right MetricMediaFEE5Advertiser
-        "METRIC_MEDIA_FEE5_PARTNER" -> Right MetricMediaFEE5Partner
-        "METRIC_MEDIA_FEE5_USD" -> Right MetricMediaFEE5Usd
-        "METRIC_PIXEL_LOADS" -> Right MetricPixelLoads
-        "METRIC_PLATFORM_FEE_ADVERTISER" -> Right MetricPlatformFeeAdvertiser
-        "METRIC_PLATFORM_FEE_PARTNER" -> Right MetricPlatformFeePartner
-        "METRIC_PLATFORM_FEE_USD" -> Right MetricPlatformFeeUsd
-        "METRIC_POST_CLICK_DFA_REVENUE" -> Right MetricPostClickDfaRevenue
-        "METRIC_POST_VIEW_DFA_REVENUE" -> Right MetricPostViewDfaRevenue
-        "METRIC_PROFIT_ADVERTISER" -> Right MetricProfitAdvertiser
-        "METRIC_PROFIT_ECPAPC_ADVERTISER" -> Right MetricProfitEcpapcAdvertiser
-        "METRIC_PROFIT_ECPAPC_PARTNER" -> Right MetricProfitEcpapcPartner
-        "METRIC_PROFIT_ECPAPC_USD" -> Right MetricProfitEcpapcUsd
-        "METRIC_PROFIT_ECPAPV_ADVERTISER" -> Right MetricProfitEcpapvAdvertiser
-        "METRIC_PROFIT_ECPAPV_PARTNER" -> Right MetricProfitEcpapvPartner
-        "METRIC_PROFIT_ECPAPV_USD" -> Right MetricProfitEcpapvUsd
-        "METRIC_PROFIT_ECPA_ADVERTISER" -> Right MetricProfitEcpaAdvertiser
-        "METRIC_PROFIT_ECPA_PARTNER" -> Right MetricProfitEcpaPartner
-        "METRIC_PROFIT_ECPA_USD" -> Right MetricProfitEcpaUsd
-        "METRIC_PROFIT_ECPC_ADVERTISER" -> Right MetricProfitEcpcAdvertiser
-        "METRIC_PROFIT_ECPC_PARTNER" -> Right MetricProfitEcpcPartner
-        "METRIC_PROFIT_ECPC_USD" -> Right MetricProfitEcpcUsd
-        "METRIC_PROFIT_ECPM_ADVERTISER" -> Right MetricProfitEcpmAdvertiser
-        "METRIC_PROFIT_ECPM_PARTNER" -> Right MetricProfitEcpmPartner
-        "METRIC_PROFIT_ECPM_USD" -> Right MetricProfitEcpmUsd
-        "METRIC_PROFIT_MARGIN" -> Right MetricProfitMargin
-        "METRIC_PROFIT_PARTNER" -> Right MetricProfitPartner
-        "METRIC_PROFIT_USD" -> Right MetricProfitUsd
-        "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER" -> Right MetricProfitViewableEcpmAdvertiser
-        "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER" -> Right MetricProfitViewableEcpmPartner
-        "METRIC_PROFIT_VIEWABLE_ECPM_USD" -> Right MetricProfitViewableEcpmUsd
-        "METRIC_REACH_COOKIE_FREQUENCY" -> Right MetricReachCookieFrequency
-        "METRIC_REACH_COOKIE_REACH" -> Right MetricReachCookieReach
-        "METRIC_REVENUE_ADVERTISER" -> Right MetricRevenueAdvertiser
-        "METRIC_REVENUE_ECPAPC_ADVERTISER" -> Right MetricRevenueEcpapcAdvertiser
-        "METRIC_REVENUE_ECPAPC_PARTNER" -> Right MetricRevenueEcpapcPartner
-        "METRIC_REVENUE_ECPAPC_USD" -> Right MetricRevenueEcpapcUsd
-        "METRIC_REVENUE_ECPAPV_ADVERTISER" -> Right MetricRevenueEcpapvAdvertiser
-        "METRIC_REVENUE_ECPAPV_PARTNER" -> Right MetricRevenueEcpapvPartner
-        "METRIC_REVENUE_ECPAPV_USD" -> Right MetricRevenueEcpapvUsd
-        "METRIC_REVENUE_ECPA_ADVERTISER" -> Right MetricRevenueEcpaAdvertiser
-        "METRIC_REVENUE_ECPA_PARTNER" -> Right MetricRevenueEcpaPartner
-        "METRIC_REVENUE_ECPA_USD" -> Right MetricRevenueEcpaUsd
-        "METRIC_REVENUE_ECPCV_ADVERTISER" -> Right MetricRevenueEcpcvAdvertiser
-        "METRIC_REVENUE_ECPCV_PARTNER" -> Right MetricRevenueEcpcvPartner
-        "METRIC_REVENUE_ECPCV_USD" -> Right MetricRevenueEcpcvUsd
-        "METRIC_REVENUE_ECPC_ADVERTISER" -> Right MetricRevenueEcpcAdvertiser
-        "METRIC_REVENUE_ECPC_PARTNER" -> Right MetricRevenueEcpcPartner
-        "METRIC_REVENUE_ECPC_USD" -> Right MetricRevenueEcpcUsd
-        "METRIC_REVENUE_ECPIAVC_ADVERTISER" -> Right MetricRevenueEcpiavcAdvertiser
-        "METRIC_REVENUE_ECPM_ADVERTISER" -> Right MetricRevenueEcpmAdvertiser
-        "METRIC_REVENUE_ECPM_PARTNER" -> Right MetricRevenueEcpmPartner
-        "METRIC_REVENUE_ECPM_USD" -> Right MetricRevenueEcpmUsd
-        "METRIC_REVENUE_PARTNER" -> Right MetricRevenuePartner
-        "METRIC_REVENUE_USD" -> Right MetricRevenueUsd
-        "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER" -> Right MetricRevenueViewableEcpmAdvertiser
-        "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER" -> Right MetricRevenueViewableEcpmPartner
-        "METRIC_REVENUE_VIEWABLE_ECPM_USD" -> Right MetricRevenueViewableEcpmUsd
-        "METRIC_RICH_MEDIA_SCROLLS" -> Right MetricRichMediaScrolls
-        "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS" -> Right MetricRichMediaVideoCompletions
-        "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES" -> Right MetricRichMediaVideoFirstQuartileCompletes
-        "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS" -> Right MetricRichMediaVideoFullScreens
-        "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS" -> Right MetricRichMediaVideoMidpoints
-        "METRIC_RICH_MEDIA_VIDEO_MUTES" -> Right MetricRichMediaVideoMutes
-        "METRIC_RICH_MEDIA_VIDEO_PAUSES" -> Right MetricRichMediaVideoPauses
-        "METRIC_RICH_MEDIA_VIDEO_PLAYS" -> Right MetricRichMediaVideoPlays
-        "METRIC_RICH_MEDIA_VIDEO_SKIPS" -> Right MetricRichMediaVideoSkips
-        "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES" -> Right MetricRichMediaVideoThirdQuartileCompletes
-        "METRIC_TEA_TRUEVIEW_IMPRESSIONS" -> Right MetricTeaTrueviewImpressions
-        "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES" -> Right MetricTeaTrueviewUniqueCookies
-        "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE" -> Right MetricTeaTrueviewUniquePeople
-        "METRIC_TOTAL_CONVERSIONS" -> Right MetricTotalConversions
-        "METRIC_TOTAL_MEDIA_COST_ADVERTISER" -> Right MetricTotalMediaCostAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER" -> Right MetricTotalMediaCostEcpapcAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER" -> Right MetricTotalMediaCostEcpapcPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD" -> Right MetricTotalMediaCostEcpapcUsd
-        "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER" -> Right MetricTotalMediaCostEcpapvAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER" -> Right MetricTotalMediaCostEcpapvPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD" -> Right MetricTotalMediaCostEcpapvUsd
-        "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER" -> Right MetricTotalMediaCostEcpaAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER" -> Right MetricTotalMediaCostEcpaPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPA_USD" -> Right MetricTotalMediaCostEcpaUsd
-        "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER" -> Right MetricTotalMediaCostEcpcvAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER" -> Right MetricTotalMediaCostEcpcvPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPCV_USD" -> Right MetricTotalMediaCostEcpcvUsd
-        "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER" -> Right MetricTotalMediaCostEcpcAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER" -> Right MetricTotalMediaCostEcpcPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPC_USD" -> Right MetricTotalMediaCostEcpcUsd
-        "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER" -> Right MetricTotalMediaCostEcpmAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER" -> Right MetricTotalMediaCostEcpmPartner
-        "METRIC_TOTAL_MEDIA_COST_ECPM_USD" -> Right MetricTotalMediaCostEcpmUsd
-        "METRIC_TOTAL_MEDIA_COST_PARTNER" -> Right MetricTotalMediaCostPartner
-        "METRIC_TOTAL_MEDIA_COST_USD" -> Right MetricTotalMediaCostUsd
-        "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Right MetricTotalMediaCostViewableEcpmAdvertiser
-        "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Right MetricTotalMediaCostViewableEcpmPartner
-        "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD" -> Right MetricTotalMediaCostViewableEcpmUsd
-        "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER" -> Right MetricTrueviewAverageCpeAdvertiser
-        "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER" -> Right MetricTrueviewAverageCpePartner
-        "METRIC_TRUEVIEW_AVERAGE_CPE_USD" -> Right MetricTrueviewAverageCpeUsd
-        "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionCostManyPerViewAdvertiser
-        "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionCostManyPerViewPartner
-        "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD" -> Right MetricTrueviewConversionCostManyPerViewUsd
-        "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionCostOnePerViewAdvertiser
-        "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionCostOnePerViewPartner
-        "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD" -> Right MetricTrueviewConversionCostOnePerViewUsd
-        "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW" -> Right MetricTrueviewConversionManyPerView
-        "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW" -> Right MetricTrueviewConversionOnePerView
-        "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW" -> Right MetricTrueviewConversionRateOnePerView
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionValueManyPerViewAdvertiser
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionValueManyPerViewPartner
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD" -> Right MetricTrueviewConversionValueManyPerViewUsd
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionValueOnePerViewAdvertiser
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionValueOnePerViewPartner
-        "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD" -> Right MetricTrueviewConversionValueOnePerViewUsd
-        "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO" -> Right MetricTrueviewCostConversionManyPerViewRatio
-        "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO" -> Right MetricTrueviewCostConversionOnePerViewRatio
-        "METRIC_TRUEVIEW_CPV_ADVERTISER" -> Right MetricTrueviewCpvAdvertiser
-        "METRIC_TRUEVIEW_CPV_PARTNER" -> Right MetricTrueviewCpvPartner
-        "METRIC_TRUEVIEW_CPV_USD" -> Right MetricTrueviewCpvUsd
-        "METRIC_TRUEVIEW_EARNED_LIKES" -> Right MetricTrueviewEarnedLikes
-        "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS" -> Right MetricTrueviewEarnedPlayListAdditions
-        "METRIC_TRUEVIEW_EARNED_SHARES" -> Right MetricTrueviewEarnedShares
-        "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS" -> Right MetricTrueviewEarnedSubscribers
-        "METRIC_TRUEVIEW_EARNED_VIEWS" -> Right MetricTrueviewEarnedViews
-        "METRIC_TRUEVIEW_ENGAGEMENTS" -> Right MetricTrueviewEngagements
-        "METRIC_TRUEVIEW_ENGAGEMENT_RATE" -> Right MetricTrueviewEngagementRate
-        "METRIC_TRUEVIEW_IMPRESSION_SHARE" -> Right MetricTrueviewImpressionShare
-        "METRIC_TRUEVIEW_LOST_IS_BUDGET" -> Right MetricTrueviewLostIsBudget
-        "METRIC_TRUEVIEW_LOST_IS_RANK" -> Right MetricTrueviewLostIsRank
-        "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE" -> Right MetricTrueviewTotalConversionValue
-        "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER" -> Right MetricTrueviewTotalConversionValuesAdvertiser
-        "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER" -> Right MetricTrueviewTotalConversionValuesPartner
-        "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD" -> Right MetricTrueviewTotalConversionValuesUsd
-        "METRIC_TRUEVIEW_UNIQUE_VIEWERS" -> Right MetricTrueviewUniqueViewers
-        "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO" -> Right MetricTrueviewValueConversionManyPerViewRatio
-        "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO" -> Right MetricTrueviewValueConversionOnePerViewRatio
-        "METRIC_TRUEVIEW_VIEWS" -> Right MetricTrueviewViews
-        "METRIC_TRUEVIEW_VIEW_RATE" -> Right MetricTrueviewViewRate
-        "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION" -> Right MetricTrueviewViewThroughConversion
-        "METRIC_UNIQUE_VISITORS_COOKIES" -> Right MetricUniqueVisitorsCookies
-        "METRIC_UNKNOWN" -> Right MetricUnknown
-        "METRIC_VIDEO_COMPANION_CLICKS" -> Right MetricVideoCompanionClicks
-        "METRIC_VIDEO_COMPANION_IMPRESSIONS" -> Right MetricVideoCompanionImpressions
-        "METRIC_VIDEO_COMPLETION_RATE" -> Right MetricVideoCompletionRate
-        "METRIC_VIEWABLE_BID_REQUESTS" -> Right MetricViewableBidRequests
-        x -> Left ("Unable to parse ParametersMetricsItem from: " <> x)
-
-instance ToHttpApiData ParametersMetricsItem where
-    toQueryParam = \case
-        MetricActiveViewAudibleVisibleOnCompleteImpressions -> "METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS"
-        MetricActiveViewAverageViewableTime -> "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME"
-        MetricActiveViewDistributionUnmeasurable -> "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE"
-        MetricActiveViewDistributionUnviewable -> "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE"
-        MetricActiveViewDistributionViewable -> "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE"
-        MetricActiveViewEligibleImpressions -> "METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS"
-        MetricActiveViewMeasurableImpressions -> "METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS"
-        MetricActiveViewPctMeasurableImpressions -> "METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS"
-        MetricActiveViewPctViewableImpressions -> "METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS"
-        MetricActiveViewPercentAudibleVisibleAtStart -> "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START"
-        MetricActiveViewPercentAudibleVisibleFirstQuar -> "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR"
-        MetricActiveViewPercentAudibleVisibleOnComplete -> "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE"
-        MetricActiveViewPercentAudibleVisibleSecondQuar -> "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR"
-        MetricActiveViewPercentAudibleVisibleThirdQuar -> "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR"
-        MetricActiveViewPercentViewableForTimeThreshold -> "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD"
-        MetricActiveViewPercentVisibleAtStart -> "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START"
-        MetricActiveViewPercentVisibleFirstQuar -> "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR"
-        MetricActiveViewPercentVisibleOnComplete -> "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE"
-        MetricActiveViewPercentVisibleSecondQuar -> "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR"
-        MetricActiveViewPercentVisibleThirdQuar -> "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR"
-        MetricActiveViewUnmeasurableImpressions -> "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS"
-        MetricActiveViewUnviewableImpressions -> "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS"
-        MetricActiveViewViewableForTimeThreshold -> "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD"
-        MetricActiveViewViewableImpressions -> "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS"
-        MetricBidRequests -> "METRIC_BID_REQUESTS"
-        MetricBillableCostAdvertiser -> "METRIC_BILLABLE_COST_ADVERTISER"
-        MetricBillableCostPartner -> "METRIC_BILLABLE_COST_PARTNER"
-        MetricBillableCostUsd -> "METRIC_BILLABLE_COST_USD"
-        MetricClicks -> "METRIC_CLICKS"
-        MetricClickToPostClickConversionRate -> "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE"
-        MetricCmPostClickRevenue -> "METRIC_CM_POST_CLICK_REVENUE"
-        MetricCmPostViewRevenue -> "METRIC_CM_POST_VIEW_REVENUE"
-        MetricComscoreVceAudienceAvgFrequency -> "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY"
-        MetricComscoreVceAudienceImpressions -> "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS"
-        MetricComscoreVceAudienceImpressionsShare -> "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE"
-        MetricComscoreVceAudienceReachPct -> "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT"
-        MetricComscoreVceAudienceSharePct -> "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT"
-        MetricComscoreVceGrossRatingPoints -> "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS"
-        MetricComscoreVcePopulation -> "METRIC_COMSCORE_VCE_POPULATION"
-        MetricComscoreVceUniqueAudience -> "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE"
-        MetricConversionsPerMille -> "METRIC_CONVERSIONS_PER_MILLE"
-        MetricCookieReachAverageImpressionFrequency -> "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY"
-        MetricCookieReachImpressionReach -> "METRIC_COOKIE_REACH_IMPRESSION_REACH"
-        MetricCpmFEE1Advertiser -> "METRIC_CPM_FEE1_ADVERTISER"
-        MetricCpmFEE1Partner -> "METRIC_CPM_FEE1_PARTNER"
-        MetricCpmFEE1Usd -> "METRIC_CPM_FEE1_USD"
-        MetricCpmFEE2Advertiser -> "METRIC_CPM_FEE2_ADVERTISER"
-        MetricCpmFEE2Partner -> "METRIC_CPM_FEE2_PARTNER"
-        MetricCpmFEE2Usd -> "METRIC_CPM_FEE2_USD"
-        MetricCpmFEE3Advertiser -> "METRIC_CPM_FEE3_ADVERTISER"
-        MetricCpmFEE3Partner -> "METRIC_CPM_FEE3_PARTNER"
-        MetricCpmFEE3Usd -> "METRIC_CPM_FEE3_USD"
-        MetricCpmFEE4Advertiser -> "METRIC_CPM_FEE4_ADVERTISER"
-        MetricCpmFEE4Partner -> "METRIC_CPM_FEE4_PARTNER"
-        MetricCpmFEE4Usd -> "METRIC_CPM_FEE4_USD"
-        MetricCpmFEE5Advertiser -> "METRIC_CPM_FEE5_ADVERTISER"
-        MetricCpmFEE5Partner -> "METRIC_CPM_FEE5_PARTNER"
-        MetricCpmFEE5Usd -> "METRIC_CPM_FEE5_USD"
-        MetricCtr -> "METRIC_CTR"
-        MetricDataCostAdvertiser -> "METRIC_DATA_COST_ADVERTISER"
-        MetricDataCostPartner -> "METRIC_DATA_COST_PARTNER"
-        MetricDataCostUsd -> "METRIC_DATA_COST_USD"
-        MetricDBmEngagementRate -> "METRIC_DBM_ENGAGEMENT_RATE"
-        MetricFEE10Advertiser -> "METRIC_FEE10_ADVERTISER"
-        MetricFEE10Partner -> "METRIC_FEE10_PARTNER"
-        MetricFEE10Usd -> "METRIC_FEE10_USD"
-        MetricFEE11Advertiser -> "METRIC_FEE11_ADVERTISER"
-        MetricFEE11Partner -> "METRIC_FEE11_PARTNER"
-        MetricFEE11Usd -> "METRIC_FEE11_USD"
-        MetricFEE12Advertiser -> "METRIC_FEE12_ADVERTISER"
-        MetricFEE12Partner -> "METRIC_FEE12_PARTNER"
-        MetricFEE12Usd -> "METRIC_FEE12_USD"
-        MetricFEE13Advertiser -> "METRIC_FEE13_ADVERTISER"
-        MetricFEE13Partner -> "METRIC_FEE13_PARTNER"
-        MetricFEE13Usd -> "METRIC_FEE13_USD"
-        MetricFEE14Advertiser -> "METRIC_FEE14_ADVERTISER"
-        MetricFEE14Partner -> "METRIC_FEE14_PARTNER"
-        MetricFEE14Usd -> "METRIC_FEE14_USD"
-        MetricFEE15Advertiser -> "METRIC_FEE15_ADVERTISER"
-        MetricFEE15Partner -> "METRIC_FEE15_PARTNER"
-        MetricFEE15Usd -> "METRIC_FEE15_USD"
-        MetricFEE16Advertiser -> "METRIC_FEE16_ADVERTISER"
-        MetricFEE16Partner -> "METRIC_FEE16_PARTNER"
-        MetricFEE16Usd -> "METRIC_FEE16_USD"
-        MetricFEE17Advertiser -> "METRIC_FEE17_ADVERTISER"
-        MetricFEE17Partner -> "METRIC_FEE17_PARTNER"
-        MetricFEE17Usd -> "METRIC_FEE17_USD"
-        MetricFEE18Advertiser -> "METRIC_FEE18_ADVERTISER"
-        MetricFEE18Partner -> "METRIC_FEE18_PARTNER"
-        MetricFEE18Usd -> "METRIC_FEE18_USD"
-        MetricFEE19Advertiser -> "METRIC_FEE19_ADVERTISER"
-        MetricFEE19Partner -> "METRIC_FEE19_PARTNER"
-        MetricFEE19Usd -> "METRIC_FEE19_USD"
-        MetricFEE20Advertiser -> "METRIC_FEE20_ADVERTISER"
-        MetricFEE20Partner -> "METRIC_FEE20_PARTNER"
-        MetricFEE20Usd -> "METRIC_FEE20_USD"
-        MetricFEE21Advertiser -> "METRIC_FEE21_ADVERTISER"
-        MetricFEE21Partner -> "METRIC_FEE21_PARTNER"
-        MetricFEE21Usd -> "METRIC_FEE21_USD"
-        MetricFEE22Advertiser -> "METRIC_FEE22_ADVERTISER"
-        MetricFEE22Partner -> "METRIC_FEE22_PARTNER"
-        MetricFEE22Usd -> "METRIC_FEE22_USD"
-        MetricFEE2Advertiser -> "METRIC_FEE2_ADVERTISER"
-        MetricFEE2Partner -> "METRIC_FEE2_PARTNER"
-        MetricFEE2Usd -> "METRIC_FEE2_USD"
-        MetricFEE3Advertiser -> "METRIC_FEE3_ADVERTISER"
-        MetricFEE3Partner -> "METRIC_FEE3_PARTNER"
-        MetricFEE3Usd -> "METRIC_FEE3_USD"
-        MetricFEE4Advertiser -> "METRIC_FEE4_ADVERTISER"
-        MetricFEE4Partner -> "METRIC_FEE4_PARTNER"
-        MetricFEE4Usd -> "METRIC_FEE4_USD"
-        MetricFEE5Advertiser -> "METRIC_FEE5_ADVERTISER"
-        MetricFEE5Partner -> "METRIC_FEE5_PARTNER"
-        MetricFEE5Usd -> "METRIC_FEE5_USD"
-        MetricFEE6Advertiser -> "METRIC_FEE6_ADVERTISER"
-        MetricFEE6Partner -> "METRIC_FEE6_PARTNER"
-        MetricFEE6Usd -> "METRIC_FEE6_USD"
-        MetricFEE7Advertiser -> "METRIC_FEE7_ADVERTISER"
-        MetricFEE7Partner -> "METRIC_FEE7_PARTNER"
-        MetricFEE7Usd -> "METRIC_FEE7_USD"
-        MetricFEE8Advertiser -> "METRIC_FEE8_ADVERTISER"
-        MetricFEE8Partner -> "METRIC_FEE8_PARTNER"
-        MetricFEE8Usd -> "METRIC_FEE8_USD"
-        MetricFEE9Advertiser -> "METRIC_FEE9_ADVERTISER"
-        MetricFEE9Partner -> "METRIC_FEE9_PARTNER"
-        MetricFEE9Usd -> "METRIC_FEE9_USD"
-        MetricFloodlightImpressions -> "METRIC_FLOODLIGHT_IMPRESSIONS"
-        MetricImpressions -> "METRIC_IMPRESSIONS"
-        MetricImpressionsToConversionRate -> "METRIC_IMPRESSIONS_TO_CONVERSION_RATE"
-        MetricLastClicks -> "METRIC_LAST_CLICKS"
-        MetricLastImpressions -> "METRIC_LAST_IMPRESSIONS"
-        MetricMediaCostAdvertiser -> "METRIC_MEDIA_COST_ADVERTISER"
-        MetricMediaCostEcpapcAdvertiser -> "METRIC_MEDIA_COST_ECPAPC_ADVERTISER"
-        MetricMediaCostEcpapcPartner -> "METRIC_MEDIA_COST_ECPAPC_PARTNER"
-        MetricMediaCostEcpapcUsd -> "METRIC_MEDIA_COST_ECPAPC_USD"
-        MetricMediaCostEcpapvAdvertiser -> "METRIC_MEDIA_COST_ECPAPV_ADVERTISER"
-        MetricMediaCostEcpapvPartner -> "METRIC_MEDIA_COST_ECPAPV_PARTNER"
-        MetricMediaCostEcpapvUsd -> "METRIC_MEDIA_COST_ECPAPV_USD"
-        MetricMediaCostEcpaAdvertiser -> "METRIC_MEDIA_COST_ECPA_ADVERTISER"
-        MetricMediaCostEcpaPartner -> "METRIC_MEDIA_COST_ECPA_PARTNER"
-        MetricMediaCostEcpaUsd -> "METRIC_MEDIA_COST_ECPA_USD"
-        MetricMediaCostEcpcvAdvertiser -> "METRIC_MEDIA_COST_ECPCV_ADVERTISER"
-        MetricMediaCostEcpcvPartner -> "METRIC_MEDIA_COST_ECPCV_PARTNER"
-        MetricMediaCostEcpcvUsd -> "METRIC_MEDIA_COST_ECPCV_USD"
-        MetricMediaCostEcpcAdvertiser -> "METRIC_MEDIA_COST_ECPC_ADVERTISER"
-        MetricMediaCostEcpcPartner -> "METRIC_MEDIA_COST_ECPC_PARTNER"
-        MetricMediaCostEcpcUsd -> "METRIC_MEDIA_COST_ECPC_USD"
-        MetricMediaCostEcpmAdvertiser -> "METRIC_MEDIA_COST_ECPM_ADVERTISER"
-        MetricMediaCostEcpmPartner -> "METRIC_MEDIA_COST_ECPM_PARTNER"
-        MetricMediaCostEcpmUsd -> "METRIC_MEDIA_COST_ECPM_USD"
-        MetricMediaCostPartner -> "METRIC_MEDIA_COST_PARTNER"
-        MetricMediaCostUsd -> "METRIC_MEDIA_COST_USD"
-        MetricMediaCostViewableEcpmAdvertiser -> "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER"
-        MetricMediaCostViewableEcpmPartner -> "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER"
-        MetricMediaCostViewableEcpmUsd -> "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD"
-        MetricMediaFEE1Advertiser -> "METRIC_MEDIA_FEE1_ADVERTISER"
-        MetricMediaFEE1Partner -> "METRIC_MEDIA_FEE1_PARTNER"
-        MetricMediaFEE1Usd -> "METRIC_MEDIA_FEE1_USD"
-        MetricMediaFEE2Advertiser -> "METRIC_MEDIA_FEE2_ADVERTISER"
-        MetricMediaFEE2Partner -> "METRIC_MEDIA_FEE2_PARTNER"
-        MetricMediaFEE2Usd -> "METRIC_MEDIA_FEE2_USD"
-        MetricMediaFEE3Advertiser -> "METRIC_MEDIA_FEE3_ADVERTISER"
-        MetricMediaFEE3Partner -> "METRIC_MEDIA_FEE3_PARTNER"
-        MetricMediaFEE3Usd -> "METRIC_MEDIA_FEE3_USD"
-        MetricMediaFEE4Advertiser -> "METRIC_MEDIA_FEE4_ADVERTISER"
-        MetricMediaFEE4Partner -> "METRIC_MEDIA_FEE4_PARTNER"
-        MetricMediaFEE4Usd -> "METRIC_MEDIA_FEE4_USD"
-        MetricMediaFEE5Advertiser -> "METRIC_MEDIA_FEE5_ADVERTISER"
-        MetricMediaFEE5Partner -> "METRIC_MEDIA_FEE5_PARTNER"
-        MetricMediaFEE5Usd -> "METRIC_MEDIA_FEE5_USD"
-        MetricPixelLoads -> "METRIC_PIXEL_LOADS"
-        MetricPlatformFeeAdvertiser -> "METRIC_PLATFORM_FEE_ADVERTISER"
-        MetricPlatformFeePartner -> "METRIC_PLATFORM_FEE_PARTNER"
-        MetricPlatformFeeUsd -> "METRIC_PLATFORM_FEE_USD"
-        MetricPostClickDfaRevenue -> "METRIC_POST_CLICK_DFA_REVENUE"
-        MetricPostViewDfaRevenue -> "METRIC_POST_VIEW_DFA_REVENUE"
-        MetricProfitAdvertiser -> "METRIC_PROFIT_ADVERTISER"
-        MetricProfitEcpapcAdvertiser -> "METRIC_PROFIT_ECPAPC_ADVERTISER"
-        MetricProfitEcpapcPartner -> "METRIC_PROFIT_ECPAPC_PARTNER"
-        MetricProfitEcpapcUsd -> "METRIC_PROFIT_ECPAPC_USD"
-        MetricProfitEcpapvAdvertiser -> "METRIC_PROFIT_ECPAPV_ADVERTISER"
-        MetricProfitEcpapvPartner -> "METRIC_PROFIT_ECPAPV_PARTNER"
-        MetricProfitEcpapvUsd -> "METRIC_PROFIT_ECPAPV_USD"
-        MetricProfitEcpaAdvertiser -> "METRIC_PROFIT_ECPA_ADVERTISER"
-        MetricProfitEcpaPartner -> "METRIC_PROFIT_ECPA_PARTNER"
-        MetricProfitEcpaUsd -> "METRIC_PROFIT_ECPA_USD"
-        MetricProfitEcpcAdvertiser -> "METRIC_PROFIT_ECPC_ADVERTISER"
-        MetricProfitEcpcPartner -> "METRIC_PROFIT_ECPC_PARTNER"
-        MetricProfitEcpcUsd -> "METRIC_PROFIT_ECPC_USD"
-        MetricProfitEcpmAdvertiser -> "METRIC_PROFIT_ECPM_ADVERTISER"
-        MetricProfitEcpmPartner -> "METRIC_PROFIT_ECPM_PARTNER"
-        MetricProfitEcpmUsd -> "METRIC_PROFIT_ECPM_USD"
-        MetricProfitMargin -> "METRIC_PROFIT_MARGIN"
-        MetricProfitPartner -> "METRIC_PROFIT_PARTNER"
-        MetricProfitUsd -> "METRIC_PROFIT_USD"
-        MetricProfitViewableEcpmAdvertiser -> "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER"
-        MetricProfitViewableEcpmPartner -> "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER"
-        MetricProfitViewableEcpmUsd -> "METRIC_PROFIT_VIEWABLE_ECPM_USD"
-        MetricReachCookieFrequency -> "METRIC_REACH_COOKIE_FREQUENCY"
-        MetricReachCookieReach -> "METRIC_REACH_COOKIE_REACH"
-        MetricRevenueAdvertiser -> "METRIC_REVENUE_ADVERTISER"
-        MetricRevenueEcpapcAdvertiser -> "METRIC_REVENUE_ECPAPC_ADVERTISER"
-        MetricRevenueEcpapcPartner -> "METRIC_REVENUE_ECPAPC_PARTNER"
-        MetricRevenueEcpapcUsd -> "METRIC_REVENUE_ECPAPC_USD"
-        MetricRevenueEcpapvAdvertiser -> "METRIC_REVENUE_ECPAPV_ADVERTISER"
-        MetricRevenueEcpapvPartner -> "METRIC_REVENUE_ECPAPV_PARTNER"
-        MetricRevenueEcpapvUsd -> "METRIC_REVENUE_ECPAPV_USD"
-        MetricRevenueEcpaAdvertiser -> "METRIC_REVENUE_ECPA_ADVERTISER"
-        MetricRevenueEcpaPartner -> "METRIC_REVENUE_ECPA_PARTNER"
-        MetricRevenueEcpaUsd -> "METRIC_REVENUE_ECPA_USD"
-        MetricRevenueEcpcvAdvertiser -> "METRIC_REVENUE_ECPCV_ADVERTISER"
-        MetricRevenueEcpcvPartner -> "METRIC_REVENUE_ECPCV_PARTNER"
-        MetricRevenueEcpcvUsd -> "METRIC_REVENUE_ECPCV_USD"
-        MetricRevenueEcpcAdvertiser -> "METRIC_REVENUE_ECPC_ADVERTISER"
-        MetricRevenueEcpcPartner -> "METRIC_REVENUE_ECPC_PARTNER"
-        MetricRevenueEcpcUsd -> "METRIC_REVENUE_ECPC_USD"
-        MetricRevenueEcpiavcAdvertiser -> "METRIC_REVENUE_ECPIAVC_ADVERTISER"
-        MetricRevenueEcpmAdvertiser -> "METRIC_REVENUE_ECPM_ADVERTISER"
-        MetricRevenueEcpmPartner -> "METRIC_REVENUE_ECPM_PARTNER"
-        MetricRevenueEcpmUsd -> "METRIC_REVENUE_ECPM_USD"
-        MetricRevenuePartner -> "METRIC_REVENUE_PARTNER"
-        MetricRevenueUsd -> "METRIC_REVENUE_USD"
-        MetricRevenueViewableEcpmAdvertiser -> "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER"
-        MetricRevenueViewableEcpmPartner -> "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER"
-        MetricRevenueViewableEcpmUsd -> "METRIC_REVENUE_VIEWABLE_ECPM_USD"
-        MetricRichMediaScrolls -> "METRIC_RICH_MEDIA_SCROLLS"
-        MetricRichMediaVideoCompletions -> "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS"
-        MetricRichMediaVideoFirstQuartileCompletes -> "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES"
-        MetricRichMediaVideoFullScreens -> "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS"
-        MetricRichMediaVideoMidpoints -> "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS"
-        MetricRichMediaVideoMutes -> "METRIC_RICH_MEDIA_VIDEO_MUTES"
-        MetricRichMediaVideoPauses -> "METRIC_RICH_MEDIA_VIDEO_PAUSES"
-        MetricRichMediaVideoPlays -> "METRIC_RICH_MEDIA_VIDEO_PLAYS"
-        MetricRichMediaVideoSkips -> "METRIC_RICH_MEDIA_VIDEO_SKIPS"
-        MetricRichMediaVideoThirdQuartileCompletes -> "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES"
-        MetricTeaTrueviewImpressions -> "METRIC_TEA_TRUEVIEW_IMPRESSIONS"
-        MetricTeaTrueviewUniqueCookies -> "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES"
-        MetricTeaTrueviewUniquePeople -> "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE"
-        MetricTotalConversions -> "METRIC_TOTAL_CONVERSIONS"
-        MetricTotalMediaCostAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ADVERTISER"
-        MetricTotalMediaCostEcpapcAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER"
-        MetricTotalMediaCostEcpapcPartner -> "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER"
-        MetricTotalMediaCostEcpapcUsd -> "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD"
-        MetricTotalMediaCostEcpapvAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER"
-        MetricTotalMediaCostEcpapvPartner -> "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER"
-        MetricTotalMediaCostEcpapvUsd -> "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD"
-        MetricTotalMediaCostEcpaAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER"
-        MetricTotalMediaCostEcpaPartner -> "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER"
-        MetricTotalMediaCostEcpaUsd -> "METRIC_TOTAL_MEDIA_COST_ECPA_USD"
-        MetricTotalMediaCostEcpcvAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER"
-        MetricTotalMediaCostEcpcvPartner -> "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER"
-        MetricTotalMediaCostEcpcvUsd -> "METRIC_TOTAL_MEDIA_COST_ECPCV_USD"
-        MetricTotalMediaCostEcpcAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER"
-        MetricTotalMediaCostEcpcPartner -> "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER"
-        MetricTotalMediaCostEcpcUsd -> "METRIC_TOTAL_MEDIA_COST_ECPC_USD"
-        MetricTotalMediaCostEcpmAdvertiser -> "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER"
-        MetricTotalMediaCostEcpmPartner -> "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER"
-        MetricTotalMediaCostEcpmUsd -> "METRIC_TOTAL_MEDIA_COST_ECPM_USD"
-        MetricTotalMediaCostPartner -> "METRIC_TOTAL_MEDIA_COST_PARTNER"
-        MetricTotalMediaCostUsd -> "METRIC_TOTAL_MEDIA_COST_USD"
-        MetricTotalMediaCostViewableEcpmAdvertiser -> "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER"
-        MetricTotalMediaCostViewableEcpmPartner -> "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER"
-        MetricTotalMediaCostViewableEcpmUsd -> "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD"
-        MetricTrueviewAverageCpeAdvertiser -> "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER"
-        MetricTrueviewAverageCpePartner -> "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER"
-        MetricTrueviewAverageCpeUsd -> "METRIC_TRUEVIEW_AVERAGE_CPE_USD"
-        MetricTrueviewConversionCostManyPerViewAdvertiser -> "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER"
-        MetricTrueviewConversionCostManyPerViewPartner -> "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER"
-        MetricTrueviewConversionCostManyPerViewUsd -> "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD"
-        MetricTrueviewConversionCostOnePerViewAdvertiser -> "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER"
-        MetricTrueviewConversionCostOnePerViewPartner -> "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER"
-        MetricTrueviewConversionCostOnePerViewUsd -> "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD"
-        MetricTrueviewConversionManyPerView -> "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW"
-        MetricTrueviewConversionOnePerView -> "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW"
-        MetricTrueviewConversionRateOnePerView -> "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW"
-        MetricTrueviewConversionValueManyPerViewAdvertiser -> "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER"
-        MetricTrueviewConversionValueManyPerViewPartner -> "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER"
-        MetricTrueviewConversionValueManyPerViewUsd -> "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD"
-        MetricTrueviewConversionValueOnePerViewAdvertiser -> "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER"
-        MetricTrueviewConversionValueOnePerViewPartner -> "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER"
-        MetricTrueviewConversionValueOnePerViewUsd -> "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD"
-        MetricTrueviewCostConversionManyPerViewRatio -> "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO"
-        MetricTrueviewCostConversionOnePerViewRatio -> "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO"
-        MetricTrueviewCpvAdvertiser -> "METRIC_TRUEVIEW_CPV_ADVERTISER"
-        MetricTrueviewCpvPartner -> "METRIC_TRUEVIEW_CPV_PARTNER"
-        MetricTrueviewCpvUsd -> "METRIC_TRUEVIEW_CPV_USD"
-        MetricTrueviewEarnedLikes -> "METRIC_TRUEVIEW_EARNED_LIKES"
-        MetricTrueviewEarnedPlayListAdditions -> "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS"
-        MetricTrueviewEarnedShares -> "METRIC_TRUEVIEW_EARNED_SHARES"
-        MetricTrueviewEarnedSubscribers -> "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS"
-        MetricTrueviewEarnedViews -> "METRIC_TRUEVIEW_EARNED_VIEWS"
-        MetricTrueviewEngagements -> "METRIC_TRUEVIEW_ENGAGEMENTS"
-        MetricTrueviewEngagementRate -> "METRIC_TRUEVIEW_ENGAGEMENT_RATE"
-        MetricTrueviewImpressionShare -> "METRIC_TRUEVIEW_IMPRESSION_SHARE"
-        MetricTrueviewLostIsBudget -> "METRIC_TRUEVIEW_LOST_IS_BUDGET"
-        MetricTrueviewLostIsRank -> "METRIC_TRUEVIEW_LOST_IS_RANK"
-        MetricTrueviewTotalConversionValue -> "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE"
-        MetricTrueviewTotalConversionValuesAdvertiser -> "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER"
-        MetricTrueviewTotalConversionValuesPartner -> "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER"
-        MetricTrueviewTotalConversionValuesUsd -> "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD"
-        MetricTrueviewUniqueViewers -> "METRIC_TRUEVIEW_UNIQUE_VIEWERS"
-        MetricTrueviewValueConversionManyPerViewRatio -> "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO"
-        MetricTrueviewValueConversionOnePerViewRatio -> "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO"
-        MetricTrueviewViews -> "METRIC_TRUEVIEW_VIEWS"
-        MetricTrueviewViewRate -> "METRIC_TRUEVIEW_VIEW_RATE"
-        MetricTrueviewViewThroughConversion -> "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION"
-        MetricUniqueVisitorsCookies -> "METRIC_UNIQUE_VISITORS_COOKIES"
-        MetricUnknown -> "METRIC_UNKNOWN"
-        MetricVideoCompanionClicks -> "METRIC_VIDEO_COMPANION_CLICKS"
-        MetricVideoCompanionImpressions -> "METRIC_VIDEO_COMPANION_IMPRESSIONS"
-        MetricVideoCompletionRate -> "METRIC_VIDEO_COMPLETION_RATE"
-        MetricViewableBidRequests -> "METRIC_VIEWABLE_BID_REQUESTS"
-
-instance FromJSON ParametersMetricsItem where
-    parseJSON = parseJSONText "ParametersMetricsItem"
-
-instance ToJSON ParametersMetricsItem where
-    toJSON = toJSONText
-
--- | How often the query is run.
-data QueryScheduleFrequency
-    = Daily
-      -- ^ @DAILY@
-    | Monthly
-      -- ^ @MONTHLY@
-    | OneTime
-      -- ^ @ONE_TIME@
-    | Quarterly
-      -- ^ @QUARTERLY@
-    | SemiMonthly
-      -- ^ @SEMI_MONTHLY@
-    | Weekly
-      -- ^ @WEEKLY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable QueryScheduleFrequency
-
-instance FromHttpApiData QueryScheduleFrequency where
-    parseQueryParam = \case
-        "DAILY" -> Right Daily
-        "MONTHLY" -> Right Monthly
-        "ONE_TIME" -> Right OneTime
-        "QUARTERLY" -> Right Quarterly
-        "SEMI_MONTHLY" -> Right SemiMonthly
-        "WEEKLY" -> Right Weekly
-        x -> Left ("Unable to parse QueryScheduleFrequency from: " <> x)
-
-instance ToHttpApiData QueryScheduleFrequency where
-    toQueryParam = \case
-        Daily -> "DAILY"
-        Monthly -> "MONTHLY"
-        OneTime -> "ONE_TIME"
-        Quarterly -> "QUARTERLY"
-        SemiMonthly -> "SEMI_MONTHLY"
-        Weekly -> "WEEKLY"
-
-instance FromJSON QueryScheduleFrequency where
-    parseJSON = parseJSONText "QueryScheduleFrequency"
-
-instance ToJSON QueryScheduleFrequency where
-    toJSON = toJSONText
-
--- | File specification (column names, types, order) in which the line items
--- will be returned. Default to EWF.
-data DownloadLineItemsRequestFileSpec
-    = Ewf
-      -- ^ @EWF@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DownloadLineItemsRequestFileSpec
-
-instance FromHttpApiData DownloadLineItemsRequestFileSpec where
-    parseQueryParam = \case
-        "EWF" -> Right Ewf
-        x -> Left ("Unable to parse DownloadLineItemsRequestFileSpec from: " <> x)
-
-instance ToHttpApiData DownloadLineItemsRequestFileSpec where
-    toQueryParam = \case
-        Ewf -> "EWF"
-
-instance FromJSON DownloadLineItemsRequestFileSpec where
-    parseJSON = parseJSONText "DownloadLineItemsRequestFileSpec"
-
-instance ToJSON DownloadLineItemsRequestFileSpec where
-    toJSON = toJSONText
-
--- | Format the line items are in. Default to CSV.
-data UploadLineItemsRequestFormat
-    = ULIRFCSV
-      -- ^ @CSV@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UploadLineItemsRequestFormat
-
-instance FromHttpApiData UploadLineItemsRequestFormat where
-    parseQueryParam = \case
-        "CSV" -> Right ULIRFCSV
-        x -> Left ("Unable to parse UploadLineItemsRequestFormat from: " <> x)
-
-instance ToHttpApiData UploadLineItemsRequestFormat where
-    toQueryParam = \case
-        ULIRFCSV -> "CSV"
-
-instance FromJSON UploadLineItemsRequestFormat where
-    parseJSON = parseJSONText "UploadLineItemsRequestFormat"
-
-instance ToJSON UploadLineItemsRequestFormat where
-    toJSON = toJSONText
-
--- | Filter type.
-data FilterPairType
-    = FilterActiveViewExpectedViewability
-      -- ^ @FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY@
-    | FilterActivityId
-      -- ^ @FILTER_ACTIVITY_ID@
-    | FilterAdvertiser
-      -- ^ @FILTER_ADVERTISER@
-    | FilterAdvertiserCurrency
-      -- ^ @FILTER_ADVERTISER_CURRENCY@
-    | FilterAdvertiserTimezone
-      -- ^ @FILTER_ADVERTISER_TIMEZONE@
-    | FilterAdPosition
-      -- ^ @FILTER_AD_POSITION@
-    | FilterAge
-      -- ^ @FILTER_AGE@
-    | FilterAuthorizedSellerStateId
-      -- ^ @FILTER_AUTHORIZED_SELLER_STATE_ID@
-    | FilterBrandsafeChannelId
-      -- ^ @FILTER_BRANDSAFE_CHANNEL_ID@
-    | FilterBrowser
-      -- ^ @FILTER_BROWSER@
-    | FilterBudgetSegmentDescription
-      -- ^ @FILTER_BUDGET_SEGMENT_DESCRIPTION@
-    | FilterCampaignDailyFrequency
-      -- ^ @FILTER_CAMPAIGN_DAILY_FREQUENCY@
-    | FilterCarrier
-      -- ^ @FILTER_CARRIER@
-    | FilterChannelId
-      -- ^ @FILTER_CHANNEL_ID@
-    | FilterCity
-      -- ^ @FILTER_CITY@
-    | FilterCompanionCreativeId
-      -- ^ @FILTER_COMPANION_CREATIVE_ID@
-    | FilterConversionDelay
-      -- ^ @FILTER_CONVERSION_DELAY@
-    | FilterCountry
-      -- ^ @FILTER_COUNTRY@
-    | FilterCreativeAttribute
-      -- ^ @FILTER_CREATIVE_ATTRIBUTE@
-    | FilterCreativeHeight
-      -- ^ @FILTER_CREATIVE_HEIGHT@
-    | FilterCreativeId
-      -- ^ @FILTER_CREATIVE_ID@
-    | FilterCreativeSize
-      -- ^ @FILTER_CREATIVE_SIZE@
-    | FilterCreativeType
-      -- ^ @FILTER_CREATIVE_TYPE@
-    | FilterCreativeWidth
-      -- ^ @FILTER_CREATIVE_WIDTH@
-    | FilterDataProvider
-      -- ^ @FILTER_DATA_PROVIDER@
-    | FilterDate
-      -- ^ @FILTER_DATE@
-    | FilterDayOfWeek
-      -- ^ @FILTER_DAY_OF_WEEK@
-    | FilterDeviceMake
-      -- ^ @FILTER_DEVICE_MAKE@
-    | FilterDeviceModel
-      -- ^ @FILTER_DEVICE_MODEL@
-    | FilterDeviceType
-      -- ^ @FILTER_DEVICE_TYPE@
-    | FilterDfpOrderId
-      -- ^ @FILTER_DFP_ORDER_ID@
-    | FilterDma
-      -- ^ @FILTER_DMA@
-    | FilterDV360ActivityId
-      -- ^ @FILTER_DV360_ACTIVITY_ID@
-    | FilterExchangeId
-      -- ^ @FILTER_EXCHANGE_ID@
-    | FilterFloodlightActivityId
-      -- ^ @FILTER_FLOODLIGHT_ACTIVITY_ID@
-    | FilterFloodlightPixelId
-      -- ^ @FILTER_FLOODLIGHT_PIXEL_ID@
-    | FilterGender
-      -- ^ @FILTER_GENDER@
-    | FilterInsertionOrder
-      -- ^ @FILTER_INSERTION_ORDER@
-    | FilterInventoryCommitmentType
-      -- ^ @FILTER_INVENTORY_COMMITMENT_TYPE@
-    | FilterInventoryDeliveryMethod
-      -- ^ @FILTER_INVENTORY_DELIVERY_METHOD@
-    | FilterInventoryFormat
-      -- ^ @FILTER_INVENTORY_FORMAT@
-    | FilterInventoryRateType
-      -- ^ @FILTER_INVENTORY_RATE_TYPE@
-    | FilterInventorySource
-      -- ^ @FILTER_INVENTORY_SOURCE@
-    | FilterInventorySourceType
-      -- ^ @FILTER_INVENTORY_SOURCE_TYPE@
-    | FilterKeyword
-      -- ^ @FILTER_KEYWORD@
-    | FilterLineItem
-      -- ^ @FILTER_LINE_ITEM@
-    | FilterLineItemDailyFrequency
-      -- ^ @FILTER_LINE_ITEM_DAILY_FREQUENCY@
-    | FilterLineItemLifetimeFrequency
-      -- ^ @FILTER_LINE_ITEM_LIFETIME_FREQUENCY@
-    | FilterLineItemType
-      -- ^ @FILTER_LINE_ITEM_TYPE@
-    | FilterMediaPlan
-      -- ^ @FILTER_MEDIA_PLAN@
-    | FilterMobileDeviceMake
-      -- ^ @FILTER_MOBILE_DEVICE_MAKE@
-    | FilterMobileDeviceMakeModel
-      -- ^ @FILTER_MOBILE_DEVICE_MAKE_MODEL@
-    | FilterMobileDeviceType
-      -- ^ @FILTER_MOBILE_DEVICE_TYPE@
-    | FilterMobileGeo
-      -- ^ @FILTER_MOBILE_GEO@
-    | FilterMonth
-      -- ^ @FILTER_MONTH@
-    | FilterMraidSupport
-      -- ^ @FILTER_MRAID_SUPPORT@
-    | FilterNielsenAge
-      -- ^ @FILTER_NIELSEN_AGE@
-    | FilterNielsenCountryCode
-      -- ^ @FILTER_NIELSEN_COUNTRY_CODE@
-    | FilterNielsenDeviceId
-      -- ^ @FILTER_NIELSEN_DEVICE_ID@
-    | FilterNielsenGender
-      -- ^ @FILTER_NIELSEN_GENDER@
-    | FilterNotSupported
-      -- ^ @FILTER_NOT_SUPPORTED@
-    | FilterOrderId
-      -- ^ @FILTER_ORDER_ID@
-    | FilterOS
-      -- ^ @FILTER_OS@
-    | FilterPageCategory
-      -- ^ @FILTER_PAGE_CATEGORY@
-    | FilterPageLayout
-      -- ^ @FILTER_PAGE_LAYOUT@
-    | FilterPartner
-      -- ^ @FILTER_PARTNER@
-    | FilterPartnerCurrency
-      -- ^ @FILTER_PARTNER_CURRENCY@
-    | FilterPublicInventory
-      -- ^ @FILTER_PUBLIC_INVENTORY@
-    | FilterQuarter
-      -- ^ @FILTER_QUARTER@
-    | FilterRegion
-      -- ^ @FILTER_REGION@
-    | FilterRegularChannelId
-      -- ^ @FILTER_REGULAR_CHANNEL_ID@
-    | FilterSiteId
-      -- ^ @FILTER_SITE_ID@
-    | FilterSiteLanguage
-      -- ^ @FILTER_SITE_LANGUAGE@
-    | FilterSkippableSupport
-      -- ^ @FILTER_SKIPPABLE_SUPPORT@
-    | FilterTargetedUserList
-      -- ^ @FILTER_TARGETED_USER_LIST@
-    | FilterTimeOfDay
-      -- ^ @FILTER_TIME_OF_DAY@
-    | FilterTrueviewAdGroupAdId
-      -- ^ @FILTER_TRUEVIEW_AD_GROUP_AD_ID@
-    | FilterTrueviewAdGroupId
-      -- ^ @FILTER_TRUEVIEW_AD_GROUP_ID@
-    | FilterTrueviewAge
-      -- ^ @FILTER_TRUEVIEW_AGE@
-    | FilterTrueviewCategory
-      -- ^ @FILTER_TRUEVIEW_CATEGORY@
-    | FilterTrueviewCity
-      -- ^ @FILTER_TRUEVIEW_CITY@
-    | FilterTrueviewConversionType
-      -- ^ @FILTER_TRUEVIEW_CONVERSION_TYPE@
-    | FilterTrueviewCountry
-      -- ^ @FILTER_TRUEVIEW_COUNTRY@
-    | FilterTrueviewCustomAffinity
-      -- ^ @FILTER_TRUEVIEW_CUSTOM_AFFINITY@
-    | FilterTrueviewDma
-      -- ^ @FILTER_TRUEVIEW_DMA@
-    | FilterTrueviewGender
-      -- ^ @FILTER_TRUEVIEW_GENDER@
-    | FilterTrueviewIarAge
-      -- ^ @FILTER_TRUEVIEW_IAR_AGE@
-    | FilterTrueviewIarCategory
-      -- ^ @FILTER_TRUEVIEW_IAR_CATEGORY@
-    | FilterTrueviewIarCity
-      -- ^ @FILTER_TRUEVIEW_IAR_CITY@
-    | FilterTrueviewIarCountry
-      -- ^ @FILTER_TRUEVIEW_IAR_COUNTRY@
-    | FilterTrueviewIarGender
-      -- ^ @FILTER_TRUEVIEW_IAR_GENDER@
-    | FilterTrueviewIarInterest
-      -- ^ @FILTER_TRUEVIEW_IAR_INTEREST@
-    | FilterTrueviewIarLanguage
-      -- ^ @FILTER_TRUEVIEW_IAR_LANGUAGE@
-    | FilterTrueviewIarParentalStatus
-      -- ^ @FILTER_TRUEVIEW_IAR_PARENTAL_STATUS@
-    | FilterTrueviewIarRegion
-      -- ^ @FILTER_TRUEVIEW_IAR_REGION@
-    | FilterTrueviewIarRemarketingList
-      -- ^ @FILTER_TRUEVIEW_IAR_REMARKETING_LIST@
-    | FilterTrueviewIarTimeOfDay
-      -- ^ @FILTER_TRUEVIEW_IAR_TIME_OF_DAY@
-    | FilterTrueviewIarYouTubeChannel
-      -- ^ @FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL@
-    | FilterTrueviewIarYouTubeVideo
-      -- ^ @FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO@
-    | FilterTrueviewIarZipcode
-      -- ^ @FILTER_TRUEVIEW_IAR_ZIPCODE@
-    | FilterTrueviewInterest
-      -- ^ @FILTER_TRUEVIEW_INTEREST@
-    | FilterTrueviewKeyword
-      -- ^ @FILTER_TRUEVIEW_KEYWORD@
-    | FilterTrueviewParentalStatus
-      -- ^ @FILTER_TRUEVIEW_PARENTAL_STATUS@
-    | FilterTrueviewPlacement
-      -- ^ @FILTER_TRUEVIEW_PLACEMENT@
-    | FilterTrueviewRegion
-      -- ^ @FILTER_TRUEVIEW_REGION@
-    | FilterTrueviewRemarketingList
-      -- ^ @FILTER_TRUEVIEW_REMARKETING_LIST@
-    | FilterTrueviewURL
-      -- ^ @FILTER_TRUEVIEW_URL@
-    | FilterTrueviewZipcode
-      -- ^ @FILTER_TRUEVIEW_ZIPCODE@
-    | FilterUnknown
-      -- ^ @FILTER_UNKNOWN@
-    | FilterUserList
-      -- ^ @FILTER_USER_LIST@
-    | FilterUserListFirstParty
-      -- ^ @FILTER_USER_LIST_FIRST_PARTY@
-    | FilterUserListThirdParty
-      -- ^ @FILTER_USER_LIST_THIRD_PARTY@
-    | FilterVideoAdPositionInStream
-      -- ^ @FILTER_VIDEO_AD_POSITION_IN_STREAM@
-    | FilterVideoCompanionSize
-      -- ^ @FILTER_VIDEO_COMPANION_SIZE@
-    | FilterVideoCompanionType
-      -- ^ @FILTER_VIDEO_COMPANION_TYPE@
-    | FilterVideoCreativeDuration
-      -- ^ @FILTER_VIDEO_CREATIVE_DURATION@
-    | FilterVideoCreativeDurationSkippable
-      -- ^ @FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE@
-    | FilterVideoDurationSeconds
-      -- ^ @FILTER_VIDEO_DURATION_SECONDS@
-    | FilterVideoFormatSupport
-      -- ^ @FILTER_VIDEO_FORMAT_SUPPORT@
-    | FilterVideoInventoryType
-      -- ^ @FILTER_VIDEO_INVENTORY_TYPE@
-    | FilterVideoPlayerSize
-      -- ^ @FILTER_VIDEO_PLAYER_SIZE@
-    | FilterVideoRatingTier
-      -- ^ @FILTER_VIDEO_RATING_TIER@
-    | FilterVideoSkippableSupport
-      -- ^ @FILTER_VIDEO_SKIPPABLE_SUPPORT@
-    | FilterVideoVpaidSupport
-      -- ^ @FILTER_VIDEO_VPAID_SUPPORT@
-    | FilterWeek
-      -- ^ @FILTER_WEEK@
-    | FilterYear
-      -- ^ @FILTER_YEAR@
-    | FilterYouTubeVertical
-      -- ^ @FILTER_YOUTUBE_VERTICAL@
-    | FilterZipCode
-      -- ^ @FILTER_ZIP_CODE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FilterPairType
-
-instance FromHttpApiData FilterPairType where
-    parseQueryParam = \case
-        "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Right FilterActiveViewExpectedViewability
-        "FILTER_ACTIVITY_ID" -> Right FilterActivityId
-        "FILTER_ADVERTISER" -> Right FilterAdvertiser
-        "FILTER_ADVERTISER_CURRENCY" -> Right FilterAdvertiserCurrency
-        "FILTER_ADVERTISER_TIMEZONE" -> Right FilterAdvertiserTimezone
-        "FILTER_AD_POSITION" -> Right FilterAdPosition
-        "FILTER_AGE" -> Right FilterAge
-        "FILTER_AUTHORIZED_SELLER_STATE_ID" -> Right FilterAuthorizedSellerStateId
-        "FILTER_BRANDSAFE_CHANNEL_ID" -> Right FilterBrandsafeChannelId
-        "FILTER_BROWSER" -> Right FilterBrowser
-        "FILTER_BUDGET_SEGMENT_DESCRIPTION" -> Right FilterBudgetSegmentDescription
-        "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Right FilterCampaignDailyFrequency
-        "FILTER_CARRIER" -> Right FilterCarrier
-        "FILTER_CHANNEL_ID" -> Right FilterChannelId
-        "FILTER_CITY" -> Right FilterCity
-        "FILTER_COMPANION_CREATIVE_ID" -> Right FilterCompanionCreativeId
-        "FILTER_CONVERSION_DELAY" -> Right FilterConversionDelay
-        "FILTER_COUNTRY" -> Right FilterCountry
-        "FILTER_CREATIVE_ATTRIBUTE" -> Right FilterCreativeAttribute
-        "FILTER_CREATIVE_HEIGHT" -> Right FilterCreativeHeight
-        "FILTER_CREATIVE_ID" -> Right FilterCreativeId
-        "FILTER_CREATIVE_SIZE" -> Right FilterCreativeSize
-        "FILTER_CREATIVE_TYPE" -> Right FilterCreativeType
-        "FILTER_CREATIVE_WIDTH" -> Right FilterCreativeWidth
-        "FILTER_DATA_PROVIDER" -> Right FilterDataProvider
-        "FILTER_DATE" -> Right FilterDate
-        "FILTER_DAY_OF_WEEK" -> Right FilterDayOfWeek
-        "FILTER_DEVICE_MAKE" -> Right FilterDeviceMake
-        "FILTER_DEVICE_MODEL" -> Right FilterDeviceModel
-        "FILTER_DEVICE_TYPE" -> Right FilterDeviceType
-        "FILTER_DFP_ORDER_ID" -> Right FilterDfpOrderId
-        "FILTER_DMA" -> Right FilterDma
-        "FILTER_DV360_ACTIVITY_ID" -> Right FilterDV360ActivityId
-        "FILTER_EXCHANGE_ID" -> Right FilterExchangeId
-        "FILTER_FLOODLIGHT_ACTIVITY_ID" -> Right FilterFloodlightActivityId
-        "FILTER_FLOODLIGHT_PIXEL_ID" -> Right FilterFloodlightPixelId
-        "FILTER_GENDER" -> Right FilterGender
-        "FILTER_INSERTION_ORDER" -> Right FilterInsertionOrder
-        "FILTER_INVENTORY_COMMITMENT_TYPE" -> Right FilterInventoryCommitmentType
-        "FILTER_INVENTORY_DELIVERY_METHOD" -> Right FilterInventoryDeliveryMethod
-        "FILTER_INVENTORY_FORMAT" -> Right FilterInventoryFormat
-        "FILTER_INVENTORY_RATE_TYPE" -> Right FilterInventoryRateType
-        "FILTER_INVENTORY_SOURCE" -> Right FilterInventorySource
-        "FILTER_INVENTORY_SOURCE_TYPE" -> Right FilterInventorySourceType
-        "FILTER_KEYWORD" -> Right FilterKeyword
-        "FILTER_LINE_ITEM" -> Right FilterLineItem
-        "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Right FilterLineItemDailyFrequency
-        "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Right FilterLineItemLifetimeFrequency
-        "FILTER_LINE_ITEM_TYPE" -> Right FilterLineItemType
-        "FILTER_MEDIA_PLAN" -> Right FilterMediaPlan
-        "FILTER_MOBILE_DEVICE_MAKE" -> Right FilterMobileDeviceMake
-        "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Right FilterMobileDeviceMakeModel
-        "FILTER_MOBILE_DEVICE_TYPE" -> Right FilterMobileDeviceType
-        "FILTER_MOBILE_GEO" -> Right FilterMobileGeo
-        "FILTER_MONTH" -> Right FilterMonth
-        "FILTER_MRAID_SUPPORT" -> Right FilterMraidSupport
-        "FILTER_NIELSEN_AGE" -> Right FilterNielsenAge
-        "FILTER_NIELSEN_COUNTRY_CODE" -> Right FilterNielsenCountryCode
-        "FILTER_NIELSEN_DEVICE_ID" -> Right FilterNielsenDeviceId
-        "FILTER_NIELSEN_GENDER" -> Right FilterNielsenGender
-        "FILTER_NOT_SUPPORTED" -> Right FilterNotSupported
-        "FILTER_ORDER_ID" -> Right FilterOrderId
-        "FILTER_OS" -> Right FilterOS
-        "FILTER_PAGE_CATEGORY" -> Right FilterPageCategory
-        "FILTER_PAGE_LAYOUT" -> Right FilterPageLayout
-        "FILTER_PARTNER" -> Right FilterPartner
-        "FILTER_PARTNER_CURRENCY" -> Right FilterPartnerCurrency
-        "FILTER_PUBLIC_INVENTORY" -> Right FilterPublicInventory
-        "FILTER_QUARTER" -> Right FilterQuarter
-        "FILTER_REGION" -> Right FilterRegion
-        "FILTER_REGULAR_CHANNEL_ID" -> Right FilterRegularChannelId
-        "FILTER_SITE_ID" -> Right FilterSiteId
-        "FILTER_SITE_LANGUAGE" -> Right FilterSiteLanguage
-        "FILTER_SKIPPABLE_SUPPORT" -> Right FilterSkippableSupport
-        "FILTER_TARGETED_USER_LIST" -> Right FilterTargetedUserList
-        "FILTER_TIME_OF_DAY" -> Right FilterTimeOfDay
-        "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Right FilterTrueviewAdGroupAdId
-        "FILTER_TRUEVIEW_AD_GROUP_ID" -> Right FilterTrueviewAdGroupId
-        "FILTER_TRUEVIEW_AGE" -> Right FilterTrueviewAge
-        "FILTER_TRUEVIEW_CATEGORY" -> Right FilterTrueviewCategory
-        "FILTER_TRUEVIEW_CITY" -> Right FilterTrueviewCity
-        "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Right FilterTrueviewConversionType
-        "FILTER_TRUEVIEW_COUNTRY" -> Right FilterTrueviewCountry
-        "FILTER_TRUEVIEW_CUSTOM_AFFINITY" -> Right FilterTrueviewCustomAffinity
-        "FILTER_TRUEVIEW_DMA" -> Right FilterTrueviewDma
-        "FILTER_TRUEVIEW_GENDER" -> Right FilterTrueviewGender
-        "FILTER_TRUEVIEW_IAR_AGE" -> Right FilterTrueviewIarAge
-        "FILTER_TRUEVIEW_IAR_CATEGORY" -> Right FilterTrueviewIarCategory
-        "FILTER_TRUEVIEW_IAR_CITY" -> Right FilterTrueviewIarCity
-        "FILTER_TRUEVIEW_IAR_COUNTRY" -> Right FilterTrueviewIarCountry
-        "FILTER_TRUEVIEW_IAR_GENDER" -> Right FilterTrueviewIarGender
-        "FILTER_TRUEVIEW_IAR_INTEREST" -> Right FilterTrueviewIarInterest
-        "FILTER_TRUEVIEW_IAR_LANGUAGE" -> Right FilterTrueviewIarLanguage
-        "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS" -> Right FilterTrueviewIarParentalStatus
-        "FILTER_TRUEVIEW_IAR_REGION" -> Right FilterTrueviewIarRegion
-        "FILTER_TRUEVIEW_IAR_REMARKETING_LIST" -> Right FilterTrueviewIarRemarketingList
-        "FILTER_TRUEVIEW_IAR_TIME_OF_DAY" -> Right FilterTrueviewIarTimeOfDay
-        "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL" -> Right FilterTrueviewIarYouTubeChannel
-        "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO" -> Right FilterTrueviewIarYouTubeVideo
-        "FILTER_TRUEVIEW_IAR_ZIPCODE" -> Right FilterTrueviewIarZipcode
-        "FILTER_TRUEVIEW_INTEREST" -> Right FilterTrueviewInterest
-        "FILTER_TRUEVIEW_KEYWORD" -> Right FilterTrueviewKeyword
-        "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Right FilterTrueviewParentalStatus
-        "FILTER_TRUEVIEW_PLACEMENT" -> Right FilterTrueviewPlacement
-        "FILTER_TRUEVIEW_REGION" -> Right FilterTrueviewRegion
-        "FILTER_TRUEVIEW_REMARKETING_LIST" -> Right FilterTrueviewRemarketingList
-        "FILTER_TRUEVIEW_URL" -> Right FilterTrueviewURL
-        "FILTER_TRUEVIEW_ZIPCODE" -> Right FilterTrueviewZipcode
-        "FILTER_UNKNOWN" -> Right FilterUnknown
-        "FILTER_USER_LIST" -> Right FilterUserList
-        "FILTER_USER_LIST_FIRST_PARTY" -> Right FilterUserListFirstParty
-        "FILTER_USER_LIST_THIRD_PARTY" -> Right FilterUserListThirdParty
-        "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Right FilterVideoAdPositionInStream
-        "FILTER_VIDEO_COMPANION_SIZE" -> Right FilterVideoCompanionSize
-        "FILTER_VIDEO_COMPANION_TYPE" -> Right FilterVideoCompanionType
-        "FILTER_VIDEO_CREATIVE_DURATION" -> Right FilterVideoCreativeDuration
-        "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Right FilterVideoCreativeDurationSkippable
-        "FILTER_VIDEO_DURATION_SECONDS" -> Right FilterVideoDurationSeconds
-        "FILTER_VIDEO_FORMAT_SUPPORT" -> Right FilterVideoFormatSupport
-        "FILTER_VIDEO_INVENTORY_TYPE" -> Right FilterVideoInventoryType
-        "FILTER_VIDEO_PLAYER_SIZE" -> Right FilterVideoPlayerSize
-        "FILTER_VIDEO_RATING_TIER" -> Right FilterVideoRatingTier
-        "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Right FilterVideoSkippableSupport
-        "FILTER_VIDEO_VPAID_SUPPORT" -> Right FilterVideoVpaidSupport
-        "FILTER_WEEK" -> Right FilterWeek
-        "FILTER_YEAR" -> Right FilterYear
-        "FILTER_YOUTUBE_VERTICAL" -> Right FilterYouTubeVertical
-        "FILTER_ZIP_CODE" -> Right FilterZipCode
-        x -> Left ("Unable to parse FilterPairType from: " <> x)
-
-instance ToHttpApiData FilterPairType where
-    toQueryParam = \case
-        FilterActiveViewExpectedViewability -> "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
-        FilterActivityId -> "FILTER_ACTIVITY_ID"
-        FilterAdvertiser -> "FILTER_ADVERTISER"
-        FilterAdvertiserCurrency -> "FILTER_ADVERTISER_CURRENCY"
-        FilterAdvertiserTimezone -> "FILTER_ADVERTISER_TIMEZONE"
-        FilterAdPosition -> "FILTER_AD_POSITION"
-        FilterAge -> "FILTER_AGE"
-        FilterAuthorizedSellerStateId -> "FILTER_AUTHORIZED_SELLER_STATE_ID"
-        FilterBrandsafeChannelId -> "FILTER_BRANDSAFE_CHANNEL_ID"
-        FilterBrowser -> "FILTER_BROWSER"
-        FilterBudgetSegmentDescription -> "FILTER_BUDGET_SEGMENT_DESCRIPTION"
-        FilterCampaignDailyFrequency -> "FILTER_CAMPAIGN_DAILY_FREQUENCY"
-        FilterCarrier -> "FILTER_CARRIER"
-        FilterChannelId -> "FILTER_CHANNEL_ID"
-        FilterCity -> "FILTER_CITY"
-        FilterCompanionCreativeId -> "FILTER_COMPANION_CREATIVE_ID"
-        FilterConversionDelay -> "FILTER_CONVERSION_DELAY"
-        FilterCountry -> "FILTER_COUNTRY"
-        FilterCreativeAttribute -> "FILTER_CREATIVE_ATTRIBUTE"
-        FilterCreativeHeight -> "FILTER_CREATIVE_HEIGHT"
-        FilterCreativeId -> "FILTER_CREATIVE_ID"
-        FilterCreativeSize -> "FILTER_CREATIVE_SIZE"
-        FilterCreativeType -> "FILTER_CREATIVE_TYPE"
-        FilterCreativeWidth -> "FILTER_CREATIVE_WIDTH"
-        FilterDataProvider -> "FILTER_DATA_PROVIDER"
-        FilterDate -> "FILTER_DATE"
-        FilterDayOfWeek -> "FILTER_DAY_OF_WEEK"
-        FilterDeviceMake -> "FILTER_DEVICE_MAKE"
-        FilterDeviceModel -> "FILTER_DEVICE_MODEL"
-        FilterDeviceType -> "FILTER_DEVICE_TYPE"
-        FilterDfpOrderId -> "FILTER_DFP_ORDER_ID"
-        FilterDma -> "FILTER_DMA"
-        FilterDV360ActivityId -> "FILTER_DV360_ACTIVITY_ID"
-        FilterExchangeId -> "FILTER_EXCHANGE_ID"
-        FilterFloodlightActivityId -> "FILTER_FLOODLIGHT_ACTIVITY_ID"
-        FilterFloodlightPixelId -> "FILTER_FLOODLIGHT_PIXEL_ID"
-        FilterGender -> "FILTER_GENDER"
-        FilterInsertionOrder -> "FILTER_INSERTION_ORDER"
-        FilterInventoryCommitmentType -> "FILTER_INVENTORY_COMMITMENT_TYPE"
-        FilterInventoryDeliveryMethod -> "FILTER_INVENTORY_DELIVERY_METHOD"
-        FilterInventoryFormat -> "FILTER_INVENTORY_FORMAT"
-        FilterInventoryRateType -> "FILTER_INVENTORY_RATE_TYPE"
-        FilterInventorySource -> "FILTER_INVENTORY_SOURCE"
-        FilterInventorySourceType -> "FILTER_INVENTORY_SOURCE_TYPE"
-        FilterKeyword -> "FILTER_KEYWORD"
-        FilterLineItem -> "FILTER_LINE_ITEM"
-        FilterLineItemDailyFrequency -> "FILTER_LINE_ITEM_DAILY_FREQUENCY"
-        FilterLineItemLifetimeFrequency -> "FILTER_LINE_ITEM_LIFETIME_FREQUENCY"
-        FilterLineItemType -> "FILTER_LINE_ITEM_TYPE"
-        FilterMediaPlan -> "FILTER_MEDIA_PLAN"
-        FilterMobileDeviceMake -> "FILTER_MOBILE_DEVICE_MAKE"
-        FilterMobileDeviceMakeModel -> "FILTER_MOBILE_DEVICE_MAKE_MODEL"
-        FilterMobileDeviceType -> "FILTER_MOBILE_DEVICE_TYPE"
-        FilterMobileGeo -> "FILTER_MOBILE_GEO"
-        FilterMonth -> "FILTER_MONTH"
-        FilterMraidSupport -> "FILTER_MRAID_SUPPORT"
-        FilterNielsenAge -> "FILTER_NIELSEN_AGE"
-        FilterNielsenCountryCode -> "FILTER_NIELSEN_COUNTRY_CODE"
-        FilterNielsenDeviceId -> "FILTER_NIELSEN_DEVICE_ID"
-        FilterNielsenGender -> "FILTER_NIELSEN_GENDER"
-        FilterNotSupported -> "FILTER_NOT_SUPPORTED"
-        FilterOrderId -> "FILTER_ORDER_ID"
-        FilterOS -> "FILTER_OS"
-        FilterPageCategory -> "FILTER_PAGE_CATEGORY"
-        FilterPageLayout -> "FILTER_PAGE_LAYOUT"
-        FilterPartner -> "FILTER_PARTNER"
-        FilterPartnerCurrency -> "FILTER_PARTNER_CURRENCY"
-        FilterPublicInventory -> "FILTER_PUBLIC_INVENTORY"
-        FilterQuarter -> "FILTER_QUARTER"
-        FilterRegion -> "FILTER_REGION"
-        FilterRegularChannelId -> "FILTER_REGULAR_CHANNEL_ID"
-        FilterSiteId -> "FILTER_SITE_ID"
-        FilterSiteLanguage -> "FILTER_SITE_LANGUAGE"
-        FilterSkippableSupport -> "FILTER_SKIPPABLE_SUPPORT"
-        FilterTargetedUserList -> "FILTER_TARGETED_USER_LIST"
-        FilterTimeOfDay -> "FILTER_TIME_OF_DAY"
-        FilterTrueviewAdGroupAdId -> "FILTER_TRUEVIEW_AD_GROUP_AD_ID"
-        FilterTrueviewAdGroupId -> "FILTER_TRUEVIEW_AD_GROUP_ID"
-        FilterTrueviewAge -> "FILTER_TRUEVIEW_AGE"
-        FilterTrueviewCategory -> "FILTER_TRUEVIEW_CATEGORY"
-        FilterTrueviewCity -> "FILTER_TRUEVIEW_CITY"
-        FilterTrueviewConversionType -> "FILTER_TRUEVIEW_CONVERSION_TYPE"
-        FilterTrueviewCountry -> "FILTER_TRUEVIEW_COUNTRY"
-        FilterTrueviewCustomAffinity -> "FILTER_TRUEVIEW_CUSTOM_AFFINITY"
-        FilterTrueviewDma -> "FILTER_TRUEVIEW_DMA"
-        FilterTrueviewGender -> "FILTER_TRUEVIEW_GENDER"
-        FilterTrueviewIarAge -> "FILTER_TRUEVIEW_IAR_AGE"
-        FilterTrueviewIarCategory -> "FILTER_TRUEVIEW_IAR_CATEGORY"
-        FilterTrueviewIarCity -> "FILTER_TRUEVIEW_IAR_CITY"
-        FilterTrueviewIarCountry -> "FILTER_TRUEVIEW_IAR_COUNTRY"
-        FilterTrueviewIarGender -> "FILTER_TRUEVIEW_IAR_GENDER"
-        FilterTrueviewIarInterest -> "FILTER_TRUEVIEW_IAR_INTEREST"
-        FilterTrueviewIarLanguage -> "FILTER_TRUEVIEW_IAR_LANGUAGE"
-        FilterTrueviewIarParentalStatus -> "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS"
-        FilterTrueviewIarRegion -> "FILTER_TRUEVIEW_IAR_REGION"
-        FilterTrueviewIarRemarketingList -> "FILTER_TRUEVIEW_IAR_REMARKETING_LIST"
-        FilterTrueviewIarTimeOfDay -> "FILTER_TRUEVIEW_IAR_TIME_OF_DAY"
-        FilterTrueviewIarYouTubeChannel -> "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL"
-        FilterTrueviewIarYouTubeVideo -> "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO"
-        FilterTrueviewIarZipcode -> "FILTER_TRUEVIEW_IAR_ZIPCODE"
-        FilterTrueviewInterest -> "FILTER_TRUEVIEW_INTEREST"
-        FilterTrueviewKeyword -> "FILTER_TRUEVIEW_KEYWORD"
-        FilterTrueviewParentalStatus -> "FILTER_TRUEVIEW_PARENTAL_STATUS"
-        FilterTrueviewPlacement -> "FILTER_TRUEVIEW_PLACEMENT"
-        FilterTrueviewRegion -> "FILTER_TRUEVIEW_REGION"
-        FilterTrueviewRemarketingList -> "FILTER_TRUEVIEW_REMARKETING_LIST"
-        FilterTrueviewURL -> "FILTER_TRUEVIEW_URL"
-        FilterTrueviewZipcode -> "FILTER_TRUEVIEW_ZIPCODE"
-        FilterUnknown -> "FILTER_UNKNOWN"
-        FilterUserList -> "FILTER_USER_LIST"
-        FilterUserListFirstParty -> "FILTER_USER_LIST_FIRST_PARTY"
-        FilterUserListThirdParty -> "FILTER_USER_LIST_THIRD_PARTY"
-        FilterVideoAdPositionInStream -> "FILTER_VIDEO_AD_POSITION_IN_STREAM"
-        FilterVideoCompanionSize -> "FILTER_VIDEO_COMPANION_SIZE"
-        FilterVideoCompanionType -> "FILTER_VIDEO_COMPANION_TYPE"
-        FilterVideoCreativeDuration -> "FILTER_VIDEO_CREATIVE_DURATION"
-        FilterVideoCreativeDurationSkippable -> "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE"
-        FilterVideoDurationSeconds -> "FILTER_VIDEO_DURATION_SECONDS"
-        FilterVideoFormatSupport -> "FILTER_VIDEO_FORMAT_SUPPORT"
-        FilterVideoInventoryType -> "FILTER_VIDEO_INVENTORY_TYPE"
-        FilterVideoPlayerSize -> "FILTER_VIDEO_PLAYER_SIZE"
-        FilterVideoRatingTier -> "FILTER_VIDEO_RATING_TIER"
-        FilterVideoSkippableSupport -> "FILTER_VIDEO_SKIPPABLE_SUPPORT"
-        FilterVideoVpaidSupport -> "FILTER_VIDEO_VPAID_SUPPORT"
-        FilterWeek -> "FILTER_WEEK"
-        FilterYear -> "FILTER_YEAR"
-        FilterYouTubeVertical -> "FILTER_YOUTUBE_VERTICAL"
-        FilterZipCode -> "FILTER_ZIP_CODE"
-
-instance FromJSON FilterPairType where
-    parseJSON = parseJSONText "FilterPairType"
-
-instance ToJSON FilterPairType where
-    toJSON = toJSONText
-
--- | Report data range used to generate the report.
-data RunQueryRequestDataRange
-    = RQRDRAllTime
-      -- ^ @ALL_TIME@
-    | RQRDRCurrentDay
-      -- ^ @CURRENT_DAY@
-    | RQRDRCustomDates
-      -- ^ @CUSTOM_DATES@
-    | RQRDRLast14Days
-      -- ^ @LAST_14_DAYS@
-    | RQRDRLast30Days
-      -- ^ @LAST_30_DAYS@
-    | RQRDRLast365Days
-      -- ^ @LAST_365_DAYS@
-    | RQRDRLast7Days
-      -- ^ @LAST_7_DAYS@
-    | RQRDRLast90Days
-      -- ^ @LAST_90_DAYS@
-    | RQRDRMonthToDate
-      -- ^ @MONTH_TO_DATE@
-    | RQRDRPreviousDay
-      -- ^ @PREVIOUS_DAY@
-    | RQRDRPreviousHalfMonth
-      -- ^ @PREVIOUS_HALF_MONTH@
-    | RQRDRPreviousMonth
-      -- ^ @PREVIOUS_MONTH@
-    | RQRDRPreviousQuarter
-      -- ^ @PREVIOUS_QUARTER@
-    | RQRDRPreviousWeek
-      -- ^ @PREVIOUS_WEEK@
-    | RQRDRPreviousYear
-      -- ^ @PREVIOUS_YEAR@
-    | RQRDRQuarterToDate
-      -- ^ @QUARTER_TO_DATE@
-    | RQRDRTypeNotSupported
-      -- ^ @TYPE_NOT_SUPPORTED@
-    | RQRDRWeekToDate
-      -- ^ @WEEK_TO_DATE@
-    | RQRDRYearToDate
-      -- ^ @YEAR_TO_DATE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable RunQueryRequestDataRange
-
-instance FromHttpApiData RunQueryRequestDataRange where
-    parseQueryParam = \case
-        "ALL_TIME" -> Right RQRDRAllTime
-        "CURRENT_DAY" -> Right RQRDRCurrentDay
-        "CUSTOM_DATES" -> Right RQRDRCustomDates
-        "LAST_14_DAYS" -> Right RQRDRLast14Days
-        "LAST_30_DAYS" -> Right RQRDRLast30Days
-        "LAST_365_DAYS" -> Right RQRDRLast365Days
-        "LAST_7_DAYS" -> Right RQRDRLast7Days
-        "LAST_90_DAYS" -> Right RQRDRLast90Days
-        "MONTH_TO_DATE" -> Right RQRDRMonthToDate
-        "PREVIOUS_DAY" -> Right RQRDRPreviousDay
-        "PREVIOUS_HALF_MONTH" -> Right RQRDRPreviousHalfMonth
-        "PREVIOUS_MONTH" -> Right RQRDRPreviousMonth
-        "PREVIOUS_QUARTER" -> Right RQRDRPreviousQuarter
-        "PREVIOUS_WEEK" -> Right RQRDRPreviousWeek
-        "PREVIOUS_YEAR" -> Right RQRDRPreviousYear
-        "QUARTER_TO_DATE" -> Right RQRDRQuarterToDate
-        "TYPE_NOT_SUPPORTED" -> Right RQRDRTypeNotSupported
-        "WEEK_TO_DATE" -> Right RQRDRWeekToDate
-        "YEAR_TO_DATE" -> Right RQRDRYearToDate
-        x -> Left ("Unable to parse RunQueryRequestDataRange from: " <> x)
-
-instance ToHttpApiData RunQueryRequestDataRange where
-    toQueryParam = \case
-        RQRDRAllTime -> "ALL_TIME"
-        RQRDRCurrentDay -> "CURRENT_DAY"
-        RQRDRCustomDates -> "CUSTOM_DATES"
-        RQRDRLast14Days -> "LAST_14_DAYS"
-        RQRDRLast30Days -> "LAST_30_DAYS"
-        RQRDRLast365Days -> "LAST_365_DAYS"
-        RQRDRLast7Days -> "LAST_7_DAYS"
-        RQRDRLast90Days -> "LAST_90_DAYS"
-        RQRDRMonthToDate -> "MONTH_TO_DATE"
-        RQRDRPreviousDay -> "PREVIOUS_DAY"
-        RQRDRPreviousHalfMonth -> "PREVIOUS_HALF_MONTH"
-        RQRDRPreviousMonth -> "PREVIOUS_MONTH"
-        RQRDRPreviousQuarter -> "PREVIOUS_QUARTER"
-        RQRDRPreviousWeek -> "PREVIOUS_WEEK"
-        RQRDRPreviousYear -> "PREVIOUS_YEAR"
-        RQRDRQuarterToDate -> "QUARTER_TO_DATE"
-        RQRDRTypeNotSupported -> "TYPE_NOT_SUPPORTED"
-        RQRDRWeekToDate -> "WEEK_TO_DATE"
-        RQRDRYearToDate -> "YEAR_TO_DATE"
-
-instance FromJSON RunQueryRequestDataRange where
-    parseJSON = parseJSONText "RunQueryRequestDataRange"
-
-instance ToJSON RunQueryRequestDataRange where
-    toJSON = toJSONText
-
--- | The state of the report.
-data ReportStatusState
-    = Done
-      -- ^ @DONE@
-    | Failed
-      -- ^ @FAILED@
-    | Running
-      -- ^ @RUNNING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportStatusState
-
-instance FromHttpApiData ReportStatusState where
-    parseQueryParam = \case
-        "DONE" -> Right Done
-        "FAILED" -> Right Failed
-        "RUNNING" -> Right Running
-        x -> Left ("Unable to parse ReportStatusState from: " <> x)
-
-instance ToHttpApiData ReportStatusState where
-    toQueryParam = \case
-        Done -> "DONE"
-        Failed -> "FAILED"
-        Running -> "RUNNING"
-
-instance FromJSON ReportStatusState where
-    parseJSON = parseJSONText "ReportStatusState"
-
-instance ToJSON ReportStatusState where
-    toJSON = toJSONText
-
-data ParametersGroupBysItem
-    = PGBIFilterActiveViewExpectedViewability
-      -- ^ @FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY@
-    | PGBIFilterActivityId
-      -- ^ @FILTER_ACTIVITY_ID@
-    | PGBIFilterAdvertiser
-      -- ^ @FILTER_ADVERTISER@
-    | PGBIFilterAdvertiserCurrency
-      -- ^ @FILTER_ADVERTISER_CURRENCY@
-    | PGBIFilterAdvertiserTimezone
-      -- ^ @FILTER_ADVERTISER_TIMEZONE@
-    | PGBIFilterAdPosition
-      -- ^ @FILTER_AD_POSITION@
-    | PGBIFilterAge
-      -- ^ @FILTER_AGE@
-    | PGBIFilterAuthorizedSellerStateId
-      -- ^ @FILTER_AUTHORIZED_SELLER_STATE_ID@
-    | PGBIFilterBrandsafeChannelId
-      -- ^ @FILTER_BRANDSAFE_CHANNEL_ID@
-    | PGBIFilterBrowser
-      -- ^ @FILTER_BROWSER@
-    | PGBIFilterBudgetSegmentDescription
-      -- ^ @FILTER_BUDGET_SEGMENT_DESCRIPTION@
-    | PGBIFilterCampaignDailyFrequency
-      -- ^ @FILTER_CAMPAIGN_DAILY_FREQUENCY@
-    | PGBIFilterCarrier
-      -- ^ @FILTER_CARRIER@
-    | PGBIFilterChannelId
-      -- ^ @FILTER_CHANNEL_ID@
-    | PGBIFilterCity
-      -- ^ @FILTER_CITY@
-    | PGBIFilterCompanionCreativeId
-      -- ^ @FILTER_COMPANION_CREATIVE_ID@
-    | PGBIFilterConversionDelay
-      -- ^ @FILTER_CONVERSION_DELAY@
-    | PGBIFilterCountry
-      -- ^ @FILTER_COUNTRY@
-    | PGBIFilterCreativeAttribute
-      -- ^ @FILTER_CREATIVE_ATTRIBUTE@
-    | PGBIFilterCreativeHeight
-      -- ^ @FILTER_CREATIVE_HEIGHT@
-    | PGBIFilterCreativeId
-      -- ^ @FILTER_CREATIVE_ID@
-    | PGBIFilterCreativeSize
-      -- ^ @FILTER_CREATIVE_SIZE@
-    | PGBIFilterCreativeType
-      -- ^ @FILTER_CREATIVE_TYPE@
-    | PGBIFilterCreativeWidth
-      -- ^ @FILTER_CREATIVE_WIDTH@
-    | PGBIFilterDataProvider
-      -- ^ @FILTER_DATA_PROVIDER@
-    | PGBIFilterDate
-      -- ^ @FILTER_DATE@
-    | PGBIFilterDayOfWeek
-      -- ^ @FILTER_DAY_OF_WEEK@
-    | PGBIFilterDeviceMake
-      -- ^ @FILTER_DEVICE_MAKE@
-    | PGBIFilterDeviceModel
-      -- ^ @FILTER_DEVICE_MODEL@
-    | PGBIFilterDeviceType
-      -- ^ @FILTER_DEVICE_TYPE@
-    | PGBIFilterDfpOrderId
-      -- ^ @FILTER_DFP_ORDER_ID@
-    | PGBIFilterDma
-      -- ^ @FILTER_DMA@
-    | PGBIFilterDV360ActivityId
-      -- ^ @FILTER_DV360_ACTIVITY_ID@
-    | PGBIFilterExchangeId
-      -- ^ @FILTER_EXCHANGE_ID@
-    | PGBIFilterFloodlightActivityId
-      -- ^ @FILTER_FLOODLIGHT_ACTIVITY_ID@
-    | PGBIFilterFloodlightPixelId
-      -- ^ @FILTER_FLOODLIGHT_PIXEL_ID@
-    | PGBIFilterGender
-      -- ^ @FILTER_GENDER@
-    | PGBIFilterInsertionOrder
-      -- ^ @FILTER_INSERTION_ORDER@
-    | PGBIFilterInventoryCommitmentType
-      -- ^ @FILTER_INVENTORY_COMMITMENT_TYPE@
-    | PGBIFilterInventoryDeliveryMethod
-      -- ^ @FILTER_INVENTORY_DELIVERY_METHOD@
-    | PGBIFilterInventoryFormat
-      -- ^ @FILTER_INVENTORY_FORMAT@
-    | PGBIFilterInventoryRateType
-      -- ^ @FILTER_INVENTORY_RATE_TYPE@
-    | PGBIFilterInventorySource
-      -- ^ @FILTER_INVENTORY_SOURCE@
-    | PGBIFilterInventorySourceType
-      -- ^ @FILTER_INVENTORY_SOURCE_TYPE@
-    | PGBIFilterKeyword
-      -- ^ @FILTER_KEYWORD@
-    | PGBIFilterLineItem
-      -- ^ @FILTER_LINE_ITEM@
-    | PGBIFilterLineItemDailyFrequency
-      -- ^ @FILTER_LINE_ITEM_DAILY_FREQUENCY@
-    | PGBIFilterLineItemLifetimeFrequency
-      -- ^ @FILTER_LINE_ITEM_LIFETIME_FREQUENCY@
-    | PGBIFilterLineItemType
-      -- ^ @FILTER_LINE_ITEM_TYPE@
-    | PGBIFilterMediaPlan
-      -- ^ @FILTER_MEDIA_PLAN@
-    | PGBIFilterMobileDeviceMake
-      -- ^ @FILTER_MOBILE_DEVICE_MAKE@
-    | PGBIFilterMobileDeviceMakeModel
-      -- ^ @FILTER_MOBILE_DEVICE_MAKE_MODEL@
-    | PGBIFilterMobileDeviceType
-      -- ^ @FILTER_MOBILE_DEVICE_TYPE@
-    | PGBIFilterMobileGeo
-      -- ^ @FILTER_MOBILE_GEO@
-    | PGBIFilterMonth
-      -- ^ @FILTER_MONTH@
-    | PGBIFilterMraidSupport
-      -- ^ @FILTER_MRAID_SUPPORT@
-    | PGBIFilterNielsenAge
-      -- ^ @FILTER_NIELSEN_AGE@
-    | PGBIFilterNielsenCountryCode
-      -- ^ @FILTER_NIELSEN_COUNTRY_CODE@
-    | PGBIFilterNielsenDeviceId
-      -- ^ @FILTER_NIELSEN_DEVICE_ID@
-    | PGBIFilterNielsenGender
-      -- ^ @FILTER_NIELSEN_GENDER@
-    | PGBIFilterNotSupported
-      -- ^ @FILTER_NOT_SUPPORTED@
-    | PGBIFilterOrderId
-      -- ^ @FILTER_ORDER_ID@
-    | PGBIFilterOS
-      -- ^ @FILTER_OS@
-    | PGBIFilterPageCategory
-      -- ^ @FILTER_PAGE_CATEGORY@
-    | PGBIFilterPageLayout
-      -- ^ @FILTER_PAGE_LAYOUT@
-    | PGBIFilterPartner
-      -- ^ @FILTER_PARTNER@
-    | PGBIFilterPartnerCurrency
-      -- ^ @FILTER_PARTNER_CURRENCY@
-    | PGBIFilterPublicInventory
-      -- ^ @FILTER_PUBLIC_INVENTORY@
-    | PGBIFilterQuarter
-      -- ^ @FILTER_QUARTER@
-    | PGBIFilterRegion
-      -- ^ @FILTER_REGION@
-    | PGBIFilterRegularChannelId
-      -- ^ @FILTER_REGULAR_CHANNEL_ID@
-    | PGBIFilterSiteId
-      -- ^ @FILTER_SITE_ID@
-    | PGBIFilterSiteLanguage
-      -- ^ @FILTER_SITE_LANGUAGE@
-    | PGBIFilterSkippableSupport
-      -- ^ @FILTER_SKIPPABLE_SUPPORT@
-    | PGBIFilterTargetedUserList
-      -- ^ @FILTER_TARGETED_USER_LIST@
-    | PGBIFilterTimeOfDay
-      -- ^ @FILTER_TIME_OF_DAY@
-    | PGBIFilterTrueviewAdGroupAdId
-      -- ^ @FILTER_TRUEVIEW_AD_GROUP_AD_ID@
-    | PGBIFilterTrueviewAdGroupId
-      -- ^ @FILTER_TRUEVIEW_AD_GROUP_ID@
-    | PGBIFilterTrueviewAge
-      -- ^ @FILTER_TRUEVIEW_AGE@
-    | PGBIFilterTrueviewCategory
-      -- ^ @FILTER_TRUEVIEW_CATEGORY@
-    | PGBIFilterTrueviewCity
-      -- ^ @FILTER_TRUEVIEW_CITY@
-    | PGBIFilterTrueviewConversionType
-      -- ^ @FILTER_TRUEVIEW_CONVERSION_TYPE@
-    | PGBIFilterTrueviewCountry
-      -- ^ @FILTER_TRUEVIEW_COUNTRY@
-    | PGBIFilterTrueviewCustomAffinity
-      -- ^ @FILTER_TRUEVIEW_CUSTOM_AFFINITY@
-    | PGBIFilterTrueviewDma
-      -- ^ @FILTER_TRUEVIEW_DMA@
-    | PGBIFilterTrueviewGender
-      -- ^ @FILTER_TRUEVIEW_GENDER@
-    | PGBIFilterTrueviewIarAge
-      -- ^ @FILTER_TRUEVIEW_IAR_AGE@
-    | PGBIFilterTrueviewIarCategory
-      -- ^ @FILTER_TRUEVIEW_IAR_CATEGORY@
-    | PGBIFilterTrueviewIarCity
-      -- ^ @FILTER_TRUEVIEW_IAR_CITY@
-    | PGBIFilterTrueviewIarCountry
-      -- ^ @FILTER_TRUEVIEW_IAR_COUNTRY@
-    | PGBIFilterTrueviewIarGender
-      -- ^ @FILTER_TRUEVIEW_IAR_GENDER@
-    | PGBIFilterTrueviewIarInterest
-      -- ^ @FILTER_TRUEVIEW_IAR_INTEREST@
-    | PGBIFilterTrueviewIarLanguage
-      -- ^ @FILTER_TRUEVIEW_IAR_LANGUAGE@
-    | PGBIFilterTrueviewIarParentalStatus
-      -- ^ @FILTER_TRUEVIEW_IAR_PARENTAL_STATUS@
-    | PGBIFilterTrueviewIarRegion
-      -- ^ @FILTER_TRUEVIEW_IAR_REGION@
-    | PGBIFilterTrueviewIarRemarketingList
-      -- ^ @FILTER_TRUEVIEW_IAR_REMARKETING_LIST@
-    | PGBIFilterTrueviewIarTimeOfDay
-      -- ^ @FILTER_TRUEVIEW_IAR_TIME_OF_DAY@
-    | PGBIFilterTrueviewIarYouTubeChannel
-      -- ^ @FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL@
-    | PGBIFilterTrueviewIarYouTubeVideo
-      -- ^ @FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO@
-    | PGBIFilterTrueviewIarZipcode
-      -- ^ @FILTER_TRUEVIEW_IAR_ZIPCODE@
-    | PGBIFilterTrueviewInterest
-      -- ^ @FILTER_TRUEVIEW_INTEREST@
-    | PGBIFilterTrueviewKeyword
-      -- ^ @FILTER_TRUEVIEW_KEYWORD@
-    | PGBIFilterTrueviewParentalStatus
-      -- ^ @FILTER_TRUEVIEW_PARENTAL_STATUS@
-    | PGBIFilterTrueviewPlacement
-      -- ^ @FILTER_TRUEVIEW_PLACEMENT@
-    | PGBIFilterTrueviewRegion
-      -- ^ @FILTER_TRUEVIEW_REGION@
-    | PGBIFilterTrueviewRemarketingList
-      -- ^ @FILTER_TRUEVIEW_REMARKETING_LIST@
-    | PGBIFilterTrueviewURL
-      -- ^ @FILTER_TRUEVIEW_URL@
-    | PGBIFilterTrueviewZipcode
-      -- ^ @FILTER_TRUEVIEW_ZIPCODE@
-    | PGBIFilterUnknown
-      -- ^ @FILTER_UNKNOWN@
-    | PGBIFilterUserList
-      -- ^ @FILTER_USER_LIST@
-    | PGBIFilterUserListFirstParty
-      -- ^ @FILTER_USER_LIST_FIRST_PARTY@
-    | PGBIFilterUserListThirdParty
-      -- ^ @FILTER_USER_LIST_THIRD_PARTY@
-    | PGBIFilterVideoAdPositionInStream
-      -- ^ @FILTER_VIDEO_AD_POSITION_IN_STREAM@
-    | PGBIFilterVideoCompanionSize
-      -- ^ @FILTER_VIDEO_COMPANION_SIZE@
-    | PGBIFilterVideoCompanionType
-      -- ^ @FILTER_VIDEO_COMPANION_TYPE@
-    | PGBIFilterVideoCreativeDuration
-      -- ^ @FILTER_VIDEO_CREATIVE_DURATION@
-    | PGBIFilterVideoCreativeDurationSkippable
-      -- ^ @FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE@
-    | PGBIFilterVideoDurationSeconds
-      -- ^ @FILTER_VIDEO_DURATION_SECONDS@
-    | PGBIFilterVideoFormatSupport
-      -- ^ @FILTER_VIDEO_FORMAT_SUPPORT@
-    | PGBIFilterVideoInventoryType
-      -- ^ @FILTER_VIDEO_INVENTORY_TYPE@
-    | PGBIFilterVideoPlayerSize
-      -- ^ @FILTER_VIDEO_PLAYER_SIZE@
-    | PGBIFilterVideoRatingTier
-      -- ^ @FILTER_VIDEO_RATING_TIER@
-    | PGBIFilterVideoSkippableSupport
-      -- ^ @FILTER_VIDEO_SKIPPABLE_SUPPORT@
-    | PGBIFilterVideoVpaidSupport
-      -- ^ @FILTER_VIDEO_VPAID_SUPPORT@
-    | PGBIFilterWeek
-      -- ^ @FILTER_WEEK@
-    | PGBIFilterYear
-      -- ^ @FILTER_YEAR@
-    | PGBIFilterYouTubeVertical
-      -- ^ @FILTER_YOUTUBE_VERTICAL@
-    | PGBIFilterZipCode
-      -- ^ @FILTER_ZIP_CODE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ParametersGroupBysItem
-
-instance FromHttpApiData ParametersGroupBysItem where
-    parseQueryParam = \case
-        "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Right PGBIFilterActiveViewExpectedViewability
-        "FILTER_ACTIVITY_ID" -> Right PGBIFilterActivityId
-        "FILTER_ADVERTISER" -> Right PGBIFilterAdvertiser
-        "FILTER_ADVERTISER_CURRENCY" -> Right PGBIFilterAdvertiserCurrency
-        "FILTER_ADVERTISER_TIMEZONE" -> Right PGBIFilterAdvertiserTimezone
-        "FILTER_AD_POSITION" -> Right PGBIFilterAdPosition
-        "FILTER_AGE" -> Right PGBIFilterAge
-        "FILTER_AUTHORIZED_SELLER_STATE_ID" -> Right PGBIFilterAuthorizedSellerStateId
-        "FILTER_BRANDSAFE_CHANNEL_ID" -> Right PGBIFilterBrandsafeChannelId
-        "FILTER_BROWSER" -> Right PGBIFilterBrowser
-        "FILTER_BUDGET_SEGMENT_DESCRIPTION" -> Right PGBIFilterBudgetSegmentDescription
-        "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Right PGBIFilterCampaignDailyFrequency
-        "FILTER_CARRIER" -> Right PGBIFilterCarrier
-        "FILTER_CHANNEL_ID" -> Right PGBIFilterChannelId
-        "FILTER_CITY" -> Right PGBIFilterCity
-        "FILTER_COMPANION_CREATIVE_ID" -> Right PGBIFilterCompanionCreativeId
-        "FILTER_CONVERSION_DELAY" -> Right PGBIFilterConversionDelay
-        "FILTER_COUNTRY" -> Right PGBIFilterCountry
-        "FILTER_CREATIVE_ATTRIBUTE" -> Right PGBIFilterCreativeAttribute
-        "FILTER_CREATIVE_HEIGHT" -> Right PGBIFilterCreativeHeight
-        "FILTER_CREATIVE_ID" -> Right PGBIFilterCreativeId
-        "FILTER_CREATIVE_SIZE" -> Right PGBIFilterCreativeSize
-        "FILTER_CREATIVE_TYPE" -> Right PGBIFilterCreativeType
-        "FILTER_CREATIVE_WIDTH" -> Right PGBIFilterCreativeWidth
-        "FILTER_DATA_PROVIDER" -> Right PGBIFilterDataProvider
-        "FILTER_DATE" -> Right PGBIFilterDate
-        "FILTER_DAY_OF_WEEK" -> Right PGBIFilterDayOfWeek
-        "FILTER_DEVICE_MAKE" -> Right PGBIFilterDeviceMake
-        "FILTER_DEVICE_MODEL" -> Right PGBIFilterDeviceModel
-        "FILTER_DEVICE_TYPE" -> Right PGBIFilterDeviceType
-        "FILTER_DFP_ORDER_ID" -> Right PGBIFilterDfpOrderId
-        "FILTER_DMA" -> Right PGBIFilterDma
-        "FILTER_DV360_ACTIVITY_ID" -> Right PGBIFilterDV360ActivityId
-        "FILTER_EXCHANGE_ID" -> Right PGBIFilterExchangeId
-        "FILTER_FLOODLIGHT_ACTIVITY_ID" -> Right PGBIFilterFloodlightActivityId
-        "FILTER_FLOODLIGHT_PIXEL_ID" -> Right PGBIFilterFloodlightPixelId
-        "FILTER_GENDER" -> Right PGBIFilterGender
-        "FILTER_INSERTION_ORDER" -> Right PGBIFilterInsertionOrder
-        "FILTER_INVENTORY_COMMITMENT_TYPE" -> Right PGBIFilterInventoryCommitmentType
-        "FILTER_INVENTORY_DELIVERY_METHOD" -> Right PGBIFilterInventoryDeliveryMethod
-        "FILTER_INVENTORY_FORMAT" -> Right PGBIFilterInventoryFormat
-        "FILTER_INVENTORY_RATE_TYPE" -> Right PGBIFilterInventoryRateType
-        "FILTER_INVENTORY_SOURCE" -> Right PGBIFilterInventorySource
-        "FILTER_INVENTORY_SOURCE_TYPE" -> Right PGBIFilterInventorySourceType
-        "FILTER_KEYWORD" -> Right PGBIFilterKeyword
-        "FILTER_LINE_ITEM" -> Right PGBIFilterLineItem
-        "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Right PGBIFilterLineItemDailyFrequency
-        "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Right PGBIFilterLineItemLifetimeFrequency
-        "FILTER_LINE_ITEM_TYPE" -> Right PGBIFilterLineItemType
-        "FILTER_MEDIA_PLAN" -> Right PGBIFilterMediaPlan
-        "FILTER_MOBILE_DEVICE_MAKE" -> Right PGBIFilterMobileDeviceMake
-        "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Right PGBIFilterMobileDeviceMakeModel
-        "FILTER_MOBILE_DEVICE_TYPE" -> Right PGBIFilterMobileDeviceType
-        "FILTER_MOBILE_GEO" -> Right PGBIFilterMobileGeo
-        "FILTER_MONTH" -> Right PGBIFilterMonth
-        "FILTER_MRAID_SUPPORT" -> Right PGBIFilterMraidSupport
-        "FILTER_NIELSEN_AGE" -> Right PGBIFilterNielsenAge
-        "FILTER_NIELSEN_COUNTRY_CODE" -> Right PGBIFilterNielsenCountryCode
-        "FILTER_NIELSEN_DEVICE_ID" -> Right PGBIFilterNielsenDeviceId
-        "FILTER_NIELSEN_GENDER" -> Right PGBIFilterNielsenGender
-        "FILTER_NOT_SUPPORTED" -> Right PGBIFilterNotSupported
-        "FILTER_ORDER_ID" -> Right PGBIFilterOrderId
-        "FILTER_OS" -> Right PGBIFilterOS
-        "FILTER_PAGE_CATEGORY" -> Right PGBIFilterPageCategory
-        "FILTER_PAGE_LAYOUT" -> Right PGBIFilterPageLayout
-        "FILTER_PARTNER" -> Right PGBIFilterPartner
-        "FILTER_PARTNER_CURRENCY" -> Right PGBIFilterPartnerCurrency
-        "FILTER_PUBLIC_INVENTORY" -> Right PGBIFilterPublicInventory
-        "FILTER_QUARTER" -> Right PGBIFilterQuarter
-        "FILTER_REGION" -> Right PGBIFilterRegion
-        "FILTER_REGULAR_CHANNEL_ID" -> Right PGBIFilterRegularChannelId
-        "FILTER_SITE_ID" -> Right PGBIFilterSiteId
-        "FILTER_SITE_LANGUAGE" -> Right PGBIFilterSiteLanguage
-        "FILTER_SKIPPABLE_SUPPORT" -> Right PGBIFilterSkippableSupport
-        "FILTER_TARGETED_USER_LIST" -> Right PGBIFilterTargetedUserList
-        "FILTER_TIME_OF_DAY" -> Right PGBIFilterTimeOfDay
-        "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Right PGBIFilterTrueviewAdGroupAdId
-        "FILTER_TRUEVIEW_AD_GROUP_ID" -> Right PGBIFilterTrueviewAdGroupId
-        "FILTER_TRUEVIEW_AGE" -> Right PGBIFilterTrueviewAge
-        "FILTER_TRUEVIEW_CATEGORY" -> Right PGBIFilterTrueviewCategory
-        "FILTER_TRUEVIEW_CITY" -> Right PGBIFilterTrueviewCity
-        "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Right PGBIFilterTrueviewConversionType
-        "FILTER_TRUEVIEW_COUNTRY" -> Right PGBIFilterTrueviewCountry
-        "FILTER_TRUEVIEW_CUSTOM_AFFINITY" -> Right PGBIFilterTrueviewCustomAffinity
-        "FILTER_TRUEVIEW_DMA" -> Right PGBIFilterTrueviewDma
-        "FILTER_TRUEVIEW_GENDER" -> Right PGBIFilterTrueviewGender
-        "FILTER_TRUEVIEW_IAR_AGE" -> Right PGBIFilterTrueviewIarAge
-        "FILTER_TRUEVIEW_IAR_CATEGORY" -> Right PGBIFilterTrueviewIarCategory
-        "FILTER_TRUEVIEW_IAR_CITY" -> Right PGBIFilterTrueviewIarCity
-        "FILTER_TRUEVIEW_IAR_COUNTRY" -> Right PGBIFilterTrueviewIarCountry
-        "FILTER_TRUEVIEW_IAR_GENDER" -> Right PGBIFilterTrueviewIarGender
-        "FILTER_TRUEVIEW_IAR_INTEREST" -> Right PGBIFilterTrueviewIarInterest
-        "FILTER_TRUEVIEW_IAR_LANGUAGE" -> Right PGBIFilterTrueviewIarLanguage
-        "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS" -> Right PGBIFilterTrueviewIarParentalStatus
-        "FILTER_TRUEVIEW_IAR_REGION" -> Right PGBIFilterTrueviewIarRegion
-        "FILTER_TRUEVIEW_IAR_REMARKETING_LIST" -> Right PGBIFilterTrueviewIarRemarketingList
-        "FILTER_TRUEVIEW_IAR_TIME_OF_DAY" -> Right PGBIFilterTrueviewIarTimeOfDay
-        "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL" -> Right PGBIFilterTrueviewIarYouTubeChannel
-        "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO" -> Right PGBIFilterTrueviewIarYouTubeVideo
-        "FILTER_TRUEVIEW_IAR_ZIPCODE" -> Right PGBIFilterTrueviewIarZipcode
-        "FILTER_TRUEVIEW_INTEREST" -> Right PGBIFilterTrueviewInterest
-        "FILTER_TRUEVIEW_KEYWORD" -> Right PGBIFilterTrueviewKeyword
-        "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Right PGBIFilterTrueviewParentalStatus
-        "FILTER_TRUEVIEW_PLACEMENT" -> Right PGBIFilterTrueviewPlacement
-        "FILTER_TRUEVIEW_REGION" -> Right PGBIFilterTrueviewRegion
-        "FILTER_TRUEVIEW_REMARKETING_LIST" -> Right PGBIFilterTrueviewRemarketingList
-        "FILTER_TRUEVIEW_URL" -> Right PGBIFilterTrueviewURL
-        "FILTER_TRUEVIEW_ZIPCODE" -> Right PGBIFilterTrueviewZipcode
-        "FILTER_UNKNOWN" -> Right PGBIFilterUnknown
-        "FILTER_USER_LIST" -> Right PGBIFilterUserList
-        "FILTER_USER_LIST_FIRST_PARTY" -> Right PGBIFilterUserListFirstParty
-        "FILTER_USER_LIST_THIRD_PARTY" -> Right PGBIFilterUserListThirdParty
-        "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Right PGBIFilterVideoAdPositionInStream
-        "FILTER_VIDEO_COMPANION_SIZE" -> Right PGBIFilterVideoCompanionSize
-        "FILTER_VIDEO_COMPANION_TYPE" -> Right PGBIFilterVideoCompanionType
-        "FILTER_VIDEO_CREATIVE_DURATION" -> Right PGBIFilterVideoCreativeDuration
-        "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Right PGBIFilterVideoCreativeDurationSkippable
-        "FILTER_VIDEO_DURATION_SECONDS" -> Right PGBIFilterVideoDurationSeconds
-        "FILTER_VIDEO_FORMAT_SUPPORT" -> Right PGBIFilterVideoFormatSupport
-        "FILTER_VIDEO_INVENTORY_TYPE" -> Right PGBIFilterVideoInventoryType
-        "FILTER_VIDEO_PLAYER_SIZE" -> Right PGBIFilterVideoPlayerSize
-        "FILTER_VIDEO_RATING_TIER" -> Right PGBIFilterVideoRatingTier
-        "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Right PGBIFilterVideoSkippableSupport
-        "FILTER_VIDEO_VPAID_SUPPORT" -> Right PGBIFilterVideoVpaidSupport
-        "FILTER_WEEK" -> Right PGBIFilterWeek
-        "FILTER_YEAR" -> Right PGBIFilterYear
-        "FILTER_YOUTUBE_VERTICAL" -> Right PGBIFilterYouTubeVertical
-        "FILTER_ZIP_CODE" -> Right PGBIFilterZipCode
-        x -> Left ("Unable to parse ParametersGroupBysItem from: " <> x)
-
-instance ToHttpApiData ParametersGroupBysItem where
-    toQueryParam = \case
-        PGBIFilterActiveViewExpectedViewability -> "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
-        PGBIFilterActivityId -> "FILTER_ACTIVITY_ID"
-        PGBIFilterAdvertiser -> "FILTER_ADVERTISER"
-        PGBIFilterAdvertiserCurrency -> "FILTER_ADVERTISER_CURRENCY"
-        PGBIFilterAdvertiserTimezone -> "FILTER_ADVERTISER_TIMEZONE"
-        PGBIFilterAdPosition -> "FILTER_AD_POSITION"
-        PGBIFilterAge -> "FILTER_AGE"
-        PGBIFilterAuthorizedSellerStateId -> "FILTER_AUTHORIZED_SELLER_STATE_ID"
-        PGBIFilterBrandsafeChannelId -> "FILTER_BRANDSAFE_CHANNEL_ID"
-        PGBIFilterBrowser -> "FILTER_BROWSER"
-        PGBIFilterBudgetSegmentDescription -> "FILTER_BUDGET_SEGMENT_DESCRIPTION"
-        PGBIFilterCampaignDailyFrequency -> "FILTER_CAMPAIGN_DAILY_FREQUENCY"
-        PGBIFilterCarrier -> "FILTER_CARRIER"
-        PGBIFilterChannelId -> "FILTER_CHANNEL_ID"
-        PGBIFilterCity -> "FILTER_CITY"
-        PGBIFilterCompanionCreativeId -> "FILTER_COMPANION_CREATIVE_ID"
-        PGBIFilterConversionDelay -> "FILTER_CONVERSION_DELAY"
-        PGBIFilterCountry -> "FILTER_COUNTRY"
-        PGBIFilterCreativeAttribute -> "FILTER_CREATIVE_ATTRIBUTE"
-        PGBIFilterCreativeHeight -> "FILTER_CREATIVE_HEIGHT"
-        PGBIFilterCreativeId -> "FILTER_CREATIVE_ID"
-        PGBIFilterCreativeSize -> "FILTER_CREATIVE_SIZE"
-        PGBIFilterCreativeType -> "FILTER_CREATIVE_TYPE"
-        PGBIFilterCreativeWidth -> "FILTER_CREATIVE_WIDTH"
-        PGBIFilterDataProvider -> "FILTER_DATA_PROVIDER"
-        PGBIFilterDate -> "FILTER_DATE"
-        PGBIFilterDayOfWeek -> "FILTER_DAY_OF_WEEK"
-        PGBIFilterDeviceMake -> "FILTER_DEVICE_MAKE"
-        PGBIFilterDeviceModel -> "FILTER_DEVICE_MODEL"
-        PGBIFilterDeviceType -> "FILTER_DEVICE_TYPE"
-        PGBIFilterDfpOrderId -> "FILTER_DFP_ORDER_ID"
-        PGBIFilterDma -> "FILTER_DMA"
-        PGBIFilterDV360ActivityId -> "FILTER_DV360_ACTIVITY_ID"
-        PGBIFilterExchangeId -> "FILTER_EXCHANGE_ID"
-        PGBIFilterFloodlightActivityId -> "FILTER_FLOODLIGHT_ACTIVITY_ID"
-        PGBIFilterFloodlightPixelId -> "FILTER_FLOODLIGHT_PIXEL_ID"
-        PGBIFilterGender -> "FILTER_GENDER"
-        PGBIFilterInsertionOrder -> "FILTER_INSERTION_ORDER"
-        PGBIFilterInventoryCommitmentType -> "FILTER_INVENTORY_COMMITMENT_TYPE"
-        PGBIFilterInventoryDeliveryMethod -> "FILTER_INVENTORY_DELIVERY_METHOD"
-        PGBIFilterInventoryFormat -> "FILTER_INVENTORY_FORMAT"
-        PGBIFilterInventoryRateType -> "FILTER_INVENTORY_RATE_TYPE"
-        PGBIFilterInventorySource -> "FILTER_INVENTORY_SOURCE"
-        PGBIFilterInventorySourceType -> "FILTER_INVENTORY_SOURCE_TYPE"
-        PGBIFilterKeyword -> "FILTER_KEYWORD"
-        PGBIFilterLineItem -> "FILTER_LINE_ITEM"
-        PGBIFilterLineItemDailyFrequency -> "FILTER_LINE_ITEM_DAILY_FREQUENCY"
-        PGBIFilterLineItemLifetimeFrequency -> "FILTER_LINE_ITEM_LIFETIME_FREQUENCY"
-        PGBIFilterLineItemType -> "FILTER_LINE_ITEM_TYPE"
-        PGBIFilterMediaPlan -> "FILTER_MEDIA_PLAN"
-        PGBIFilterMobileDeviceMake -> "FILTER_MOBILE_DEVICE_MAKE"
-        PGBIFilterMobileDeviceMakeModel -> "FILTER_MOBILE_DEVICE_MAKE_MODEL"
-        PGBIFilterMobileDeviceType -> "FILTER_MOBILE_DEVICE_TYPE"
-        PGBIFilterMobileGeo -> "FILTER_MOBILE_GEO"
-        PGBIFilterMonth -> "FILTER_MONTH"
-        PGBIFilterMraidSupport -> "FILTER_MRAID_SUPPORT"
-        PGBIFilterNielsenAge -> "FILTER_NIELSEN_AGE"
-        PGBIFilterNielsenCountryCode -> "FILTER_NIELSEN_COUNTRY_CODE"
-        PGBIFilterNielsenDeviceId -> "FILTER_NIELSEN_DEVICE_ID"
-        PGBIFilterNielsenGender -> "FILTER_NIELSEN_GENDER"
-        PGBIFilterNotSupported -> "FILTER_NOT_SUPPORTED"
-        PGBIFilterOrderId -> "FILTER_ORDER_ID"
-        PGBIFilterOS -> "FILTER_OS"
-        PGBIFilterPageCategory -> "FILTER_PAGE_CATEGORY"
-        PGBIFilterPageLayout -> "FILTER_PAGE_LAYOUT"
-        PGBIFilterPartner -> "FILTER_PARTNER"
-        PGBIFilterPartnerCurrency -> "FILTER_PARTNER_CURRENCY"
-        PGBIFilterPublicInventory -> "FILTER_PUBLIC_INVENTORY"
-        PGBIFilterQuarter -> "FILTER_QUARTER"
-        PGBIFilterRegion -> "FILTER_REGION"
-        PGBIFilterRegularChannelId -> "FILTER_REGULAR_CHANNEL_ID"
-        PGBIFilterSiteId -> "FILTER_SITE_ID"
-        PGBIFilterSiteLanguage -> "FILTER_SITE_LANGUAGE"
-        PGBIFilterSkippableSupport -> "FILTER_SKIPPABLE_SUPPORT"
-        PGBIFilterTargetedUserList -> "FILTER_TARGETED_USER_LIST"
-        PGBIFilterTimeOfDay -> "FILTER_TIME_OF_DAY"
-        PGBIFilterTrueviewAdGroupAdId -> "FILTER_TRUEVIEW_AD_GROUP_AD_ID"
-        PGBIFilterTrueviewAdGroupId -> "FILTER_TRUEVIEW_AD_GROUP_ID"
-        PGBIFilterTrueviewAge -> "FILTER_TRUEVIEW_AGE"
-        PGBIFilterTrueviewCategory -> "FILTER_TRUEVIEW_CATEGORY"
-        PGBIFilterTrueviewCity -> "FILTER_TRUEVIEW_CITY"
-        PGBIFilterTrueviewConversionType -> "FILTER_TRUEVIEW_CONVERSION_TYPE"
-        PGBIFilterTrueviewCountry -> "FILTER_TRUEVIEW_COUNTRY"
-        PGBIFilterTrueviewCustomAffinity -> "FILTER_TRUEVIEW_CUSTOM_AFFINITY"
-        PGBIFilterTrueviewDma -> "FILTER_TRUEVIEW_DMA"
-        PGBIFilterTrueviewGender -> "FILTER_TRUEVIEW_GENDER"
-        PGBIFilterTrueviewIarAge -> "FILTER_TRUEVIEW_IAR_AGE"
-        PGBIFilterTrueviewIarCategory -> "FILTER_TRUEVIEW_IAR_CATEGORY"
-        PGBIFilterTrueviewIarCity -> "FILTER_TRUEVIEW_IAR_CITY"
-        PGBIFilterTrueviewIarCountry -> "FILTER_TRUEVIEW_IAR_COUNTRY"
-        PGBIFilterTrueviewIarGender -> "FILTER_TRUEVIEW_IAR_GENDER"
-        PGBIFilterTrueviewIarInterest -> "FILTER_TRUEVIEW_IAR_INTEREST"
-        PGBIFilterTrueviewIarLanguage -> "FILTER_TRUEVIEW_IAR_LANGUAGE"
-        PGBIFilterTrueviewIarParentalStatus -> "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS"
-        PGBIFilterTrueviewIarRegion -> "FILTER_TRUEVIEW_IAR_REGION"
-        PGBIFilterTrueviewIarRemarketingList -> "FILTER_TRUEVIEW_IAR_REMARKETING_LIST"
-        PGBIFilterTrueviewIarTimeOfDay -> "FILTER_TRUEVIEW_IAR_TIME_OF_DAY"
-        PGBIFilterTrueviewIarYouTubeChannel -> "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL"
-        PGBIFilterTrueviewIarYouTubeVideo -> "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO"
-        PGBIFilterTrueviewIarZipcode -> "FILTER_TRUEVIEW_IAR_ZIPCODE"
-        PGBIFilterTrueviewInterest -> "FILTER_TRUEVIEW_INTEREST"
-        PGBIFilterTrueviewKeyword -> "FILTER_TRUEVIEW_KEYWORD"
-        PGBIFilterTrueviewParentalStatus -> "FILTER_TRUEVIEW_PARENTAL_STATUS"
-        PGBIFilterTrueviewPlacement -> "FILTER_TRUEVIEW_PLACEMENT"
-        PGBIFilterTrueviewRegion -> "FILTER_TRUEVIEW_REGION"
-        PGBIFilterTrueviewRemarketingList -> "FILTER_TRUEVIEW_REMARKETING_LIST"
-        PGBIFilterTrueviewURL -> "FILTER_TRUEVIEW_URL"
-        PGBIFilterTrueviewZipcode -> "FILTER_TRUEVIEW_ZIPCODE"
-        PGBIFilterUnknown -> "FILTER_UNKNOWN"
-        PGBIFilterUserList -> "FILTER_USER_LIST"
-        PGBIFilterUserListFirstParty -> "FILTER_USER_LIST_FIRST_PARTY"
-        PGBIFilterUserListThirdParty -> "FILTER_USER_LIST_THIRD_PARTY"
-        PGBIFilterVideoAdPositionInStream -> "FILTER_VIDEO_AD_POSITION_IN_STREAM"
-        PGBIFilterVideoCompanionSize -> "FILTER_VIDEO_COMPANION_SIZE"
-        PGBIFilterVideoCompanionType -> "FILTER_VIDEO_COMPANION_TYPE"
-        PGBIFilterVideoCreativeDuration -> "FILTER_VIDEO_CREATIVE_DURATION"
-        PGBIFilterVideoCreativeDurationSkippable -> "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE"
-        PGBIFilterVideoDurationSeconds -> "FILTER_VIDEO_DURATION_SECONDS"
-        PGBIFilterVideoFormatSupport -> "FILTER_VIDEO_FORMAT_SUPPORT"
-        PGBIFilterVideoInventoryType -> "FILTER_VIDEO_INVENTORY_TYPE"
-        PGBIFilterVideoPlayerSize -> "FILTER_VIDEO_PLAYER_SIZE"
-        PGBIFilterVideoRatingTier -> "FILTER_VIDEO_RATING_TIER"
-        PGBIFilterVideoSkippableSupport -> "FILTER_VIDEO_SKIPPABLE_SUPPORT"
-        PGBIFilterVideoVpaidSupport -> "FILTER_VIDEO_VPAID_SUPPORT"
-        PGBIFilterWeek -> "FILTER_WEEK"
-        PGBIFilterYear -> "FILTER_YEAR"
-        PGBIFilterYouTubeVertical -> "FILTER_YOUTUBE_VERTICAL"
-        PGBIFilterZipCode -> "FILTER_ZIP_CODE"
-
-instance FromJSON ParametersGroupBysItem where
-    parseJSON = parseJSONText "ParametersGroupBysItem"
-
-instance ToJSON ParametersGroupBysItem where
-    toJSON = toJSONText
-
--- | Error code that shows why the report was not created.
-data ReportFailureErrorCode
-    = AuthenticationError
-      -- ^ @AUTHENTICATION_ERROR@
-    | DeprecatedReportingInvalidQuery
-      -- ^ @DEPRECATED_REPORTING_INVALID_QUERY@
-    | ReportingBucketNotFound
-      -- ^ @REPORTING_BUCKET_NOT_FOUND@
-    | ReportingCreateBucketFailed
-      -- ^ @REPORTING_CREATE_BUCKET_FAILED@
-    | ReportingDeleteBucketFailed
-      -- ^ @REPORTING_DELETE_BUCKET_FAILED@
-    | ReportingFatalError
-      -- ^ @REPORTING_FATAL_ERROR@
-    | ReportingIllegalFilename
-      -- ^ @REPORTING_ILLEGAL_FILENAME@
-    | ReportingImcompatibleMetrics
-      -- ^ @REPORTING_IMCOMPATIBLE_METRICS@
-    | ReportingInvalidQueryMissingPartnerAndAdvertiserFilters
-      -- ^ @REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS@
-    | ReportingInvalidQueryTitleMissing
-      -- ^ @REPORTING_INVALID_QUERY_TITLE_MISSING@
-    | ReportingInvalidQueryTooManyUnfilteredLargeGroupBys
-      -- ^ @REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS@
-    | ReportingQueryNotFound
-      -- ^ @REPORTING_QUERY_NOT_FOUND@
-    | ReportingTransientError
-      -- ^ @REPORTING_TRANSIENT_ERROR@
-    | ReportingUpdateBucketPermissionFailed
-      -- ^ @REPORTING_UPDATE_BUCKET_PERMISSION_FAILED@
-    | ReportingWriteBucketObjectFailed
-      -- ^ @REPORTING_WRITE_BUCKET_OBJECT_FAILED@
-    | ServerError
-      -- ^ @SERVER_ERROR@
-    | UnauthorizedAPIAccess
-      -- ^ @UNAUTHORIZED_API_ACCESS@
-    | ValidationError
-      -- ^ @VALIDATION_ERROR@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportFailureErrorCode
-
-instance FromHttpApiData ReportFailureErrorCode where
-    parseQueryParam = \case
-        "AUTHENTICATION_ERROR" -> Right AuthenticationError
-        "DEPRECATED_REPORTING_INVALID_QUERY" -> Right DeprecatedReportingInvalidQuery
-        "REPORTING_BUCKET_NOT_FOUND" -> Right ReportingBucketNotFound
-        "REPORTING_CREATE_BUCKET_FAILED" -> Right ReportingCreateBucketFailed
-        "REPORTING_DELETE_BUCKET_FAILED" -> Right ReportingDeleteBucketFailed
-        "REPORTING_FATAL_ERROR" -> Right ReportingFatalError
-        "REPORTING_ILLEGAL_FILENAME" -> Right ReportingIllegalFilename
-        "REPORTING_IMCOMPATIBLE_METRICS" -> Right ReportingImcompatibleMetrics
-        "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS" -> Right ReportingInvalidQueryMissingPartnerAndAdvertiserFilters
-        "REPORTING_INVALID_QUERY_TITLE_MISSING" -> Right ReportingInvalidQueryTitleMissing
-        "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS" -> Right ReportingInvalidQueryTooManyUnfilteredLargeGroupBys
-        "REPORTING_QUERY_NOT_FOUND" -> Right ReportingQueryNotFound
-        "REPORTING_TRANSIENT_ERROR" -> Right ReportingTransientError
-        "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED" -> Right ReportingUpdateBucketPermissionFailed
-        "REPORTING_WRITE_BUCKET_OBJECT_FAILED" -> Right ReportingWriteBucketObjectFailed
-        "SERVER_ERROR" -> Right ServerError
-        "UNAUTHORIZED_API_ACCESS" -> Right UnauthorizedAPIAccess
-        "VALIDATION_ERROR" -> Right ValidationError
-        x -> Left ("Unable to parse ReportFailureErrorCode from: " <> x)
-
-instance ToHttpApiData ReportFailureErrorCode where
-    toQueryParam = \case
-        AuthenticationError -> "AUTHENTICATION_ERROR"
-        DeprecatedReportingInvalidQuery -> "DEPRECATED_REPORTING_INVALID_QUERY"
-        ReportingBucketNotFound -> "REPORTING_BUCKET_NOT_FOUND"
-        ReportingCreateBucketFailed -> "REPORTING_CREATE_BUCKET_FAILED"
-        ReportingDeleteBucketFailed -> "REPORTING_DELETE_BUCKET_FAILED"
-        ReportingFatalError -> "REPORTING_FATAL_ERROR"
-        ReportingIllegalFilename -> "REPORTING_ILLEGAL_FILENAME"
-        ReportingImcompatibleMetrics -> "REPORTING_IMCOMPATIBLE_METRICS"
-        ReportingInvalidQueryMissingPartnerAndAdvertiserFilters -> "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS"
-        ReportingInvalidQueryTitleMissing -> "REPORTING_INVALID_QUERY_TITLE_MISSING"
-        ReportingInvalidQueryTooManyUnfilteredLargeGroupBys -> "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS"
-        ReportingQueryNotFound -> "REPORTING_QUERY_NOT_FOUND"
-        ReportingTransientError -> "REPORTING_TRANSIENT_ERROR"
-        ReportingUpdateBucketPermissionFailed -> "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED"
-        ReportingWriteBucketObjectFailed -> "REPORTING_WRITE_BUCKET_OBJECT_FAILED"
-        ServerError -> "SERVER_ERROR"
-        UnauthorizedAPIAccess -> "UNAUTHORIZED_API_ACCESS"
-        ValidationError -> "VALIDATION_ERROR"
-
-instance FromJSON ReportFailureErrorCode where
-    parseJSON = parseJSONText "ReportFailureErrorCode"
-
-instance ToJSON ReportFailureErrorCode where
-    toJSON = toJSONText
-
--- | Format in which the line items will be returned. Default to CSV.
-data DownloadLineItemsRequestFormat
-    = DLIRFCSV
-      -- ^ @CSV@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DownloadLineItemsRequestFormat
-
-instance FromHttpApiData DownloadLineItemsRequestFormat where
-    parseQueryParam = \case
-        "CSV" -> Right DLIRFCSV
-        x -> Left ("Unable to parse DownloadLineItemsRequestFormat from: " <> x)
-
-instance ToHttpApiData DownloadLineItemsRequestFormat where
-    toQueryParam = \case
-        DLIRFCSV -> "CSV"
-
-instance FromJSON DownloadLineItemsRequestFormat where
-    parseJSON = parseJSONText "DownloadLineItemsRequestFormat"
-
-instance ToJSON DownloadLineItemsRequestFormat where
-    toJSON = toJSONText
-
--- | The file type of the report.
-data ReportStatusFormat
-    = RSFCSV
-      -- ^ @CSV@
-    | RSFExcelCSV
-      -- ^ @EXCEL_CSV@
-    | RSFXlsx
-      -- ^ @XLSX@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportStatusFormat
-
-instance FromHttpApiData ReportStatusFormat where
-    parseQueryParam = \case
-        "CSV" -> Right RSFCSV
-        "EXCEL_CSV" -> Right RSFExcelCSV
-        "XLSX" -> Right RSFXlsx
-        x -> Left ("Unable to parse ReportStatusFormat from: " <> x)
-
-instance ToHttpApiData ReportStatusFormat where
-    toQueryParam = \case
-        RSFCSV -> "CSV"
-        RSFExcelCSV -> "EXCEL_CSV"
-        RSFXlsx -> "XLSX"
-
-instance FromJSON ReportStatusFormat where
-    parseJSON = parseJSONText "ReportStatusFormat"
-
-instance ToJSON ReportStatusFormat where
-    toJSON = toJSONText
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Downloadlineitems.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Downloadlineitems.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Downloadlineitems.hs
+++ /dev/null
@@ -1,93 +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.DoubleClickBidManager.Lineitems.Downloadlineitems
--- 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 line items in CSV format. TrueView line items are not
--- supported.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.lineitems.downloadlineitems@.
-module Network.Google.Resource.DoubleClickBidManager.Lineitems.Downloadlineitems
-    (
-    -- * REST Resource
-      LineitemsDownloadlineitemsResource
-
-    -- * Creating a Request
-    , lineitemsDownloadlineitems
-    , LineitemsDownloadlineitems
-
-    -- * Request Lenses
-    , ldPayload
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.lineitems.downloadlineitems@ method which the
--- 'LineitemsDownloadlineitems' request conforms to.
-type LineitemsDownloadlineitemsResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "lineitems" :>
-           "downloadlineitems" :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] DownloadLineItemsRequest :>
-                 Post '[JSON] DownloadLineItemsResponse
-
--- | Retrieves line items in CSV format. TrueView line items are not
--- supported.
---
--- /See:/ 'lineitemsDownloadlineitems' smart constructor.
-newtype LineitemsDownloadlineitems =
-  LineitemsDownloadlineitems'
-    { _ldPayload :: DownloadLineItemsRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LineitemsDownloadlineitems' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ldPayload'
-lineitemsDownloadlineitems
-    :: DownloadLineItemsRequest -- ^ 'ldPayload'
-    -> LineitemsDownloadlineitems
-lineitemsDownloadlineitems pLdPayload_ =
-  LineitemsDownloadlineitems' {_ldPayload = pLdPayload_}
-
-
--- | Multipart request metadata.
-ldPayload :: Lens' LineitemsDownloadlineitems DownloadLineItemsRequest
-ldPayload
-  = lens _ldPayload (\ s a -> s{_ldPayload = a})
-
-instance GoogleRequest LineitemsDownloadlineitems
-         where
-        type Rs LineitemsDownloadlineitems =
-             DownloadLineItemsResponse
-        type Scopes LineitemsDownloadlineitems =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient LineitemsDownloadlineitems'{..}
-          = go (Just AltJSON) _ldPayload doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy LineitemsDownloadlineitemsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Uploadlineitems.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Uploadlineitems.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Lineitems/Uploadlineitems.hs
+++ /dev/null
@@ -1,90 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DoubleClickBidManager.Lineitems.Uploadlineitems
--- 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)
---
--- Uploads line items in CSV format. TrueView line items are not supported.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.lineitems.uploadlineitems@.
-module Network.Google.Resource.DoubleClickBidManager.Lineitems.Uploadlineitems
-    (
-    -- * REST Resource
-      LineitemsUploadlineitemsResource
-
-    -- * Creating a Request
-    , lineitemsUploadlineitems
-    , LineitemsUploadlineitems
-
-    -- * Request Lenses
-    , luPayload
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.lineitems.uploadlineitems@ method which the
--- 'LineitemsUploadlineitems' request conforms to.
-type LineitemsUploadlineitemsResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "lineitems" :>
-           "uploadlineitems" :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] UploadLineItemsRequest :>
-                 Post '[JSON] UploadLineItemsResponse
-
--- | Uploads line items in CSV format. TrueView line items are not supported.
---
--- /See:/ 'lineitemsUploadlineitems' smart constructor.
-newtype LineitemsUploadlineitems =
-  LineitemsUploadlineitems'
-    { _luPayload :: UploadLineItemsRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LineitemsUploadlineitems' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'luPayload'
-lineitemsUploadlineitems
-    :: UploadLineItemsRequest -- ^ 'luPayload'
-    -> LineitemsUploadlineitems
-lineitemsUploadlineitems pLuPayload_ =
-  LineitemsUploadlineitems' {_luPayload = pLuPayload_}
-
-
--- | Multipart request metadata.
-luPayload :: Lens' LineitemsUploadlineitems UploadLineItemsRequest
-luPayload
-  = lens _luPayload (\ s a -> s{_luPayload = a})
-
-instance GoogleRequest LineitemsUploadlineitems where
-        type Rs LineitemsUploadlineitems =
-             UploadLineItemsResponse
-        type Scopes LineitemsUploadlineitems =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient LineitemsUploadlineitems'{..}
-          = go (Just AltJSON) _luPayload doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy LineitemsUploadlineitemsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/CreateQuery.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Queries/CreateQuery.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/CreateQuery.hs
+++ /dev/null
@@ -1,88 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DoubleClickBidManager.Queries.CreateQuery
--- 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 query.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.createquery@.
-module Network.Google.Resource.DoubleClickBidManager.Queries.CreateQuery
-    (
-    -- * REST Resource
-      QueriesCreateQueryResource
-
-    -- * Creating a Request
-    , queriesCreateQuery
-    , QueriesCreateQuery
-
-    -- * Request Lenses
-    , qcqPayload
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.queries.createquery@ method which the
--- 'QueriesCreateQuery' request conforms to.
-type QueriesCreateQueryResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "query" :>
-           QueryParam "alt" AltJSON :>
-             ReqBody '[JSON] Query :> Post '[JSON] Query
-
--- | Creates a query.
---
--- /See:/ 'queriesCreateQuery' smart constructor.
-newtype QueriesCreateQuery =
-  QueriesCreateQuery'
-    { _qcqPayload :: Query
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueriesCreateQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qcqPayload'
-queriesCreateQuery
-    :: Query -- ^ 'qcqPayload'
-    -> QueriesCreateQuery
-queriesCreateQuery pQcqPayload_ =
-  QueriesCreateQuery' {_qcqPayload = pQcqPayload_}
-
-
--- | Multipart request metadata.
-qcqPayload :: Lens' QueriesCreateQuery Query
-qcqPayload
-  = lens _qcqPayload (\ s a -> s{_qcqPayload = a})
-
-instance GoogleRequest QueriesCreateQuery where
-        type Rs QueriesCreateQuery = Query
-        type Scopes QueriesCreateQuery =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient QueriesCreateQuery'{..}
-          = go (Just AltJSON) _qcqPayload
-              doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy QueriesCreateQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/DeleteQuery.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Queries/DeleteQuery.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/DeleteQuery.hs
+++ /dev/null
@@ -1,89 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DoubleClickBidManager.Queries.DeleteQuery
--- 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 a stored query as well as the associated stored reports.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.deletequery@.
-module Network.Google.Resource.DoubleClickBidManager.Queries.DeleteQuery
-    (
-    -- * REST Resource
-      QueriesDeleteQueryResource
-
-    -- * Creating a Request
-    , queriesDeleteQuery
-    , QueriesDeleteQuery
-
-    -- * Request Lenses
-    , qdqQueryId
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.queries.deletequery@ method which the
--- 'QueriesDeleteQuery' request conforms to.
-type QueriesDeleteQueryResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "query" :>
-           Capture "queryId" (Textual Int64) :>
-             QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes a stored query as well as the associated stored reports.
---
--- /See:/ 'queriesDeleteQuery' smart constructor.
-newtype QueriesDeleteQuery =
-  QueriesDeleteQuery'
-    { _qdqQueryId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueriesDeleteQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qdqQueryId'
-queriesDeleteQuery
-    :: Int64 -- ^ 'qdqQueryId'
-    -> QueriesDeleteQuery
-queriesDeleteQuery pQdqQueryId_ =
-  QueriesDeleteQuery' {_qdqQueryId = _Coerce # pQdqQueryId_}
-
-
--- | Query ID to delete.
-qdqQueryId :: Lens' QueriesDeleteQuery Int64
-qdqQueryId
-  = lens _qdqQueryId (\ s a -> s{_qdqQueryId = a}) .
-      _Coerce
-
-instance GoogleRequest QueriesDeleteQuery where
-        type Rs QueriesDeleteQuery = ()
-        type Scopes QueriesDeleteQuery =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient QueriesDeleteQuery'{..}
-          = go _qdqQueryId (Just AltJSON)
-              doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy QueriesDeleteQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/GetQuery.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Queries/GetQuery.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/GetQuery.hs
+++ /dev/null
@@ -1,89 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DoubleClickBidManager.Queries.GetQuery
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a stored query.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.getquery@.
-module Network.Google.Resource.DoubleClickBidManager.Queries.GetQuery
-    (
-    -- * REST Resource
-      QueriesGetQueryResource
-
-    -- * Creating a Request
-    , queriesGetQuery
-    , QueriesGetQuery
-
-    -- * Request Lenses
-    , qgqQueryId
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.queries.getquery@ method which the
--- 'QueriesGetQuery' request conforms to.
-type QueriesGetQueryResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "query" :>
-           Capture "queryId" (Textual Int64) :>
-             QueryParam "alt" AltJSON :> Get '[JSON] Query
-
--- | Retrieves a stored query.
---
--- /See:/ 'queriesGetQuery' smart constructor.
-newtype QueriesGetQuery =
-  QueriesGetQuery'
-    { _qgqQueryId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueriesGetQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qgqQueryId'
-queriesGetQuery
-    :: Int64 -- ^ 'qgqQueryId'
-    -> QueriesGetQuery
-queriesGetQuery pQgqQueryId_ =
-  QueriesGetQuery' {_qgqQueryId = _Coerce # pQgqQueryId_}
-
-
--- | Query ID to retrieve.
-qgqQueryId :: Lens' QueriesGetQuery Int64
-qgqQueryId
-  = lens _qgqQueryId (\ s a -> s{_qgqQueryId = a}) .
-      _Coerce
-
-instance GoogleRequest QueriesGetQuery where
-        type Rs QueriesGetQuery = Query
-        type Scopes QueriesGetQuery =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient QueriesGetQuery'{..}
-          = go _qgqQueryId (Just AltJSON)
-              doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy QueriesGetQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/Listqueries.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Queries/Listqueries.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/Listqueries.hs
+++ /dev/null
@@ -1,73 +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.DoubleClickBidManager.Queries.Listqueries
--- 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 stored queries.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.listqueries@.
-module Network.Google.Resource.DoubleClickBidManager.Queries.Listqueries
-    (
-    -- * REST Resource
-      QueriesListqueriesResource
-
-    -- * Creating a Request
-    , queriesListqueries
-    , QueriesListqueries
-
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.queries.listqueries@ method which the
--- 'QueriesListqueries' request conforms to.
-type QueriesListqueriesResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "queries" :>
-           QueryParam "alt" AltJSON :>
-             Get '[JSON] ListQueriesResponse
-
--- | Retrieves stored queries.
---
--- /See:/ 'queriesListqueries' smart constructor.
-data QueriesListqueries =
-  QueriesListqueries'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueriesListqueries' with the minimum fields required to make a request.
---
-queriesListqueries
-    :: QueriesListqueries
-queriesListqueries = QueriesListqueries'
-
-
-instance GoogleRequest QueriesListqueries where
-        type Rs QueriesListqueries = ListQueriesResponse
-        type Scopes QueriesListqueries =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient QueriesListqueries'{}
-          = go (Just AltJSON) doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy QueriesListqueriesResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/RunQuery.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Queries/RunQuery.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Queries/RunQuery.hs
+++ /dev/null
@@ -1,101 +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.DoubleClickBidManager.Queries.RunQuery
--- 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)
---
--- Runs a stored query to generate a report.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.queries.runquery@.
-module Network.Google.Resource.DoubleClickBidManager.Queries.RunQuery
-    (
-    -- * REST Resource
-      QueriesRunQueryResource
-
-    -- * Creating a Request
-    , queriesRunQuery
-    , QueriesRunQuery
-
-    -- * Request Lenses
-    , qrqQueryId
-    , qrqPayload
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.queries.runquery@ method which the
--- 'QueriesRunQuery' request conforms to.
-type QueriesRunQueryResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "query" :>
-           Capture "queryId" (Textual Int64) :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] RunQueryRequest :> Post '[JSON] ()
-
--- | Runs a stored query to generate a report.
---
--- /See:/ 'queriesRunQuery' smart constructor.
-data QueriesRunQuery =
-  QueriesRunQuery'
-    { _qrqQueryId :: !(Textual Int64)
-    , _qrqPayload :: !RunQueryRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'QueriesRunQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'qrqQueryId'
---
--- * 'qrqPayload'
-queriesRunQuery
-    :: Int64 -- ^ 'qrqQueryId'
-    -> RunQueryRequest -- ^ 'qrqPayload'
-    -> QueriesRunQuery
-queriesRunQuery pQrqQueryId_ pQrqPayload_ =
-  QueriesRunQuery'
-    {_qrqQueryId = _Coerce # pQrqQueryId_, _qrqPayload = pQrqPayload_}
-
-
--- | Query ID to run.
-qrqQueryId :: Lens' QueriesRunQuery Int64
-qrqQueryId
-  = lens _qrqQueryId (\ s a -> s{_qrqQueryId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-qrqPayload :: Lens' QueriesRunQuery RunQueryRequest
-qrqPayload
-  = lens _qrqPayload (\ s a -> s{_qrqPayload = a})
-
-instance GoogleRequest QueriesRunQuery where
-        type Rs QueriesRunQuery = ()
-        type Scopes QueriesRunQuery =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient QueriesRunQuery'{..}
-          = go _qrqQueryId (Just AltJSON) _qrqPayload
-              doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy QueriesRunQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Reports/Listreports.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Reports/Listreports.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Reports/Listreports.hs
+++ /dev/null
@@ -1,90 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DoubleClickBidManager.Reports.Listreports
--- 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 stored reports.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.reports.listreports@.
-module Network.Google.Resource.DoubleClickBidManager.Reports.Listreports
-    (
-    -- * REST Resource
-      ReportsListreportsResource
-
-    -- * Creating a Request
-    , reportsListreports
-    , ReportsListreports
-
-    -- * Request Lenses
-    , rlQueryId
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.reports.listreports@ method which the
--- 'ReportsListreports' request conforms to.
-type ReportsListreportsResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "queries" :>
-           Capture "queryId" (Textual Int64) :>
-             "reports" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] ListReportsResponse
-
--- | Retrieves stored reports.
---
--- /See:/ 'reportsListreports' smart constructor.
-newtype ReportsListreports =
-  ReportsListreports'
-    { _rlQueryId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsListreports' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlQueryId'
-reportsListreports
-    :: Int64 -- ^ 'rlQueryId'
-    -> ReportsListreports
-reportsListreports pRlQueryId_ =
-  ReportsListreports' {_rlQueryId = _Coerce # pRlQueryId_}
-
-
--- | Query ID with which the reports are associated.
-rlQueryId :: Lens' ReportsListreports Int64
-rlQueryId
-  = lens _rlQueryId (\ s a -> s{_rlQueryId = a}) .
-      _Coerce
-
-instance GoogleRequest ReportsListreports where
-        type Rs ReportsListreports = ListReportsResponse
-        type Scopes ReportsListreports =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient ReportsListreports'{..}
-          = go _rlQueryId (Just AltJSON) doubleClickBidsService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ReportsListreportsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DoubleClickBidManager/Sdf/Download.hs b/gen/Network/Google/Resource/DoubleClickBidManager/Sdf/Download.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DoubleClickBidManager/Sdf/Download.hs
+++ /dev/null
@@ -1,87 +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.DoubleClickBidManager.Sdf.Download
--- 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 entities in SDF format.
---
--- /See:/ <https://developers.google.com/bid-manager/ DoubleClick Bid Manager API Reference> for @doubleclickbidmanager.sdf.download@.
-module Network.Google.Resource.DoubleClickBidManager.Sdf.Download
-    (
-    -- * REST Resource
-      SdfDownloadResource
-
-    -- * Creating a Request
-    , sdfDownload
-    , SdfDownload
-
-    -- * Request Lenses
-    , sdPayload
-    ) where
-
-import           Network.Google.DoubleClickBids.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @doubleclickbidmanager.sdf.download@ method which the
--- 'SdfDownload' request conforms to.
-type SdfDownloadResource =
-     "doubleclickbidmanager" :>
-       "v1" :>
-         "sdf" :>
-           "download" :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] DownloadRequest :>
-                 Post '[JSON] DownloadResponse
-
--- | Retrieves entities in SDF format.
---
--- /See:/ 'sdfDownload' smart constructor.
-newtype SdfDownload =
-  SdfDownload'
-    { _sdPayload :: DownloadRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SdfDownload' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sdPayload'
-sdfDownload
-    :: DownloadRequest -- ^ 'sdPayload'
-    -> SdfDownload
-sdfDownload pSdPayload_ = SdfDownload' {_sdPayload = pSdPayload_}
-
-
--- | Multipart request metadata.
-sdPayload :: Lens' SdfDownload DownloadRequest
-sdPayload
-  = lens _sdPayload (\ s a -> s{_sdPayload = a})
-
-instance GoogleRequest SdfDownload where
-        type Rs SdfDownload = DownloadResponse
-        type Scopes SdfDownload =
-             '["https://www.googleapis.com/auth/doubleclickbidmanager"]
-        requestClient SdfDownload'{..}
-          = go (Just AltJSON) _sdPayload doubleClickBidsService
-          where go
-                  = buildClient (Proxy :: Proxy SdfDownloadResource)
-                      mempty
diff --git a/gogol-doubleclick-bids.cabal b/gogol-doubleclick-bids.cabal
--- a/gogol-doubleclick-bids.cabal
+++ b/gogol-doubleclick-bids.cabal
@@ -1,58 +1,67 @@
-name:                  gogol-doubleclick-bids
-version:               0.5.0
-synopsis:              Google DoubleClick Bid Manager 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-doubleclick-bids
+version:            1.0.0
+synopsis:           Google DoubleClick Bid Manager 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:
-    API for viewing and managing your reports in DoubleClick Bid Manager.
-    .
-    /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 @v1@
-    of the API.
-    .
-    Labels:
-    .
-    * Limited Availability
+  DoubleClick Bid Manager API allows users to manage and create campaigns and reports.
+  .
+  /Warning:/ This is an experimental prototype/preview release which is still
+  under exploratory development and not intended for public use, caveat emptor!
+  .
+  This library is compatible with version @v2@
+  of the API.
 
 source-repository head
-    type:     git
-    location: git://github.com/brendanhay/gogol.git
+  type:     git
+  location: git://github.com/brendanhay/gogol.git
+  subdir:   gogol-doubleclick-bids
 
+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.DoubleClickBids
-        , Network.Google.DoubleClickBids.Types
-        , Network.Google.Resource.DoubleClickBidManager.Lineitems.Downloadlineitems
-        , Network.Google.Resource.DoubleClickBidManager.Lineitems.Uploadlineitems
-        , Network.Google.Resource.DoubleClickBidManager.Queries.CreateQuery
-        , Network.Google.Resource.DoubleClickBidManager.Queries.DeleteQuery
-        , Network.Google.Resource.DoubleClickBidManager.Queries.GetQuery
-        , Network.Google.Resource.DoubleClickBidManager.Queries.Listqueries
-        , Network.Google.Resource.DoubleClickBidManager.Queries.RunQuery
-        , Network.Google.Resource.DoubleClickBidManager.Reports.Listreports
-        , Network.Google.Resource.DoubleClickBidManager.Sdf.Download
+  exposed-modules:
+    Gogol.DoubleClickBids
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Create
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Delete
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Get
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.List
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.Get
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Reports.List
+    Gogol.DoubleClickBids.Doubleclickbidmanager.Queries.Run
+    Gogol.DoubleClickBids.Types
 
-    other-modules:
-          Network.Google.DoubleClickBids.Types.Product
-        , Network.Google.DoubleClickBids.Types.Sum
+  other-modules:
+    Gogol.DoubleClickBids.Internal.Product
+    Gogol.DoubleClickBids.Internal.Sum
 
-    build-depends:
-          gogol-core == 0.5.0.*
-        , base       >= 4.7 && < 5
+  build-depends:    gogol-core ^>=1.0.0
