diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,12 +8,12 @@
 
 ## Version
 
-`0.5.0`
+`1.0.0`
 
 
 ## Description
 
-A client library for the Google DCM/DFA Reporting And Trafficking.
+A client library for the Google Campaign Manager 360.
 
 
 ## Contribute
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/DFAReporting.hs b/gen/Gogol/DFAReporting.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting.hs
@@ -0,0 +1,2962 @@
+{-# 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.DFAReporting
+-- 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)
+--
+-- Build applications to efficiently manage large or complex trafficking, reporting, and attribution workflows for Campaign Manager 360.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference>
+module Gogol.DFAReporting
+  ( -- * Configuration
+    dFAReportingService,
+
+    -- * OAuth Scopes
+    Ddmconversions'FullControl,
+    Dfareporting'FullControl,
+    Dfatrafficking'FullControl,
+
+    -- * Resources
+
+    -- ** dfareporting.accountActiveAdSummaries.get
+    DFAReportingAccountActiveAdSummariesGetResource,
+    DFAReportingAccountActiveAdSummariesGet (..),
+    newDFAReportingAccountActiveAdSummariesGet,
+
+    -- ** dfareporting.accountPermissionGroups.get
+    DFAReportingAccountPermissionGroupsGetResource,
+    DFAReportingAccountPermissionGroupsGet (..),
+    newDFAReportingAccountPermissionGroupsGet,
+
+    -- ** dfareporting.accountPermissionGroups.list
+    DFAReportingAccountPermissionGroupsListResource,
+    DFAReportingAccountPermissionGroupsList (..),
+    newDFAReportingAccountPermissionGroupsList,
+
+    -- ** dfareporting.accountPermissions.get
+    DFAReportingAccountPermissionsGetResource,
+    DFAReportingAccountPermissionsGet (..),
+    newDFAReportingAccountPermissionsGet,
+
+    -- ** dfareporting.accountPermissions.list
+    DFAReportingAccountPermissionsListResource,
+    DFAReportingAccountPermissionsList (..),
+    newDFAReportingAccountPermissionsList,
+
+    -- ** dfareporting.accountUserProfiles.get
+    DFAReportingAccountUserProfilesGetResource,
+    DFAReportingAccountUserProfilesGet (..),
+    newDFAReportingAccountUserProfilesGet,
+
+    -- ** dfareporting.accountUserProfiles.insert
+    DFAReportingAccountUserProfilesInsertResource,
+    DFAReportingAccountUserProfilesInsert (..),
+    newDFAReportingAccountUserProfilesInsert,
+
+    -- ** dfareporting.accountUserProfiles.list
+    DFAReportingAccountUserProfilesListResource,
+    DFAReportingAccountUserProfilesList (..),
+    newDFAReportingAccountUserProfilesList,
+
+    -- ** dfareporting.accountUserProfiles.patch
+    DFAReportingAccountUserProfilesPatchResource,
+    DFAReportingAccountUserProfilesPatch (..),
+    newDFAReportingAccountUserProfilesPatch,
+
+    -- ** dfareporting.accountUserProfiles.update
+    DFAReportingAccountUserProfilesUpdateResource,
+    DFAReportingAccountUserProfilesUpdate (..),
+    newDFAReportingAccountUserProfilesUpdate,
+
+    -- ** dfareporting.accounts.get
+    DFAReportingAccountsGetResource,
+    DFAReportingAccountsGet (..),
+    newDFAReportingAccountsGet,
+
+    -- ** dfareporting.accounts.list
+    DFAReportingAccountsListResource,
+    DFAReportingAccountsList (..),
+    newDFAReportingAccountsList,
+
+    -- ** dfareporting.accounts.patch
+    DFAReportingAccountsPatchResource,
+    DFAReportingAccountsPatch (..),
+    newDFAReportingAccountsPatch,
+
+    -- ** dfareporting.accounts.update
+    DFAReportingAccountsUpdateResource,
+    DFAReportingAccountsUpdate (..),
+    newDFAReportingAccountsUpdate,
+
+    -- ** dfareporting.ads.get
+    DFAReportingAdsGetResource,
+    DFAReportingAdsGet (..),
+    newDFAReportingAdsGet,
+
+    -- ** dfareporting.ads.insert
+    DFAReportingAdsInsertResource,
+    DFAReportingAdsInsert (..),
+    newDFAReportingAdsInsert,
+
+    -- ** dfareporting.ads.list
+    DFAReportingAdsListResource,
+    DFAReportingAdsList (..),
+    newDFAReportingAdsList,
+
+    -- ** dfareporting.ads.patch
+    DFAReportingAdsPatchResource,
+    DFAReportingAdsPatch (..),
+    newDFAReportingAdsPatch,
+
+    -- ** dfareporting.ads.update
+    DFAReportingAdsUpdateResource,
+    DFAReportingAdsUpdate (..),
+    newDFAReportingAdsUpdate,
+
+    -- ** dfareporting.advertiserGroups.delete
+    DFAReportingAdvertiserGroupsDeleteResource,
+    DFAReportingAdvertiserGroupsDelete (..),
+    newDFAReportingAdvertiserGroupsDelete,
+
+    -- ** dfareporting.advertiserGroups.get
+    DFAReportingAdvertiserGroupsGetResource,
+    DFAReportingAdvertiserGroupsGet (..),
+    newDFAReportingAdvertiserGroupsGet,
+
+    -- ** dfareporting.advertiserGroups.insert
+    DFAReportingAdvertiserGroupsInsertResource,
+    DFAReportingAdvertiserGroupsInsert (..),
+    newDFAReportingAdvertiserGroupsInsert,
+
+    -- ** dfareporting.advertiserGroups.list
+    DFAReportingAdvertiserGroupsListResource,
+    DFAReportingAdvertiserGroupsList (..),
+    newDFAReportingAdvertiserGroupsList,
+
+    -- ** dfareporting.advertiserGroups.patch
+    DFAReportingAdvertiserGroupsPatchResource,
+    DFAReportingAdvertiserGroupsPatch (..),
+    newDFAReportingAdvertiserGroupsPatch,
+
+    -- ** dfareporting.advertiserGroups.update
+    DFAReportingAdvertiserGroupsUpdateResource,
+    DFAReportingAdvertiserGroupsUpdate (..),
+    newDFAReportingAdvertiserGroupsUpdate,
+
+    -- ** dfareporting.advertiserInvoices.list
+    DFAReportingAdvertiserInvoicesListResource,
+    DFAReportingAdvertiserInvoicesList (..),
+    newDFAReportingAdvertiserInvoicesList,
+
+    -- ** dfareporting.advertiserLandingPages.get
+    DFAReportingAdvertiserLandingPagesGetResource,
+    DFAReportingAdvertiserLandingPagesGet (..),
+    newDFAReportingAdvertiserLandingPagesGet,
+
+    -- ** dfareporting.advertiserLandingPages.insert
+    DFAReportingAdvertiserLandingPagesInsertResource,
+    DFAReportingAdvertiserLandingPagesInsert (..),
+    newDFAReportingAdvertiserLandingPagesInsert,
+
+    -- ** dfareporting.advertiserLandingPages.list
+    DFAReportingAdvertiserLandingPagesListResource,
+    DFAReportingAdvertiserLandingPagesList (..),
+    newDFAReportingAdvertiserLandingPagesList,
+
+    -- ** dfareporting.advertiserLandingPages.patch
+    DFAReportingAdvertiserLandingPagesPatchResource,
+    DFAReportingAdvertiserLandingPagesPatch (..),
+    newDFAReportingAdvertiserLandingPagesPatch,
+
+    -- ** dfareporting.advertiserLandingPages.update
+    DFAReportingAdvertiserLandingPagesUpdateResource,
+    DFAReportingAdvertiserLandingPagesUpdate (..),
+    newDFAReportingAdvertiserLandingPagesUpdate,
+
+    -- ** dfareporting.advertisers.get
+    DFAReportingAdvertisersGetResource,
+    DFAReportingAdvertisersGet (..),
+    newDFAReportingAdvertisersGet,
+
+    -- ** dfareporting.advertisers.insert
+    DFAReportingAdvertisersInsertResource,
+    DFAReportingAdvertisersInsert (..),
+    newDFAReportingAdvertisersInsert,
+
+    -- ** dfareporting.advertisers.list
+    DFAReportingAdvertisersListResource,
+    DFAReportingAdvertisersList (..),
+    newDFAReportingAdvertisersList,
+
+    -- ** dfareporting.advertisers.patch
+    DFAReportingAdvertisersPatchResource,
+    DFAReportingAdvertisersPatch (..),
+    newDFAReportingAdvertisersPatch,
+
+    -- ** dfareporting.advertisers.update
+    DFAReportingAdvertisersUpdateResource,
+    DFAReportingAdvertisersUpdate (..),
+    newDFAReportingAdvertisersUpdate,
+
+    -- ** dfareporting.billingAssignments.insert
+    DFAReportingBillingAssignmentsInsertResource,
+    DFAReportingBillingAssignmentsInsert (..),
+    newDFAReportingBillingAssignmentsInsert,
+
+    -- ** dfareporting.billingAssignments.list
+    DFAReportingBillingAssignmentsListResource,
+    DFAReportingBillingAssignmentsList (..),
+    newDFAReportingBillingAssignmentsList,
+
+    -- ** dfareporting.billingProfiles.get
+    DFAReportingBillingProfilesGetResource,
+    DFAReportingBillingProfilesGet (..),
+    newDFAReportingBillingProfilesGet,
+
+    -- ** dfareporting.billingProfiles.list
+    DFAReportingBillingProfilesListResource,
+    DFAReportingBillingProfilesList (..),
+    newDFAReportingBillingProfilesList,
+
+    -- ** dfareporting.billingProfiles.update
+    DFAReportingBillingProfilesUpdateResource,
+    DFAReportingBillingProfilesUpdate (..),
+    newDFAReportingBillingProfilesUpdate,
+
+    -- ** dfareporting.billingRates.list
+    DFAReportingBillingRatesListResource,
+    DFAReportingBillingRatesList (..),
+    newDFAReportingBillingRatesList,
+
+    -- ** dfareporting.browsers.list
+    DFAReportingBrowsersListResource,
+    DFAReportingBrowsersList (..),
+    newDFAReportingBrowsersList,
+
+    -- ** dfareporting.campaignCreativeAssociations.insert
+    DFAReportingCampaignCreativeAssociationsInsertResource,
+    DFAReportingCampaignCreativeAssociationsInsert (..),
+    newDFAReportingCampaignCreativeAssociationsInsert,
+
+    -- ** dfareporting.campaignCreativeAssociations.list
+    DFAReportingCampaignCreativeAssociationsListResource,
+    DFAReportingCampaignCreativeAssociationsList (..),
+    newDFAReportingCampaignCreativeAssociationsList,
+
+    -- ** dfareporting.campaigns.get
+    DFAReportingCampaignsGetResource,
+    DFAReportingCampaignsGet (..),
+    newDFAReportingCampaignsGet,
+
+    -- ** dfareporting.campaigns.insert
+    DFAReportingCampaignsInsertResource,
+    DFAReportingCampaignsInsert (..),
+    newDFAReportingCampaignsInsert,
+
+    -- ** dfareporting.campaigns.list
+    DFAReportingCampaignsListResource,
+    DFAReportingCampaignsList (..),
+    newDFAReportingCampaignsList,
+
+    -- ** dfareporting.campaigns.patch
+    DFAReportingCampaignsPatchResource,
+    DFAReportingCampaignsPatch (..),
+    newDFAReportingCampaignsPatch,
+
+    -- ** dfareporting.campaigns.update
+    DFAReportingCampaignsUpdateResource,
+    DFAReportingCampaignsUpdate (..),
+    newDFAReportingCampaignsUpdate,
+
+    -- ** dfareporting.changeLogs.get
+    DFAReportingChangeLogsGetResource,
+    DFAReportingChangeLogsGet (..),
+    newDFAReportingChangeLogsGet,
+
+    -- ** dfareporting.changeLogs.list
+    DFAReportingChangeLogsListResource,
+    DFAReportingChangeLogsList (..),
+    newDFAReportingChangeLogsList,
+
+    -- ** dfareporting.cities.list
+    DFAReportingCitiesListResource,
+    DFAReportingCitiesList (..),
+    newDFAReportingCitiesList,
+
+    -- ** dfareporting.connectionTypes.get
+    DFAReportingConnectionTypesGetResource,
+    DFAReportingConnectionTypesGet (..),
+    newDFAReportingConnectionTypesGet,
+
+    -- ** dfareporting.connectionTypes.list
+    DFAReportingConnectionTypesListResource,
+    DFAReportingConnectionTypesList (..),
+    newDFAReportingConnectionTypesList,
+
+    -- ** dfareporting.contentCategories.delete
+    DFAReportingContentCategoriesDeleteResource,
+    DFAReportingContentCategoriesDelete (..),
+    newDFAReportingContentCategoriesDelete,
+
+    -- ** dfareporting.contentCategories.get
+    DFAReportingContentCategoriesGetResource,
+    DFAReportingContentCategoriesGet (..),
+    newDFAReportingContentCategoriesGet,
+
+    -- ** dfareporting.contentCategories.insert
+    DFAReportingContentCategoriesInsertResource,
+    DFAReportingContentCategoriesInsert (..),
+    newDFAReportingContentCategoriesInsert,
+
+    -- ** dfareporting.contentCategories.list
+    DFAReportingContentCategoriesListResource,
+    DFAReportingContentCategoriesList (..),
+    newDFAReportingContentCategoriesList,
+
+    -- ** dfareporting.contentCategories.patch
+    DFAReportingContentCategoriesPatchResource,
+    DFAReportingContentCategoriesPatch (..),
+    newDFAReportingContentCategoriesPatch,
+
+    -- ** dfareporting.contentCategories.update
+    DFAReportingContentCategoriesUpdateResource,
+    DFAReportingContentCategoriesUpdate (..),
+    newDFAReportingContentCategoriesUpdate,
+
+    -- ** dfareporting.conversions.batchinsert
+    DFAReportingConversionsBatchinsertResource,
+    DFAReportingConversionsBatchinsert (..),
+    newDFAReportingConversionsBatchinsert,
+
+    -- ** dfareporting.conversions.batchupdate
+    DFAReportingConversionsBatchupdateResource,
+    DFAReportingConversionsBatchupdate (..),
+    newDFAReportingConversionsBatchupdate,
+
+    -- ** dfareporting.countries.get
+    DFAReportingCountriesGetResource,
+    DFAReportingCountriesGet (..),
+    newDFAReportingCountriesGet,
+
+    -- ** dfareporting.countries.list
+    DFAReportingCountriesListResource,
+    DFAReportingCountriesList (..),
+    newDFAReportingCountriesList,
+
+    -- ** dfareporting.creativeAssets.insert
+    DFAReportingCreativeAssetsInsertResource,
+    DFAReportingCreativeAssetsInsert (..),
+    newDFAReportingCreativeAssetsInsert,
+
+    -- ** dfareporting.creativeFieldValues.delete
+    DFAReportingCreativeFieldValuesDeleteResource,
+    DFAReportingCreativeFieldValuesDelete (..),
+    newDFAReportingCreativeFieldValuesDelete,
+
+    -- ** dfareporting.creativeFieldValues.get
+    DFAReportingCreativeFieldValuesGetResource,
+    DFAReportingCreativeFieldValuesGet (..),
+    newDFAReportingCreativeFieldValuesGet,
+
+    -- ** dfareporting.creativeFieldValues.insert
+    DFAReportingCreativeFieldValuesInsertResource,
+    DFAReportingCreativeFieldValuesInsert (..),
+    newDFAReportingCreativeFieldValuesInsert,
+
+    -- ** dfareporting.creativeFieldValues.list
+    DFAReportingCreativeFieldValuesListResource,
+    DFAReportingCreativeFieldValuesList (..),
+    newDFAReportingCreativeFieldValuesList,
+
+    -- ** dfareporting.creativeFieldValues.patch
+    DFAReportingCreativeFieldValuesPatchResource,
+    DFAReportingCreativeFieldValuesPatch (..),
+    newDFAReportingCreativeFieldValuesPatch,
+
+    -- ** dfareporting.creativeFieldValues.update
+    DFAReportingCreativeFieldValuesUpdateResource,
+    DFAReportingCreativeFieldValuesUpdate (..),
+    newDFAReportingCreativeFieldValuesUpdate,
+
+    -- ** dfareporting.creativeFields.delete
+    DFAReportingCreativeFieldsDeleteResource,
+    DFAReportingCreativeFieldsDelete (..),
+    newDFAReportingCreativeFieldsDelete,
+
+    -- ** dfareporting.creativeFields.get
+    DFAReportingCreativeFieldsGetResource,
+    DFAReportingCreativeFieldsGet (..),
+    newDFAReportingCreativeFieldsGet,
+
+    -- ** dfareporting.creativeFields.insert
+    DFAReportingCreativeFieldsInsertResource,
+    DFAReportingCreativeFieldsInsert (..),
+    newDFAReportingCreativeFieldsInsert,
+
+    -- ** dfareporting.creativeFields.list
+    DFAReportingCreativeFieldsListResource,
+    DFAReportingCreativeFieldsList (..),
+    newDFAReportingCreativeFieldsList,
+
+    -- ** dfareporting.creativeFields.patch
+    DFAReportingCreativeFieldsPatchResource,
+    DFAReportingCreativeFieldsPatch (..),
+    newDFAReportingCreativeFieldsPatch,
+
+    -- ** dfareporting.creativeFields.update
+    DFAReportingCreativeFieldsUpdateResource,
+    DFAReportingCreativeFieldsUpdate (..),
+    newDFAReportingCreativeFieldsUpdate,
+
+    -- ** dfareporting.creativeGroups.get
+    DFAReportingCreativeGroupsGetResource,
+    DFAReportingCreativeGroupsGet (..),
+    newDFAReportingCreativeGroupsGet,
+
+    -- ** dfareporting.creativeGroups.insert
+    DFAReportingCreativeGroupsInsertResource,
+    DFAReportingCreativeGroupsInsert (..),
+    newDFAReportingCreativeGroupsInsert,
+
+    -- ** dfareporting.creativeGroups.list
+    DFAReportingCreativeGroupsListResource,
+    DFAReportingCreativeGroupsList (..),
+    newDFAReportingCreativeGroupsList,
+
+    -- ** dfareporting.creativeGroups.patch
+    DFAReportingCreativeGroupsPatchResource,
+    DFAReportingCreativeGroupsPatch (..),
+    newDFAReportingCreativeGroupsPatch,
+
+    -- ** dfareporting.creativeGroups.update
+    DFAReportingCreativeGroupsUpdateResource,
+    DFAReportingCreativeGroupsUpdate (..),
+    newDFAReportingCreativeGroupsUpdate,
+
+    -- ** dfareporting.creatives.get
+    DFAReportingCreativesGetResource,
+    DFAReportingCreativesGet (..),
+    newDFAReportingCreativesGet,
+
+    -- ** dfareporting.creatives.insert
+    DFAReportingCreativesInsertResource,
+    DFAReportingCreativesInsert (..),
+    newDFAReportingCreativesInsert,
+
+    -- ** dfareporting.creatives.list
+    DFAReportingCreativesListResource,
+    DFAReportingCreativesList (..),
+    newDFAReportingCreativesList,
+
+    -- ** dfareporting.creatives.patch
+    DFAReportingCreativesPatchResource,
+    DFAReportingCreativesPatch (..),
+    newDFAReportingCreativesPatch,
+
+    -- ** dfareporting.creatives.update
+    DFAReportingCreativesUpdateResource,
+    DFAReportingCreativesUpdate (..),
+    newDFAReportingCreativesUpdate,
+
+    -- ** dfareporting.dimensionValues.query
+    DFAReportingDimensionValuesQueryResource,
+    DFAReportingDimensionValuesQuery (..),
+    newDFAReportingDimensionValuesQuery,
+
+    -- ** dfareporting.directorySites.get
+    DFAReportingDirectorySitesGetResource,
+    DFAReportingDirectorySitesGet (..),
+    newDFAReportingDirectorySitesGet,
+
+    -- ** dfareporting.directorySites.insert
+    DFAReportingDirectorySitesInsertResource,
+    DFAReportingDirectorySitesInsert (..),
+    newDFAReportingDirectorySitesInsert,
+
+    -- ** dfareporting.directorySites.list
+    DFAReportingDirectorySitesListResource,
+    DFAReportingDirectorySitesList (..),
+    newDFAReportingDirectorySitesList,
+
+    -- ** dfareporting.dynamicTargetingKeys.delete
+    DFAReportingDynamicTargetingKeysDeleteResource,
+    DFAReportingDynamicTargetingKeysDelete (..),
+    newDFAReportingDynamicTargetingKeysDelete,
+
+    -- ** dfareporting.dynamicTargetingKeys.insert
+    DFAReportingDynamicTargetingKeysInsertResource,
+    DFAReportingDynamicTargetingKeysInsert (..),
+    newDFAReportingDynamicTargetingKeysInsert,
+
+    -- ** dfareporting.dynamicTargetingKeys.list
+    DFAReportingDynamicTargetingKeysListResource,
+    DFAReportingDynamicTargetingKeysList (..),
+    newDFAReportingDynamicTargetingKeysList,
+
+    -- ** dfareporting.eventTags.delete
+    DFAReportingEventTagsDeleteResource,
+    DFAReportingEventTagsDelete (..),
+    newDFAReportingEventTagsDelete,
+
+    -- ** dfareporting.eventTags.get
+    DFAReportingEventTagsGetResource,
+    DFAReportingEventTagsGet (..),
+    newDFAReportingEventTagsGet,
+
+    -- ** dfareporting.eventTags.insert
+    DFAReportingEventTagsInsertResource,
+    DFAReportingEventTagsInsert (..),
+    newDFAReportingEventTagsInsert,
+
+    -- ** dfareporting.eventTags.list
+    DFAReportingEventTagsListResource,
+    DFAReportingEventTagsList (..),
+    newDFAReportingEventTagsList,
+
+    -- ** dfareporting.eventTags.patch
+    DFAReportingEventTagsPatchResource,
+    DFAReportingEventTagsPatch (..),
+    newDFAReportingEventTagsPatch,
+
+    -- ** dfareporting.eventTags.update
+    DFAReportingEventTagsUpdateResource,
+    DFAReportingEventTagsUpdate (..),
+    newDFAReportingEventTagsUpdate,
+
+    -- ** dfareporting.files.get
+    DFAReportingFilesGetResource,
+    DFAReportingFilesGet (..),
+    newDFAReportingFilesGet,
+
+    -- ** dfareporting.files.list
+    DFAReportingFilesListResource,
+    DFAReportingFilesList (..),
+    newDFAReportingFilesList,
+
+    -- ** dfareporting.floodlightActivities.delete
+    DFAReportingFloodlightActivitiesDeleteResource,
+    DFAReportingFloodlightActivitiesDelete (..),
+    newDFAReportingFloodlightActivitiesDelete,
+
+    -- ** dfareporting.floodlightActivities.generatetag
+    DFAReportingFloodlightActivitiesGeneratetagResource,
+    DFAReportingFloodlightActivitiesGeneratetag (..),
+    newDFAReportingFloodlightActivitiesGeneratetag,
+
+    -- ** dfareporting.floodlightActivities.get
+    DFAReportingFloodlightActivitiesGetResource,
+    DFAReportingFloodlightActivitiesGet (..),
+    newDFAReportingFloodlightActivitiesGet,
+
+    -- ** dfareporting.floodlightActivities.insert
+    DFAReportingFloodlightActivitiesInsertResource,
+    DFAReportingFloodlightActivitiesInsert (..),
+    newDFAReportingFloodlightActivitiesInsert,
+
+    -- ** dfareporting.floodlightActivities.list
+    DFAReportingFloodlightActivitiesListResource,
+    DFAReportingFloodlightActivitiesList (..),
+    newDFAReportingFloodlightActivitiesList,
+
+    -- ** dfareporting.floodlightActivities.patch
+    DFAReportingFloodlightActivitiesPatchResource,
+    DFAReportingFloodlightActivitiesPatch (..),
+    newDFAReportingFloodlightActivitiesPatch,
+
+    -- ** dfareporting.floodlightActivities.update
+    DFAReportingFloodlightActivitiesUpdateResource,
+    DFAReportingFloodlightActivitiesUpdate (..),
+    newDFAReportingFloodlightActivitiesUpdate,
+
+    -- ** dfareporting.floodlightActivityGroups.get
+    DFAReportingFloodlightActivityGroupsGetResource,
+    DFAReportingFloodlightActivityGroupsGet (..),
+    newDFAReportingFloodlightActivityGroupsGet,
+
+    -- ** dfareporting.floodlightActivityGroups.insert
+    DFAReportingFloodlightActivityGroupsInsertResource,
+    DFAReportingFloodlightActivityGroupsInsert (..),
+    newDFAReportingFloodlightActivityGroupsInsert,
+
+    -- ** dfareporting.floodlightActivityGroups.list
+    DFAReportingFloodlightActivityGroupsListResource,
+    DFAReportingFloodlightActivityGroupsList (..),
+    newDFAReportingFloodlightActivityGroupsList,
+
+    -- ** dfareporting.floodlightActivityGroups.patch
+    DFAReportingFloodlightActivityGroupsPatchResource,
+    DFAReportingFloodlightActivityGroupsPatch (..),
+    newDFAReportingFloodlightActivityGroupsPatch,
+
+    -- ** dfareporting.floodlightActivityGroups.update
+    DFAReportingFloodlightActivityGroupsUpdateResource,
+    DFAReportingFloodlightActivityGroupsUpdate (..),
+    newDFAReportingFloodlightActivityGroupsUpdate,
+
+    -- ** dfareporting.floodlightConfigurations.get
+    DFAReportingFloodlightConfigurationsGetResource,
+    DFAReportingFloodlightConfigurationsGet (..),
+    newDFAReportingFloodlightConfigurationsGet,
+
+    -- ** dfareporting.floodlightConfigurations.list
+    DFAReportingFloodlightConfigurationsListResource,
+    DFAReportingFloodlightConfigurationsList (..),
+    newDFAReportingFloodlightConfigurationsList,
+
+    -- ** dfareporting.floodlightConfigurations.patch
+    DFAReportingFloodlightConfigurationsPatchResource,
+    DFAReportingFloodlightConfigurationsPatch (..),
+    newDFAReportingFloodlightConfigurationsPatch,
+
+    -- ** dfareporting.floodlightConfigurations.update
+    DFAReportingFloodlightConfigurationsUpdateResource,
+    DFAReportingFloodlightConfigurationsUpdate (..),
+    newDFAReportingFloodlightConfigurationsUpdate,
+
+    -- ** dfareporting.inventoryItems.get
+    DFAReportingInventoryItemsGetResource,
+    DFAReportingInventoryItemsGet (..),
+    newDFAReportingInventoryItemsGet,
+
+    -- ** dfareporting.inventoryItems.list
+    DFAReportingInventoryItemsListResource,
+    DFAReportingInventoryItemsList (..),
+    newDFAReportingInventoryItemsList,
+
+    -- ** dfareporting.languages.list
+    DFAReportingLanguagesListResource,
+    DFAReportingLanguagesList (..),
+    newDFAReportingLanguagesList,
+
+    -- ** dfareporting.metros.list
+    DFAReportingMetrosListResource,
+    DFAReportingMetrosList (..),
+    newDFAReportingMetrosList,
+
+    -- ** dfareporting.mobileApps.get
+    DFAReportingMobileAppsGetResource,
+    DFAReportingMobileAppsGet (..),
+    newDFAReportingMobileAppsGet,
+
+    -- ** dfareporting.mobileApps.list
+    DFAReportingMobileAppsListResource,
+    DFAReportingMobileAppsList (..),
+    newDFAReportingMobileAppsList,
+
+    -- ** dfareporting.mobileCarriers.get
+    DFAReportingMobileCarriersGetResource,
+    DFAReportingMobileCarriersGet (..),
+    newDFAReportingMobileCarriersGet,
+
+    -- ** dfareporting.mobileCarriers.list
+    DFAReportingMobileCarriersListResource,
+    DFAReportingMobileCarriersList (..),
+    newDFAReportingMobileCarriersList,
+
+    -- ** dfareporting.operatingSystemVersions.get
+    DFAReportingOperatingSystemVersionsGetResource,
+    DFAReportingOperatingSystemVersionsGet (..),
+    newDFAReportingOperatingSystemVersionsGet,
+
+    -- ** dfareporting.operatingSystemVersions.list
+    DFAReportingOperatingSystemVersionsListResource,
+    DFAReportingOperatingSystemVersionsList (..),
+    newDFAReportingOperatingSystemVersionsList,
+
+    -- ** dfareporting.operatingSystems.get
+    DFAReportingOperatingSystemsGetResource,
+    DFAReportingOperatingSystemsGet (..),
+    newDFAReportingOperatingSystemsGet,
+
+    -- ** dfareporting.operatingSystems.list
+    DFAReportingOperatingSystemsListResource,
+    DFAReportingOperatingSystemsList (..),
+    newDFAReportingOperatingSystemsList,
+
+    -- ** dfareporting.orders.get
+    DFAReportingOrdersGetResource,
+    DFAReportingOrdersGet (..),
+    newDFAReportingOrdersGet,
+
+    -- ** dfareporting.orders.list
+    DFAReportingOrdersListResource,
+    DFAReportingOrdersList (..),
+    newDFAReportingOrdersList,
+
+    -- ** dfareporting.placementGroups.get
+    DFAReportingPlacementGroupsGetResource,
+    DFAReportingPlacementGroupsGet (..),
+    newDFAReportingPlacementGroupsGet,
+
+    -- ** dfareporting.placementGroups.insert
+    DFAReportingPlacementGroupsInsertResource,
+    DFAReportingPlacementGroupsInsert (..),
+    newDFAReportingPlacementGroupsInsert,
+
+    -- ** dfareporting.placementGroups.list
+    DFAReportingPlacementGroupsListResource,
+    DFAReportingPlacementGroupsList (..),
+    newDFAReportingPlacementGroupsList,
+
+    -- ** dfareporting.placementGroups.patch
+    DFAReportingPlacementGroupsPatchResource,
+    DFAReportingPlacementGroupsPatch (..),
+    newDFAReportingPlacementGroupsPatch,
+
+    -- ** dfareporting.placementGroups.update
+    DFAReportingPlacementGroupsUpdateResource,
+    DFAReportingPlacementGroupsUpdate (..),
+    newDFAReportingPlacementGroupsUpdate,
+
+    -- ** dfareporting.placementStrategies.delete
+    DFAReportingPlacementStrategiesDeleteResource,
+    DFAReportingPlacementStrategiesDelete (..),
+    newDFAReportingPlacementStrategiesDelete,
+
+    -- ** dfareporting.placementStrategies.get
+    DFAReportingPlacementStrategiesGetResource,
+    DFAReportingPlacementStrategiesGet (..),
+    newDFAReportingPlacementStrategiesGet,
+
+    -- ** dfareporting.placementStrategies.insert
+    DFAReportingPlacementStrategiesInsertResource,
+    DFAReportingPlacementStrategiesInsert (..),
+    newDFAReportingPlacementStrategiesInsert,
+
+    -- ** dfareporting.placementStrategies.list
+    DFAReportingPlacementStrategiesListResource,
+    DFAReportingPlacementStrategiesList (..),
+    newDFAReportingPlacementStrategiesList,
+
+    -- ** dfareporting.placementStrategies.patch
+    DFAReportingPlacementStrategiesPatchResource,
+    DFAReportingPlacementStrategiesPatch (..),
+    newDFAReportingPlacementStrategiesPatch,
+
+    -- ** dfareporting.placementStrategies.update
+    DFAReportingPlacementStrategiesUpdateResource,
+    DFAReportingPlacementStrategiesUpdate (..),
+    newDFAReportingPlacementStrategiesUpdate,
+
+    -- ** dfareporting.placements.generatetags
+    DFAReportingPlacementsGeneratetagsResource,
+    DFAReportingPlacementsGeneratetags (..),
+    newDFAReportingPlacementsGeneratetags,
+
+    -- ** dfareporting.placements.get
+    DFAReportingPlacementsGetResource,
+    DFAReportingPlacementsGet (..),
+    newDFAReportingPlacementsGet,
+
+    -- ** dfareporting.placements.insert
+    DFAReportingPlacementsInsertResource,
+    DFAReportingPlacementsInsert (..),
+    newDFAReportingPlacementsInsert,
+
+    -- ** dfareporting.placements.list
+    DFAReportingPlacementsListResource,
+    DFAReportingPlacementsList (..),
+    newDFAReportingPlacementsList,
+
+    -- ** dfareporting.placements.patch
+    DFAReportingPlacementsPatchResource,
+    DFAReportingPlacementsPatch (..),
+    newDFAReportingPlacementsPatch,
+
+    -- ** dfareporting.placements.update
+    DFAReportingPlacementsUpdateResource,
+    DFAReportingPlacementsUpdate (..),
+    newDFAReportingPlacementsUpdate,
+
+    -- ** dfareporting.platformTypes.get
+    DFAReportingPlatformTypesGetResource,
+    DFAReportingPlatformTypesGet (..),
+    newDFAReportingPlatformTypesGet,
+
+    -- ** dfareporting.platformTypes.list
+    DFAReportingPlatformTypesListResource,
+    DFAReportingPlatformTypesList (..),
+    newDFAReportingPlatformTypesList,
+
+    -- ** dfareporting.postalCodes.get
+    DFAReportingPostalCodesGetResource,
+    DFAReportingPostalCodesGet (..),
+    newDFAReportingPostalCodesGet,
+
+    -- ** dfareporting.postalCodes.list
+    DFAReportingPostalCodesListResource,
+    DFAReportingPostalCodesList (..),
+    newDFAReportingPostalCodesList,
+
+    -- ** dfareporting.projects.get
+    DFAReportingProjectsGetResource,
+    DFAReportingProjectsGet (..),
+    newDFAReportingProjectsGet,
+
+    -- ** dfareporting.projects.list
+    DFAReportingProjectsListResource,
+    DFAReportingProjectsList (..),
+    newDFAReportingProjectsList,
+
+    -- ** dfareporting.regions.list
+    DFAReportingRegionsListResource,
+    DFAReportingRegionsList (..),
+    newDFAReportingRegionsList,
+
+    -- ** dfareporting.remarketingListShares.get
+    DFAReportingRemarketingListSharesGetResource,
+    DFAReportingRemarketingListSharesGet (..),
+    newDFAReportingRemarketingListSharesGet,
+
+    -- ** dfareporting.remarketingListShares.patch
+    DFAReportingRemarketingListSharesPatchResource,
+    DFAReportingRemarketingListSharesPatch (..),
+    newDFAReportingRemarketingListSharesPatch,
+
+    -- ** dfareporting.remarketingListShares.update
+    DFAReportingRemarketingListSharesUpdateResource,
+    DFAReportingRemarketingListSharesUpdate (..),
+    newDFAReportingRemarketingListSharesUpdate,
+
+    -- ** dfareporting.remarketingLists.get
+    DFAReportingRemarketingListsGetResource,
+    DFAReportingRemarketingListsGet (..),
+    newDFAReportingRemarketingListsGet,
+
+    -- ** dfareporting.remarketingLists.insert
+    DFAReportingRemarketingListsInsertResource,
+    DFAReportingRemarketingListsInsert (..),
+    newDFAReportingRemarketingListsInsert,
+
+    -- ** dfareporting.remarketingLists.list
+    DFAReportingRemarketingListsListResource,
+    DFAReportingRemarketingListsList (..),
+    newDFAReportingRemarketingListsList,
+
+    -- ** dfareporting.remarketingLists.patch
+    DFAReportingRemarketingListsPatchResource,
+    DFAReportingRemarketingListsPatch (..),
+    newDFAReportingRemarketingListsPatch,
+
+    -- ** dfareporting.remarketingLists.update
+    DFAReportingRemarketingListsUpdateResource,
+    DFAReportingRemarketingListsUpdate (..),
+    newDFAReportingRemarketingListsUpdate,
+
+    -- ** dfareporting.reports.compatibleFields.query
+    DFAReportingReportsCompatibleFieldsQueryResource,
+    DFAReportingReportsCompatibleFieldsQuery (..),
+    newDFAReportingReportsCompatibleFieldsQuery,
+
+    -- ** dfareporting.reports.delete
+    DFAReportingReportsDeleteResource,
+    DFAReportingReportsDelete (..),
+    newDFAReportingReportsDelete,
+
+    -- ** dfareporting.reports.files.get
+    DFAReportingReportsFilesGetResource,
+    DFAReportingReportsFilesGet (..),
+    newDFAReportingReportsFilesGet,
+
+    -- ** dfareporting.reports.files.list
+    DFAReportingReportsFilesListResource,
+    DFAReportingReportsFilesList (..),
+    newDFAReportingReportsFilesList,
+
+    -- ** dfareporting.reports.get
+    DFAReportingReportsGetResource,
+    DFAReportingReportsGet (..),
+    newDFAReportingReportsGet,
+
+    -- ** dfareporting.reports.insert
+    DFAReportingReportsInsertResource,
+    DFAReportingReportsInsert (..),
+    newDFAReportingReportsInsert,
+
+    -- ** dfareporting.reports.list
+    DFAReportingReportsListResource,
+    DFAReportingReportsList (..),
+    newDFAReportingReportsList,
+
+    -- ** dfareporting.reports.patch
+    DFAReportingReportsPatchResource,
+    DFAReportingReportsPatch (..),
+    newDFAReportingReportsPatch,
+
+    -- ** dfareporting.reports.run
+    DFAReportingReportsRunResource,
+    DFAReportingReportsRun (..),
+    newDFAReportingReportsRun,
+
+    -- ** dfareporting.reports.update
+    DFAReportingReportsUpdateResource,
+    DFAReportingReportsUpdate (..),
+    newDFAReportingReportsUpdate,
+
+    -- ** dfareporting.sites.get
+    DFAReportingSitesGetResource,
+    DFAReportingSitesGet (..),
+    newDFAReportingSitesGet,
+
+    -- ** dfareporting.sites.insert
+    DFAReportingSitesInsertResource,
+    DFAReportingSitesInsert (..),
+    newDFAReportingSitesInsert,
+
+    -- ** dfareporting.sites.list
+    DFAReportingSitesListResource,
+    DFAReportingSitesList (..),
+    newDFAReportingSitesList,
+
+    -- ** dfareporting.sites.patch
+    DFAReportingSitesPatchResource,
+    DFAReportingSitesPatch (..),
+    newDFAReportingSitesPatch,
+
+    -- ** dfareporting.sites.update
+    DFAReportingSitesUpdateResource,
+    DFAReportingSitesUpdate (..),
+    newDFAReportingSitesUpdate,
+
+    -- ** dfareporting.sizes.get
+    DFAReportingSizesGetResource,
+    DFAReportingSizesGet (..),
+    newDFAReportingSizesGet,
+
+    -- ** dfareporting.sizes.insert
+    DFAReportingSizesInsertResource,
+    DFAReportingSizesInsert (..),
+    newDFAReportingSizesInsert,
+
+    -- ** dfareporting.sizes.list
+    DFAReportingSizesListResource,
+    DFAReportingSizesList (..),
+    newDFAReportingSizesList,
+
+    -- ** dfareporting.subaccounts.get
+    DFAReportingSubaccountsGetResource,
+    DFAReportingSubaccountsGet (..),
+    newDFAReportingSubaccountsGet,
+
+    -- ** dfareporting.subaccounts.insert
+    DFAReportingSubaccountsInsertResource,
+    DFAReportingSubaccountsInsert (..),
+    newDFAReportingSubaccountsInsert,
+
+    -- ** dfareporting.subaccounts.list
+    DFAReportingSubaccountsListResource,
+    DFAReportingSubaccountsList (..),
+    newDFAReportingSubaccountsList,
+
+    -- ** dfareporting.subaccounts.patch
+    DFAReportingSubaccountsPatchResource,
+    DFAReportingSubaccountsPatch (..),
+    newDFAReportingSubaccountsPatch,
+
+    -- ** dfareporting.subaccounts.update
+    DFAReportingSubaccountsUpdateResource,
+    DFAReportingSubaccountsUpdate (..),
+    newDFAReportingSubaccountsUpdate,
+
+    -- ** dfareporting.targetableRemarketingLists.get
+    DFAReportingTargetableRemarketingListsGetResource,
+    DFAReportingTargetableRemarketingListsGet (..),
+    newDFAReportingTargetableRemarketingListsGet,
+
+    -- ** dfareporting.targetableRemarketingLists.list
+    DFAReportingTargetableRemarketingListsListResource,
+    DFAReportingTargetableRemarketingListsList (..),
+    newDFAReportingTargetableRemarketingListsList,
+
+    -- ** dfareporting.targetingTemplates.get
+    DFAReportingTargetingTemplatesGetResource,
+    DFAReportingTargetingTemplatesGet (..),
+    newDFAReportingTargetingTemplatesGet,
+
+    -- ** dfareporting.targetingTemplates.insert
+    DFAReportingTargetingTemplatesInsertResource,
+    DFAReportingTargetingTemplatesInsert (..),
+    newDFAReportingTargetingTemplatesInsert,
+
+    -- ** dfareporting.targetingTemplates.list
+    DFAReportingTargetingTemplatesListResource,
+    DFAReportingTargetingTemplatesList (..),
+    newDFAReportingTargetingTemplatesList,
+
+    -- ** dfareporting.targetingTemplates.patch
+    DFAReportingTargetingTemplatesPatchResource,
+    DFAReportingTargetingTemplatesPatch (..),
+    newDFAReportingTargetingTemplatesPatch,
+
+    -- ** dfareporting.targetingTemplates.update
+    DFAReportingTargetingTemplatesUpdateResource,
+    DFAReportingTargetingTemplatesUpdate (..),
+    newDFAReportingTargetingTemplatesUpdate,
+
+    -- ** dfareporting.tvCampaignDetails.get
+    DFAReportingTvCampaignDetailsGetResource,
+    DFAReportingTvCampaignDetailsGet (..),
+    newDFAReportingTvCampaignDetailsGet,
+
+    -- ** dfareporting.tvCampaignSummaries.list
+    DFAReportingTvCampaignSummariesListResource,
+    DFAReportingTvCampaignSummariesList (..),
+    newDFAReportingTvCampaignSummariesList,
+
+    -- ** dfareporting.userProfiles.get
+    DFAReportingUserProfilesGetResource,
+    DFAReportingUserProfilesGet (..),
+    newDFAReportingUserProfilesGet,
+
+    -- ** dfareporting.userProfiles.list
+    DFAReportingUserProfilesListResource,
+    DFAReportingUserProfilesList (..),
+    newDFAReportingUserProfilesList,
+
+    -- ** dfareporting.userRolePermissionGroups.get
+    DFAReportingUserRolePermissionGroupsGetResource,
+    DFAReportingUserRolePermissionGroupsGet (..),
+    newDFAReportingUserRolePermissionGroupsGet,
+
+    -- ** dfareporting.userRolePermissionGroups.list
+    DFAReportingUserRolePermissionGroupsListResource,
+    DFAReportingUserRolePermissionGroupsList (..),
+    newDFAReportingUserRolePermissionGroupsList,
+
+    -- ** dfareporting.userRolePermissions.get
+    DFAReportingUserRolePermissionsGetResource,
+    DFAReportingUserRolePermissionsGet (..),
+    newDFAReportingUserRolePermissionsGet,
+
+    -- ** dfareporting.userRolePermissions.list
+    DFAReportingUserRolePermissionsListResource,
+    DFAReportingUserRolePermissionsList (..),
+    newDFAReportingUserRolePermissionsList,
+
+    -- ** dfareporting.userRoles.delete
+    DFAReportingUserRolesDeleteResource,
+    DFAReportingUserRolesDelete (..),
+    newDFAReportingUserRolesDelete,
+
+    -- ** dfareporting.userRoles.get
+    DFAReportingUserRolesGetResource,
+    DFAReportingUserRolesGet (..),
+    newDFAReportingUserRolesGet,
+
+    -- ** dfareporting.userRoles.insert
+    DFAReportingUserRolesInsertResource,
+    DFAReportingUserRolesInsert (..),
+    newDFAReportingUserRolesInsert,
+
+    -- ** dfareporting.userRoles.list
+    DFAReportingUserRolesListResource,
+    DFAReportingUserRolesList (..),
+    newDFAReportingUserRolesList,
+
+    -- ** dfareporting.userRoles.patch
+    DFAReportingUserRolesPatchResource,
+    DFAReportingUserRolesPatch (..),
+    newDFAReportingUserRolesPatch,
+
+    -- ** dfareporting.userRoles.update
+    DFAReportingUserRolesUpdateResource,
+    DFAReportingUserRolesUpdate (..),
+    newDFAReportingUserRolesUpdate,
+
+    -- ** dfareporting.videoFormats.get
+    DFAReportingVideoFormatsGetResource,
+    DFAReportingVideoFormatsGet (..),
+    newDFAReportingVideoFormatsGet,
+
+    -- ** dfareporting.videoFormats.list
+    DFAReportingVideoFormatsListResource,
+    DFAReportingVideoFormatsList (..),
+    newDFAReportingVideoFormatsList,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** Account
+    Account (..),
+    newAccount,
+
+    -- ** Account_AccountProfile
+    Account_AccountProfile (..),
+
+    -- ** Account_ActiveAdsLimitTier
+    Account_ActiveAdsLimitTier (..),
+
+    -- ** AccountActiveAdSummary
+    AccountActiveAdSummary (..),
+    newAccountActiveAdSummary,
+
+    -- ** AccountActiveAdSummary_ActiveAdsLimitTier
+    AccountActiveAdSummary_ActiveAdsLimitTier (..),
+
+    -- ** AccountPermission
+    AccountPermission (..),
+    newAccountPermission,
+
+    -- ** AccountPermission_AccountProfilesItem
+    AccountPermission_AccountProfilesItem (..),
+
+    -- ** AccountPermission_Level
+    AccountPermission_Level (..),
+
+    -- ** AccountPermissionGroup
+    AccountPermissionGroup (..),
+    newAccountPermissionGroup,
+
+    -- ** AccountPermissionGroupsListResponse
+    AccountPermissionGroupsListResponse (..),
+    newAccountPermissionGroupsListResponse,
+
+    -- ** AccountPermissionsListResponse
+    AccountPermissionsListResponse (..),
+    newAccountPermissionsListResponse,
+
+    -- ** AccountUserProfile
+    AccountUserProfile (..),
+    newAccountUserProfile,
+
+    -- ** AccountUserProfile_TraffickerType
+    AccountUserProfile_TraffickerType (..),
+
+    -- ** AccountUserProfile_UserAccessType
+    AccountUserProfile_UserAccessType (..),
+
+    -- ** AccountUserProfilesListResponse
+    AccountUserProfilesListResponse (..),
+    newAccountUserProfilesListResponse,
+
+    -- ** AccountsListResponse
+    AccountsListResponse (..),
+    newAccountsListResponse,
+
+    -- ** Activities
+    Activities (..),
+    newActivities,
+
+    -- ** Ad
+    Ad (..),
+    newAd,
+
+    -- ** Ad_Compatibility
+    Ad_Compatibility (..),
+
+    -- ** Ad_Type
+    Ad_Type (..),
+
+    -- ** AdBlockingConfiguration
+    AdBlockingConfiguration (..),
+    newAdBlockingConfiguration,
+
+    -- ** AdSlot
+    AdSlot (..),
+    newAdSlot,
+
+    -- ** AdSlot_Compatibility
+    AdSlot_Compatibility (..),
+
+    -- ** AdSlot_PaymentSourceType
+    AdSlot_PaymentSourceType (..),
+
+    -- ** AdsListResponse
+    AdsListResponse (..),
+    newAdsListResponse,
+
+    -- ** Advertiser
+    Advertiser (..),
+    newAdvertiser,
+
+    -- ** Advertiser_Status
+    Advertiser_Status (..),
+
+    -- ** AdvertiserGroup
+    AdvertiserGroup (..),
+    newAdvertiserGroup,
+
+    -- ** AdvertiserGroupsListResponse
+    AdvertiserGroupsListResponse (..),
+    newAdvertiserGroupsListResponse,
+
+    -- ** AdvertiserInvoicesListResponse
+    AdvertiserInvoicesListResponse (..),
+    newAdvertiserInvoicesListResponse,
+
+    -- ** AdvertiserLandingPagesListResponse
+    AdvertiserLandingPagesListResponse (..),
+    newAdvertiserLandingPagesListResponse,
+
+    -- ** AdvertisersListResponse
+    AdvertisersListResponse (..),
+    newAdvertisersListResponse,
+
+    -- ** AudienceSegment
+    AudienceSegment (..),
+    newAudienceSegment,
+
+    -- ** AudienceSegmentGroup
+    AudienceSegmentGroup (..),
+    newAudienceSegmentGroup,
+
+    -- ** BillingAssignment
+    BillingAssignment (..),
+    newBillingAssignment,
+
+    -- ** BillingAssignmentsListResponse
+    BillingAssignmentsListResponse (..),
+    newBillingAssignmentsListResponse,
+
+    -- ** BillingProfile
+    BillingProfile (..),
+    newBillingProfile,
+
+    -- ** BillingProfile_InvoiceLevel
+    BillingProfile_InvoiceLevel (..),
+
+    -- ** BillingProfile_Status
+    BillingProfile_Status (..),
+
+    -- ** BillingProfilesListResponse
+    BillingProfilesListResponse (..),
+    newBillingProfilesListResponse,
+
+    -- ** BillingRate
+    BillingRate (..),
+    newBillingRate,
+
+    -- ** BillingRate_Type
+    BillingRate_Type (..),
+
+    -- ** BillingRate_UnitOfMeasure
+    BillingRate_UnitOfMeasure (..),
+
+    -- ** BillingRateTieredRate
+    BillingRateTieredRate (..),
+    newBillingRateTieredRate,
+
+    -- ** BillingRatesListResponse
+    BillingRatesListResponse (..),
+    newBillingRatesListResponse,
+
+    -- ** Browser
+    Browser (..),
+    newBrowser,
+
+    -- ** BrowsersListResponse
+    BrowsersListResponse (..),
+    newBrowsersListResponse,
+
+    -- ** Campaign
+    Campaign (..),
+    newCampaign,
+
+    -- ** CampaignCreativeAssociation
+    CampaignCreativeAssociation (..),
+    newCampaignCreativeAssociation,
+
+    -- ** CampaignCreativeAssociationsListResponse
+    CampaignCreativeAssociationsListResponse (..),
+    newCampaignCreativeAssociationsListResponse,
+
+    -- ** CampaignSummary
+    CampaignSummary (..),
+    newCampaignSummary,
+
+    -- ** CampaignsListResponse
+    CampaignsListResponse (..),
+    newCampaignsListResponse,
+
+    -- ** CartData
+    CartData (..),
+    newCartData,
+
+    -- ** CartDataItem
+    CartDataItem (..),
+    newCartDataItem,
+
+    -- ** ChangeLog
+    ChangeLog (..),
+    newChangeLog,
+
+    -- ** ChangeLogsListResponse
+    ChangeLogsListResponse (..),
+    newChangeLogsListResponse,
+
+    -- ** CitiesListResponse
+    CitiesListResponse (..),
+    newCitiesListResponse,
+
+    -- ** City
+    City (..),
+    newCity,
+
+    -- ** ClickTag
+    ClickTag (..),
+    newClickTag,
+
+    -- ** ClickThroughUrl
+    ClickThroughUrl (..),
+    newClickThroughUrl,
+
+    -- ** ClickThroughUrlSuffixProperties
+    ClickThroughUrlSuffixProperties (..),
+    newClickThroughUrlSuffixProperties,
+
+    -- ** CompanionClickThroughOverride
+    CompanionClickThroughOverride (..),
+    newCompanionClickThroughOverride,
+
+    -- ** CompanionSetting
+    CompanionSetting (..),
+    newCompanionSetting,
+
+    -- ** CompatibleFields
+    CompatibleFields (..),
+    newCompatibleFields,
+
+    -- ** ConnectionType
+    ConnectionType (..),
+    newConnectionType,
+
+    -- ** ConnectionTypesListResponse
+    ConnectionTypesListResponse (..),
+    newConnectionTypesListResponse,
+
+    -- ** ContentCategoriesListResponse
+    ContentCategoriesListResponse (..),
+    newContentCategoriesListResponse,
+
+    -- ** ContentCategory
+    ContentCategory (..),
+    newContentCategory,
+
+    -- ** Conversion
+    Conversion (..),
+    newConversion,
+
+    -- ** Conversion_AdUserDataConsent
+    Conversion_AdUserDataConsent (..),
+
+    -- ** ConversionError
+    ConversionError (..),
+    newConversionError,
+
+    -- ** ConversionError_Code
+    ConversionError_Code (..),
+
+    -- ** ConversionStatus
+    ConversionStatus (..),
+    newConversionStatus,
+
+    -- ** ConversionsBatchInsertRequest
+    ConversionsBatchInsertRequest (..),
+    newConversionsBatchInsertRequest,
+
+    -- ** ConversionsBatchInsertResponse
+    ConversionsBatchInsertResponse (..),
+    newConversionsBatchInsertResponse,
+
+    -- ** ConversionsBatchUpdateRequest
+    ConversionsBatchUpdateRequest (..),
+    newConversionsBatchUpdateRequest,
+
+    -- ** ConversionsBatchUpdateResponse
+    ConversionsBatchUpdateResponse (..),
+    newConversionsBatchUpdateResponse,
+
+    -- ** CountriesListResponse
+    CountriesListResponse (..),
+    newCountriesListResponse,
+
+    -- ** Country
+    Country (..),
+    newCountry,
+
+    -- ** Creative
+    Creative (..),
+    newCreative,
+
+    -- ** Creative_ArtworkType
+    Creative_ArtworkType (..),
+
+    -- ** Creative_AuthoringSource
+    Creative_AuthoringSource (..),
+
+    -- ** Creative_AuthoringTool
+    Creative_AuthoringTool (..),
+
+    -- ** Creative_BackupImageFeaturesItem
+    Creative_BackupImageFeaturesItem (..),
+
+    -- ** Creative_CompatibilityItem
+    Creative_CompatibilityItem (..),
+
+    -- ** Creative_Type
+    Creative_Type (..),
+
+    -- ** CreativeAsset
+    CreativeAsset (..),
+    newCreativeAsset,
+
+    -- ** CreativeAsset_Alignment
+    CreativeAsset_Alignment (..),
+
+    -- ** CreativeAsset_ArtworkType
+    CreativeAsset_ArtworkType (..),
+
+    -- ** CreativeAsset_ChildAssetType
+    CreativeAsset_ChildAssetType (..),
+
+    -- ** CreativeAsset_DetectedFeaturesItem
+    CreativeAsset_DetectedFeaturesItem (..),
+
+    -- ** CreativeAsset_DisplayType
+    CreativeAsset_DisplayType (..),
+
+    -- ** CreativeAsset_DurationType
+    CreativeAsset_DurationType (..),
+
+    -- ** CreativeAsset_Orientation
+    CreativeAsset_Orientation (..),
+
+    -- ** CreativeAsset_PositionLeftUnit
+    CreativeAsset_PositionLeftUnit (..),
+
+    -- ** CreativeAsset_PositionTopUnit
+    CreativeAsset_PositionTopUnit (..),
+
+    -- ** CreativeAsset_Role
+    CreativeAsset_Role (..),
+
+    -- ** CreativeAsset_StartTimeType
+    CreativeAsset_StartTimeType (..),
+
+    -- ** CreativeAsset_WindowMode
+    CreativeAsset_WindowMode (..),
+
+    -- ** CreativeAssetId
+    CreativeAssetId (..),
+    newCreativeAssetId,
+
+    -- ** CreativeAssetId_Type
+    CreativeAssetId_Type (..),
+
+    -- ** CreativeAssetMetadata
+    CreativeAssetMetadata (..),
+    newCreativeAssetMetadata,
+
+    -- ** CreativeAssetMetadata_DetectedFeaturesItem
+    CreativeAssetMetadata_DetectedFeaturesItem (..),
+
+    -- ** CreativeAssetMetadata_WarnedValidationRulesItem
+    CreativeAssetMetadata_WarnedValidationRulesItem (..),
+
+    -- ** CreativeAssetSelection
+    CreativeAssetSelection (..),
+    newCreativeAssetSelection,
+
+    -- ** CreativeAssignment
+    CreativeAssignment (..),
+    newCreativeAssignment,
+
+    -- ** CreativeClickThroughUrl
+    CreativeClickThroughUrl (..),
+    newCreativeClickThroughUrl,
+
+    -- ** CreativeCustomEvent
+    CreativeCustomEvent (..),
+    newCreativeCustomEvent,
+
+    -- ** CreativeCustomEvent_AdvertiserCustomEventType
+    CreativeCustomEvent_AdvertiserCustomEventType (..),
+
+    -- ** CreativeCustomEvent_ArtworkType
+    CreativeCustomEvent_ArtworkType (..),
+
+    -- ** CreativeCustomEvent_TargetType
+    CreativeCustomEvent_TargetType (..),
+
+    -- ** CreativeField
+    CreativeField (..),
+    newCreativeField,
+
+    -- ** CreativeFieldAssignment
+    CreativeFieldAssignment (..),
+    newCreativeFieldAssignment,
+
+    -- ** CreativeFieldValue
+    CreativeFieldValue (..),
+    newCreativeFieldValue,
+
+    -- ** CreativeFieldValuesListResponse
+    CreativeFieldValuesListResponse (..),
+    newCreativeFieldValuesListResponse,
+
+    -- ** CreativeFieldsListResponse
+    CreativeFieldsListResponse (..),
+    newCreativeFieldsListResponse,
+
+    -- ** CreativeGroup
+    CreativeGroup (..),
+    newCreativeGroup,
+
+    -- ** CreativeGroupAssignment
+    CreativeGroupAssignment (..),
+    newCreativeGroupAssignment,
+
+    -- ** CreativeGroupAssignment_CreativeGroupNumber
+    CreativeGroupAssignment_CreativeGroupNumber (..),
+
+    -- ** CreativeGroupsListResponse
+    CreativeGroupsListResponse (..),
+    newCreativeGroupsListResponse,
+
+    -- ** CreativeOptimizationConfiguration
+    CreativeOptimizationConfiguration (..),
+    newCreativeOptimizationConfiguration,
+
+    -- ** CreativeOptimizationConfiguration_OptimizationModel
+    CreativeOptimizationConfiguration_OptimizationModel (..),
+
+    -- ** CreativeRotation
+    CreativeRotation (..),
+    newCreativeRotation,
+
+    -- ** CreativeRotation_Type
+    CreativeRotation_Type (..),
+
+    -- ** CreativeRotation_WeightCalculationStrategy
+    CreativeRotation_WeightCalculationStrategy (..),
+
+    -- ** CreativesListResponse
+    CreativesListResponse (..),
+    newCreativesListResponse,
+
+    -- ** CrossDimensionReachReportCompatibleFields
+    CrossDimensionReachReportCompatibleFields (..),
+    newCrossDimensionReachReportCompatibleFields,
+
+    -- ** CrossMediaReachReportCompatibleFields
+    CrossMediaReachReportCompatibleFields (..),
+    newCrossMediaReachReportCompatibleFields,
+
+    -- ** CustomFloodlightVariable
+    CustomFloodlightVariable (..),
+    newCustomFloodlightVariable,
+
+    -- ** CustomFloodlightVariable_Type
+    CustomFloodlightVariable_Type (..),
+
+    -- ** CustomRichMediaEvents
+    CustomRichMediaEvents (..),
+    newCustomRichMediaEvents,
+
+    -- ** CustomViewabilityMetric
+    CustomViewabilityMetric (..),
+    newCustomViewabilityMetric,
+
+    -- ** CustomViewabilityMetricConfiguration
+    CustomViewabilityMetricConfiguration (..),
+    newCustomViewabilityMetricConfiguration,
+
+    -- ** DateRange
+    DateRange (..),
+    newDateRange,
+
+    -- ** DateRange_RelativeDateRange
+    DateRange_RelativeDateRange (..),
+
+    -- ** DayPartTargeting
+    DayPartTargeting (..),
+    newDayPartTargeting,
+
+    -- ** DayPartTargeting_DaysOfWeekItem
+    DayPartTargeting_DaysOfWeekItem (..),
+
+    -- ** DeepLink
+    DeepLink (..),
+    newDeepLink,
+
+    -- ** DefaultClickThroughEventTagProperties
+    DefaultClickThroughEventTagProperties (..),
+    newDefaultClickThroughEventTagProperties,
+
+    -- ** DeliverySchedule
+    DeliverySchedule (..),
+    newDeliverySchedule,
+
+    -- ** DeliverySchedule_Priority
+    DeliverySchedule_Priority (..),
+
+    -- ** DfpSettings
+    DfpSettings (..),
+    newDfpSettings,
+
+    -- ** Dimension
+    Dimension (..),
+    newDimension,
+
+    -- ** DimensionFilter
+    DimensionFilter (..),
+    newDimensionFilter,
+
+    -- ** DimensionValue
+    DimensionValue (..),
+    newDimensionValue,
+
+    -- ** DimensionValue_MatchType
+    DimensionValue_MatchType (..),
+
+    -- ** DimensionValueList
+    DimensionValueList (..),
+    newDimensionValueList,
+
+    -- ** DimensionValueRequest
+    DimensionValueRequest (..),
+    newDimensionValueRequest,
+
+    -- ** DirectorySite
+    DirectorySite (..),
+    newDirectorySite,
+
+    -- ** DirectorySite_InpageTagFormatsItem
+    DirectorySite_InpageTagFormatsItem (..),
+
+    -- ** DirectorySite_InterstitialTagFormatsItem
+    DirectorySite_InterstitialTagFormatsItem (..),
+
+    -- ** DirectorySiteSettings
+    DirectorySiteSettings (..),
+    newDirectorySiteSettings,
+
+    -- ** DirectorySitesListResponse
+    DirectorySitesListResponse (..),
+    newDirectorySitesListResponse,
+
+    -- ** DynamicTargetingKey
+    DynamicTargetingKey (..),
+    newDynamicTargetingKey,
+
+    -- ** DynamicTargetingKey_ObjectType
+    DynamicTargetingKey_ObjectType (..),
+
+    -- ** DynamicTargetingKeysListResponse
+    DynamicTargetingKeysListResponse (..),
+    newDynamicTargetingKeysListResponse,
+
+    -- ** EncryptionInfo
+    EncryptionInfo (..),
+    newEncryptionInfo,
+
+    -- ** EncryptionInfo_EncryptionEntityType
+    EncryptionInfo_EncryptionEntityType (..),
+
+    -- ** EncryptionInfo_EncryptionSource
+    EncryptionInfo_EncryptionSource (..),
+
+    -- ** EventTag
+    EventTag (..),
+    newEventTag,
+
+    -- ** EventTag_SiteFilterType
+    EventTag_SiteFilterType (..),
+
+    -- ** EventTag_Status
+    EventTag_Status (..),
+
+    -- ** EventTag_Type
+    EventTag_Type (..),
+
+    -- ** EventTagOverride
+    EventTagOverride (..),
+    newEventTagOverride,
+
+    -- ** EventTagsListResponse
+    EventTagsListResponse (..),
+    newEventTagsListResponse,
+
+    -- ** File
+    File (..),
+    newFile,
+
+    -- ** File_Format
+    File_Format (..),
+
+    -- ** File_Status
+    File_Status (..),
+
+    -- ** File_Urls
+    File_Urls (..),
+    newFile_Urls,
+
+    -- ** FileList
+    FileList (..),
+    newFileList,
+
+    -- ** Flight
+    Flight (..),
+    newFlight,
+
+    -- ** FloodlightActivitiesGenerateTagResponse
+    FloodlightActivitiesGenerateTagResponse (..),
+    newFloodlightActivitiesGenerateTagResponse,
+
+    -- ** FloodlightActivitiesListResponse
+    FloodlightActivitiesListResponse (..),
+    newFloodlightActivitiesListResponse,
+
+    -- ** FloodlightActivity
+    FloodlightActivity (..),
+    newFloodlightActivity,
+
+    -- ** FloodlightActivity_CacheBustingType
+    FloodlightActivity_CacheBustingType (..),
+
+    -- ** FloodlightActivity_CountingMethod
+    FloodlightActivity_CountingMethod (..),
+
+    -- ** FloodlightActivity_FloodlightActivityGroupType
+    FloodlightActivity_FloodlightActivityGroupType (..),
+
+    -- ** FloodlightActivity_FloodlightTagType
+    FloodlightActivity_FloodlightTagType (..),
+
+    -- ** FloodlightActivity_Status
+    FloodlightActivity_Status (..),
+
+    -- ** FloodlightActivity_TagFormat
+    FloodlightActivity_TagFormat (..),
+
+    -- ** FloodlightActivity_UserDefinedVariableTypesItem
+    FloodlightActivity_UserDefinedVariableTypesItem (..),
+
+    -- ** FloodlightActivityDynamicTag
+    FloodlightActivityDynamicTag (..),
+    newFloodlightActivityDynamicTag,
+
+    -- ** FloodlightActivityGroup
+    FloodlightActivityGroup (..),
+    newFloodlightActivityGroup,
+
+    -- ** FloodlightActivityGroup_Type
+    FloodlightActivityGroup_Type (..),
+
+    -- ** FloodlightActivityGroupsListResponse
+    FloodlightActivityGroupsListResponse (..),
+    newFloodlightActivityGroupsListResponse,
+
+    -- ** FloodlightActivityPublisherDynamicTag
+    FloodlightActivityPublisherDynamicTag (..),
+    newFloodlightActivityPublisherDynamicTag,
+
+    -- ** FloodlightConfiguration
+    FloodlightConfiguration (..),
+    newFloodlightConfiguration,
+
+    -- ** FloodlightConfiguration_FirstDayOfWeek
+    FloodlightConfiguration_FirstDayOfWeek (..),
+
+    -- ** FloodlightConfiguration_NaturalSearchConversionAttributionOption
+    FloodlightConfiguration_NaturalSearchConversionAttributionOption (..),
+
+    -- ** FloodlightConfigurationsListResponse
+    FloodlightConfigurationsListResponse (..),
+    newFloodlightConfigurationsListResponse,
+
+    -- ** FloodlightReportCompatibleFields
+    FloodlightReportCompatibleFields (..),
+    newFloodlightReportCompatibleFields,
+
+    -- ** FrequencyCap
+    FrequencyCap (..),
+    newFrequencyCap,
+
+    -- ** FsCommand
+    FsCommand (..),
+    newFsCommand,
+
+    -- ** FsCommand_PositionOption
+    FsCommand_PositionOption (..),
+
+    -- ** GeoTargeting
+    GeoTargeting (..),
+    newGeoTargeting,
+
+    -- ** InventoryItem
+    InventoryItem (..),
+    newInventoryItem,
+
+    -- ** InventoryItem_Type
+    InventoryItem_Type (..),
+
+    -- ** InventoryItemsListResponse
+    InventoryItemsListResponse (..),
+    newInventoryItemsListResponse,
+
+    -- ** Invoice
+    Invoice (..),
+    newInvoice,
+
+    -- ** Invoice_InvoiceType
+    Invoice_InvoiceType (..),
+
+    -- ** KeyValueTargetingExpression
+    KeyValueTargetingExpression (..),
+    newKeyValueTargetingExpression,
+
+    -- ** LandingPage
+    LandingPage (..),
+    newLandingPage,
+
+    -- ** Language
+    Language (..),
+    newLanguage,
+
+    -- ** LanguageTargeting
+    LanguageTargeting (..),
+    newLanguageTargeting,
+
+    -- ** LanguagesListResponse
+    LanguagesListResponse (..),
+    newLanguagesListResponse,
+
+    -- ** LastModifiedInfo
+    LastModifiedInfo (..),
+    newLastModifiedInfo,
+
+    -- ** ListPopulationClause
+    ListPopulationClause (..),
+    newListPopulationClause,
+
+    -- ** ListPopulationRule
+    ListPopulationRule (..),
+    newListPopulationRule,
+
+    -- ** ListPopulationTerm
+    ListPopulationTerm (..),
+    newListPopulationTerm,
+
+    -- ** ListPopulationTerm_Operator
+    ListPopulationTerm_Operator (..),
+
+    -- ** ListPopulationTerm_Type
+    ListPopulationTerm_Type (..),
+
+    -- ** ListTargetingExpression
+    ListTargetingExpression (..),
+    newListTargetingExpression,
+
+    -- ** LookbackConfiguration
+    LookbackConfiguration (..),
+    newLookbackConfiguration,
+
+    -- ** MeasurementPartnerAdvertiserLink
+    MeasurementPartnerAdvertiserLink (..),
+    newMeasurementPartnerAdvertiserLink,
+
+    -- ** MeasurementPartnerAdvertiserLink_LinkStatus
+    MeasurementPartnerAdvertiserLink_LinkStatus (..),
+
+    -- ** MeasurementPartnerAdvertiserLink_MeasurementPartner
+    MeasurementPartnerAdvertiserLink_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerCampaignLink
+    MeasurementPartnerCampaignLink (..),
+    newMeasurementPartnerCampaignLink,
+
+    -- ** MeasurementPartnerCampaignLink_LinkStatus
+    MeasurementPartnerCampaignLink_LinkStatus (..),
+
+    -- ** MeasurementPartnerCampaignLink_MeasurementPartner
+    MeasurementPartnerCampaignLink_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerWrappingData
+    MeasurementPartnerWrappingData (..),
+    newMeasurementPartnerWrappingData,
+
+    -- ** MeasurementPartnerWrappingData_LinkStatus
+    MeasurementPartnerWrappingData_LinkStatus (..),
+
+    -- ** MeasurementPartnerWrappingData_MeasurementPartner
+    MeasurementPartnerWrappingData_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerWrappingData_TagWrappingMode
+    MeasurementPartnerWrappingData_TagWrappingMode (..),
+
+    -- ** Metric
+    Metric (..),
+    newMetric,
+
+    -- ** Metro
+    Metro (..),
+    newMetro,
+
+    -- ** MetrosListResponse
+    MetrosListResponse (..),
+    newMetrosListResponse,
+
+    -- ** MobileApp
+    MobileApp (..),
+    newMobileApp,
+
+    -- ** MobileApp_Directory
+    MobileApp_Directory (..),
+
+    -- ** MobileAppsListResponse
+    MobileAppsListResponse (..),
+    newMobileAppsListResponse,
+
+    -- ** MobileCarrier
+    MobileCarrier (..),
+    newMobileCarrier,
+
+    -- ** MobileCarriersListResponse
+    MobileCarriersListResponse (..),
+    newMobileCarriersListResponse,
+
+    -- ** ObaIcon
+    ObaIcon (..),
+    newObaIcon,
+
+    -- ** ObjectFilter
+    ObjectFilter (..),
+    newObjectFilter,
+
+    -- ** ObjectFilter_Status
+    ObjectFilter_Status (..),
+
+    -- ** OfflineUserAddressInfo
+    OfflineUserAddressInfo (..),
+    newOfflineUserAddressInfo,
+
+    -- ** OffsetPosition
+    OffsetPosition (..),
+    newOffsetPosition,
+
+    -- ** OmnitureSettings
+    OmnitureSettings (..),
+    newOmnitureSettings,
+
+    -- ** OperatingSystem
+    OperatingSystem (..),
+    newOperatingSystem,
+
+    -- ** OperatingSystemVersion
+    OperatingSystemVersion (..),
+    newOperatingSystemVersion,
+
+    -- ** OperatingSystemVersionsListResponse
+    OperatingSystemVersionsListResponse (..),
+    newOperatingSystemVersionsListResponse,
+
+    -- ** OperatingSystemsListResponse
+    OperatingSystemsListResponse (..),
+    newOperatingSystemsListResponse,
+
+    -- ** OptimizationActivity
+    OptimizationActivity (..),
+    newOptimizationActivity,
+
+    -- ** Order
+    Order (..),
+    newOrder,
+
+    -- ** OrderContact
+    OrderContact (..),
+    newOrderContact,
+
+    -- ** OrderContact_ContactType
+    OrderContact_ContactType (..),
+
+    -- ** OrdersListResponse
+    OrdersListResponse (..),
+    newOrdersListResponse,
+
+    -- ** PathToConversionReportCompatibleFields
+    PathToConversionReportCompatibleFields (..),
+    newPathToConversionReportCompatibleFields,
+
+    -- ** Placement
+    Placement (..),
+    newPlacement,
+
+    -- ** Placement_ActiveStatus
+    Placement_ActiveStatus (..),
+
+    -- ** Placement_Compatibility
+    Placement_Compatibility (..),
+
+    -- ** Placement_PaymentSource
+    Placement_PaymentSource (..),
+
+    -- ** Placement_Status
+    Placement_Status (..),
+
+    -- ** Placement_TagFormatsItem
+    Placement_TagFormatsItem (..),
+
+    -- ** Placement_VpaidAdapterChoice
+    Placement_VpaidAdapterChoice (..),
+
+    -- ** PlacementAssignment
+    PlacementAssignment (..),
+    newPlacementAssignment,
+
+    -- ** PlacementConversionDomainOverride
+    PlacementConversionDomainOverride (..),
+    newPlacementConversionDomainOverride,
+
+    -- ** PlacementGroup
+    PlacementGroup (..),
+    newPlacementGroup,
+
+    -- ** PlacementGroup_ActiveStatus
+    PlacementGroup_ActiveStatus (..),
+
+    -- ** PlacementGroup_PlacementGroupType
+    PlacementGroup_PlacementGroupType (..),
+
+    -- ** PlacementGroupsListResponse
+    PlacementGroupsListResponse (..),
+    newPlacementGroupsListResponse,
+
+    -- ** PlacementSingleConversionDomain
+    PlacementSingleConversionDomain (..),
+    newPlacementSingleConversionDomain,
+
+    -- ** PlacementStrategiesListResponse
+    PlacementStrategiesListResponse (..),
+    newPlacementStrategiesListResponse,
+
+    -- ** PlacementStrategy
+    PlacementStrategy (..),
+    newPlacementStrategy,
+
+    -- ** PlacementTag
+    PlacementTag (..),
+    newPlacementTag,
+
+    -- ** PlacementsGenerateTagsResponse
+    PlacementsGenerateTagsResponse (..),
+    newPlacementsGenerateTagsResponse,
+
+    -- ** PlacementsListResponse
+    PlacementsListResponse (..),
+    newPlacementsListResponse,
+
+    -- ** PlatformType
+    PlatformType (..),
+    newPlatformType,
+
+    -- ** PlatformTypesListResponse
+    PlatformTypesListResponse (..),
+    newPlatformTypesListResponse,
+
+    -- ** PopupWindowProperties
+    PopupWindowProperties (..),
+    newPopupWindowProperties,
+
+    -- ** PopupWindowProperties_PositionType
+    PopupWindowProperties_PositionType (..),
+
+    -- ** PostalCode
+    PostalCode (..),
+    newPostalCode,
+
+    -- ** PostalCodesListResponse
+    PostalCodesListResponse (..),
+    newPostalCodesListResponse,
+
+    -- ** Pricing
+    Pricing (..),
+    newPricing,
+
+    -- ** Pricing_CapCostType
+    Pricing_CapCostType (..),
+
+    -- ** Pricing_GroupType
+    Pricing_GroupType (..),
+
+    -- ** Pricing_PricingType
+    Pricing_PricingType (..),
+
+    -- ** PricingSchedule
+    PricingSchedule (..),
+    newPricingSchedule,
+
+    -- ** PricingSchedule_CapCostOption
+    PricingSchedule_CapCostOption (..),
+
+    -- ** PricingSchedule_PricingType
+    PricingSchedule_PricingType (..),
+
+    -- ** PricingSchedulePricingPeriod
+    PricingSchedulePricingPeriod (..),
+    newPricingSchedulePricingPeriod,
+
+    -- ** Project
+    Project (..),
+    newProject,
+
+    -- ** Project_AudienceAgeGroup
+    Project_AudienceAgeGroup (..),
+
+    -- ** Project_AudienceGender
+    Project_AudienceGender (..),
+
+    -- ** ProjectsListResponse
+    ProjectsListResponse (..),
+    newProjectsListResponse,
+
+    -- ** ReachReportCompatibleFields
+    ReachReportCompatibleFields (..),
+    newReachReportCompatibleFields,
+
+    -- ** Recipient
+    Recipient (..),
+    newRecipient,
+
+    -- ** Recipient_DeliveryType
+    Recipient_DeliveryType (..),
+
+    -- ** Region
+    Region (..),
+    newRegion,
+
+    -- ** RegionsListResponse
+    RegionsListResponse (..),
+    newRegionsListResponse,
+
+    -- ** RemarketingList
+    RemarketingList (..),
+    newRemarketingList,
+
+    -- ** RemarketingList_ListSource
+    RemarketingList_ListSource (..),
+
+    -- ** RemarketingListShare
+    RemarketingListShare (..),
+    newRemarketingListShare,
+
+    -- ** RemarketingListsListResponse
+    RemarketingListsListResponse (..),
+    newRemarketingListsListResponse,
+
+    -- ** Report
+    Report (..),
+    newReport,
+
+    -- ** Report_Criteria
+    Report_Criteria (..),
+    newReport_Criteria,
+
+    -- ** Report_CrossDimensionReachCriteria
+    Report_CrossDimensionReachCriteria (..),
+    newReport_CrossDimensionReachCriteria,
+
+    -- ** Report_CrossDimensionReachCriteria_Dimension
+    Report_CrossDimensionReachCriteria_Dimension (..),
+
+    -- ** Report_CrossMediaReachCriteria
+    Report_CrossMediaReachCriteria (..),
+    newReport_CrossMediaReachCriteria,
+
+    -- ** Report_Delivery
+    Report_Delivery (..),
+    newReport_Delivery,
+
+    -- ** Report_Delivery_EmailOwnerDeliveryType
+    Report_Delivery_EmailOwnerDeliveryType (..),
+
+    -- ** Report_FloodlightCriteria
+    Report_FloodlightCriteria (..),
+    newReport_FloodlightCriteria,
+
+    -- ** Report_FloodlightCriteria_ReportProperties
+    Report_FloodlightCriteria_ReportProperties (..),
+    newReport_FloodlightCriteria_ReportProperties,
+
+    -- ** Report_Format
+    Report_Format (..),
+
+    -- ** Report_PathToConversionCriteria
+    Report_PathToConversionCriteria (..),
+    newReport_PathToConversionCriteria,
+
+    -- ** Report_PathToConversionCriteria_ReportProperties
+    Report_PathToConversionCriteria_ReportProperties (..),
+    newReport_PathToConversionCriteria_ReportProperties,
+
+    -- ** Report_ReachCriteria
+    Report_ReachCriteria (..),
+    newReport_ReachCriteria,
+
+    -- ** Report_Schedule
+    Report_Schedule (..),
+    newReport_Schedule,
+
+    -- ** Report_Schedule_RepeatsOnWeekDaysItem
+    Report_Schedule_RepeatsOnWeekDaysItem (..),
+
+    -- ** Report_Schedule_RunsOnDayOfMonth
+    Report_Schedule_RunsOnDayOfMonth (..),
+
+    -- ** Report_Type
+    Report_Type (..),
+
+    -- ** ReportCompatibleFields
+    ReportCompatibleFields (..),
+    newReportCompatibleFields,
+
+    -- ** ReportList
+    ReportList (..),
+    newReportList,
+
+    -- ** ReportsConfiguration
+    ReportsConfiguration (..),
+    newReportsConfiguration,
+
+    -- ** RichMediaExitOverride
+    RichMediaExitOverride (..),
+    newRichMediaExitOverride,
+
+    -- ** Rule
+    Rule (..),
+    newRule,
+
+    -- ** Site
+    Site (..),
+    newSite,
+
+    -- ** SiteCompanionSetting
+    SiteCompanionSetting (..),
+    newSiteCompanionSetting,
+
+    -- ** SiteContact
+    SiteContact (..),
+    newSiteContact,
+
+    -- ** SiteContact_ContactType
+    SiteContact_ContactType (..),
+
+    -- ** SiteSettings
+    SiteSettings (..),
+    newSiteSettings,
+
+    -- ** SiteSettings_VpaidAdapterChoiceTemplate
+    SiteSettings_VpaidAdapterChoiceTemplate (..),
+
+    -- ** SiteSkippableSetting
+    SiteSkippableSetting (..),
+    newSiteSkippableSetting,
+
+    -- ** SiteTranscodeSetting
+    SiteTranscodeSetting (..),
+    newSiteTranscodeSetting,
+
+    -- ** SiteVideoSettings
+    SiteVideoSettings (..),
+    newSiteVideoSettings,
+
+    -- ** SiteVideoSettings_Orientation
+    SiteVideoSettings_Orientation (..),
+
+    -- ** SitesListResponse
+    SitesListResponse (..),
+    newSitesListResponse,
+
+    -- ** Size
+    Size (..),
+    newSize,
+
+    -- ** SizesListResponse
+    SizesListResponse (..),
+    newSizesListResponse,
+
+    -- ** SkippableSetting
+    SkippableSetting (..),
+    newSkippableSetting,
+
+    -- ** SortedDimension
+    SortedDimension (..),
+    newSortedDimension,
+
+    -- ** SortedDimension_SortOrder
+    SortedDimension_SortOrder (..),
+
+    -- ** Subaccount
+    Subaccount (..),
+    newSubaccount,
+
+    -- ** SubaccountsListResponse
+    SubaccountsListResponse (..),
+    newSubaccountsListResponse,
+
+    -- ** TagData
+    TagData (..),
+    newTagData,
+
+    -- ** TagData_Format
+    TagData_Format (..),
+
+    -- ** TagSetting
+    TagSetting (..),
+    newTagSetting,
+
+    -- ** TagSetting_KeywordOption
+    TagSetting_KeywordOption (..),
+
+    -- ** TagSettings
+    TagSettings (..),
+    newTagSettings,
+
+    -- ** TargetWindow
+    TargetWindow (..),
+    newTargetWindow,
+
+    -- ** TargetWindow_TargetWindowOption
+    TargetWindow_TargetWindowOption (..),
+
+    -- ** TargetableRemarketingList
+    TargetableRemarketingList (..),
+    newTargetableRemarketingList,
+
+    -- ** TargetableRemarketingList_ListSource
+    TargetableRemarketingList_ListSource (..),
+
+    -- ** TargetableRemarketingListsListResponse
+    TargetableRemarketingListsListResponse (..),
+    newTargetableRemarketingListsListResponse,
+
+    -- ** TargetingTemplate
+    TargetingTemplate (..),
+    newTargetingTemplate,
+
+    -- ** TargetingTemplatesListResponse
+    TargetingTemplatesListResponse (..),
+    newTargetingTemplatesListResponse,
+
+    -- ** TechnologyTargeting
+    TechnologyTargeting (..),
+    newTechnologyTargeting,
+
+    -- ** ThirdPartyAuthenticationToken
+    ThirdPartyAuthenticationToken (..),
+    newThirdPartyAuthenticationToken,
+
+    -- ** ThirdPartyTrackingUrl
+    ThirdPartyTrackingUrl (..),
+    newThirdPartyTrackingUrl,
+
+    -- ** ThirdPartyTrackingUrl_ThirdPartyUrlType
+    ThirdPartyTrackingUrl_ThirdPartyUrlType (..),
+
+    -- ** TranscodeSetting
+    TranscodeSetting (..),
+    newTranscodeSetting,
+
+    -- ** TvCampaignDetail
+    TvCampaignDetail (..),
+    newTvCampaignDetail,
+
+    -- ** TvCampaignSummariesListResponse
+    TvCampaignSummariesListResponse (..),
+    newTvCampaignSummariesListResponse,
+
+    -- ** TvCampaignSummary
+    TvCampaignSummary (..),
+    newTvCampaignSummary,
+
+    -- ** TvCampaignSummary_Type
+    TvCampaignSummary_Type (..),
+
+    -- ** TvCampaignTimepoint
+    TvCampaignTimepoint (..),
+    newTvCampaignTimepoint,
+
+    -- ** TvCampaignTimepoint_DateWindow
+    TvCampaignTimepoint_DateWindow (..),
+
+    -- ** UniversalAdId
+    UniversalAdId (..),
+    newUniversalAdId,
+
+    -- ** UniversalAdId_Registry
+    UniversalAdId_Registry (..),
+
+    -- ** UserDefinedVariableConfiguration
+    UserDefinedVariableConfiguration (..),
+    newUserDefinedVariableConfiguration,
+
+    -- ** UserDefinedVariableConfiguration_DataType
+    UserDefinedVariableConfiguration_DataType (..),
+
+    -- ** UserDefinedVariableConfiguration_VariableType
+    UserDefinedVariableConfiguration_VariableType (..),
+
+    -- ** UserIdentifier
+    UserIdentifier (..),
+    newUserIdentifier,
+
+    -- ** UserProfile
+    UserProfile (..),
+    newUserProfile,
+
+    -- ** UserProfileList
+    UserProfileList (..),
+    newUserProfileList,
+
+    -- ** UserRole
+    UserRole (..),
+    newUserRole,
+
+    -- ** UserRolePermission
+    UserRolePermission (..),
+    newUserRolePermission,
+
+    -- ** UserRolePermission_Availability
+    UserRolePermission_Availability (..),
+
+    -- ** UserRolePermissionGroup
+    UserRolePermissionGroup (..),
+    newUserRolePermissionGroup,
+
+    -- ** UserRolePermissionGroupsListResponse
+    UserRolePermissionGroupsListResponse (..),
+    newUserRolePermissionGroupsListResponse,
+
+    -- ** UserRolePermissionsListResponse
+    UserRolePermissionsListResponse (..),
+    newUserRolePermissionsListResponse,
+
+    -- ** UserRolesListResponse
+    UserRolesListResponse (..),
+    newUserRolesListResponse,
+
+    -- ** VideoFormat
+    VideoFormat (..),
+    newVideoFormat,
+
+    -- ** VideoFormat_FileType
+    VideoFormat_FileType (..),
+
+    -- ** VideoFormatsListResponse
+    VideoFormatsListResponse (..),
+    newVideoFormatsListResponse,
+
+    -- ** VideoOffset
+    VideoOffset (..),
+    newVideoOffset,
+
+    -- ** VideoSettings
+    VideoSettings (..),
+    newVideoSettings,
+
+    -- ** VideoSettings_Orientation
+    VideoSettings_Orientation (..),
+
+    -- ** AccountUserProfilesListSortField
+    AccountUserProfilesListSortField (..),
+
+    -- ** AccountUserProfilesListSortOrder
+    AccountUserProfilesListSortOrder (..),
+
+    -- ** AccountsListSortField
+    AccountsListSortField (..),
+
+    -- ** AccountsListSortOrder
+    AccountsListSortOrder (..),
+
+    -- ** AdsListCompatibility
+    AdsListCompatibility (..),
+
+    -- ** AdsListSortField
+    AdsListSortField (..),
+
+    -- ** AdsListSortOrder
+    AdsListSortOrder (..),
+
+    -- ** AdsListType
+    AdsListType (..),
+
+    -- ** AdvertiserGroupsListSortField
+    AdvertiserGroupsListSortField (..),
+
+    -- ** AdvertiserGroupsListSortOrder
+    AdvertiserGroupsListSortOrder (..),
+
+    -- ** AdvertiserLandingPagesListSortField
+    AdvertiserLandingPagesListSortField (..),
+
+    -- ** AdvertiserLandingPagesListSortOrder
+    AdvertiserLandingPagesListSortOrder (..),
+
+    -- ** AdvertisersListSortField
+    AdvertisersListSortField (..),
+
+    -- ** AdvertisersListSortOrder
+    AdvertisersListSortOrder (..),
+
+    -- ** AdvertisersListStatus
+    AdvertisersListStatus (..),
+
+    -- ** BillingProfilesListSortField
+    BillingProfilesListSortField (..),
+
+    -- ** BillingProfilesListSortOrder
+    BillingProfilesListSortOrder (..),
+
+    -- ** BillingProfilesListStatus
+    BillingProfilesListStatus (..),
+
+    -- ** CampaignCreativeAssociationsListSortOrder
+    CampaignCreativeAssociationsListSortOrder (..),
+
+    -- ** CampaignsListSortField
+    CampaignsListSortField (..),
+
+    -- ** CampaignsListSortOrder
+    CampaignsListSortOrder (..),
+
+    -- ** ChangeLogsListAction
+    ChangeLogsListAction (..),
+
+    -- ** ChangeLogsListObjectType
+    ChangeLogsListObjectType (..),
+
+    -- ** ContentCategoriesListSortField
+    ContentCategoriesListSortField (..),
+
+    -- ** ContentCategoriesListSortOrder
+    ContentCategoriesListSortOrder (..),
+
+    -- ** CreativeFieldValuesListSortField
+    CreativeFieldValuesListSortField (..),
+
+    -- ** CreativeFieldValuesListSortOrder
+    CreativeFieldValuesListSortOrder (..),
+
+    -- ** CreativeFieldsListSortField
+    CreativeFieldsListSortField (..),
+
+    -- ** CreativeFieldsListSortOrder
+    CreativeFieldsListSortOrder (..),
+
+    -- ** CreativeGroupsListSortField
+    CreativeGroupsListSortField (..),
+
+    -- ** CreativeGroupsListSortOrder
+    CreativeGroupsListSortOrder (..),
+
+    -- ** CreativesListSortField
+    CreativesListSortField (..),
+
+    -- ** CreativesListSortOrder
+    CreativesListSortOrder (..),
+
+    -- ** CreativesListTypes
+    CreativesListTypes (..),
+
+    -- ** DirectorySitesListSortField
+    DirectorySitesListSortField (..),
+
+    -- ** DirectorySitesListSortOrder
+    DirectorySitesListSortOrder (..),
+
+    -- ** DynamicTargetingKeysDeleteObjectType
+    DynamicTargetingKeysDeleteObjectType (..),
+
+    -- ** DynamicTargetingKeysListObjectType
+    DynamicTargetingKeysListObjectType (..),
+
+    -- ** EventTagsListEventTagTypes
+    EventTagsListEventTagTypes (..),
+
+    -- ** EventTagsListSortField
+    EventTagsListSortField (..),
+
+    -- ** EventTagsListSortOrder
+    EventTagsListSortOrder (..),
+
+    -- ** FilesListScope
+    FilesListScope (..),
+
+    -- ** FilesListSortField
+    FilesListSortField (..),
+
+    -- ** FilesListSortOrder
+    FilesListSortOrder (..),
+
+    -- ** FloodlightActivitiesListFloodlightActivityGroupType
+    FloodlightActivitiesListFloodlightActivityGroupType (..),
+
+    -- ** FloodlightActivitiesListSortField
+    FloodlightActivitiesListSortField (..),
+
+    -- ** FloodlightActivitiesListSortOrder
+    FloodlightActivitiesListSortOrder (..),
+
+    -- ** FloodlightActivityGroupsListSortField
+    FloodlightActivityGroupsListSortField (..),
+
+    -- ** FloodlightActivityGroupsListSortOrder
+    FloodlightActivityGroupsListSortOrder (..),
+
+    -- ** FloodlightActivityGroupsListType
+    FloodlightActivityGroupsListType (..),
+
+    -- ** InventoryItemsListSortField
+    InventoryItemsListSortField (..),
+
+    -- ** InventoryItemsListSortOrder
+    InventoryItemsListSortOrder (..),
+
+    -- ** InventoryItemsListType
+    InventoryItemsListType (..),
+
+    -- ** MobileAppsListDirectories
+    MobileAppsListDirectories (..),
+
+    -- ** OrdersListSortField
+    OrdersListSortField (..),
+
+    -- ** OrdersListSortOrder
+    OrdersListSortOrder (..),
+
+    -- ** PlacementGroupsListActiveStatus
+    PlacementGroupsListActiveStatus (..),
+
+    -- ** PlacementGroupsListPlacementGroupType
+    PlacementGroupsListPlacementGroupType (..),
+
+    -- ** PlacementGroupsListPricingTypes
+    PlacementGroupsListPricingTypes (..),
+
+    -- ** PlacementGroupsListSortField
+    PlacementGroupsListSortField (..),
+
+    -- ** PlacementGroupsListSortOrder
+    PlacementGroupsListSortOrder (..),
+
+    -- ** PlacementStrategiesListSortField
+    PlacementStrategiesListSortField (..),
+
+    -- ** PlacementStrategiesListSortOrder
+    PlacementStrategiesListSortOrder (..),
+
+    -- ** PlacementsGeneratetagsTagFormats
+    PlacementsGeneratetagsTagFormats (..),
+
+    -- ** PlacementsListActiveStatus
+    PlacementsListActiveStatus (..),
+
+    -- ** PlacementsListCompatibilities
+    PlacementsListCompatibilities (..),
+
+    -- ** PlacementsListPaymentSource
+    PlacementsListPaymentSource (..),
+
+    -- ** PlacementsListPricingTypes
+    PlacementsListPricingTypes (..),
+
+    -- ** PlacementsListSortField
+    PlacementsListSortField (..),
+
+    -- ** PlacementsListSortOrder
+    PlacementsListSortOrder (..),
+
+    -- ** ProjectsListSortField
+    ProjectsListSortField (..),
+
+    -- ** ProjectsListSortOrder
+    ProjectsListSortOrder (..),
+
+    -- ** RemarketingListsListSortField
+    RemarketingListsListSortField (..),
+
+    -- ** RemarketingListsListSortOrder
+    RemarketingListsListSortOrder (..),
+
+    -- ** ReportsFilesListSortField
+    ReportsFilesListSortField (..),
+
+    -- ** ReportsFilesListSortOrder
+    ReportsFilesListSortOrder (..),
+
+    -- ** ReportsListScope
+    ReportsListScope (..),
+
+    -- ** ReportsListSortField
+    ReportsListSortField (..),
+
+    -- ** ReportsListSortOrder
+    ReportsListSortOrder (..),
+
+    -- ** SitesListSortField
+    SitesListSortField (..),
+
+    -- ** SitesListSortOrder
+    SitesListSortOrder (..),
+
+    -- ** SubaccountsListSortField
+    SubaccountsListSortField (..),
+
+    -- ** SubaccountsListSortOrder
+    SubaccountsListSortOrder (..),
+
+    -- ** TargetableRemarketingListsListSortField
+    TargetableRemarketingListsListSortField (..),
+
+    -- ** TargetableRemarketingListsListSortOrder
+    TargetableRemarketingListsListSortOrder (..),
+
+    -- ** TargetingTemplatesListSortField
+    TargetingTemplatesListSortField (..),
+
+    -- ** TargetingTemplatesListSortOrder
+    TargetingTemplatesListSortOrder (..),
+
+    -- ** UserRolesListSortField
+    UserRolesListSortField (..),
+
+    -- ** UserRolesListSortOrder
+    UserRolesListSortOrder (..),
+  )
+where
+
+import Gogol.DFAReporting.AccountActiveAdSummaries.Get
+import Gogol.DFAReporting.AccountPermissionGroups.Get
+import Gogol.DFAReporting.AccountPermissionGroups.List
+import Gogol.DFAReporting.AccountPermissions.Get
+import Gogol.DFAReporting.AccountPermissions.List
+import Gogol.DFAReporting.AccountUserProfiles.Get
+import Gogol.DFAReporting.AccountUserProfiles.Insert
+import Gogol.DFAReporting.AccountUserProfiles.List
+import Gogol.DFAReporting.AccountUserProfiles.Patch
+import Gogol.DFAReporting.AccountUserProfiles.Update
+import Gogol.DFAReporting.Accounts.Get
+import Gogol.DFAReporting.Accounts.List
+import Gogol.DFAReporting.Accounts.Patch
+import Gogol.DFAReporting.Accounts.Update
+import Gogol.DFAReporting.Ads.Get
+import Gogol.DFAReporting.Ads.Insert
+import Gogol.DFAReporting.Ads.List
+import Gogol.DFAReporting.Ads.Patch
+import Gogol.DFAReporting.Ads.Update
+import Gogol.DFAReporting.AdvertiserGroups.Delete
+import Gogol.DFAReporting.AdvertiserGroups.Get
+import Gogol.DFAReporting.AdvertiserGroups.Insert
+import Gogol.DFAReporting.AdvertiserGroups.List
+import Gogol.DFAReporting.AdvertiserGroups.Patch
+import Gogol.DFAReporting.AdvertiserGroups.Update
+import Gogol.DFAReporting.AdvertiserInvoices.List
+import Gogol.DFAReporting.AdvertiserLandingPages.Get
+import Gogol.DFAReporting.AdvertiserLandingPages.Insert
+import Gogol.DFAReporting.AdvertiserLandingPages.List
+import Gogol.DFAReporting.AdvertiserLandingPages.Patch
+import Gogol.DFAReporting.AdvertiserLandingPages.Update
+import Gogol.DFAReporting.Advertisers.Get
+import Gogol.DFAReporting.Advertisers.Insert
+import Gogol.DFAReporting.Advertisers.List
+import Gogol.DFAReporting.Advertisers.Patch
+import Gogol.DFAReporting.Advertisers.Update
+import Gogol.DFAReporting.BillingAssignments.Insert
+import Gogol.DFAReporting.BillingAssignments.List
+import Gogol.DFAReporting.BillingProfiles.Get
+import Gogol.DFAReporting.BillingProfiles.List
+import Gogol.DFAReporting.BillingProfiles.Update
+import Gogol.DFAReporting.BillingRates.List
+import Gogol.DFAReporting.Browsers.List
+import Gogol.DFAReporting.CampaignCreativeAssociations.Insert
+import Gogol.DFAReporting.CampaignCreativeAssociations.List
+import Gogol.DFAReporting.Campaigns.Get
+import Gogol.DFAReporting.Campaigns.Insert
+import Gogol.DFAReporting.Campaigns.List
+import Gogol.DFAReporting.Campaigns.Patch
+import Gogol.DFAReporting.Campaigns.Update
+import Gogol.DFAReporting.ChangeLogs.Get
+import Gogol.DFAReporting.ChangeLogs.List
+import Gogol.DFAReporting.Cities.List
+import Gogol.DFAReporting.ConnectionTypes.Get
+import Gogol.DFAReporting.ConnectionTypes.List
+import Gogol.DFAReporting.ContentCategories.Delete
+import Gogol.DFAReporting.ContentCategories.Get
+import Gogol.DFAReporting.ContentCategories.Insert
+import Gogol.DFAReporting.ContentCategories.List
+import Gogol.DFAReporting.ContentCategories.Patch
+import Gogol.DFAReporting.ContentCategories.Update
+import Gogol.DFAReporting.Conversions.Batchinsert
+import Gogol.DFAReporting.Conversions.Batchupdate
+import Gogol.DFAReporting.Countries.Get
+import Gogol.DFAReporting.Countries.List
+import Gogol.DFAReporting.CreativeAssets.Insert
+import Gogol.DFAReporting.CreativeFieldValues.Delete
+import Gogol.DFAReporting.CreativeFieldValues.Get
+import Gogol.DFAReporting.CreativeFieldValues.Insert
+import Gogol.DFAReporting.CreativeFieldValues.List
+import Gogol.DFAReporting.CreativeFieldValues.Patch
+import Gogol.DFAReporting.CreativeFieldValues.Update
+import Gogol.DFAReporting.CreativeFields.Delete
+import Gogol.DFAReporting.CreativeFields.Get
+import Gogol.DFAReporting.CreativeFields.Insert
+import Gogol.DFAReporting.CreativeFields.List
+import Gogol.DFAReporting.CreativeFields.Patch
+import Gogol.DFAReporting.CreativeFields.Update
+import Gogol.DFAReporting.CreativeGroups.Get
+import Gogol.DFAReporting.CreativeGroups.Insert
+import Gogol.DFAReporting.CreativeGroups.List
+import Gogol.DFAReporting.CreativeGroups.Patch
+import Gogol.DFAReporting.CreativeGroups.Update
+import Gogol.DFAReporting.Creatives.Get
+import Gogol.DFAReporting.Creatives.Insert
+import Gogol.DFAReporting.Creatives.List
+import Gogol.DFAReporting.Creatives.Patch
+import Gogol.DFAReporting.Creatives.Update
+import Gogol.DFAReporting.DimensionValues.Query
+import Gogol.DFAReporting.DirectorySites.Get
+import Gogol.DFAReporting.DirectorySites.Insert
+import Gogol.DFAReporting.DirectorySites.List
+import Gogol.DFAReporting.DynamicTargetingKeys.Delete
+import Gogol.DFAReporting.DynamicTargetingKeys.Insert
+import Gogol.DFAReporting.DynamicTargetingKeys.List
+import Gogol.DFAReporting.EventTags.Delete
+import Gogol.DFAReporting.EventTags.Get
+import Gogol.DFAReporting.EventTags.Insert
+import Gogol.DFAReporting.EventTags.List
+import Gogol.DFAReporting.EventTags.Patch
+import Gogol.DFAReporting.EventTags.Update
+import Gogol.DFAReporting.Files.Get
+import Gogol.DFAReporting.Files.List
+import Gogol.DFAReporting.FloodlightActivities.Delete
+import Gogol.DFAReporting.FloodlightActivities.Generatetag
+import Gogol.DFAReporting.FloodlightActivities.Get
+import Gogol.DFAReporting.FloodlightActivities.Insert
+import Gogol.DFAReporting.FloodlightActivities.List
+import Gogol.DFAReporting.FloodlightActivities.Patch
+import Gogol.DFAReporting.FloodlightActivities.Update
+import Gogol.DFAReporting.FloodlightActivityGroups.Get
+import Gogol.DFAReporting.FloodlightActivityGroups.Insert
+import Gogol.DFAReporting.FloodlightActivityGroups.List
+import Gogol.DFAReporting.FloodlightActivityGroups.Patch
+import Gogol.DFAReporting.FloodlightActivityGroups.Update
+import Gogol.DFAReporting.FloodlightConfigurations.Get
+import Gogol.DFAReporting.FloodlightConfigurations.List
+import Gogol.DFAReporting.FloodlightConfigurations.Patch
+import Gogol.DFAReporting.FloodlightConfigurations.Update
+import Gogol.DFAReporting.InventoryItems.Get
+import Gogol.DFAReporting.InventoryItems.List
+import Gogol.DFAReporting.Languages.List
+import Gogol.DFAReporting.Metros.List
+import Gogol.DFAReporting.MobileApps.Get
+import Gogol.DFAReporting.MobileApps.List
+import Gogol.DFAReporting.MobileCarriers.Get
+import Gogol.DFAReporting.MobileCarriers.List
+import Gogol.DFAReporting.OperatingSystemVersions.Get
+import Gogol.DFAReporting.OperatingSystemVersions.List
+import Gogol.DFAReporting.OperatingSystems.Get
+import Gogol.DFAReporting.OperatingSystems.List
+import Gogol.DFAReporting.Orders.Get
+import Gogol.DFAReporting.Orders.List
+import Gogol.DFAReporting.PlacementGroups.Get
+import Gogol.DFAReporting.PlacementGroups.Insert
+import Gogol.DFAReporting.PlacementGroups.List
+import Gogol.DFAReporting.PlacementGroups.Patch
+import Gogol.DFAReporting.PlacementGroups.Update
+import Gogol.DFAReporting.PlacementStrategies.Delete
+import Gogol.DFAReporting.PlacementStrategies.Get
+import Gogol.DFAReporting.PlacementStrategies.Insert
+import Gogol.DFAReporting.PlacementStrategies.List
+import Gogol.DFAReporting.PlacementStrategies.Patch
+import Gogol.DFAReporting.PlacementStrategies.Update
+import Gogol.DFAReporting.Placements.Generatetags
+import Gogol.DFAReporting.Placements.Get
+import Gogol.DFAReporting.Placements.Insert
+import Gogol.DFAReporting.Placements.List
+import Gogol.DFAReporting.Placements.Patch
+import Gogol.DFAReporting.Placements.Update
+import Gogol.DFAReporting.PlatformTypes.Get
+import Gogol.DFAReporting.PlatformTypes.List
+import Gogol.DFAReporting.PostalCodes.Get
+import Gogol.DFAReporting.PostalCodes.List
+import Gogol.DFAReporting.Projects.Get
+import Gogol.DFAReporting.Projects.List
+import Gogol.DFAReporting.Regions.List
+import Gogol.DFAReporting.RemarketingListShares.Get
+import Gogol.DFAReporting.RemarketingListShares.Patch
+import Gogol.DFAReporting.RemarketingListShares.Update
+import Gogol.DFAReporting.RemarketingLists.Get
+import Gogol.DFAReporting.RemarketingLists.Insert
+import Gogol.DFAReporting.RemarketingLists.List
+import Gogol.DFAReporting.RemarketingLists.Patch
+import Gogol.DFAReporting.RemarketingLists.Update
+import Gogol.DFAReporting.Reports.CompatibleFields.Query
+import Gogol.DFAReporting.Reports.Delete
+import Gogol.DFAReporting.Reports.Files.Get
+import Gogol.DFAReporting.Reports.Files.List
+import Gogol.DFAReporting.Reports.Get
+import Gogol.DFAReporting.Reports.Insert
+import Gogol.DFAReporting.Reports.List
+import Gogol.DFAReporting.Reports.Patch
+import Gogol.DFAReporting.Reports.Run
+import Gogol.DFAReporting.Reports.Update
+import Gogol.DFAReporting.Sites.Get
+import Gogol.DFAReporting.Sites.Insert
+import Gogol.DFAReporting.Sites.List
+import Gogol.DFAReporting.Sites.Patch
+import Gogol.DFAReporting.Sites.Update
+import Gogol.DFAReporting.Sizes.Get
+import Gogol.DFAReporting.Sizes.Insert
+import Gogol.DFAReporting.Sizes.List
+import Gogol.DFAReporting.Subaccounts.Get
+import Gogol.DFAReporting.Subaccounts.Insert
+import Gogol.DFAReporting.Subaccounts.List
+import Gogol.DFAReporting.Subaccounts.Patch
+import Gogol.DFAReporting.Subaccounts.Update
+import Gogol.DFAReporting.TargetableRemarketingLists.Get
+import Gogol.DFAReporting.TargetableRemarketingLists.List
+import Gogol.DFAReporting.TargetingTemplates.Get
+import Gogol.DFAReporting.TargetingTemplates.Insert
+import Gogol.DFAReporting.TargetingTemplates.List
+import Gogol.DFAReporting.TargetingTemplates.Patch
+import Gogol.DFAReporting.TargetingTemplates.Update
+import Gogol.DFAReporting.TvCampaignDetails.Get
+import Gogol.DFAReporting.TvCampaignSummaries.List
+import Gogol.DFAReporting.Types
+import Gogol.DFAReporting.UserProfiles.Get
+import Gogol.DFAReporting.UserProfiles.List
+import Gogol.DFAReporting.UserRolePermissionGroups.Get
+import Gogol.DFAReporting.UserRolePermissionGroups.List
+import Gogol.DFAReporting.UserRolePermissions.Get
+import Gogol.DFAReporting.UserRolePermissions.List
+import Gogol.DFAReporting.UserRoles.Delete
+import Gogol.DFAReporting.UserRoles.Get
+import Gogol.DFAReporting.UserRoles.Insert
+import Gogol.DFAReporting.UserRoles.List
+import Gogol.DFAReporting.UserRoles.Patch
+import Gogol.DFAReporting.UserRoles.Update
+import Gogol.DFAReporting.VideoFormats.Get
+import Gogol.DFAReporting.VideoFormats.List
diff --git a/gen/Gogol/DFAReporting/AccountActiveAdSummaries/Get.hs b/gen/Gogol/DFAReporting/AccountActiveAdSummaries/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountActiveAdSummaries/Get.hs
@@ -0,0 +1,125 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountActiveAdSummaries.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets the account\'s active ad summary by account ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountActiveAdSummaries.get@.
+module Gogol.DFAReporting.AccountActiveAdSummaries.Get
+  ( -- * Resource
+    DFAReportingAccountActiveAdSummariesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountActiveAdSummariesGet (..),
+    newDFAReportingAccountActiveAdSummariesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountActiveAdSummaries.get@ method which the
+-- 'DFAReportingAccountActiveAdSummariesGet' request conforms to.
+type DFAReportingAccountActiveAdSummariesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountActiveAdSummaries"
+    Core.:> Core.Capture "summaryAccountId" 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] AccountActiveAdSummary
+
+-- | Gets the account\'s active ad summary by account ID.
+--
+-- /See:/ 'newDFAReportingAccountActiveAdSummariesGet' smart constructor.
+data DFAReportingAccountActiveAdSummariesGet = DFAReportingAccountActiveAdSummariesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Account ID.
+    summaryAccountId :: 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 'DFAReportingAccountActiveAdSummariesGet' with the minimum fields required to make a request.
+newDFAReportingAccountActiveAdSummariesGet ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Account ID. See 'summaryAccountId'.
+  Core.Int64 ->
+  DFAReportingAccountActiveAdSummariesGet
+newDFAReportingAccountActiveAdSummariesGet
+  profileId
+  summaryAccountId =
+    DFAReportingAccountActiveAdSummariesGet
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        profileId = profileId,
+        summaryAccountId = summaryAccountId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingAccountActiveAdSummariesGet where
+  type
+    Rs DFAReportingAccountActiveAdSummariesGet =
+      AccountActiveAdSummary
+  type
+    Scopes DFAReportingAccountActiveAdSummariesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountActiveAdSummariesGet {..} =
+    go
+      profileId
+      summaryAccountId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountActiveAdSummariesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountPermissionGroups/Get.hs b/gen/Gogol/DFAReporting/AccountPermissionGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountPermissionGroups/Get.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountPermissionGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one account permission group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountPermissionGroups.get@.
+module Gogol.DFAReporting.AccountPermissionGroups.Get
+  ( -- * Resource
+    DFAReportingAccountPermissionGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountPermissionGroupsGet (..),
+    newDFAReportingAccountPermissionGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountPermissionGroups.get@ method which the
+-- 'DFAReportingAccountPermissionGroupsGet' request conforms to.
+type DFAReportingAccountPermissionGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountPermissionGroups"
+    Core.:> Core.Capture "id" 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] AccountPermissionGroup
+
+-- | Gets one account permission group by ID.
+--
+-- /See:/ 'newDFAReportingAccountPermissionGroupsGet' smart constructor.
+data DFAReportingAccountPermissionGroupsGet = DFAReportingAccountPermissionGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Account permission group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountPermissionGroupsGet' with the minimum fields required to make a request.
+newDFAReportingAccountPermissionGroupsGet ::
+  -- |  Account permission group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountPermissionGroupsGet
+newDFAReportingAccountPermissionGroupsGet id profileId =
+  DFAReportingAccountPermissionGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountPermissionGroupsGet where
+  type
+    Rs DFAReportingAccountPermissionGroupsGet =
+      AccountPermissionGroup
+  type
+    Scopes DFAReportingAccountPermissionGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountPermissionGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountPermissionGroupsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountPermissionGroups/List.hs b/gen/Gogol/DFAReporting/AccountPermissionGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountPermissionGroups/List.hs
@@ -0,0 +1,116 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountPermissionGroups.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)
+--
+-- Retrieves the list of account permission groups.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountPermissionGroups.list@.
+module Gogol.DFAReporting.AccountPermissionGroups.List
+  ( -- * Resource
+    DFAReportingAccountPermissionGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountPermissionGroupsList (..),
+    newDFAReportingAccountPermissionGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountPermissionGroups.list@ method which the
+-- 'DFAReportingAccountPermissionGroupsList' request conforms to.
+type DFAReportingAccountPermissionGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountPermissionGroups"
+    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] AccountPermissionGroupsListResponse
+
+-- | Retrieves the list of account permission groups.
+--
+-- /See:/ 'newDFAReportingAccountPermissionGroupsList' smart constructor.
+data DFAReportingAccountPermissionGroupsList = DFAReportingAccountPermissionGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountPermissionGroupsList' with the minimum fields required to make a request.
+newDFAReportingAccountPermissionGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountPermissionGroupsList
+newDFAReportingAccountPermissionGroupsList profileId =
+  DFAReportingAccountPermissionGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountPermissionGroupsList where
+  type
+    Rs DFAReportingAccountPermissionGroupsList =
+      AccountPermissionGroupsListResponse
+  type
+    Scopes DFAReportingAccountPermissionGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountPermissionGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountPermissionGroupsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountPermissions/Get.hs b/gen/Gogol/DFAReporting/AccountPermissions/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountPermissions/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountPermissions.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one account permission by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountPermissions.get@.
+module Gogol.DFAReporting.AccountPermissions.Get
+  ( -- * Resource
+    DFAReportingAccountPermissionsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountPermissionsGet (..),
+    newDFAReportingAccountPermissionsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountPermissions.get@ method which the
+-- 'DFAReportingAccountPermissionsGet' request conforms to.
+type DFAReportingAccountPermissionsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountPermissions"
+    Core.:> Core.Capture "id" 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] AccountPermission
+
+-- | Gets one account permission by ID.
+--
+-- /See:/ 'newDFAReportingAccountPermissionsGet' smart constructor.
+data DFAReportingAccountPermissionsGet = DFAReportingAccountPermissionsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Account permission ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountPermissionsGet' with the minimum fields required to make a request.
+newDFAReportingAccountPermissionsGet ::
+  -- |  Account permission ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountPermissionsGet
+newDFAReportingAccountPermissionsGet id profileId =
+  DFAReportingAccountPermissionsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountPermissionsGet where
+  type Rs DFAReportingAccountPermissionsGet = AccountPermission
+  type
+    Scopes DFAReportingAccountPermissionsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountPermissionsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountPermissionsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountPermissions/List.hs b/gen/Gogol/DFAReporting/AccountPermissions/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountPermissions/List.hs
@@ -0,0 +1,116 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountPermissions.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)
+--
+-- Retrieves the list of account permissions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountPermissions.list@.
+module Gogol.DFAReporting.AccountPermissions.List
+  ( -- * Resource
+    DFAReportingAccountPermissionsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountPermissionsList (..),
+    newDFAReportingAccountPermissionsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountPermissions.list@ method which the
+-- 'DFAReportingAccountPermissionsList' request conforms to.
+type DFAReportingAccountPermissionsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountPermissions"
+    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] AccountPermissionsListResponse
+
+-- | Retrieves the list of account permissions.
+--
+-- /See:/ 'newDFAReportingAccountPermissionsList' smart constructor.
+data DFAReportingAccountPermissionsList = DFAReportingAccountPermissionsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountPermissionsList' with the minimum fields required to make a request.
+newDFAReportingAccountPermissionsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountPermissionsList
+newDFAReportingAccountPermissionsList profileId =
+  DFAReportingAccountPermissionsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountPermissionsList where
+  type
+    Rs DFAReportingAccountPermissionsList =
+      AccountPermissionsListResponse
+  type
+    Scopes DFAReportingAccountPermissionsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountPermissionsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountPermissionsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountUserProfiles/Get.hs b/gen/Gogol/DFAReporting/AccountUserProfiles/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountUserProfiles/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountUserProfiles.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one account user profile by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountUserProfiles.get@.
+module Gogol.DFAReporting.AccountUserProfiles.Get
+  ( -- * Resource
+    DFAReportingAccountUserProfilesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountUserProfilesGet (..),
+    newDFAReportingAccountUserProfilesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountUserProfiles.get@ method which the
+-- 'DFAReportingAccountUserProfilesGet' request conforms to.
+type DFAReportingAccountUserProfilesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountUserProfiles"
+    Core.:> Core.Capture "id" 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] AccountUserProfile
+
+-- | Gets one account user profile by ID.
+--
+-- /See:/ 'newDFAReportingAccountUserProfilesGet' smart constructor.
+data DFAReportingAccountUserProfilesGet = DFAReportingAccountUserProfilesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountUserProfilesGet' with the minimum fields required to make a request.
+newDFAReportingAccountUserProfilesGet ::
+  -- |  User profile ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountUserProfilesGet
+newDFAReportingAccountUserProfilesGet id profileId =
+  DFAReportingAccountUserProfilesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountUserProfilesGet where
+  type Rs DFAReportingAccountUserProfilesGet = AccountUserProfile
+  type
+    Scopes DFAReportingAccountUserProfilesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountUserProfilesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountUserProfilesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountUserProfiles/Insert.hs b/gen/Gogol/DFAReporting/AccountUserProfiles/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountUserProfiles/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountUserProfiles.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new account user profile.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountUserProfiles.insert@.
+module Gogol.DFAReporting.AccountUserProfiles.Insert
+  ( -- * Resource
+    DFAReportingAccountUserProfilesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountUserProfilesInsert (..),
+    newDFAReportingAccountUserProfilesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountUserProfiles.insert@ method which the
+-- 'DFAReportingAccountUserProfilesInsert' request conforms to.
+type DFAReportingAccountUserProfilesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountUserProfiles"
+    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] AccountUserProfile
+    Core.:> Core.Post '[Core.JSON] AccountUserProfile
+
+-- | Inserts a new account user profile.
+--
+-- /See:/ 'newDFAReportingAccountUserProfilesInsert' smart constructor.
+data DFAReportingAccountUserProfilesInsert = DFAReportingAccountUserProfilesInsert
+  { -- | 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 :: AccountUserProfile,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountUserProfilesInsert' with the minimum fields required to make a request.
+newDFAReportingAccountUserProfilesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  AccountUserProfile ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountUserProfilesInsert
+newDFAReportingAccountUserProfilesInsert payload profileId =
+  DFAReportingAccountUserProfilesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountUserProfilesInsert where
+  type Rs DFAReportingAccountUserProfilesInsert = AccountUserProfile
+  type
+    Scopes DFAReportingAccountUserProfilesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountUserProfilesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountUserProfilesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountUserProfiles/List.hs b/gen/Gogol/DFAReporting/AccountUserProfiles/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountUserProfiles/List.hs
@@ -0,0 +1,161 @@
+{-# 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.DFAReporting.AccountUserProfiles.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)
+--
+-- Retrieves a list of account user profiles, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountUserProfiles.list@.
+module Gogol.DFAReporting.AccountUserProfiles.List
+  ( -- * Resource
+    DFAReportingAccountUserProfilesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountUserProfilesList (..),
+    newDFAReportingAccountUserProfilesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountUserProfiles.list@ method which the
+-- 'DFAReportingAccountUserProfilesList' request conforms to.
+type DFAReportingAccountUserProfilesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountUserProfiles"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" AccountUserProfilesListSortField
+    Core.:> Core.QueryParam "sortOrder" AccountUserProfilesListSortOrder
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "userRoleId" Core.Int64
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] AccountUserProfilesListResponse
+
+-- | Retrieves a list of account user profiles, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingAccountUserProfilesList' smart constructor.
+data DFAReportingAccountUserProfilesList = DFAReportingAccountUserProfilesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active user profiles.
+    active :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only user profiles with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name, ID or email. Wildcards (/) are allowed. For example, \"user profile/2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: AccountUserProfilesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AccountUserProfilesListSortOrder,
+    -- | Select only user profiles with the specified subaccount ID.
+    subaccountId :: (Core.Maybe 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),
+    -- | Select only user profiles with the specified user role ID.
+    userRoleId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DFAReportingAccountUserProfilesList' with the minimum fields required to make a request.
+newDFAReportingAccountUserProfilesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountUserProfilesList
+newDFAReportingAccountUserProfilesList profileId =
+  DFAReportingAccountUserProfilesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = AccountUserProfilesListSortField_ID,
+      sortOrder = AccountUserProfilesListSortOrder_Ascending,
+      subaccountId = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing,
+      userRoleId = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountUserProfilesList where
+  type
+    Rs DFAReportingAccountUserProfilesList =
+      AccountUserProfilesListResponse
+  type
+    Scopes DFAReportingAccountUserProfilesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountUserProfilesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      active
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      subaccountId
+      uploadType
+      uploadProtocol
+      userRoleId
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountUserProfilesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountUserProfiles/Patch.hs b/gen/Gogol/DFAReporting/AccountUserProfiles/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountUserProfiles/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountUserProfiles.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing account user profile. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountUserProfiles.patch@.
+module Gogol.DFAReporting.AccountUserProfiles.Patch
+  ( -- * Resource
+    DFAReportingAccountUserProfilesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountUserProfilesPatch (..),
+    newDFAReportingAccountUserProfilesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountUserProfiles.patch@ method which the
+-- 'DFAReportingAccountUserProfilesPatch' request conforms to.
+type DFAReportingAccountUserProfilesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountUserProfiles"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] AccountUserProfile
+    Core.:> Core.Patch '[Core.JSON] AccountUserProfile
+
+-- | Updates an existing account user profile. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAccountUserProfilesPatch' smart constructor.
+data DFAReportingAccountUserProfilesPatch = DFAReportingAccountUserProfilesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. AccountUserProfile ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: AccountUserProfile,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountUserProfilesPatch' with the minimum fields required to make a request.
+newDFAReportingAccountUserProfilesPatch ::
+  -- |  Required. AccountUserProfile ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  AccountUserProfile ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountUserProfilesPatch
+newDFAReportingAccountUserProfilesPatch id payload profileId =
+  DFAReportingAccountUserProfilesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountUserProfilesPatch where
+  type Rs DFAReportingAccountUserProfilesPatch = AccountUserProfile
+  type
+    Scopes DFAReportingAccountUserProfilesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountUserProfilesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountUserProfilesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AccountUserProfiles/Update.hs b/gen/Gogol/DFAReporting/AccountUserProfiles/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AccountUserProfiles/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AccountUserProfiles.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing account user profile.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accountUserProfiles.update@.
+module Gogol.DFAReporting.AccountUserProfiles.Update
+  ( -- * Resource
+    DFAReportingAccountUserProfilesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountUserProfilesUpdate (..),
+    newDFAReportingAccountUserProfilesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accountUserProfiles.update@ method which the
+-- 'DFAReportingAccountUserProfilesUpdate' request conforms to.
+type DFAReportingAccountUserProfilesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accountUserProfiles"
+    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] AccountUserProfile
+    Core.:> Core.Put '[Core.JSON] AccountUserProfile
+
+-- | Updates an existing account user profile.
+--
+-- /See:/ 'newDFAReportingAccountUserProfilesUpdate' smart constructor.
+data DFAReportingAccountUserProfilesUpdate = DFAReportingAccountUserProfilesUpdate
+  { -- | 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 :: AccountUserProfile,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountUserProfilesUpdate' with the minimum fields required to make a request.
+newDFAReportingAccountUserProfilesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  AccountUserProfile ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountUserProfilesUpdate
+newDFAReportingAccountUserProfilesUpdate payload profileId =
+  DFAReportingAccountUserProfilesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountUserProfilesUpdate where
+  type Rs DFAReportingAccountUserProfilesUpdate = AccountUserProfile
+  type
+    Scopes DFAReportingAccountUserProfilesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountUserProfilesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAccountUserProfilesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Accounts/Get.hs b/gen/Gogol/DFAReporting/Accounts/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Accounts/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Accounts.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one account by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accounts.get@.
+module Gogol.DFAReporting.Accounts.Get
+  ( -- * Resource
+    DFAReportingAccountsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountsGet (..),
+    newDFAReportingAccountsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accounts.get@ method which the
+-- 'DFAReportingAccountsGet' request conforms to.
+type DFAReportingAccountsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accounts"
+    Core.:> Core.Capture "id" 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] Account
+
+-- | Gets one account by ID.
+--
+-- /See:/ 'newDFAReportingAccountsGet' smart constructor.
+data DFAReportingAccountsGet = DFAReportingAccountsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Account ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountsGet' with the minimum fields required to make a request.
+newDFAReportingAccountsGet ::
+  -- |  Account ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountsGet
+newDFAReportingAccountsGet id profileId =
+  DFAReportingAccountsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountsGet where
+  type Rs DFAReportingAccountsGet = Account
+  type Scopes DFAReportingAccountsGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAccountsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Accounts/List.hs b/gen/Gogol/DFAReporting/Accounts/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Accounts/List.hs
@@ -0,0 +1,147 @@
+{-# 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.DFAReporting.Accounts.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)
+--
+-- Retrieves the list of accounts, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accounts.list@.
+module Gogol.DFAReporting.Accounts.List
+  ( -- * Resource
+    DFAReportingAccountsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountsList (..),
+    newDFAReportingAccountsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accounts.list@ method which the
+-- 'DFAReportingAccountsList' request conforms to.
+type DFAReportingAccountsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accounts"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" AccountsListSortField
+    Core.:> Core.QueryParam "sortOrder" AccountsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] AccountsListResponse
+
+-- | Retrieves the list of accounts, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingAccountsList' smart constructor.
+data DFAReportingAccountsList = DFAReportingAccountsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active accounts. Don\'t set this field to select both active and non-active accounts.
+    active :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only accounts with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"account/2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: AccountsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AccountsListSortOrder,
+    -- | 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 'DFAReportingAccountsList' with the minimum fields required to make a request.
+newDFAReportingAccountsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountsList
+newDFAReportingAccountsList profileId =
+  DFAReportingAccountsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = AccountsListSortField_ID,
+      sortOrder = AccountsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountsList where
+  type Rs DFAReportingAccountsList = AccountsListResponse
+  type
+    Scopes DFAReportingAccountsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      active
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAccountsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Accounts/Patch.hs b/gen/Gogol/DFAReporting/Accounts/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Accounts/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Accounts.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing account. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accounts.patch@.
+module Gogol.DFAReporting.Accounts.Patch
+  ( -- * Resource
+    DFAReportingAccountsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountsPatch (..),
+    newDFAReportingAccountsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accounts.patch@ method which the
+-- 'DFAReportingAccountsPatch' request conforms to.
+type DFAReportingAccountsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accounts"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Account
+    Core.:> Core.Patch '[Core.JSON] Account
+
+-- | Updates an existing account. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAccountsPatch' smart constructor.
+data DFAReportingAccountsPatch = DFAReportingAccountsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Account ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Account,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountsPatch' with the minimum fields required to make a request.
+newDFAReportingAccountsPatch ::
+  -- |  Required. Account ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Account ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountsPatch
+newDFAReportingAccountsPatch id payload profileId =
+  DFAReportingAccountsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountsPatch where
+  type Rs DFAReportingAccountsPatch = Account
+  type
+    Scopes DFAReportingAccountsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAccountsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Accounts/Update.hs b/gen/Gogol/DFAReporting/Accounts/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Accounts/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Accounts.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing account.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.accounts.update@.
+module Gogol.DFAReporting.Accounts.Update
+  ( -- * Resource
+    DFAReportingAccountsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAccountsUpdate (..),
+    newDFAReportingAccountsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.accounts.update@ method which the
+-- 'DFAReportingAccountsUpdate' request conforms to.
+type DFAReportingAccountsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "accounts"
+    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] Account
+    Core.:> Core.Put '[Core.JSON] Account
+
+-- | Updates an existing account.
+--
+-- /See:/ 'newDFAReportingAccountsUpdate' smart constructor.
+data DFAReportingAccountsUpdate = DFAReportingAccountsUpdate
+  { -- | 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 :: Account,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAccountsUpdate' with the minimum fields required to make a request.
+newDFAReportingAccountsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Account ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAccountsUpdate
+newDFAReportingAccountsUpdate payload profileId =
+  DFAReportingAccountsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAccountsUpdate where
+  type Rs DFAReportingAccountsUpdate = Account
+  type
+    Scopes DFAReportingAccountsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAccountsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAccountsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Ads/Get.hs b/gen/Gogol/DFAReporting/Ads/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Ads/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Ads.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one ad by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.ads.get@.
+module Gogol.DFAReporting.Ads.Get
+  ( -- * Resource
+    DFAReportingAdsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdsGet (..),
+    newDFAReportingAdsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.ads.get@ method which the
+-- 'DFAReportingAdsGet' request conforms to.
+type DFAReportingAdsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "ads"
+    Core.:> Core.Capture "id" 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] Ad
+
+-- | Gets one ad by ID.
+--
+-- /See:/ 'newDFAReportingAdsGet' smart constructor.
+data DFAReportingAdsGet = DFAReportingAdsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Ad ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdsGet' with the minimum fields required to make a request.
+newDFAReportingAdsGet ::
+  -- |  Ad ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdsGet
+newDFAReportingAdsGet id profileId =
+  DFAReportingAdsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdsGet where
+  type Rs DFAReportingAdsGet = Ad
+  type Scopes DFAReportingAdsGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Ads/Insert.hs b/gen/Gogol/DFAReporting/Ads/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Ads/Insert.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Ads.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new ad.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.ads.insert@.
+module Gogol.DFAReporting.Ads.Insert
+  ( -- * Resource
+    DFAReportingAdsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdsInsert (..),
+    newDFAReportingAdsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.ads.insert@ method which the
+-- 'DFAReportingAdsInsert' request conforms to.
+type DFAReportingAdsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "ads"
+    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] Ad
+    Core.:> Core.Post '[Core.JSON] Ad
+
+-- | Inserts a new ad.
+--
+-- /See:/ 'newDFAReportingAdsInsert' smart constructor.
+data DFAReportingAdsInsert = DFAReportingAdsInsert
+  { -- | 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 :: Ad,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdsInsert' with the minimum fields required to make a request.
+newDFAReportingAdsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Ad ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdsInsert
+newDFAReportingAdsInsert payload profileId =
+  DFAReportingAdsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdsInsert where
+  type Rs DFAReportingAdsInsert = Ad
+  type Scopes DFAReportingAdsInsert = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Ads/List.hs b/gen/Gogol/DFAReporting/Ads/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Ads/List.hs
@@ -0,0 +1,243 @@
+{-# 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.DFAReporting.Ads.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)
+--
+-- Retrieves a list of ads, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.ads.list@.
+module Gogol.DFAReporting.Ads.List
+  ( -- * Resource
+    DFAReportingAdsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdsList (..),
+    newDFAReportingAdsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.ads.list@ method which the
+-- 'DFAReportingAdsList' request conforms to.
+type DFAReportingAdsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "ads"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "archived" Core.Bool
+    Core.:> Core.QueryParams "audienceSegmentIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "campaignIds" Core.Int64
+    Core.:> Core.QueryParam "compatibility" AdsListCompatibility
+    Core.:> Core.QueryParams "creativeIds" Core.Int64
+    Core.:> Core.QueryParams
+              "creativeOptimizationConfigurationIds"
+              Core.Int64
+    Core.:> Core.QueryParam "dynamicClickTracker" Core.Bool
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParams "landingPageIds" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "overriddenEventTagId" Core.Int64
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParams "placementIds" Core.Int64
+    Core.:> Core.QueryParams "remarketingListIds" Core.Int64
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParams "sizeIds" Core.Int64
+    Core.:> Core.QueryParam
+              "sortField"
+              AdsListSortField
+    Core.:> Core.QueryParam
+              "sortOrder"
+              AdsListSortOrder
+    Core.:> Core.QueryParam
+              "sslCompliant"
+              Core.Bool
+    Core.:> Core.QueryParam
+              "sslRequired"
+              Core.Bool
+    Core.:> Core.QueryParams "type" AdsListType
+    Core.:> Core.QueryParam
+              "uploadType"
+              Core.Text
+    Core.:> Core.QueryParam
+              "upload_protocol"
+              Core.Text
+    Core.:> Core.QueryParam
+              "alt"
+              Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              AdsListResponse
+
+-- | Retrieves a list of ads, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingAdsList' smart constructor.
+data DFAReportingAdsList = DFAReportingAdsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active ads.
+    active :: (Core.Maybe Core.Bool),
+    -- | Select only ads with this advertiser ID.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Select only archived ads.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Select only ads with these audience segment IDs.
+    audienceSegmentIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only ads with these campaign IDs.
+    campaignIds :: (Core.Maybe [Core.Int64]),
+    -- | Select default ads with the specified compatibility. Applicable when type is AD/SERVING/DEFAULT/AD. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.
+    compatibility :: (Core.Maybe AdsListCompatibility),
+    -- | Select only ads with these creative IDs assigned.
+    creativeIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only ads with these creative optimization configuration IDs.
+    creativeOptimizationConfigurationIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only dynamic click trackers. Applicable when type is AD/SERVING/CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.
+    dynamicClickTracker :: (Core.Maybe Core.Bool),
+    -- | Select only ads with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only ads with these landing page IDs.
+    landingPageIds :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only ads with this event tag override ID.
+    overriddenEventTagId :: (Core.Maybe Core.Int64),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Select only ads with these placement IDs assigned.
+    placementIds :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Select only ads whose list targeting expression use these remarketing list IDs.
+    remarketingListIds :: (Core.Maybe [Core.Int64]),
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"ad/2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Select only ads with these size IDs.
+    sizeIds :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: AdsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AdsListSortOrder,
+    -- | Select only ads that are SSL-compliant.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Select only ads that require SSL.
+    sslRequired :: (Core.Maybe Core.Bool),
+    -- | Select only ads with these types.
+    type' :: (Core.Maybe [AdsListType]),
+    -- | 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 'DFAReportingAdsList' with the minimum fields required to make a request.
+newDFAReportingAdsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdsList
+newDFAReportingAdsList profileId =
+  DFAReportingAdsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = Core.Nothing,
+      archived = Core.Nothing,
+      audienceSegmentIds = Core.Nothing,
+      callback = Core.Nothing,
+      campaignIds = Core.Nothing,
+      compatibility = Core.Nothing,
+      creativeIds = Core.Nothing,
+      creativeOptimizationConfigurationIds = Core.Nothing,
+      dynamicClickTracker = Core.Nothing,
+      ids = Core.Nothing,
+      landingPageIds = Core.Nothing,
+      maxResults = 1000,
+      overriddenEventTagId = Core.Nothing,
+      pageToken = Core.Nothing,
+      placementIds = Core.Nothing,
+      profileId = profileId,
+      remarketingListIds = Core.Nothing,
+      searchString = Core.Nothing,
+      sizeIds = Core.Nothing,
+      sortField = AdsListSortField_ID,
+      sortOrder = AdsListSortOrder_Ascending,
+      sslCompliant = Core.Nothing,
+      sslRequired = Core.Nothing,
+      type' = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdsList where
+  type Rs DFAReportingAdsList = AdsListResponse
+  type Scopes DFAReportingAdsList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      active
+      advertiserId
+      archived
+      (audienceSegmentIds Core.^. Core._Default)
+      callback
+      (campaignIds Core.^. Core._Default)
+      compatibility
+      (creativeIds Core.^. Core._Default)
+      (creativeOptimizationConfigurationIds Core.^. Core._Default)
+      dynamicClickTracker
+      (ids Core.^. Core._Default)
+      (landingPageIds Core.^. Core._Default)
+      (Core.Just maxResults)
+      overriddenEventTagId
+      pageToken
+      (placementIds Core.^. Core._Default)
+      (remarketingListIds Core.^. Core._Default)
+      searchString
+      (sizeIds Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      sslCompliant
+      sslRequired
+      (type' Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Ads/Patch.hs b/gen/Gogol/DFAReporting/Ads/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Ads/Patch.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Ads.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing ad. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.ads.patch@.
+module Gogol.DFAReporting.Ads.Patch
+  ( -- * Resource
+    DFAReportingAdsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdsPatch (..),
+    newDFAReportingAdsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.ads.patch@ method which the
+-- 'DFAReportingAdsPatch' request conforms to.
+type DFAReportingAdsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "ads"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Ad
+    Core.:> Core.Patch '[Core.JSON] Ad
+
+-- | Updates an existing ad. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAdsPatch' smart constructor.
+data DFAReportingAdsPatch = DFAReportingAdsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. RemarketingList ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Ad,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdsPatch' with the minimum fields required to make a request.
+newDFAReportingAdsPatch ::
+  -- |  Required. RemarketingList ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Ad ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdsPatch
+newDFAReportingAdsPatch id payload profileId =
+  DFAReportingAdsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdsPatch where
+  type Rs DFAReportingAdsPatch = Ad
+  type Scopes DFAReportingAdsPatch = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Ads/Update.hs b/gen/Gogol/DFAReporting/Ads/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Ads/Update.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Ads.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing ad.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.ads.update@.
+module Gogol.DFAReporting.Ads.Update
+  ( -- * Resource
+    DFAReportingAdsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdsUpdate (..),
+    newDFAReportingAdsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.ads.update@ method which the
+-- 'DFAReportingAdsUpdate' request conforms to.
+type DFAReportingAdsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "ads"
+    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] Ad
+    Core.:> Core.Put '[Core.JSON] Ad
+
+-- | Updates an existing ad.
+--
+-- /See:/ 'newDFAReportingAdsUpdate' smart constructor.
+data DFAReportingAdsUpdate = DFAReportingAdsUpdate
+  { -- | 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 :: Ad,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdsUpdate' with the minimum fields required to make a request.
+newDFAReportingAdsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Ad ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdsUpdate
+newDFAReportingAdsUpdate payload profileId =
+  DFAReportingAdsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdsUpdate where
+  type Rs DFAReportingAdsUpdate = Ad
+  type Scopes DFAReportingAdsUpdate = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/Delete.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/Delete.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.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 advertiser group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.delete@.
+module Gogol.DFAReporting.AdvertiserGroups.Delete
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsDelete (..),
+    newDFAReportingAdvertiserGroupsDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.delete@ method which the
+-- 'DFAReportingAdvertiserGroupsDelete' request conforms to.
+type DFAReportingAdvertiserGroupsDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    Core.:> Core.Capture "id" 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 advertiser group.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsDelete' smart constructor.
+data DFAReportingAdvertiserGroupsDelete = DFAReportingAdvertiserGroupsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Advertiser group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserGroupsDelete' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsDelete ::
+  -- |  Advertiser group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsDelete
+newDFAReportingAdvertiserGroupsDelete id profileId =
+  DFAReportingAdvertiserGroupsDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsDelete where
+  type Rs DFAReportingAdvertiserGroupsDelete = ()
+  type
+    Scopes DFAReportingAdvertiserGroupsDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserGroupsDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/Get.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one advertiser group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.get@.
+module Gogol.DFAReporting.AdvertiserGroups.Get
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsGet (..),
+    newDFAReportingAdvertiserGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.get@ method which the
+-- 'DFAReportingAdvertiserGroupsGet' request conforms to.
+type DFAReportingAdvertiserGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    Core.:> Core.Capture "id" 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] AdvertiserGroup
+
+-- | Gets one advertiser group by ID.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsGet' smart constructor.
+data DFAReportingAdvertiserGroupsGet = DFAReportingAdvertiserGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Advertiser group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserGroupsGet' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsGet ::
+  -- |  Advertiser group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsGet
+newDFAReportingAdvertiserGroupsGet id profileId =
+  DFAReportingAdvertiserGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsGet where
+  type Rs DFAReportingAdvertiserGroupsGet = AdvertiserGroup
+  type
+    Scopes DFAReportingAdvertiserGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertiserGroupsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/Insert.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new advertiser group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.insert@.
+module Gogol.DFAReporting.AdvertiserGroups.Insert
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsInsert (..),
+    newDFAReportingAdvertiserGroupsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.insert@ method which the
+-- 'DFAReportingAdvertiserGroupsInsert' request conforms to.
+type DFAReportingAdvertiserGroupsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    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] AdvertiserGroup
+    Core.:> Core.Post '[Core.JSON] AdvertiserGroup
+
+-- | Inserts a new advertiser group.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsInsert' smart constructor.
+data DFAReportingAdvertiserGroupsInsert = DFAReportingAdvertiserGroupsInsert
+  { -- | 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 :: AdvertiserGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserGroupsInsert' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  AdvertiserGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsInsert
+newDFAReportingAdvertiserGroupsInsert payload profileId =
+  DFAReportingAdvertiserGroupsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsInsert where
+  type Rs DFAReportingAdvertiserGroupsInsert = AdvertiserGroup
+  type
+    Scopes DFAReportingAdvertiserGroupsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserGroupsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/List.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/List.hs
@@ -0,0 +1,144 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.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)
+--
+-- Retrieves a list of advertiser groups, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.list@.
+module Gogol.DFAReporting.AdvertiserGroups.List
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsList (..),
+    newDFAReportingAdvertiserGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.list@ method which the
+-- 'DFAReportingAdvertiserGroupsList' request conforms to.
+type DFAReportingAdvertiserGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" AdvertiserGroupsListSortField
+    Core.:> Core.QueryParam "sortOrder" AdvertiserGroupsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] AdvertiserGroupsListResponse
+
+-- | Retrieves a list of advertiser groups, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsList' smart constructor.
+data DFAReportingAdvertiserGroupsList = DFAReportingAdvertiserGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only advertiser groups with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"advertiser/2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: AdvertiserGroupsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AdvertiserGroupsListSortOrder,
+    -- | 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 'DFAReportingAdvertiserGroupsList' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsList
+newDFAReportingAdvertiserGroupsList profileId =
+  DFAReportingAdvertiserGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = AdvertiserGroupsListSortField_ID,
+      sortOrder = AdvertiserGroupsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsList where
+  type
+    Rs DFAReportingAdvertiserGroupsList =
+      AdvertiserGroupsListResponse
+  type
+    Scopes DFAReportingAdvertiserGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertiserGroupsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/Patch.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing advertiser group. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.patch@.
+module Gogol.DFAReporting.AdvertiserGroups.Patch
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsPatch (..),
+    newDFAReportingAdvertiserGroupsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.patch@ method which the
+-- 'DFAReportingAdvertiserGroupsPatch' request conforms to.
+type DFAReportingAdvertiserGroupsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] AdvertiserGroup
+    Core.:> Core.Patch '[Core.JSON] AdvertiserGroup
+
+-- | Updates an existing advertiser group. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsPatch' smart constructor.
+data DFAReportingAdvertiserGroupsPatch = DFAReportingAdvertiserGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Advertiser Group ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: AdvertiserGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserGroupsPatch' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsPatch ::
+  -- |  Required. Advertiser Group ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  AdvertiserGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsPatch
+newDFAReportingAdvertiserGroupsPatch id payload profileId =
+  DFAReportingAdvertiserGroupsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsPatch where
+  type Rs DFAReportingAdvertiserGroupsPatch = AdvertiserGroup
+  type
+    Scopes DFAReportingAdvertiserGroupsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserGroupsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserGroups/Update.hs b/gen/Gogol/DFAReporting/AdvertiserGroups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserGroups/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserGroups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing advertiser group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserGroups.update@.
+module Gogol.DFAReporting.AdvertiserGroups.Update
+  ( -- * Resource
+    DFAReportingAdvertiserGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserGroupsUpdate (..),
+    newDFAReportingAdvertiserGroupsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserGroups.update@ method which the
+-- 'DFAReportingAdvertiserGroupsUpdate' request conforms to.
+type DFAReportingAdvertiserGroupsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserGroups"
+    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] AdvertiserGroup
+    Core.:> Core.Put '[Core.JSON] AdvertiserGroup
+
+-- | Updates an existing advertiser group.
+--
+-- /See:/ 'newDFAReportingAdvertiserGroupsUpdate' smart constructor.
+data DFAReportingAdvertiserGroupsUpdate = DFAReportingAdvertiserGroupsUpdate
+  { -- | 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 :: AdvertiserGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserGroupsUpdate' with the minimum fields required to make a request.
+newDFAReportingAdvertiserGroupsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  AdvertiserGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserGroupsUpdate
+newDFAReportingAdvertiserGroupsUpdate payload profileId =
+  DFAReportingAdvertiserGroupsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserGroupsUpdate where
+  type Rs DFAReportingAdvertiserGroupsUpdate = AdvertiserGroup
+  type
+    Scopes DFAReportingAdvertiserGroupsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserGroupsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserGroupsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserInvoices/List.hs b/gen/Gogol/DFAReporting/AdvertiserInvoices/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserInvoices/List.hs
@@ -0,0 +1,139 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserInvoices.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)
+--
+-- Retrieves a list of invoices for a particular issue month. The api only works if the billing profile invoice level is set to either advertiser or campaign non-consolidated invoice level.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserInvoices.list@.
+module Gogol.DFAReporting.AdvertiserInvoices.List
+  ( -- * Resource
+    DFAReportingAdvertiserInvoicesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserInvoicesList (..),
+    newDFAReportingAdvertiserInvoicesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserInvoices.list@ method which the
+-- 'DFAReportingAdvertiserInvoicesList' request conforms to.
+type DFAReportingAdvertiserInvoicesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    Core.:> Core.Capture "advertiserId" Core.Int64
+    Core.:> "invoices"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "issueMonth" Core.Text
+    Core.:> Core.QueryParam "maxResults" 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] AdvertiserInvoicesListResponse
+
+-- | Retrieves a list of invoices for a particular issue month. The api only works if the billing profile invoice level is set to either advertiser or campaign non-consolidated invoice level.
+--
+-- /See:/ 'newDFAReportingAdvertiserInvoicesList' smart constructor.
+data DFAReportingAdvertiserInvoicesList = DFAReportingAdvertiserInvoicesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Advertiser ID of this invoice.
+    advertiserId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Month for which invoices are needed in the format YYYYMM. Required field
+    issueMonth :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserInvoicesList' with the minimum fields required to make a request.
+newDFAReportingAdvertiserInvoicesList ::
+  -- |  Advertiser ID of this invoice. See 'advertiserId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserInvoicesList
+newDFAReportingAdvertiserInvoicesList advertiserId profileId =
+  DFAReportingAdvertiserInvoicesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = advertiserId,
+      callback = Core.Nothing,
+      issueMonth = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserInvoicesList where
+  type
+    Rs DFAReportingAdvertiserInvoicesList =
+      AdvertiserInvoicesListResponse
+  type
+    Scopes DFAReportingAdvertiserInvoicesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserInvoicesList {..} =
+    go
+      profileId
+      advertiserId
+      xgafv
+      accessToken
+      callback
+      issueMonth
+      (Core.Just maxResults)
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserInvoicesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserLandingPages/Get.hs b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserLandingPages.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one landing page by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserLandingPages.get@.
+module Gogol.DFAReporting.AdvertiserLandingPages.Get
+  ( -- * Resource
+    DFAReportingAdvertiserLandingPagesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserLandingPagesGet (..),
+    newDFAReportingAdvertiserLandingPagesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserLandingPages.get@ method which the
+-- 'DFAReportingAdvertiserLandingPagesGet' request conforms to.
+type DFAReportingAdvertiserLandingPagesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserLandingPages"
+    Core.:> Core.Capture "id" 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] LandingPage
+
+-- | Gets one landing page by ID.
+--
+-- /See:/ 'newDFAReportingAdvertiserLandingPagesGet' smart constructor.
+data DFAReportingAdvertiserLandingPagesGet = DFAReportingAdvertiserLandingPagesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Landing page ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserLandingPagesGet' with the minimum fields required to make a request.
+newDFAReportingAdvertiserLandingPagesGet ::
+  -- |  Landing page ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserLandingPagesGet
+newDFAReportingAdvertiserLandingPagesGet id profileId =
+  DFAReportingAdvertiserLandingPagesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserLandingPagesGet where
+  type Rs DFAReportingAdvertiserLandingPagesGet = LandingPage
+  type
+    Scopes DFAReportingAdvertiserLandingPagesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserLandingPagesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserLandingPagesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserLandingPages/Insert.hs b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Insert.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserLandingPages.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new landing page.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserLandingPages.insert@.
+module Gogol.DFAReporting.AdvertiserLandingPages.Insert
+  ( -- * Resource
+    DFAReportingAdvertiserLandingPagesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserLandingPagesInsert (..),
+    newDFAReportingAdvertiserLandingPagesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserLandingPages.insert@ method which the
+-- 'DFAReportingAdvertiserLandingPagesInsert' request conforms to.
+type DFAReportingAdvertiserLandingPagesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserLandingPages"
+    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] LandingPage
+    Core.:> Core.Post '[Core.JSON] LandingPage
+
+-- | Inserts a new landing page.
+--
+-- /See:/ 'newDFAReportingAdvertiserLandingPagesInsert' smart constructor.
+data DFAReportingAdvertiserLandingPagesInsert = DFAReportingAdvertiserLandingPagesInsert
+  { -- | 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 :: LandingPage,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserLandingPagesInsert' with the minimum fields required to make a request.
+newDFAReportingAdvertiserLandingPagesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  LandingPage ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserLandingPagesInsert
+newDFAReportingAdvertiserLandingPagesInsert payload profileId =
+  DFAReportingAdvertiserLandingPagesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingAdvertiserLandingPagesInsert
+  where
+  type Rs DFAReportingAdvertiserLandingPagesInsert = LandingPage
+  type
+    Scopes DFAReportingAdvertiserLandingPagesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserLandingPagesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserLandingPagesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserLandingPages/List.hs b/gen/Gogol/DFAReporting/AdvertiserLandingPages/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserLandingPages/List.hs
@@ -0,0 +1,169 @@
+{-# 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.DFAReporting.AdvertiserLandingPages.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)
+--
+-- Retrieves a list of landing pages.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserLandingPages.list@.
+module Gogol.DFAReporting.AdvertiserLandingPages.List
+  ( -- * Resource
+    DFAReportingAdvertiserLandingPagesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserLandingPagesList (..),
+    newDFAReportingAdvertiserLandingPagesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserLandingPages.list@ method which the
+-- 'DFAReportingAdvertiserLandingPagesList' request conforms to.
+type DFAReportingAdvertiserLandingPagesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserLandingPages"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "archived" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "campaignIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" AdvertiserLandingPagesListSortField
+    Core.:> Core.QueryParam "sortOrder" AdvertiserLandingPagesListSortOrder
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              AdvertiserLandingPagesListResponse
+
+-- | Retrieves a list of landing pages.
+--
+-- /See:/ 'newDFAReportingAdvertiserLandingPagesList' smart constructor.
+data DFAReportingAdvertiserLandingPagesList = DFAReportingAdvertiserLandingPagesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only landing pages that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only archived landing pages. Don\'t set this field to select both archived and non-archived landing pages.
+    archived :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only landing pages that are associated with these campaigns.
+    campaignIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only landing pages with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for landing pages by name or ID. Wildcards (/) are allowed. For example, \"landingpage/2017\" will return landing pages with names like \"landingpage July 2017\", \"landingpage March 2017\", or simply \"landingpage 2017\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"landingpage\" will match campaigns with name \"my landingpage\", \"landingpage 2015\", or simply \"landingpage\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: AdvertiserLandingPagesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AdvertiserLandingPagesListSortOrder,
+    -- | Select only landing pages that belong to this subaccount.
+    subaccountId :: (Core.Maybe 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 'DFAReportingAdvertiserLandingPagesList' with the minimum fields required to make a request.
+newDFAReportingAdvertiserLandingPagesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserLandingPagesList
+newDFAReportingAdvertiserLandingPagesList profileId =
+  DFAReportingAdvertiserLandingPagesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      archived = Core.Nothing,
+      callback = Core.Nothing,
+      campaignIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = AdvertiserLandingPagesListSortField_ID,
+      sortOrder =
+        AdvertiserLandingPagesListSortOrder_Ascending,
+      subaccountId = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserLandingPagesList where
+  type
+    Rs DFAReportingAdvertiserLandingPagesList =
+      AdvertiserLandingPagesListResponse
+  type
+    Scopes DFAReportingAdvertiserLandingPagesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserLandingPagesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserIds Core.^. Core._Default)
+      archived
+      callback
+      (campaignIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      subaccountId
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserLandingPagesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserLandingPages/Patch.hs b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserLandingPages.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing landing page. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserLandingPages.patch@.
+module Gogol.DFAReporting.AdvertiserLandingPages.Patch
+  ( -- * Resource
+    DFAReportingAdvertiserLandingPagesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserLandingPagesPatch (..),
+    newDFAReportingAdvertiserLandingPagesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserLandingPages.patch@ method which the
+-- 'DFAReportingAdvertiserLandingPagesPatch' request conforms to.
+type DFAReportingAdvertiserLandingPagesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserLandingPages"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] LandingPage
+    Core.:> Core.Patch '[Core.JSON] LandingPage
+
+-- | Updates an existing landing page. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAdvertiserLandingPagesPatch' smart constructor.
+data DFAReportingAdvertiserLandingPagesPatch = DFAReportingAdvertiserLandingPagesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Landing Page ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: LandingPage,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserLandingPagesPatch' with the minimum fields required to make a request.
+newDFAReportingAdvertiserLandingPagesPatch ::
+  -- |  Required. Landing Page ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  LandingPage ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserLandingPagesPatch
+newDFAReportingAdvertiserLandingPagesPatch id payload profileId =
+  DFAReportingAdvertiserLandingPagesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertiserLandingPagesPatch where
+  type Rs DFAReportingAdvertiserLandingPagesPatch = LandingPage
+  type
+    Scopes DFAReportingAdvertiserLandingPagesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserLandingPagesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserLandingPagesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/AdvertiserLandingPages/Update.hs b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/AdvertiserLandingPages/Update.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.AdvertiserLandingPages.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing landing page.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertiserLandingPages.update@.
+module Gogol.DFAReporting.AdvertiserLandingPages.Update
+  ( -- * Resource
+    DFAReportingAdvertiserLandingPagesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertiserLandingPagesUpdate (..),
+    newDFAReportingAdvertiserLandingPagesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertiserLandingPages.update@ method which the
+-- 'DFAReportingAdvertiserLandingPagesUpdate' request conforms to.
+type DFAReportingAdvertiserLandingPagesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertiserLandingPages"
+    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] LandingPage
+    Core.:> Core.Put '[Core.JSON] LandingPage
+
+-- | Updates an existing landing page.
+--
+-- /See:/ 'newDFAReportingAdvertiserLandingPagesUpdate' smart constructor.
+data DFAReportingAdvertiserLandingPagesUpdate = DFAReportingAdvertiserLandingPagesUpdate
+  { -- | 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 :: LandingPage,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertiserLandingPagesUpdate' with the minimum fields required to make a request.
+newDFAReportingAdvertiserLandingPagesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  LandingPage ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertiserLandingPagesUpdate
+newDFAReportingAdvertiserLandingPagesUpdate payload profileId =
+  DFAReportingAdvertiserLandingPagesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingAdvertiserLandingPagesUpdate
+  where
+  type Rs DFAReportingAdvertiserLandingPagesUpdate = LandingPage
+  type
+    Scopes DFAReportingAdvertiserLandingPagesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertiserLandingPagesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingAdvertiserLandingPagesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Advertisers/Get.hs b/gen/Gogol/DFAReporting/Advertisers/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Advertisers/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Advertisers.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one advertiser by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertisers.get@.
+module Gogol.DFAReporting.Advertisers.Get
+  ( -- * Resource
+    DFAReportingAdvertisersGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertisersGet (..),
+    newDFAReportingAdvertisersGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertisers.get@ method which the
+-- 'DFAReportingAdvertisersGet' request conforms to.
+type DFAReportingAdvertisersGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    Core.:> Core.Capture "id" 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] Advertiser
+
+-- | Gets one advertiser by ID.
+--
+-- /See:/ 'newDFAReportingAdvertisersGet' smart constructor.
+data DFAReportingAdvertisersGet = DFAReportingAdvertisersGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Advertiser ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertisersGet' with the minimum fields required to make a request.
+newDFAReportingAdvertisersGet ::
+  -- |  Advertiser ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertisersGet
+newDFAReportingAdvertisersGet id profileId =
+  DFAReportingAdvertisersGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertisersGet where
+  type Rs DFAReportingAdvertisersGet = Advertiser
+  type
+    Scopes DFAReportingAdvertisersGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertisersGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertisersGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Advertisers/Insert.hs b/gen/Gogol/DFAReporting/Advertisers/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Advertisers/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Advertisers.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new advertiser.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertisers.insert@.
+module Gogol.DFAReporting.Advertisers.Insert
+  ( -- * Resource
+    DFAReportingAdvertisersInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertisersInsert (..),
+    newDFAReportingAdvertisersInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertisers.insert@ method which the
+-- 'DFAReportingAdvertisersInsert' request conforms to.
+type DFAReportingAdvertisersInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    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] Advertiser
+    Core.:> Core.Post '[Core.JSON] Advertiser
+
+-- | Inserts a new advertiser.
+--
+-- /See:/ 'newDFAReportingAdvertisersInsert' smart constructor.
+data DFAReportingAdvertisersInsert = DFAReportingAdvertisersInsert
+  { -- | 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 :: Advertiser,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertisersInsert' with the minimum fields required to make a request.
+newDFAReportingAdvertisersInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Advertiser ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertisersInsert
+newDFAReportingAdvertisersInsert payload profileId =
+  DFAReportingAdvertisersInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertisersInsert where
+  type Rs DFAReportingAdvertisersInsert = Advertiser
+  type
+    Scopes DFAReportingAdvertisersInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertisersInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertisersInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Advertisers/List.hs b/gen/Gogol/DFAReporting/Advertisers/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Advertisers/List.hs
@@ -0,0 +1,172 @@
+{-# 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.DFAReporting.Advertisers.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)
+--
+-- Retrieves a list of advertisers, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertisers.list@.
+module Gogol.DFAReporting.Advertisers.List
+  ( -- * Resource
+    DFAReportingAdvertisersListResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertisersList (..),
+    newDFAReportingAdvertisersList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertisers.list@ method which the
+-- 'DFAReportingAdvertisersList' request conforms to.
+type DFAReportingAdvertisersListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserGroupIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "floodlightConfigurationIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "includeAdvertisersWithoutGroupsOnly" Core.Bool
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "onlyParent" Core.Bool
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" AdvertisersListSortField
+    Core.:> Core.QueryParam "sortOrder" AdvertisersListSortOrder
+    Core.:> Core.QueryParam "status" AdvertisersListStatus
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] AdvertisersListResponse
+
+-- | Retrieves a list of advertisers, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingAdvertisersList' smart constructor.
+data DFAReportingAdvertisersList = DFAReportingAdvertisersList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only advertisers with these advertiser group IDs.
+    advertiserGroupIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only advertisers with these floodlight configuration IDs.
+    floodlightConfigurationIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only advertisers with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only advertisers which do not belong to any advertiser group.
+    includeAdvertisersWithoutGroupsOnly :: (Core.Maybe Core.Bool),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only advertisers which use another advertiser\'s floodlight configuration.
+    onlyParent :: (Core.Maybe Core.Bool),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"advertiser/2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\" .
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: AdvertisersListSortField,
+    -- | Order of sorted results.
+    sortOrder :: AdvertisersListSortOrder,
+    -- | Select only advertisers with the specified status.
+    status :: (Core.Maybe AdvertisersListStatus),
+    -- | Select only advertisers with these subaccount IDs.
+    subaccountId :: (Core.Maybe 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 'DFAReportingAdvertisersList' with the minimum fields required to make a request.
+newDFAReportingAdvertisersList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertisersList
+newDFAReportingAdvertisersList profileId =
+  DFAReportingAdvertisersList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserGroupIds = Core.Nothing,
+      callback = Core.Nothing,
+      floodlightConfigurationIds = Core.Nothing,
+      ids = Core.Nothing,
+      includeAdvertisersWithoutGroupsOnly = Core.Nothing,
+      maxResults = 1000,
+      onlyParent = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = AdvertisersListSortField_ID,
+      sortOrder = AdvertisersListSortOrder_Ascending,
+      status = Core.Nothing,
+      subaccountId = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertisersList where
+  type Rs DFAReportingAdvertisersList = AdvertisersListResponse
+  type
+    Scopes DFAReportingAdvertisersList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertisersList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserGroupIds Core.^. Core._Default)
+      callback
+      (floodlightConfigurationIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      includeAdvertisersWithoutGroupsOnly
+      (Core.Just maxResults)
+      onlyParent
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      status
+      subaccountId
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertisersListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Advertisers/Patch.hs b/gen/Gogol/DFAReporting/Advertisers/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Advertisers/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Advertisers.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing advertiser. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertisers.patch@.
+module Gogol.DFAReporting.Advertisers.Patch
+  ( -- * Resource
+    DFAReportingAdvertisersPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertisersPatch (..),
+    newDFAReportingAdvertisersPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertisers.patch@ method which the
+-- 'DFAReportingAdvertisersPatch' request conforms to.
+type DFAReportingAdvertisersPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Advertiser
+    Core.:> Core.Patch '[Core.JSON] Advertiser
+
+-- | Updates an existing advertiser. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingAdvertisersPatch' smart constructor.
+data DFAReportingAdvertisersPatch = DFAReportingAdvertisersPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Advertiser ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Advertiser,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertisersPatch' with the minimum fields required to make a request.
+newDFAReportingAdvertisersPatch ::
+  -- |  Required. Advertiser ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Advertiser ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertisersPatch
+newDFAReportingAdvertisersPatch id payload profileId =
+  DFAReportingAdvertisersPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertisersPatch where
+  type Rs DFAReportingAdvertisersPatch = Advertiser
+  type
+    Scopes DFAReportingAdvertisersPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertisersPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertisersPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Advertisers/Update.hs b/gen/Gogol/DFAReporting/Advertisers/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Advertisers/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Advertisers.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing advertiser.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.advertisers.update@.
+module Gogol.DFAReporting.Advertisers.Update
+  ( -- * Resource
+    DFAReportingAdvertisersUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingAdvertisersUpdate (..),
+    newDFAReportingAdvertisersUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.advertisers.update@ method which the
+-- 'DFAReportingAdvertisersUpdate' request conforms to.
+type DFAReportingAdvertisersUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "advertisers"
+    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] Advertiser
+    Core.:> Core.Put '[Core.JSON] Advertiser
+
+-- | Updates an existing advertiser.
+--
+-- /See:/ 'newDFAReportingAdvertisersUpdate' smart constructor.
+data DFAReportingAdvertisersUpdate = DFAReportingAdvertisersUpdate
+  { -- | 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 :: Advertiser,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingAdvertisersUpdate' with the minimum fields required to make a request.
+newDFAReportingAdvertisersUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Advertiser ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingAdvertisersUpdate
+newDFAReportingAdvertisersUpdate payload profileId =
+  DFAReportingAdvertisersUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingAdvertisersUpdate where
+  type Rs DFAReportingAdvertisersUpdate = Advertiser
+  type
+    Scopes DFAReportingAdvertisersUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingAdvertisersUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingAdvertisersUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingAssignments/Insert.hs b/gen/Gogol/DFAReporting/BillingAssignments/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingAssignments/Insert.hs
@@ -0,0 +1,132 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.BillingAssignments.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new billing assignment and returns the new assignment. Only one of advertiser/id or campaign/id is support per request. If the new assignment has no effect (assigning a campaign to the parent advertiser billing profile or assigning an advertiser to the account billing profile), no assignment will be returned.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingAssignments.insert@.
+module Gogol.DFAReporting.BillingAssignments.Insert
+  ( -- * Resource
+    DFAReportingBillingAssignmentsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingAssignmentsInsert (..),
+    newDFAReportingBillingAssignmentsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingAssignments.insert@ method which the
+-- 'DFAReportingBillingAssignmentsInsert' request conforms to.
+type DFAReportingBillingAssignmentsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    Core.:> Core.Capture "billingProfileId" Core.Int64
+    Core.:> "billingAssignments"
+    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] BillingAssignment
+    Core.:> Core.Post '[Core.JSON] BillingAssignment
+
+-- | Inserts a new billing assignment and returns the new assignment. Only one of advertiser/id or campaign/id is support per request. If the new assignment has no effect (assigning a campaign to the parent advertiser billing profile or assigning an advertiser to the account billing profile), no assignment will be returned.
+--
+-- /See:/ 'newDFAReportingBillingAssignmentsInsert' smart constructor.
+data DFAReportingBillingAssignmentsInsert = DFAReportingBillingAssignmentsInsert
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Billing profile ID of this billing assignment.
+    billingProfileId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: BillingAssignment,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBillingAssignmentsInsert' with the minimum fields required to make a request.
+newDFAReportingBillingAssignmentsInsert ::
+  -- |  Billing profile ID of this billing assignment. See 'billingProfileId'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  BillingAssignment ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingAssignmentsInsert
+newDFAReportingBillingAssignmentsInsert
+  billingProfileId
+  payload
+  profileId =
+    DFAReportingBillingAssignmentsInsert
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        billingProfileId = billingProfileId,
+        callback = Core.Nothing,
+        payload = payload,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingBillingAssignmentsInsert where
+  type Rs DFAReportingBillingAssignmentsInsert = BillingAssignment
+  type
+    Scopes DFAReportingBillingAssignmentsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingAssignmentsInsert {..} =
+    go
+      profileId
+      billingProfileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingBillingAssignmentsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingAssignments/List.hs b/gen/Gogol/DFAReporting/BillingAssignments/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingAssignments/List.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.BillingAssignments.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)
+--
+-- Retrieves a list of billing assignments.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingAssignments.list@.
+module Gogol.DFAReporting.BillingAssignments.List
+  ( -- * Resource
+    DFAReportingBillingAssignmentsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingAssignmentsList (..),
+    newDFAReportingBillingAssignmentsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingAssignments.list@ method which the
+-- 'DFAReportingBillingAssignmentsList' request conforms to.
+type DFAReportingBillingAssignmentsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    Core.:> Core.Capture "billingProfileId" Core.Int64
+    Core.:> "billingAssignments"
+    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] BillingAssignmentsListResponse
+
+-- | Retrieves a list of billing assignments.
+--
+-- /See:/ 'newDFAReportingBillingAssignmentsList' smart constructor.
+data DFAReportingBillingAssignmentsList = DFAReportingBillingAssignmentsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Billing profile ID of this billing assignment.
+    billingProfileId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBillingAssignmentsList' with the minimum fields required to make a request.
+newDFAReportingBillingAssignmentsList ::
+  -- |  Billing profile ID of this billing assignment. See 'billingProfileId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingAssignmentsList
+newDFAReportingBillingAssignmentsList billingProfileId profileId =
+  DFAReportingBillingAssignmentsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      billingProfileId = billingProfileId,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBillingAssignmentsList where
+  type
+    Rs DFAReportingBillingAssignmentsList =
+      BillingAssignmentsListResponse
+  type
+    Scopes DFAReportingBillingAssignmentsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingAssignmentsList {..} =
+    go
+      profileId
+      billingProfileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingBillingAssignmentsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingProfiles/Get.hs b/gen/Gogol/DFAReporting/BillingProfiles/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingProfiles/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.BillingProfiles.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one billing profile by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingProfiles.get@.
+module Gogol.DFAReporting.BillingProfiles.Get
+  ( -- * Resource
+    DFAReportingBillingProfilesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingProfilesGet (..),
+    newDFAReportingBillingProfilesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingProfiles.get@ method which the
+-- 'DFAReportingBillingProfilesGet' request conforms to.
+type DFAReportingBillingProfilesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    Core.:> Core.Capture "id" 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] BillingProfile
+
+-- | Gets one billing profile by ID.
+--
+-- /See:/ 'newDFAReportingBillingProfilesGet' smart constructor.
+data DFAReportingBillingProfilesGet = DFAReportingBillingProfilesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Billing Profile ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBillingProfilesGet' with the minimum fields required to make a request.
+newDFAReportingBillingProfilesGet ::
+  -- |  Billing Profile ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingProfilesGet
+newDFAReportingBillingProfilesGet id profileId =
+  DFAReportingBillingProfilesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBillingProfilesGet where
+  type Rs DFAReportingBillingProfilesGet = BillingProfile
+  type
+    Scopes DFAReportingBillingProfilesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingProfilesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingBillingProfilesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingProfiles/List.hs b/gen/Gogol/DFAReporting/BillingProfiles/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingProfiles/List.hs
@@ -0,0 +1,164 @@
+{-# 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.DFAReporting.BillingProfiles.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)
+--
+-- Retrieves a list of billing profiles, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingProfiles.list@.
+module Gogol.DFAReporting.BillingProfiles.List
+  ( -- * Resource
+    DFAReportingBillingProfilesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingProfilesList (..),
+    newDFAReportingBillingProfilesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingProfiles.list@ method which the
+-- 'DFAReportingBillingProfilesList' request conforms to.
+type DFAReportingBillingProfilesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "currency_code" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "name" Core.Text
+    Core.:> Core.QueryParam "onlySuggestion" Core.Bool
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "sortField" BillingProfilesListSortField
+    Core.:> Core.QueryParam "sortOrder" BillingProfilesListSortOrder
+    Core.:> Core.QueryParams "status" BillingProfilesListStatus
+    Core.:> Core.QueryParams "subaccountIds" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] BillingProfilesListResponse
+
+-- | Retrieves a list of billing profiles, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingBillingProfilesList' smart constructor.
+data DFAReportingBillingProfilesList = DFAReportingBillingProfilesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only billing profile with currency.
+    currencyCode :: (Core.Maybe Core.Text),
+    -- | Select only billing profile with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Allows searching for billing profiles by name. Wildcards (/) are allowed. For example, \"profile/2020\" will return objects with names like \"profile June 2020\", \"profile April 2020\", or simply \"profile 2020\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"profile\" will match objects with name \"my profile\", \"profile 2021\", or simply \"profile\".
+    name :: (Core.Maybe Core.Text),
+    -- | Select only billing profile which is suggested for the currency/code & subaccount/id using the Billing Suggestion API.
+    onlySuggestion :: (Core.Maybe Core.Bool),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Field by which to sort the list.
+    sortField :: BillingProfilesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: BillingProfilesListSortOrder,
+    -- | Select only billing profile with the specified status.
+    status :: (Core.Maybe [BillingProfilesListStatus]),
+    -- | Select only billing profile with the specified subaccount.When only/suggestion is true, only a single subaccount/id is supported.
+    subaccountIds :: (Core.Maybe [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 'DFAReportingBillingProfilesList' with the minimum fields required to make a request.
+newDFAReportingBillingProfilesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingProfilesList
+newDFAReportingBillingProfilesList profileId =
+  DFAReportingBillingProfilesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      currencyCode = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      name = Core.Nothing,
+      onlySuggestion = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      sortField = BillingProfilesListSortField_ID,
+      sortOrder = BillingProfilesListSortOrder_Ascending,
+      status = Core.Nothing,
+      subaccountIds = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBillingProfilesList where
+  type
+    Rs DFAReportingBillingProfilesList =
+      BillingProfilesListResponse
+  type
+    Scopes DFAReportingBillingProfilesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingProfilesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      currencyCode
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      name
+      onlySuggestion
+      pageToken
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      (status Core.^. Core._Default)
+      (subaccountIds Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingBillingProfilesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingProfiles/Update.hs b/gen/Gogol/DFAReporting/BillingProfiles/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingProfiles/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.BillingProfiles.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing billing profile.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingProfiles.update@.
+module Gogol.DFAReporting.BillingProfiles.Update
+  ( -- * Resource
+    DFAReportingBillingProfilesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingProfilesUpdate (..),
+    newDFAReportingBillingProfilesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingProfiles.update@ method which the
+-- 'DFAReportingBillingProfilesUpdate' request conforms to.
+type DFAReportingBillingProfilesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    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] BillingProfile
+    Core.:> Core.Put '[Core.JSON] BillingProfile
+
+-- | Updates an existing billing profile.
+--
+-- /See:/ 'newDFAReportingBillingProfilesUpdate' smart constructor.
+data DFAReportingBillingProfilesUpdate = DFAReportingBillingProfilesUpdate
+  { -- | 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 :: BillingProfile,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBillingProfilesUpdate' with the minimum fields required to make a request.
+newDFAReportingBillingProfilesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  BillingProfile ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingProfilesUpdate
+newDFAReportingBillingProfilesUpdate payload profileId =
+  DFAReportingBillingProfilesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBillingProfilesUpdate where
+  type Rs DFAReportingBillingProfilesUpdate = BillingProfile
+  type
+    Scopes DFAReportingBillingProfilesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingProfilesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingBillingProfilesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/BillingRates/List.hs b/gen/Gogol/DFAReporting/BillingRates/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/BillingRates/List.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.DFAReporting.BillingRates.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)
+--
+-- Retrieves a list of billing rates. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.billingRates.list@.
+module Gogol.DFAReporting.BillingRates.List
+  ( -- * Resource
+    DFAReportingBillingRatesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingBillingRatesList (..),
+    newDFAReportingBillingRatesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.billingRates.list@ method which the
+-- 'DFAReportingBillingRatesList' request conforms to.
+type DFAReportingBillingRatesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "billingProfiles"
+    Core.:> Core.Capture "billingProfileId" Core.Int64
+    Core.:> "billingRates"
+    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] BillingRatesListResponse
+
+-- | Retrieves a list of billing rates. This method supports paging.
+--
+-- /See:/ 'newDFAReportingBillingRatesList' smart constructor.
+data DFAReportingBillingRatesList = DFAReportingBillingRatesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Billing profile ID of this billing rate.
+    billingProfileId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBillingRatesList' with the minimum fields required to make a request.
+newDFAReportingBillingRatesList ::
+  -- |  Billing profile ID of this billing rate. See 'billingProfileId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBillingRatesList
+newDFAReportingBillingRatesList billingProfileId profileId =
+  DFAReportingBillingRatesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      billingProfileId = billingProfileId,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBillingRatesList where
+  type Rs DFAReportingBillingRatesList = BillingRatesListResponse
+  type
+    Scopes DFAReportingBillingRatesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBillingRatesList {..} =
+    go
+      profileId
+      billingProfileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingBillingRatesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Browsers/List.hs b/gen/Gogol/DFAReporting/Browsers/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Browsers/List.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.DFAReporting.Browsers.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)
+--
+-- Retrieves a list of browsers.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.browsers.list@.
+module Gogol.DFAReporting.Browsers.List
+  ( -- * Resource
+    DFAReportingBrowsersListResource,
+
+    -- ** Constructing a Request
+    DFAReportingBrowsersList (..),
+    newDFAReportingBrowsersList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.browsers.list@ method which the
+-- 'DFAReportingBrowsersList' request conforms to.
+type DFAReportingBrowsersListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "browsers"
+    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] BrowsersListResponse
+
+-- | Retrieves a list of browsers.
+--
+-- /See:/ 'newDFAReportingBrowsersList' smart constructor.
+data DFAReportingBrowsersList = DFAReportingBrowsersList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingBrowsersList' with the minimum fields required to make a request.
+newDFAReportingBrowsersList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingBrowsersList
+newDFAReportingBrowsersList profileId =
+  DFAReportingBrowsersList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingBrowsersList where
+  type Rs DFAReportingBrowsersList = BrowsersListResponse
+  type
+    Scopes DFAReportingBrowsersList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingBrowsersList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingBrowsersListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CampaignCreativeAssociations/Insert.hs b/gen/Gogol/DFAReporting/CampaignCreativeAssociations/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CampaignCreativeAssociations/Insert.hs
@@ -0,0 +1,138 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CampaignCreativeAssociations.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaignCreativeAssociations.insert@.
+module Gogol.DFAReporting.CampaignCreativeAssociations.Insert
+  ( -- * Resource
+    DFAReportingCampaignCreativeAssociationsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignCreativeAssociationsInsert (..),
+    newDFAReportingCampaignCreativeAssociationsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaignCreativeAssociations.insert@ method which the
+-- 'DFAReportingCampaignCreativeAssociationsInsert' request conforms to.
+type DFAReportingCampaignCreativeAssociationsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    Core.:> Core.Capture "campaignId" Core.Int64
+    Core.:> "campaignCreativeAssociations"
+    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] CampaignCreativeAssociation
+    Core.:> Core.Post '[Core.JSON] CampaignCreativeAssociation
+
+-- | Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.
+--
+-- /See:/ 'newDFAReportingCampaignCreativeAssociationsInsert' smart constructor.
+data DFAReportingCampaignCreativeAssociationsInsert = DFAReportingCampaignCreativeAssociationsInsert
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Campaign ID in this association.
+    campaignId :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CampaignCreativeAssociation,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCampaignCreativeAssociationsInsert' with the minimum fields required to make a request.
+newDFAReportingCampaignCreativeAssociationsInsert ::
+  -- |  Campaign ID in this association. See 'campaignId'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CampaignCreativeAssociation ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignCreativeAssociationsInsert
+newDFAReportingCampaignCreativeAssociationsInsert
+  campaignId
+  payload
+  profileId =
+    DFAReportingCampaignCreativeAssociationsInsert
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        campaignId = campaignId,
+        payload = payload,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DFAReportingCampaignCreativeAssociationsInsert
+  where
+  type
+    Rs DFAReportingCampaignCreativeAssociationsInsert =
+      CampaignCreativeAssociation
+  type
+    Scopes DFAReportingCampaignCreativeAssociationsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignCreativeAssociationsInsert {..} =
+    go
+      profileId
+      campaignId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCampaignCreativeAssociationsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CampaignCreativeAssociations/List.hs b/gen/Gogol/DFAReporting/CampaignCreativeAssociations/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CampaignCreativeAssociations/List.hs
@@ -0,0 +1,148 @@
+{-# 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.DFAReporting.CampaignCreativeAssociations.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)
+--
+-- Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaignCreativeAssociations.list@.
+module Gogol.DFAReporting.CampaignCreativeAssociations.List
+  ( -- * Resource
+    DFAReportingCampaignCreativeAssociationsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignCreativeAssociationsList (..),
+    newDFAReportingCampaignCreativeAssociationsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaignCreativeAssociations.list@ method which the
+-- 'DFAReportingCampaignCreativeAssociationsList' request conforms to.
+type DFAReportingCampaignCreativeAssociationsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    Core.:> Core.Capture "campaignId" Core.Int64
+    Core.:> "campaignCreativeAssociations"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam
+              "sortOrder"
+              CampaignCreativeAssociationsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CampaignCreativeAssociationsListResponse
+
+-- | Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCampaignCreativeAssociationsList' smart constructor.
+data DFAReportingCampaignCreativeAssociationsList = DFAReportingCampaignCreativeAssociationsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Campaign ID in this association.
+    campaignId :: Core.Int64,
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Order of sorted results.
+    sortOrder :: CampaignCreativeAssociationsListSortOrder,
+    -- | 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 'DFAReportingCampaignCreativeAssociationsList' with the minimum fields required to make a request.
+newDFAReportingCampaignCreativeAssociationsList ::
+  -- |  Campaign ID in this association. See 'campaignId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignCreativeAssociationsList
+newDFAReportingCampaignCreativeAssociationsList
+  campaignId
+  profileId =
+    DFAReportingCampaignCreativeAssociationsList
+      { xgafv =
+          Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        campaignId = campaignId,
+        maxResults = 1000,
+        pageToken = Core.Nothing,
+        profileId = profileId,
+        sortOrder =
+          CampaignCreativeAssociationsListSortOrder_Ascending,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DFAReportingCampaignCreativeAssociationsList
+  where
+  type
+    Rs DFAReportingCampaignCreativeAssociationsList =
+      CampaignCreativeAssociationsListResponse
+  type
+    Scopes DFAReportingCampaignCreativeAssociationsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignCreativeAssociationsList {..} =
+    go
+      profileId
+      campaignId
+      xgafv
+      accessToken
+      callback
+      (Core.Just maxResults)
+      pageToken
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCampaignCreativeAssociationsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Campaigns/Get.hs b/gen/Gogol/DFAReporting/Campaigns/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Campaigns/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Campaigns.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one campaign by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaigns.get@.
+module Gogol.DFAReporting.Campaigns.Get
+  ( -- * Resource
+    DFAReportingCampaignsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignsGet (..),
+    newDFAReportingCampaignsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaigns.get@ method which the
+-- 'DFAReportingCampaignsGet' request conforms to.
+type DFAReportingCampaignsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    Core.:> Core.Capture "id" 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] Campaign
+
+-- | Gets one campaign by ID.
+--
+-- /See:/ 'newDFAReportingCampaignsGet' smart constructor.
+data DFAReportingCampaignsGet = DFAReportingCampaignsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Campaign ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCampaignsGet' with the minimum fields required to make a request.
+newDFAReportingCampaignsGet ::
+  -- |  Campaign ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignsGet
+newDFAReportingCampaignsGet id profileId =
+  DFAReportingCampaignsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCampaignsGet where
+  type Rs DFAReportingCampaignsGet = Campaign
+  type
+    Scopes DFAReportingCampaignsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCampaignsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Campaigns/Insert.hs b/gen/Gogol/DFAReporting/Campaigns/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Campaigns/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Campaigns.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new campaign.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaigns.insert@.
+module Gogol.DFAReporting.Campaigns.Insert
+  ( -- * Resource
+    DFAReportingCampaignsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignsInsert (..),
+    newDFAReportingCampaignsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaigns.insert@ method which the
+-- 'DFAReportingCampaignsInsert' request conforms to.
+type DFAReportingCampaignsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    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] Campaign
+    Core.:> Core.Post '[Core.JSON] Campaign
+
+-- | Inserts a new campaign.
+--
+-- /See:/ 'newDFAReportingCampaignsInsert' smart constructor.
+data DFAReportingCampaignsInsert = DFAReportingCampaignsInsert
+  { -- | 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 :: Campaign,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCampaignsInsert' with the minimum fields required to make a request.
+newDFAReportingCampaignsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Campaign ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignsInsert
+newDFAReportingCampaignsInsert payload profileId =
+  DFAReportingCampaignsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCampaignsInsert where
+  type Rs DFAReportingCampaignsInsert = Campaign
+  type
+    Scopes DFAReportingCampaignsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCampaignsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Campaigns/List.hs b/gen/Gogol/DFAReporting/Campaigns/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Campaigns/List.hs
@@ -0,0 +1,177 @@
+{-# 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.DFAReporting.Campaigns.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)
+--
+-- Retrieves a list of campaigns, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaigns.list@.
+module Gogol.DFAReporting.Campaigns.List
+  ( -- * Resource
+    DFAReportingCampaignsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignsList (..),
+    newDFAReportingCampaignsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaigns.list@ method which the
+-- 'DFAReportingCampaignsList' request conforms to.
+type DFAReportingCampaignsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserGroupIds" Core.Int64
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "archived" Core.Bool
+    Core.:> Core.QueryParam "atLeastOneOptimizationActivity" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "excludedIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "overriddenEventTagId" Core.Int64
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" CampaignsListSortField
+    Core.:> Core.QueryParam "sortOrder" CampaignsListSortOrder
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CampaignsListResponse
+
+-- | Retrieves a list of campaigns, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCampaignsList' smart constructor.
+data DFAReportingCampaignsList = DFAReportingCampaignsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only campaigns whose advertisers belong to these advertiser groups.
+    advertiserGroupIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only campaigns that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only archived campaigns. Don\'t set this field to select both archived and non-archived campaigns.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Select only campaigns that have at least one optimization activity.
+    atLeastOneOptimizationActivity :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Exclude campaigns with these IDs.
+    excludedIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only campaigns with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only campaigns that have overridden this event tag ID.
+    overriddenEventTagId :: (Core.Maybe Core.Int64),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for campaigns by name or ID. Wildcards (/) are allowed. For example, \"campaign/2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: CampaignsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: CampaignsListSortOrder,
+    -- | Select only campaigns that belong to this subaccount.
+    subaccountId :: (Core.Maybe 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 'DFAReportingCampaignsList' with the minimum fields required to make a request.
+newDFAReportingCampaignsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignsList
+newDFAReportingCampaignsList profileId =
+  DFAReportingCampaignsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserGroupIds = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      archived = Core.Nothing,
+      atLeastOneOptimizationActivity = Core.Nothing,
+      callback = Core.Nothing,
+      excludedIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      overriddenEventTagId = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = CampaignsListSortField_ID,
+      sortOrder = CampaignsListSortOrder_Ascending,
+      subaccountId = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCampaignsList where
+  type Rs DFAReportingCampaignsList = CampaignsListResponse
+  type
+    Scopes DFAReportingCampaignsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserGroupIds Core.^. Core._Default)
+      (advertiserIds Core.^. Core._Default)
+      archived
+      atLeastOneOptimizationActivity
+      callback
+      (excludedIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      overriddenEventTagId
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      subaccountId
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCampaignsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Campaigns/Patch.hs b/gen/Gogol/DFAReporting/Campaigns/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Campaigns/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Campaigns.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing campaign. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaigns.patch@.
+module Gogol.DFAReporting.Campaigns.Patch
+  ( -- * Resource
+    DFAReportingCampaignsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignsPatch (..),
+    newDFAReportingCampaignsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaigns.patch@ method which the
+-- 'DFAReportingCampaignsPatch' request conforms to.
+type DFAReportingCampaignsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Campaign
+    Core.:> Core.Patch '[Core.JSON] Campaign
+
+-- | Updates an existing campaign. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingCampaignsPatch' smart constructor.
+data DFAReportingCampaignsPatch = DFAReportingCampaignsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Campaign ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Campaign,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCampaignsPatch' with the minimum fields required to make a request.
+newDFAReportingCampaignsPatch ::
+  -- |  Required. Campaign ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Campaign ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignsPatch
+newDFAReportingCampaignsPatch id payload profileId =
+  DFAReportingCampaignsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCampaignsPatch where
+  type Rs DFAReportingCampaignsPatch = Campaign
+  type
+    Scopes DFAReportingCampaignsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCampaignsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Campaigns/Update.hs b/gen/Gogol/DFAReporting/Campaigns/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Campaigns/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Campaigns.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing campaign.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.campaigns.update@.
+module Gogol.DFAReporting.Campaigns.Update
+  ( -- * Resource
+    DFAReportingCampaignsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingCampaignsUpdate (..),
+    newDFAReportingCampaignsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.campaigns.update@ method which the
+-- 'DFAReportingCampaignsUpdate' request conforms to.
+type DFAReportingCampaignsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "campaigns"
+    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] Campaign
+    Core.:> Core.Put '[Core.JSON] Campaign
+
+-- | Updates an existing campaign.
+--
+-- /See:/ 'newDFAReportingCampaignsUpdate' smart constructor.
+data DFAReportingCampaignsUpdate = DFAReportingCampaignsUpdate
+  { -- | 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 :: Campaign,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCampaignsUpdate' with the minimum fields required to make a request.
+newDFAReportingCampaignsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Campaign ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCampaignsUpdate
+newDFAReportingCampaignsUpdate payload profileId =
+  DFAReportingCampaignsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCampaignsUpdate where
+  type Rs DFAReportingCampaignsUpdate = Campaign
+  type
+    Scopes DFAReportingCampaignsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCampaignsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCampaignsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ChangeLogs/Get.hs b/gen/Gogol/DFAReporting/ChangeLogs/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ChangeLogs/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ChangeLogs.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one change log by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.changeLogs.get@.
+module Gogol.DFAReporting.ChangeLogs.Get
+  ( -- * Resource
+    DFAReportingChangeLogsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingChangeLogsGet (..),
+    newDFAReportingChangeLogsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.changeLogs.get@ method which the
+-- 'DFAReportingChangeLogsGet' request conforms to.
+type DFAReportingChangeLogsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "changeLogs"
+    Core.:> Core.Capture "id" 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] ChangeLog
+
+-- | Gets one change log by ID.
+--
+-- /See:/ 'newDFAReportingChangeLogsGet' smart constructor.
+data DFAReportingChangeLogsGet = DFAReportingChangeLogsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Change log ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingChangeLogsGet' with the minimum fields required to make a request.
+newDFAReportingChangeLogsGet ::
+  -- |  Change log ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingChangeLogsGet
+newDFAReportingChangeLogsGet id profileId =
+  DFAReportingChangeLogsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingChangeLogsGet where
+  type Rs DFAReportingChangeLogsGet = ChangeLog
+  type
+    Scopes DFAReportingChangeLogsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingChangeLogsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingChangeLogsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ChangeLogs/List.hs b/gen/Gogol/DFAReporting/ChangeLogs/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ChangeLogs/List.hs
@@ -0,0 +1,162 @@
+{-# 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.DFAReporting.ChangeLogs.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves a list of change logs. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.changeLogs.list@.
+module Gogol.DFAReporting.ChangeLogs.List
+  ( -- * Resource
+    DFAReportingChangeLogsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingChangeLogsList (..),
+    newDFAReportingChangeLogsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.changeLogs.list@ method which the
+-- 'DFAReportingChangeLogsList' request conforms to.
+type DFAReportingChangeLogsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "changeLogs"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "action" ChangeLogsListAction
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxChangeTime" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "minChangeTime" Core.Text
+    Core.:> Core.QueryParams "objectIds" Core.Int64
+    Core.:> Core.QueryParam "objectType" ChangeLogsListObjectType
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParams "userProfileIds" Core.Int64
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ChangeLogsListResponse
+
+-- | Retrieves a list of change logs. This method supports paging.
+--
+-- /See:/ 'newDFAReportingChangeLogsList' smart constructor.
+data DFAReportingChangeLogsList = DFAReportingChangeLogsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only change logs with the specified action.
+    action :: (Core.Maybe ChangeLogsListAction),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only change logs with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date\/time string. For example, for 10:54 PM on July 18th, 2015, in the America\/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
+    maxChangeTime :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only change logs whose change time is after the specified minChangeTime.The time should be formatted as an RFC3339 date\/time string. For example, for 10:54 PM on July 18th, 2015, in the America\/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.
+    minChangeTime :: (Core.Maybe Core.Text),
+    -- | Select only change logs with these object IDs.
+    objectIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only change logs with the specified object type.
+    objectType :: (Core.Maybe ChangeLogsListObjectType),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Select only change logs whose object ID, user name, old or new values match the search string.
+    searchString :: (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),
+    -- | Select only change logs with these user profile IDs.
+    userProfileIds :: (Core.Maybe [Core.Int64])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DFAReportingChangeLogsList' with the minimum fields required to make a request.
+newDFAReportingChangeLogsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingChangeLogsList
+newDFAReportingChangeLogsList profileId =
+  DFAReportingChangeLogsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      action = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxChangeTime = Core.Nothing,
+      maxResults = 1000,
+      minChangeTime = Core.Nothing,
+      objectIds = Core.Nothing,
+      objectType = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing,
+      userProfileIds = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingChangeLogsList where
+  type Rs DFAReportingChangeLogsList = ChangeLogsListResponse
+  type
+    Scopes DFAReportingChangeLogsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingChangeLogsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      action
+      callback
+      (ids Core.^. Core._Default)
+      maxChangeTime
+      (Core.Just maxResults)
+      minChangeTime
+      (objectIds Core.^. Core._Default)
+      objectType
+      pageToken
+      searchString
+      uploadType
+      uploadProtocol
+      (userProfileIds Core.^. Core._Default)
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingChangeLogsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Cities/List.hs b/gen/Gogol/DFAReporting/Cities/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Cities/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.DFAReporting.Cities.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)
+--
+-- Retrieves a list of cities, possibly filtered.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.cities.list@.
+module Gogol.DFAReporting.Cities.List
+  ( -- * Resource
+    DFAReportingCitiesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCitiesList (..),
+    newDFAReportingCitiesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.cities.list@ method which the
+-- 'DFAReportingCitiesList' request conforms to.
+type DFAReportingCitiesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "cities"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "countryDartIds" Core.Int64
+    Core.:> Core.QueryParams "dartIds" Core.Int64
+    Core.:> Core.QueryParam "namePrefix" Core.Text
+    Core.:> Core.QueryParams "regionDartIds" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CitiesListResponse
+
+-- | Retrieves a list of cities, possibly filtered.
+--
+-- /See:/ 'newDFAReportingCitiesList' smart constructor.
+data DFAReportingCitiesList = DFAReportingCitiesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only cities from these countries.
+    countryDartIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only cities with these DART IDs.
+    dartIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only cities with names starting with this prefix.
+    namePrefix :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Select only cities from these regions.
+    regionDartIds :: (Core.Maybe [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 'DFAReportingCitiesList' with the minimum fields required to make a request.
+newDFAReportingCitiesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCitiesList
+newDFAReportingCitiesList profileId =
+  DFAReportingCitiesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      countryDartIds = Core.Nothing,
+      dartIds = Core.Nothing,
+      namePrefix = Core.Nothing,
+      profileId = profileId,
+      regionDartIds = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCitiesList where
+  type Rs DFAReportingCitiesList = CitiesListResponse
+  type Scopes DFAReportingCitiesList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCitiesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (countryDartIds Core.^. Core._Default)
+      (dartIds Core.^. Core._Default)
+      namePrefix
+      (regionDartIds Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCitiesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ConnectionTypes/Get.hs b/gen/Gogol/DFAReporting/ConnectionTypes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ConnectionTypes/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ConnectionTypes.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one connection type by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.connectionTypes.get@.
+module Gogol.DFAReporting.ConnectionTypes.Get
+  ( -- * Resource
+    DFAReportingConnectionTypesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingConnectionTypesGet (..),
+    newDFAReportingConnectionTypesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.connectionTypes.get@ method which the
+-- 'DFAReportingConnectionTypesGet' request conforms to.
+type DFAReportingConnectionTypesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "connectionTypes"
+    Core.:> Core.Capture "id" 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] ConnectionType
+
+-- | Gets one connection type by ID.
+--
+-- /See:/ 'newDFAReportingConnectionTypesGet' smart constructor.
+data DFAReportingConnectionTypesGet = DFAReportingConnectionTypesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Connection type ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingConnectionTypesGet' with the minimum fields required to make a request.
+newDFAReportingConnectionTypesGet ::
+  -- |  Connection type ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingConnectionTypesGet
+newDFAReportingConnectionTypesGet id profileId =
+  DFAReportingConnectionTypesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingConnectionTypesGet where
+  type Rs DFAReportingConnectionTypesGet = ConnectionType
+  type
+    Scopes DFAReportingConnectionTypesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingConnectionTypesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingConnectionTypesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ConnectionTypes/List.hs b/gen/Gogol/DFAReporting/ConnectionTypes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ConnectionTypes/List.hs
@@ -0,0 +1,114 @@
+{-# 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.DFAReporting.ConnectionTypes.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)
+--
+-- Retrieves a list of connection types.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.connectionTypes.list@.
+module Gogol.DFAReporting.ConnectionTypes.List
+  ( -- * Resource
+    DFAReportingConnectionTypesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingConnectionTypesList (..),
+    newDFAReportingConnectionTypesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.connectionTypes.list@ method which the
+-- 'DFAReportingConnectionTypesList' request conforms to.
+type DFAReportingConnectionTypesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "connectionTypes"
+    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] ConnectionTypesListResponse
+
+-- | Retrieves a list of connection types.
+--
+-- /See:/ 'newDFAReportingConnectionTypesList' smart constructor.
+data DFAReportingConnectionTypesList = DFAReportingConnectionTypesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingConnectionTypesList' with the minimum fields required to make a request.
+newDFAReportingConnectionTypesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingConnectionTypesList
+newDFAReportingConnectionTypesList profileId =
+  DFAReportingConnectionTypesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingConnectionTypesList where
+  type
+    Rs DFAReportingConnectionTypesList =
+      ConnectionTypesListResponse
+  type
+    Scopes DFAReportingConnectionTypesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingConnectionTypesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingConnectionTypesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/Delete.hs b/gen/Gogol/DFAReporting/ContentCategories/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/Delete.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ContentCategories.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 content category.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.delete@.
+module Gogol.DFAReporting.ContentCategories.Delete
+  ( -- * Resource
+    DFAReportingContentCategoriesDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesDelete (..),
+    newDFAReportingContentCategoriesDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.delete@ method which the
+-- 'DFAReportingContentCategoriesDelete' request conforms to.
+type DFAReportingContentCategoriesDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    Core.:> Core.Capture "id" 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 content category.
+--
+-- /See:/ 'newDFAReportingContentCategoriesDelete' smart constructor.
+data DFAReportingContentCategoriesDelete = DFAReportingContentCategoriesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Content category ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingContentCategoriesDelete' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesDelete ::
+  -- |  Content category ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesDelete
+newDFAReportingContentCategoriesDelete id profileId =
+  DFAReportingContentCategoriesDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesDelete where
+  type Rs DFAReportingContentCategoriesDelete = ()
+  type
+    Scopes DFAReportingContentCategoriesDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingContentCategoriesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/Get.hs b/gen/Gogol/DFAReporting/ContentCategories/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ContentCategories.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one content category by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.get@.
+module Gogol.DFAReporting.ContentCategories.Get
+  ( -- * Resource
+    DFAReportingContentCategoriesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesGet (..),
+    newDFAReportingContentCategoriesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.get@ method which the
+-- 'DFAReportingContentCategoriesGet' request conforms to.
+type DFAReportingContentCategoriesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    Core.:> Core.Capture "id" 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] ContentCategory
+
+-- | Gets one content category by ID.
+--
+-- /See:/ 'newDFAReportingContentCategoriesGet' smart constructor.
+data DFAReportingContentCategoriesGet = DFAReportingContentCategoriesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Content category ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingContentCategoriesGet' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesGet ::
+  -- |  Content category ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesGet
+newDFAReportingContentCategoriesGet id profileId =
+  DFAReportingContentCategoriesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesGet where
+  type Rs DFAReportingContentCategoriesGet = ContentCategory
+  type
+    Scopes DFAReportingContentCategoriesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingContentCategoriesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/Insert.hs b/gen/Gogol/DFAReporting/ContentCategories/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ContentCategories.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new content category.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.insert@.
+module Gogol.DFAReporting.ContentCategories.Insert
+  ( -- * Resource
+    DFAReportingContentCategoriesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesInsert (..),
+    newDFAReportingContentCategoriesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.insert@ method which the
+-- 'DFAReportingContentCategoriesInsert' request conforms to.
+type DFAReportingContentCategoriesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    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] ContentCategory
+    Core.:> Core.Post '[Core.JSON] ContentCategory
+
+-- | Inserts a new content category.
+--
+-- /See:/ 'newDFAReportingContentCategoriesInsert' smart constructor.
+data DFAReportingContentCategoriesInsert = DFAReportingContentCategoriesInsert
+  { -- | 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 :: ContentCategory,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingContentCategoriesInsert' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  ContentCategory ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesInsert
+newDFAReportingContentCategoriesInsert payload profileId =
+  DFAReportingContentCategoriesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesInsert where
+  type Rs DFAReportingContentCategoriesInsert = ContentCategory
+  type
+    Scopes DFAReportingContentCategoriesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingContentCategoriesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/List.hs b/gen/Gogol/DFAReporting/ContentCategories/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/List.hs
@@ -0,0 +1,146 @@
+{-# 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.DFAReporting.ContentCategories.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)
+--
+-- Retrieves a list of content categories, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.list@.
+module Gogol.DFAReporting.ContentCategories.List
+  ( -- * Resource
+    DFAReportingContentCategoriesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesList (..),
+    newDFAReportingContentCategoriesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.list@ method which the
+-- 'DFAReportingContentCategoriesList' request conforms to.
+type DFAReportingContentCategoriesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" ContentCategoriesListSortField
+    Core.:> Core.QueryParam "sortOrder" ContentCategoriesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ContentCategoriesListResponse
+
+-- | Retrieves a list of content categories, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingContentCategoriesList' smart constructor.
+data DFAReportingContentCategoriesList = DFAReportingContentCategoriesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only content categories with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"contentcategory/2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: ContentCategoriesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: ContentCategoriesListSortOrder,
+    -- | 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 'DFAReportingContentCategoriesList' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesList
+newDFAReportingContentCategoriesList profileId =
+  DFAReportingContentCategoriesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = ContentCategoriesListSortField_ID,
+      sortOrder = ContentCategoriesListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesList where
+  type
+    Rs DFAReportingContentCategoriesList =
+      ContentCategoriesListResponse
+  type
+    Scopes DFAReportingContentCategoriesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingContentCategoriesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/Patch.hs b/gen/Gogol/DFAReporting/ContentCategories/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ContentCategories.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing content category. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.patch@.
+module Gogol.DFAReporting.ContentCategories.Patch
+  ( -- * Resource
+    DFAReportingContentCategoriesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesPatch (..),
+    newDFAReportingContentCategoriesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.patch@ method which the
+-- 'DFAReportingContentCategoriesPatch' request conforms to.
+type DFAReportingContentCategoriesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] ContentCategory
+    Core.:> Core.Patch '[Core.JSON] ContentCategory
+
+-- | Updates an existing content category. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingContentCategoriesPatch' smart constructor.
+data DFAReportingContentCategoriesPatch = DFAReportingContentCategoriesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. ContentCategory ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: ContentCategory,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingContentCategoriesPatch' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesPatch ::
+  -- |  Required. ContentCategory ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  ContentCategory ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesPatch
+newDFAReportingContentCategoriesPatch id payload profileId =
+  DFAReportingContentCategoriesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesPatch where
+  type Rs DFAReportingContentCategoriesPatch = ContentCategory
+  type
+    Scopes DFAReportingContentCategoriesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingContentCategoriesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/ContentCategories/Update.hs b/gen/Gogol/DFAReporting/ContentCategories/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/ContentCategories/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.ContentCategories.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing content category.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.contentCategories.update@.
+module Gogol.DFAReporting.ContentCategories.Update
+  ( -- * Resource
+    DFAReportingContentCategoriesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingContentCategoriesUpdate (..),
+    newDFAReportingContentCategoriesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.contentCategories.update@ method which the
+-- 'DFAReportingContentCategoriesUpdate' request conforms to.
+type DFAReportingContentCategoriesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "contentCategories"
+    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] ContentCategory
+    Core.:> Core.Put '[Core.JSON] ContentCategory
+
+-- | Updates an existing content category.
+--
+-- /See:/ 'newDFAReportingContentCategoriesUpdate' smart constructor.
+data DFAReportingContentCategoriesUpdate = DFAReportingContentCategoriesUpdate
+  { -- | 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 :: ContentCategory,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingContentCategoriesUpdate' with the minimum fields required to make a request.
+newDFAReportingContentCategoriesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  ContentCategory ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingContentCategoriesUpdate
+newDFAReportingContentCategoriesUpdate payload profileId =
+  DFAReportingContentCategoriesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingContentCategoriesUpdate where
+  type Rs DFAReportingContentCategoriesUpdate = ContentCategory
+  type
+    Scopes DFAReportingContentCategoriesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingContentCategoriesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingContentCategoriesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Conversions/Batchinsert.hs b/gen/Gogol/DFAReporting/Conversions/Batchinsert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Conversions/Batchinsert.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Conversions.Batchinsert
+-- 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)
+--
+-- Inserts conversions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.conversions.batchinsert@.
+module Gogol.DFAReporting.Conversions.Batchinsert
+  ( -- * Resource
+    DFAReportingConversionsBatchinsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingConversionsBatchinsert (..),
+    newDFAReportingConversionsBatchinsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.conversions.batchinsert@ method which the
+-- 'DFAReportingConversionsBatchinsert' request conforms to.
+type DFAReportingConversionsBatchinsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "conversions"
+    Core.:> "batchinsert"
+    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] ConversionsBatchInsertRequest
+    Core.:> Core.Post '[Core.JSON] ConversionsBatchInsertResponse
+
+-- | Inserts conversions.
+--
+-- /See:/ 'newDFAReportingConversionsBatchinsert' smart constructor.
+data DFAReportingConversionsBatchinsert = DFAReportingConversionsBatchinsert
+  { -- | 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 :: ConversionsBatchInsertRequest,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingConversionsBatchinsert' with the minimum fields required to make a request.
+newDFAReportingConversionsBatchinsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  ConversionsBatchInsertRequest ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingConversionsBatchinsert
+newDFAReportingConversionsBatchinsert payload profileId =
+  DFAReportingConversionsBatchinsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingConversionsBatchinsert where
+  type
+    Rs DFAReportingConversionsBatchinsert =
+      ConversionsBatchInsertResponse
+  type
+    Scopes DFAReportingConversionsBatchinsert =
+      '[Ddmconversions'FullControl]
+  requestClient DFAReportingConversionsBatchinsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingConversionsBatchinsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Conversions/Batchupdate.hs b/gen/Gogol/DFAReporting/Conversions/Batchupdate.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Conversions/Batchupdate.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Conversions.Batchupdate
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates existing conversions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.conversions.batchupdate@.
+module Gogol.DFAReporting.Conversions.Batchupdate
+  ( -- * Resource
+    DFAReportingConversionsBatchupdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingConversionsBatchupdate (..),
+    newDFAReportingConversionsBatchupdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.conversions.batchupdate@ method which the
+-- 'DFAReportingConversionsBatchupdate' request conforms to.
+type DFAReportingConversionsBatchupdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "conversions"
+    Core.:> "batchupdate"
+    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] ConversionsBatchUpdateRequest
+    Core.:> Core.Post '[Core.JSON] ConversionsBatchUpdateResponse
+
+-- | Updates existing conversions.
+--
+-- /See:/ 'newDFAReportingConversionsBatchupdate' smart constructor.
+data DFAReportingConversionsBatchupdate = DFAReportingConversionsBatchupdate
+  { -- | 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 :: ConversionsBatchUpdateRequest,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingConversionsBatchupdate' with the minimum fields required to make a request.
+newDFAReportingConversionsBatchupdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  ConversionsBatchUpdateRequest ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingConversionsBatchupdate
+newDFAReportingConversionsBatchupdate payload profileId =
+  DFAReportingConversionsBatchupdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingConversionsBatchupdate where
+  type
+    Rs DFAReportingConversionsBatchupdate =
+      ConversionsBatchUpdateResponse
+  type
+    Scopes DFAReportingConversionsBatchupdate =
+      '[Ddmconversions'FullControl]
+  requestClient DFAReportingConversionsBatchupdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingConversionsBatchupdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Countries/Get.hs b/gen/Gogol/DFAReporting/Countries/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Countries/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Countries.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one country by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.countries.get@.
+module Gogol.DFAReporting.Countries.Get
+  ( -- * Resource
+    DFAReportingCountriesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCountriesGet (..),
+    newDFAReportingCountriesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.countries.get@ method which the
+-- 'DFAReportingCountriesGet' request conforms to.
+type DFAReportingCountriesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "countries"
+    Core.:> Core.Capture "dartId" 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] Country
+
+-- | Gets one country by ID.
+--
+-- /See:/ 'newDFAReportingCountriesGet' smart constructor.
+data DFAReportingCountriesGet = DFAReportingCountriesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Country DART ID.
+    dartId :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCountriesGet' with the minimum fields required to make a request.
+newDFAReportingCountriesGet ::
+  -- |  Country DART ID. See 'dartId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCountriesGet
+newDFAReportingCountriesGet dartId profileId =
+  DFAReportingCountriesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      dartId = dartId,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCountriesGet where
+  type Rs DFAReportingCountriesGet = Country
+  type
+    Scopes DFAReportingCountriesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCountriesGet {..} =
+    go
+      profileId
+      dartId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCountriesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Countries/List.hs b/gen/Gogol/DFAReporting/Countries/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Countries/List.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.DFAReporting.Countries.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)
+--
+-- Retrieves a list of countries.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.countries.list@.
+module Gogol.DFAReporting.Countries.List
+  ( -- * Resource
+    DFAReportingCountriesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCountriesList (..),
+    newDFAReportingCountriesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.countries.list@ method which the
+-- 'DFAReportingCountriesList' request conforms to.
+type DFAReportingCountriesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "countries"
+    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] CountriesListResponse
+
+-- | Retrieves a list of countries.
+--
+-- /See:/ 'newDFAReportingCountriesList' smart constructor.
+data DFAReportingCountriesList = DFAReportingCountriesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCountriesList' with the minimum fields required to make a request.
+newDFAReportingCountriesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCountriesList
+newDFAReportingCountriesList profileId =
+  DFAReportingCountriesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCountriesList where
+  type Rs DFAReportingCountriesList = CountriesListResponse
+  type
+    Scopes DFAReportingCountriesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCountriesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCountriesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeAssets/Insert.hs b/gen/Gogol/DFAReporting/CreativeAssets/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeAssets/Insert.hs
@@ -0,0 +1,175 @@
+{-# 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.DFAReporting.CreativeAssets.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new creative asset.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeAssets.insert@.
+module Gogol.DFAReporting.CreativeAssets.Insert
+  ( -- * Resource
+    DFAReportingCreativeAssetsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeAssetsInsert (..),
+    newDFAReportingCreativeAssetsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeAssets.insert@ method which the
+-- 'DFAReportingCreativeAssetsInsert' request conforms to.
+type DFAReportingCreativeAssetsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeAssets"
+    Core.:> Core.Capture "advertiserId" Core.Int64
+    Core.:> "creativeAssets"
+    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] CreativeAssetMetadata
+    Core.:> Core.Post '[Core.JSON] CreativeAssetMetadata
+    Core.:<|> "upload"
+    Core.:> "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeAssets"
+    Core.:> Core.Capture "advertiserId" Core.Int64
+    Core.:> "creativeAssets"
+    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.QueryParam "uploadType" Core.Multipart
+    Core.:> Core.MultipartRelated '[Core.JSON] CreativeAssetMetadata
+    Core.:> Core.Post '[Core.JSON] CreativeAssetMetadata
+
+-- | Inserts a new creative asset.
+--
+-- /See:/ 'newDFAReportingCreativeAssetsInsert' smart constructor.
+data DFAReportingCreativeAssetsInsert = DFAReportingCreativeAssetsInsert
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Advertiser ID of this creative. This is a required field.
+    advertiserId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: CreativeAssetMetadata,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeAssetsInsert' with the minimum fields required to make a request.
+newDFAReportingCreativeAssetsInsert ::
+  -- |  Advertiser ID of this creative. This is a required field. See 'advertiserId'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeAssetMetadata ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeAssetsInsert
+newDFAReportingCreativeAssetsInsert advertiserId payload profileId =
+  DFAReportingCreativeAssetsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = advertiserId,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeAssetsInsert where
+  type Rs DFAReportingCreativeAssetsInsert = CreativeAssetMetadata
+  type
+    Scopes DFAReportingCreativeAssetsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeAssetsInsert {..} =
+    go
+      profileId
+      advertiserId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go Core.:<|> _ =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeAssetsInsertResource)
+          Core.mempty
+
+instance
+  Core.GoogleRequest
+    (Core.MediaUpload DFAReportingCreativeAssetsInsert)
+  where
+  type
+    Rs (Core.MediaUpload DFAReportingCreativeAssetsInsert) =
+      CreativeAssetMetadata
+  type
+    Scopes (Core.MediaUpload DFAReportingCreativeAssetsInsert) =
+      Core.Scopes DFAReportingCreativeAssetsInsert
+  requestClient
+    (Core.MediaUpload DFAReportingCreativeAssetsInsert {..} body) =
+      go
+        profileId
+        advertiserId
+        xgafv
+        accessToken
+        callback
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        (Core.Just Core.Multipart)
+        payload
+        body
+        dFAReportingService
+      where
+        _ Core.:<|> go =
+          Core.buildClient
+            (Core.Proxy :: Core.Proxy DFAReportingCreativeAssetsInsertResource)
+            Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/Delete.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/Delete.hs
@@ -0,0 +1,132 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFieldValues.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 creative field value.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.delete@.
+module Gogol.DFAReporting.CreativeFieldValues.Delete
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesDelete (..),
+    newDFAReportingCreativeFieldValuesDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.delete@ method which the
+-- 'DFAReportingCreativeFieldValuesDelete' request conforms to.
+type DFAReportingCreativeFieldValuesDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    Core.:> Core.Capture "id" 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 creative field value.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesDelete' smart constructor.
+data DFAReportingCreativeFieldValuesDelete = DFAReportingCreativeFieldValuesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative field ID for this creative field value.
+    creativeFieldId :: Core.Int64,
+    -- | Creative Field Value ID
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldValuesDelete' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesDelete ::
+  -- |  Creative field ID for this creative field value. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  Creative Field Value ID See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesDelete
+newDFAReportingCreativeFieldValuesDelete
+  creativeFieldId
+  id
+  profileId =
+    DFAReportingCreativeFieldValuesDelete
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        creativeFieldId = creativeFieldId,
+        id = id,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesDelete where
+  type Rs DFAReportingCreativeFieldValuesDelete = ()
+  type
+    Scopes DFAReportingCreativeFieldValuesDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesDelete {..} =
+    go
+      profileId
+      creativeFieldId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/Get.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/Get.hs
@@ -0,0 +1,129 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFieldValues.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one creative field value by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.get@.
+module Gogol.DFAReporting.CreativeFieldValues.Get
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesGet (..),
+    newDFAReportingCreativeFieldValuesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.get@ method which the
+-- 'DFAReportingCreativeFieldValuesGet' request conforms to.
+type DFAReportingCreativeFieldValuesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    Core.:> Core.Capture "id" 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] CreativeFieldValue
+
+-- | Gets one creative field value by ID.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesGet' smart constructor.
+data DFAReportingCreativeFieldValuesGet = DFAReportingCreativeFieldValuesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative field ID for this creative field value.
+    creativeFieldId :: Core.Int64,
+    -- | Creative Field Value ID
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldValuesGet' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesGet ::
+  -- |  Creative field ID for this creative field value. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  Creative Field Value ID See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesGet
+newDFAReportingCreativeFieldValuesGet creativeFieldId id profileId =
+  DFAReportingCreativeFieldValuesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      creativeFieldId = creativeFieldId,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesGet where
+  type Rs DFAReportingCreativeFieldValuesGet = CreativeFieldValue
+  type
+    Scopes DFAReportingCreativeFieldValuesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesGet {..} =
+    go
+      profileId
+      creativeFieldId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/Insert.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/Insert.hs
@@ -0,0 +1,132 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFieldValues.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new creative field value.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.insert@.
+module Gogol.DFAReporting.CreativeFieldValues.Insert
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesInsert (..),
+    newDFAReportingCreativeFieldValuesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.insert@ method which the
+-- 'DFAReportingCreativeFieldValuesInsert' request conforms to.
+type DFAReportingCreativeFieldValuesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    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] CreativeFieldValue
+    Core.:> Core.Post '[Core.JSON] CreativeFieldValue
+
+-- | Inserts a new creative field value.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesInsert' smart constructor.
+data DFAReportingCreativeFieldValuesInsert = DFAReportingCreativeFieldValuesInsert
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative field ID for this creative field value.
+    creativeFieldId :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CreativeFieldValue,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldValuesInsert' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesInsert ::
+  -- |  Creative field ID for this creative field value. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeFieldValue ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesInsert
+newDFAReportingCreativeFieldValuesInsert
+  creativeFieldId
+  payload
+  profileId =
+    DFAReportingCreativeFieldValuesInsert
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        creativeFieldId = creativeFieldId,
+        payload = payload,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesInsert where
+  type Rs DFAReportingCreativeFieldValuesInsert = CreativeFieldValue
+  type
+    Scopes DFAReportingCreativeFieldValuesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesInsert {..} =
+    go
+      profileId
+      creativeFieldId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/List.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/List.hs
@@ -0,0 +1,154 @@
+{-# 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.DFAReporting.CreativeFieldValues.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)
+--
+-- Retrieves a list of creative field values, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.list@.
+module Gogol.DFAReporting.CreativeFieldValues.List
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesList (..),
+    newDFAReportingCreativeFieldValuesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.list@ method which the
+-- 'DFAReportingCreativeFieldValuesList' request conforms to.
+type DFAReportingCreativeFieldValuesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" CreativeFieldValuesListSortField
+    Core.:> Core.QueryParam "sortOrder" CreativeFieldValuesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CreativeFieldValuesListResponse
+
+-- | Retrieves a list of creative field values, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesList' smart constructor.
+data DFAReportingCreativeFieldValuesList = DFAReportingCreativeFieldValuesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative field ID for this creative field value.
+    creativeFieldId :: Core.Int64,
+    -- | Select only creative field values with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: CreativeFieldValuesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: CreativeFieldValuesListSortOrder,
+    -- | 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 'DFAReportingCreativeFieldValuesList' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesList ::
+  -- |  Creative field ID for this creative field value. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesList
+newDFAReportingCreativeFieldValuesList creativeFieldId profileId =
+  DFAReportingCreativeFieldValuesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      creativeFieldId = creativeFieldId,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = CreativeFieldValuesListSortField_ID,
+      sortOrder = CreativeFieldValuesListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesList where
+  type
+    Rs DFAReportingCreativeFieldValuesList =
+      CreativeFieldValuesListResponse
+  type
+    Scopes DFAReportingCreativeFieldValuesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesList {..} =
+    go
+      profileId
+      creativeFieldId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/Patch.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/Patch.hs
@@ -0,0 +1,140 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFieldValues.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative field value. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.patch@.
+module Gogol.DFAReporting.CreativeFieldValues.Patch
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesPatch (..),
+    newDFAReportingCreativeFieldValuesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.patch@ method which the
+-- 'DFAReportingCreativeFieldValuesPatch' request conforms to.
+type DFAReportingCreativeFieldValuesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] CreativeFieldValue
+    Core.:> Core.Patch '[Core.JSON] CreativeFieldValue
+
+-- | Updates an existing creative field value. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesPatch' smart constructor.
+data DFAReportingCreativeFieldValuesPatch = DFAReportingCreativeFieldValuesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | CreativeField ID.
+    creativeFieldId :: Core.Int64,
+    -- | CreativeFieldValue ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CreativeFieldValue,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldValuesPatch' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesPatch ::
+  -- |  CreativeField ID. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  CreativeFieldValue ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeFieldValue ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesPatch
+newDFAReportingCreativeFieldValuesPatch
+  creativeFieldId
+  id
+  payload
+  profileId =
+    DFAReportingCreativeFieldValuesPatch
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        creativeFieldId = creativeFieldId,
+        id = id,
+        payload = payload,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesPatch where
+  type Rs DFAReportingCreativeFieldValuesPatch = CreativeFieldValue
+  type
+    Scopes DFAReportingCreativeFieldValuesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesPatch {..} =
+    go
+      profileId
+      creativeFieldId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFieldValues/Update.hs b/gen/Gogol/DFAReporting/CreativeFieldValues/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFieldValues/Update.hs
@@ -0,0 +1,132 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFieldValues.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative field value.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFieldValues.update@.
+module Gogol.DFAReporting.CreativeFieldValues.Update
+  ( -- * Resource
+    DFAReportingCreativeFieldValuesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldValuesUpdate (..),
+    newDFAReportingCreativeFieldValuesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFieldValues.update@ method which the
+-- 'DFAReportingCreativeFieldValuesUpdate' request conforms to.
+type DFAReportingCreativeFieldValuesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "creativeFieldId" Core.Int64
+    Core.:> "creativeFieldValues"
+    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] CreativeFieldValue
+    Core.:> Core.Put '[Core.JSON] CreativeFieldValue
+
+-- | Updates an existing creative field value.
+--
+-- /See:/ 'newDFAReportingCreativeFieldValuesUpdate' smart constructor.
+data DFAReportingCreativeFieldValuesUpdate = DFAReportingCreativeFieldValuesUpdate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative field ID for this creative field value.
+    creativeFieldId :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CreativeFieldValue,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldValuesUpdate' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldValuesUpdate ::
+  -- |  Creative field ID for this creative field value. See 'creativeFieldId'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeFieldValue ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldValuesUpdate
+newDFAReportingCreativeFieldValuesUpdate
+  creativeFieldId
+  payload
+  profileId =
+    DFAReportingCreativeFieldValuesUpdate
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        creativeFieldId = creativeFieldId,
+        payload = payload,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldValuesUpdate where
+  type Rs DFAReportingCreativeFieldValuesUpdate = CreativeFieldValue
+  type
+    Scopes DFAReportingCreativeFieldValuesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldValuesUpdate {..} =
+    go
+      profileId
+      creativeFieldId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingCreativeFieldValuesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/Delete.hs b/gen/Gogol/DFAReporting/CreativeFields/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/Delete.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFields.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 creative field.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.delete@.
+module Gogol.DFAReporting.CreativeFields.Delete
+  ( -- * Resource
+    DFAReportingCreativeFieldsDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsDelete (..),
+    newDFAReportingCreativeFieldsDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.delete@ method which the
+-- 'DFAReportingCreativeFieldsDelete' request conforms to.
+type DFAReportingCreativeFieldsDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "id" 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 creative field.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsDelete' smart constructor.
+data DFAReportingCreativeFieldsDelete = DFAReportingCreativeFieldsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative Field ID
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldsDelete' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsDelete ::
+  -- |  Creative Field ID See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsDelete
+newDFAReportingCreativeFieldsDelete id profileId =
+  DFAReportingCreativeFieldsDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsDelete where
+  type Rs DFAReportingCreativeFieldsDelete = ()
+  type
+    Scopes DFAReportingCreativeFieldsDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsDeleteResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/Get.hs b/gen/Gogol/DFAReporting/CreativeFields/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFields.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one creative field by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.get@.
+module Gogol.DFAReporting.CreativeFields.Get
+  ( -- * Resource
+    DFAReportingCreativeFieldsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsGet (..),
+    newDFAReportingCreativeFieldsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.get@ method which the
+-- 'DFAReportingCreativeFieldsGet' request conforms to.
+type DFAReportingCreativeFieldsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.Capture "id" 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] CreativeField
+
+-- | Gets one creative field by ID.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsGet' smart constructor.
+data DFAReportingCreativeFieldsGet = DFAReportingCreativeFieldsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative Field ID
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldsGet' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsGet ::
+  -- |  Creative Field ID See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsGet
+newDFAReportingCreativeFieldsGet id profileId =
+  DFAReportingCreativeFieldsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsGet where
+  type Rs DFAReportingCreativeFieldsGet = CreativeField
+  type
+    Scopes DFAReportingCreativeFieldsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/Insert.hs b/gen/Gogol/DFAReporting/CreativeFields/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFields.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new creative field.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.insert@.
+module Gogol.DFAReporting.CreativeFields.Insert
+  ( -- * Resource
+    DFAReportingCreativeFieldsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsInsert (..),
+    newDFAReportingCreativeFieldsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.insert@ method which the
+-- 'DFAReportingCreativeFieldsInsert' request conforms to.
+type DFAReportingCreativeFieldsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    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] CreativeField
+    Core.:> Core.Post '[Core.JSON] CreativeField
+
+-- | Inserts a new creative field.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsInsert' smart constructor.
+data DFAReportingCreativeFieldsInsert = DFAReportingCreativeFieldsInsert
+  { -- | 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 :: CreativeField,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldsInsert' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeField ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsInsert
+newDFAReportingCreativeFieldsInsert payload profileId =
+  DFAReportingCreativeFieldsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsInsert where
+  type Rs DFAReportingCreativeFieldsInsert = CreativeField
+  type
+    Scopes DFAReportingCreativeFieldsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/List.hs b/gen/Gogol/DFAReporting/CreativeFields/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/List.hs
@@ -0,0 +1,147 @@
+{-# 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.DFAReporting.CreativeFields.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)
+--
+-- Retrieves a list of creative fields, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.list@.
+module Gogol.DFAReporting.CreativeFields.List
+  ( -- * Resource
+    DFAReportingCreativeFieldsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsList (..),
+    newDFAReportingCreativeFieldsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.list@ method which the
+-- 'DFAReportingCreativeFieldsList' request conforms to.
+type DFAReportingCreativeFieldsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" CreativeFieldsListSortField
+    Core.:> Core.QueryParam "sortOrder" CreativeFieldsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CreativeFieldsListResponse
+
+-- | Retrieves a list of creative fields, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsList' smart constructor.
+data DFAReportingCreativeFieldsList = DFAReportingCreativeFieldsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only creative fields that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only creative fields with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for creative fields by name or ID. Wildcards (/) are allowed. For example, \"creativefield/2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: CreativeFieldsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: CreativeFieldsListSortOrder,
+    -- | 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 'DFAReportingCreativeFieldsList' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsList
+newDFAReportingCreativeFieldsList profileId =
+  DFAReportingCreativeFieldsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = CreativeFieldsListSortField_ID,
+      sortOrder = CreativeFieldsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsList where
+  type Rs DFAReportingCreativeFieldsList = CreativeFieldsListResponse
+  type
+    Scopes DFAReportingCreativeFieldsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserIds Core.^. Core._Default)
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/Patch.hs b/gen/Gogol/DFAReporting/CreativeFields/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFields.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative field. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.patch@.
+module Gogol.DFAReporting.CreativeFields.Patch
+  ( -- * Resource
+    DFAReportingCreativeFieldsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsPatch (..),
+    newDFAReportingCreativeFieldsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.patch@ method which the
+-- 'DFAReportingCreativeFieldsPatch' request conforms to.
+type DFAReportingCreativeFieldsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] CreativeField
+    Core.:> Core.Patch '[Core.JSON] CreativeField
+
+-- | Updates an existing creative field. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsPatch' smart constructor.
+data DFAReportingCreativeFieldsPatch = DFAReportingCreativeFieldsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | CreativeField ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CreativeField,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldsPatch' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsPatch ::
+  -- |  CreativeField ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeField ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsPatch
+newDFAReportingCreativeFieldsPatch id payload profileId =
+  DFAReportingCreativeFieldsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsPatch where
+  type Rs DFAReportingCreativeFieldsPatch = CreativeField
+  type
+    Scopes DFAReportingCreativeFieldsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeFields/Update.hs b/gen/Gogol/DFAReporting/CreativeFields/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeFields/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeFields.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative field.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeFields.update@.
+module Gogol.DFAReporting.CreativeFields.Update
+  ( -- * Resource
+    DFAReportingCreativeFieldsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeFieldsUpdate (..),
+    newDFAReportingCreativeFieldsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeFields.update@ method which the
+-- 'DFAReportingCreativeFieldsUpdate' request conforms to.
+type DFAReportingCreativeFieldsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeFields"
+    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] CreativeField
+    Core.:> Core.Put '[Core.JSON] CreativeField
+
+-- | Updates an existing creative field.
+--
+-- /See:/ 'newDFAReportingCreativeFieldsUpdate' smart constructor.
+data DFAReportingCreativeFieldsUpdate = DFAReportingCreativeFieldsUpdate
+  { -- | 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 :: CreativeField,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeFieldsUpdate' with the minimum fields required to make a request.
+newDFAReportingCreativeFieldsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeField ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeFieldsUpdate
+newDFAReportingCreativeFieldsUpdate payload profileId =
+  DFAReportingCreativeFieldsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeFieldsUpdate where
+  type Rs DFAReportingCreativeFieldsUpdate = CreativeField
+  type
+    Scopes DFAReportingCreativeFieldsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeFieldsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeFieldsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeGroups/Get.hs b/gen/Gogol/DFAReporting/CreativeGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeGroups/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one creative group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeGroups.get@.
+module Gogol.DFAReporting.CreativeGroups.Get
+  ( -- * Resource
+    DFAReportingCreativeGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeGroupsGet (..),
+    newDFAReportingCreativeGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeGroups.get@ method which the
+-- 'DFAReportingCreativeGroupsGet' request conforms to.
+type DFAReportingCreativeGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeGroups"
+    Core.:> Core.Capture "id" 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] CreativeGroup
+
+-- | Gets one creative group by ID.
+--
+-- /See:/ 'newDFAReportingCreativeGroupsGet' smart constructor.
+data DFAReportingCreativeGroupsGet = DFAReportingCreativeGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeGroupsGet' with the minimum fields required to make a request.
+newDFAReportingCreativeGroupsGet ::
+  -- |  Creative group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeGroupsGet
+newDFAReportingCreativeGroupsGet id profileId =
+  DFAReportingCreativeGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeGroupsGet where
+  type Rs DFAReportingCreativeGroupsGet = CreativeGroup
+  type
+    Scopes DFAReportingCreativeGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeGroupsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeGroups/Insert.hs b/gen/Gogol/DFAReporting/CreativeGroups/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeGroups/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeGroups.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new creative group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeGroups.insert@.
+module Gogol.DFAReporting.CreativeGroups.Insert
+  ( -- * Resource
+    DFAReportingCreativeGroupsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeGroupsInsert (..),
+    newDFAReportingCreativeGroupsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeGroups.insert@ method which the
+-- 'DFAReportingCreativeGroupsInsert' request conforms to.
+type DFAReportingCreativeGroupsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeGroups"
+    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] CreativeGroup
+    Core.:> Core.Post '[Core.JSON] CreativeGroup
+
+-- | Inserts a new creative group.
+--
+-- /See:/ 'newDFAReportingCreativeGroupsInsert' smart constructor.
+data DFAReportingCreativeGroupsInsert = DFAReportingCreativeGroupsInsert
+  { -- | 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 :: CreativeGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeGroupsInsert' with the minimum fields required to make a request.
+newDFAReportingCreativeGroupsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeGroupsInsert
+newDFAReportingCreativeGroupsInsert payload profileId =
+  DFAReportingCreativeGroupsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeGroupsInsert where
+  type Rs DFAReportingCreativeGroupsInsert = CreativeGroup
+  type
+    Scopes DFAReportingCreativeGroupsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeGroupsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeGroupsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeGroups/List.hs b/gen/Gogol/DFAReporting/CreativeGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeGroups/List.hs
@@ -0,0 +1,152 @@
+{-# 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.DFAReporting.CreativeGroups.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)
+--
+-- Retrieves a list of creative groups, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeGroups.list@.
+module Gogol.DFAReporting.CreativeGroups.List
+  ( -- * Resource
+    DFAReportingCreativeGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeGroupsList (..),
+    newDFAReportingCreativeGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeGroups.list@ method which the
+-- 'DFAReportingCreativeGroupsList' request conforms to.
+type DFAReportingCreativeGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "groupNumber" Core.Int32
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" CreativeGroupsListSortField
+    Core.:> Core.QueryParam "sortOrder" CreativeGroupsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] CreativeGroupsListResponse
+
+-- | Retrieves a list of creative groups, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCreativeGroupsList' smart constructor.
+data DFAReportingCreativeGroupsList = DFAReportingCreativeGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only creative groups that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only creative groups that belong to this subgroup.
+    groupNumber :: (Core.Maybe Core.Int32),
+    -- | Select only creative groups with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for creative groups by name or ID. Wildcards (/) are allowed. For example, \"creativegroup/2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: CreativeGroupsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: CreativeGroupsListSortOrder,
+    -- | 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 'DFAReportingCreativeGroupsList' with the minimum fields required to make a request.
+newDFAReportingCreativeGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeGroupsList
+newDFAReportingCreativeGroupsList profileId =
+  DFAReportingCreativeGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      callback = Core.Nothing,
+      groupNumber = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = CreativeGroupsListSortField_ID,
+      sortOrder = CreativeGroupsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeGroupsList where
+  type Rs DFAReportingCreativeGroupsList = CreativeGroupsListResponse
+  type
+    Scopes DFAReportingCreativeGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserIds Core.^. Core._Default)
+      callback
+      groupNumber
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeGroupsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeGroups/Patch.hs b/gen/Gogol/DFAReporting/CreativeGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeGroups/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeGroups.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative group. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeGroups.patch@.
+module Gogol.DFAReporting.CreativeGroups.Patch
+  ( -- * Resource
+    DFAReportingCreativeGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeGroupsPatch (..),
+    newDFAReportingCreativeGroupsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeGroups.patch@ method which the
+-- 'DFAReportingCreativeGroupsPatch' request conforms to.
+type DFAReportingCreativeGroupsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeGroups"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] CreativeGroup
+    Core.:> Core.Patch '[Core.JSON] CreativeGroup
+
+-- | Updates an existing creative group. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingCreativeGroupsPatch' smart constructor.
+data DFAReportingCreativeGroupsPatch = DFAReportingCreativeGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Creative Group ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: CreativeGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeGroupsPatch' with the minimum fields required to make a request.
+newDFAReportingCreativeGroupsPatch ::
+  -- |  Required. Creative Group ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeGroupsPatch
+newDFAReportingCreativeGroupsPatch id payload profileId =
+  DFAReportingCreativeGroupsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeGroupsPatch where
+  type Rs DFAReportingCreativeGroupsPatch = CreativeGroup
+  type
+    Scopes DFAReportingCreativeGroupsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeGroupsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeGroupsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/CreativeGroups/Update.hs b/gen/Gogol/DFAReporting/CreativeGroups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/CreativeGroups/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.CreativeGroups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creativeGroups.update@.
+module Gogol.DFAReporting.CreativeGroups.Update
+  ( -- * Resource
+    DFAReportingCreativeGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativeGroupsUpdate (..),
+    newDFAReportingCreativeGroupsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creativeGroups.update@ method which the
+-- 'DFAReportingCreativeGroupsUpdate' request conforms to.
+type DFAReportingCreativeGroupsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creativeGroups"
+    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] CreativeGroup
+    Core.:> Core.Put '[Core.JSON] CreativeGroup
+
+-- | Updates an existing creative group.
+--
+-- /See:/ 'newDFAReportingCreativeGroupsUpdate' smart constructor.
+data DFAReportingCreativeGroupsUpdate = DFAReportingCreativeGroupsUpdate
+  { -- | 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 :: CreativeGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativeGroupsUpdate' with the minimum fields required to make a request.
+newDFAReportingCreativeGroupsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  CreativeGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativeGroupsUpdate
+newDFAReportingCreativeGroupsUpdate payload profileId =
+  DFAReportingCreativeGroupsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativeGroupsUpdate where
+  type Rs DFAReportingCreativeGroupsUpdate = CreativeGroup
+  type
+    Scopes DFAReportingCreativeGroupsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativeGroupsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativeGroupsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Creatives/Get.hs b/gen/Gogol/DFAReporting/Creatives/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Creatives/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Creatives.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one creative by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creatives.get@.
+module Gogol.DFAReporting.Creatives.Get
+  ( -- * Resource
+    DFAReportingCreativesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativesGet (..),
+    newDFAReportingCreativesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creatives.get@ method which the
+-- 'DFAReportingCreativesGet' request conforms to.
+type DFAReportingCreativesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creatives"
+    Core.:> Core.Capture "id" 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] Creative
+
+-- | Gets one creative by ID.
+--
+-- /See:/ 'newDFAReportingCreativesGet' smart constructor.
+data DFAReportingCreativesGet = DFAReportingCreativesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Creative ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativesGet' with the minimum fields required to make a request.
+newDFAReportingCreativesGet ::
+  -- |  Creative ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativesGet
+newDFAReportingCreativesGet id profileId =
+  DFAReportingCreativesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativesGet where
+  type Rs DFAReportingCreativesGet = Creative
+  type
+    Scopes DFAReportingCreativesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Creatives/Insert.hs b/gen/Gogol/DFAReporting/Creatives/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Creatives/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Creatives.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new creative.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creatives.insert@.
+module Gogol.DFAReporting.Creatives.Insert
+  ( -- * Resource
+    DFAReportingCreativesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativesInsert (..),
+    newDFAReportingCreativesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creatives.insert@ method which the
+-- 'DFAReportingCreativesInsert' request conforms to.
+type DFAReportingCreativesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creatives"
+    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] Creative
+    Core.:> Core.Post '[Core.JSON] Creative
+
+-- | Inserts a new creative.
+--
+-- /See:/ 'newDFAReportingCreativesInsert' smart constructor.
+data DFAReportingCreativesInsert = DFAReportingCreativesInsert
+  { -- | 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 :: Creative,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativesInsert' with the minimum fields required to make a request.
+newDFAReportingCreativesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Creative ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativesInsert
+newDFAReportingCreativesInsert payload profileId =
+  DFAReportingCreativesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativesInsert where
+  type Rs DFAReportingCreativesInsert = Creative
+  type
+    Scopes DFAReportingCreativesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativesInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Creatives/List.hs b/gen/Gogol/DFAReporting/Creatives/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Creatives/List.hs
@@ -0,0 +1,194 @@
+{-# 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.DFAReporting.Creatives.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)
+--
+-- Retrieves a list of creatives, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creatives.list@.
+module Gogol.DFAReporting.Creatives.List
+  ( -- * Resource
+    DFAReportingCreativesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativesList (..),
+    newDFAReportingCreativesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creatives.list@ method which the
+-- 'DFAReportingCreativesList' request conforms to.
+type DFAReportingCreativesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creatives"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "archived" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "campaignId" Core.Int64
+    Core.:> Core.QueryParams "companionCreativeIds" Core.Int64
+    Core.:> Core.QueryParams "creativeFieldIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParams "renderingIds" Core.Int64
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParams "sizeIds" Core.Int64
+    Core.:> Core.QueryParam "sortField" CreativesListSortField
+    Core.:> Core.QueryParam "sortOrder" CreativesListSortOrder
+    Core.:> Core.QueryParam "studioCreativeId" Core.Int64
+    Core.:> Core.QueryParams "types" CreativesListTypes
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              CreativesListResponse
+
+-- | Retrieves a list of creatives, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingCreativesList' smart constructor.
+data DFAReportingCreativesList = DFAReportingCreativesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active creatives. Leave blank to select active and inactive creatives.
+    active :: (Core.Maybe Core.Bool),
+    -- | Select only creatives with this advertiser ID.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Select only archived creatives. Leave blank to select archived and unarchived creatives.
+    archived :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only creatives with this campaign ID.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Select only in-stream video creatives with these companion IDs.
+    companionCreativeIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only creatives with these creative field IDs.
+    creativeFieldIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only creatives with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Select only creatives with these rendering IDs.
+    renderingIds :: (Core.Maybe [Core.Int64]),
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"creative/2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Select only creatives with these size IDs.
+    sizeIds :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: CreativesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: CreativesListSortOrder,
+    -- | Select only creatives corresponding to this Studio creative ID.
+    studioCreativeId :: (Core.Maybe Core.Int64),
+    -- | Select only creatives with these creative types.
+    types :: (Core.Maybe [CreativesListTypes]),
+    -- | 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 'DFAReportingCreativesList' with the minimum fields required to make a request.
+newDFAReportingCreativesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativesList
+newDFAReportingCreativesList profileId =
+  DFAReportingCreativesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = Core.Nothing,
+      archived = Core.Nothing,
+      callback = Core.Nothing,
+      campaignId = Core.Nothing,
+      companionCreativeIds = Core.Nothing,
+      creativeFieldIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      renderingIds = Core.Nothing,
+      searchString = Core.Nothing,
+      sizeIds = Core.Nothing,
+      sortField = CreativesListSortField_ID,
+      sortOrder = CreativesListSortOrder_Ascending,
+      studioCreativeId = Core.Nothing,
+      types = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativesList where
+  type Rs DFAReportingCreativesList = CreativesListResponse
+  type
+    Scopes DFAReportingCreativesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      active
+      advertiserId
+      archived
+      callback
+      campaignId
+      (companionCreativeIds Core.^. Core._Default)
+      (creativeFieldIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      (renderingIds Core.^. Core._Default)
+      searchString
+      (sizeIds Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      studioCreativeId
+      (types Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Creatives/Patch.hs b/gen/Gogol/DFAReporting/Creatives/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Creatives/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Creatives.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creatives.patch@.
+module Gogol.DFAReporting.Creatives.Patch
+  ( -- * Resource
+    DFAReportingCreativesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativesPatch (..),
+    newDFAReportingCreativesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creatives.patch@ method which the
+-- 'DFAReportingCreativesPatch' request conforms to.
+type DFAReportingCreativesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creatives"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Creative
+    Core.:> Core.Patch '[Core.JSON] Creative
+
+-- | Updates an existing creative. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingCreativesPatch' smart constructor.
+data DFAReportingCreativesPatch = DFAReportingCreativesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Creative ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Creative,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativesPatch' with the minimum fields required to make a request.
+newDFAReportingCreativesPatch ::
+  -- |  Required. Creative ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Creative ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativesPatch
+newDFAReportingCreativesPatch id payload profileId =
+  DFAReportingCreativesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativesPatch where
+  type Rs DFAReportingCreativesPatch = Creative
+  type
+    Scopes DFAReportingCreativesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativesPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Creatives/Update.hs b/gen/Gogol/DFAReporting/Creatives/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Creatives/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Creatives.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing creative.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.creatives.update@.
+module Gogol.DFAReporting.Creatives.Update
+  ( -- * Resource
+    DFAReportingCreativesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingCreativesUpdate (..),
+    newDFAReportingCreativesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.creatives.update@ method which the
+-- 'DFAReportingCreativesUpdate' request conforms to.
+type DFAReportingCreativesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "creatives"
+    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] Creative
+    Core.:> Core.Put '[Core.JSON] Creative
+
+-- | Updates an existing creative.
+--
+-- /See:/ 'newDFAReportingCreativesUpdate' smart constructor.
+data DFAReportingCreativesUpdate = DFAReportingCreativesUpdate
+  { -- | 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 :: Creative,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingCreativesUpdate' with the minimum fields required to make a request.
+newDFAReportingCreativesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Creative ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingCreativesUpdate
+newDFAReportingCreativesUpdate payload profileId =
+  DFAReportingCreativesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingCreativesUpdate where
+  type Rs DFAReportingCreativesUpdate = Creative
+  type
+    Scopes DFAReportingCreativesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingCreativesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingCreativesUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DimensionValues/Query.hs b/gen/Gogol/DFAReporting/DimensionValues/Query.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DimensionValues/Query.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.DFAReporting.DimensionValues.Query
+-- 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 list of report dimension values for a list of filters.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.dimensionValues.query@.
+module Gogol.DFAReporting.DimensionValues.Query
+  ( -- * Resource
+    DFAReportingDimensionValuesQueryResource,
+
+    -- ** Constructing a Request
+    DFAReportingDimensionValuesQuery (..),
+    newDFAReportingDimensionValuesQuery,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.dimensionValues.query@ method which the
+-- 'DFAReportingDimensionValuesQuery' request conforms to.
+type DFAReportingDimensionValuesQueryResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "dimensionvalues"
+    Core.:> "query"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "maxResults" 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.ReqBody '[Core.JSON] DimensionValueRequest
+    Core.:> Core.Post '[Core.JSON] DimensionValueList
+
+-- | Retrieves list of report dimension values for a list of filters.
+--
+-- /See:/ 'newDFAReportingDimensionValuesQuery' smart constructor.
+data DFAReportingDimensionValuesQuery = DFAReportingDimensionValuesQuery
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | The value of the nextToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: DimensionValueRequest,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: 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 'DFAReportingDimensionValuesQuery' with the minimum fields required to make a request.
+newDFAReportingDimensionValuesQuery ::
+  -- |  Multipart request metadata. See 'payload'.
+  DimensionValueRequest ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDimensionValuesQuery
+newDFAReportingDimensionValuesQuery payload profileId =
+  DFAReportingDimensionValuesQuery
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      maxResults = 100,
+      pageToken = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDimensionValuesQuery where
+  type Rs DFAReportingDimensionValuesQuery = DimensionValueList
+  type
+    Scopes DFAReportingDimensionValuesQuery =
+      '[Dfareporting'FullControl]
+  requestClient DFAReportingDimensionValuesQuery {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (Core.Just maxResults)
+      pageToken
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingDimensionValuesQueryResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DirectorySites/Get.hs b/gen/Gogol/DFAReporting/DirectorySites/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DirectorySites/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.DirectorySites.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one directory site by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.directorySites.get@.
+module Gogol.DFAReporting.DirectorySites.Get
+  ( -- * Resource
+    DFAReportingDirectorySitesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingDirectorySitesGet (..),
+    newDFAReportingDirectorySitesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.directorySites.get@ method which the
+-- 'DFAReportingDirectorySitesGet' request conforms to.
+type DFAReportingDirectorySitesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "directorySites"
+    Core.:> Core.Capture "id" 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] DirectorySite
+
+-- | Gets one directory site by ID.
+--
+-- /See:/ 'newDFAReportingDirectorySitesGet' smart constructor.
+data DFAReportingDirectorySitesGet = DFAReportingDirectorySitesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Directory site ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingDirectorySitesGet' with the minimum fields required to make a request.
+newDFAReportingDirectorySitesGet ::
+  -- |  Directory site ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDirectorySitesGet
+newDFAReportingDirectorySitesGet id profileId =
+  DFAReportingDirectorySitesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDirectorySitesGet where
+  type Rs DFAReportingDirectorySitesGet = DirectorySite
+  type
+    Scopes DFAReportingDirectorySitesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDirectorySitesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingDirectorySitesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DirectorySites/Insert.hs b/gen/Gogol/DFAReporting/DirectorySites/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DirectorySites/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.DirectorySites.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new directory site.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.directorySites.insert@.
+module Gogol.DFAReporting.DirectorySites.Insert
+  ( -- * Resource
+    DFAReportingDirectorySitesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingDirectorySitesInsert (..),
+    newDFAReportingDirectorySitesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.directorySites.insert@ method which the
+-- 'DFAReportingDirectorySitesInsert' request conforms to.
+type DFAReportingDirectorySitesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "directorySites"
+    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] DirectorySite
+    Core.:> Core.Post '[Core.JSON] DirectorySite
+
+-- | Inserts a new directory site.
+--
+-- /See:/ 'newDFAReportingDirectorySitesInsert' smart constructor.
+data DFAReportingDirectorySitesInsert = DFAReportingDirectorySitesInsert
+  { -- | 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 :: DirectorySite,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingDirectorySitesInsert' with the minimum fields required to make a request.
+newDFAReportingDirectorySitesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  DirectorySite ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDirectorySitesInsert
+newDFAReportingDirectorySitesInsert payload profileId =
+  DFAReportingDirectorySitesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDirectorySitesInsert where
+  type Rs DFAReportingDirectorySitesInsert = DirectorySite
+  type
+    Scopes DFAReportingDirectorySitesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDirectorySitesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingDirectorySitesInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DirectorySites/List.hs b/gen/Gogol/DFAReporting/DirectorySites/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DirectorySites/List.hs
@@ -0,0 +1,167 @@
+{-# 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.DFAReporting.DirectorySites.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)
+--
+-- Retrieves a list of directory sites, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.directorySites.list@.
+module Gogol.DFAReporting.DirectorySites.List
+  ( -- * Resource
+    DFAReportingDirectorySitesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingDirectorySitesList (..),
+    newDFAReportingDirectorySitesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.directorySites.list@ method which the
+-- 'DFAReportingDirectorySitesList' request conforms to.
+type DFAReportingDirectorySitesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "directorySites"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "acceptsInStreamVideoPlacements" Core.Bool
+    Core.:> Core.QueryParam "acceptsInterstitialPlacements" Core.Bool
+    Core.:> Core.QueryParam "acceptsPublisherPaidPlacements" Core.Bool
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "dfpNetworkCode" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" DirectorySitesListSortField
+    Core.:> Core.QueryParam "sortOrder" DirectorySitesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] DirectorySitesListResponse
+
+-- | Retrieves a list of directory sites, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingDirectorySitesList' smart constructor.
+data DFAReportingDirectorySitesList = DFAReportingDirectorySitesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | This search filter is no longer supported and will have no effect on the results returned.
+    acceptsInStreamVideoPlacements :: (Core.Maybe Core.Bool),
+    -- | This search filter is no longer supported and will have no effect on the results returned.
+    acceptsInterstitialPlacements :: (Core.Maybe Core.Bool),
+    -- | Select only directory sites that accept publisher paid placements. This field can be left blank.
+    acceptsPublisherPaidPlacements :: (Core.Maybe Core.Bool),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.
+    active :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only directory sites with this Ad Manager network code.
+    dfpNetworkCode :: (Core.Maybe Core.Text),
+    -- | Select only directory sites with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name, ID or URL. Wildcards (/) are allowed. For example, \"directory site/2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: DirectorySitesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: DirectorySitesListSortOrder,
+    -- | 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 'DFAReportingDirectorySitesList' with the minimum fields required to make a request.
+newDFAReportingDirectorySitesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDirectorySitesList
+newDFAReportingDirectorySitesList profileId =
+  DFAReportingDirectorySitesList
+    { xgafv = Core.Nothing,
+      acceptsInStreamVideoPlacements = Core.Nothing,
+      acceptsInterstitialPlacements = Core.Nothing,
+      acceptsPublisherPaidPlacements = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      callback = Core.Nothing,
+      dfpNetworkCode = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = DirectorySitesListSortField_ID,
+      sortOrder = DirectorySitesListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDirectorySitesList where
+  type Rs DFAReportingDirectorySitesList = DirectorySitesListResponse
+  type
+    Scopes DFAReportingDirectorySitesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDirectorySitesList {..} =
+    go
+      profileId
+      xgafv
+      acceptsInStreamVideoPlacements
+      acceptsInterstitialPlacements
+      acceptsPublisherPaidPlacements
+      accessToken
+      active
+      callback
+      dfpNetworkCode
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingDirectorySitesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DynamicTargetingKeys/Delete.hs b/gen/Gogol/DFAReporting/DynamicTargetingKeys/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DynamicTargetingKeys/Delete.hs
@@ -0,0 +1,139 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.DynamicTargetingKeys.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 dynamic targeting key.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.dynamicTargetingKeys.delete@.
+module Gogol.DFAReporting.DynamicTargetingKeys.Delete
+  ( -- * Resource
+    DFAReportingDynamicTargetingKeysDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingDynamicTargetingKeysDelete (..),
+    newDFAReportingDynamicTargetingKeysDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.dynamicTargetingKeys.delete@ method which the
+-- 'DFAReportingDynamicTargetingKeysDelete' request conforms to.
+type DFAReportingDynamicTargetingKeysDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "dynamicTargetingKeys"
+    Core.:> Core.Capture "objectId" Core.Int64
+    Core.:> Core.QueryParam "name" Core.Text
+    Core.:> Core.QueryParam "objectType" DynamicTargetingKeysDeleteObjectType
+    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 dynamic targeting key.
+--
+-- /See:/ 'newDFAReportingDynamicTargetingKeysDelete' smart constructor.
+data DFAReportingDynamicTargetingKeysDelete = DFAReportingDynamicTargetingKeysDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
+    name :: Core.Text,
+    -- | ID of the object of this dynamic targeting key. This is a required field.
+    objectId :: Core.Int64,
+    -- | Required. Type of the object of this dynamic targeting key. This is a required field.
+    objectType :: DynamicTargetingKeysDeleteObjectType,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingDynamicTargetingKeysDelete' with the minimum fields required to make a request.
+newDFAReportingDynamicTargetingKeysDelete ::
+  -- |  Required. Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase. See 'name'.
+  Core.Text ->
+  -- |  ID of the object of this dynamic targeting key. This is a required field. See 'objectId'.
+  Core.Int64 ->
+  -- |  Required. Type of the object of this dynamic targeting key. This is a required field. See 'objectType'.
+  DynamicTargetingKeysDeleteObjectType ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDynamicTargetingKeysDelete
+newDFAReportingDynamicTargetingKeysDelete
+  name
+  objectId
+  objectType
+  profileId =
+    DFAReportingDynamicTargetingKeysDelete
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        callback = Core.Nothing,
+        name = name,
+        objectId = objectId,
+        objectType = objectType,
+        profileId = profileId,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance Core.GoogleRequest DFAReportingDynamicTargetingKeysDelete where
+  type Rs DFAReportingDynamicTargetingKeysDelete = ()
+  type
+    Scopes DFAReportingDynamicTargetingKeysDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDynamicTargetingKeysDelete {..} =
+    go
+      profileId
+      objectId
+      (Core.Just name)
+      (Core.Just objectType)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingDynamicTargetingKeysDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DynamicTargetingKeys/Insert.hs b/gen/Gogol/DFAReporting/DynamicTargetingKeys/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DynamicTargetingKeys/Insert.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.DynamicTargetingKeys.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser\'s ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.dynamicTargetingKeys.insert@.
+module Gogol.DFAReporting.DynamicTargetingKeys.Insert
+  ( -- * Resource
+    DFAReportingDynamicTargetingKeysInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingDynamicTargetingKeysInsert (..),
+    newDFAReportingDynamicTargetingKeysInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.dynamicTargetingKeys.insert@ method which the
+-- 'DFAReportingDynamicTargetingKeysInsert' request conforms to.
+type DFAReportingDynamicTargetingKeysInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "dynamicTargetingKeys"
+    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] DynamicTargetingKey
+    Core.:> Core.Post '[Core.JSON] DynamicTargetingKey
+
+-- | Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser\'s ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.
+--
+-- /See:/ 'newDFAReportingDynamicTargetingKeysInsert' smart constructor.
+data DFAReportingDynamicTargetingKeysInsert = DFAReportingDynamicTargetingKeysInsert
+  { -- | 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 :: DynamicTargetingKey,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingDynamicTargetingKeysInsert' with the minimum fields required to make a request.
+newDFAReportingDynamicTargetingKeysInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  DynamicTargetingKey ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDynamicTargetingKeysInsert
+newDFAReportingDynamicTargetingKeysInsert payload profileId =
+  DFAReportingDynamicTargetingKeysInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDynamicTargetingKeysInsert where
+  type
+    Rs DFAReportingDynamicTargetingKeysInsert =
+      DynamicTargetingKey
+  type
+    Scopes DFAReportingDynamicTargetingKeysInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDynamicTargetingKeysInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingDynamicTargetingKeysInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/DynamicTargetingKeys/List.hs b/gen/Gogol/DFAReporting/DynamicTargetingKeys/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/DynamicTargetingKeys/List.hs
@@ -0,0 +1,136 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.DynamicTargetingKeys.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)
+--
+-- Retrieves a list of dynamic targeting keys.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.dynamicTargetingKeys.list@.
+module Gogol.DFAReporting.DynamicTargetingKeys.List
+  ( -- * Resource
+    DFAReportingDynamicTargetingKeysListResource,
+
+    -- ** Constructing a Request
+    DFAReportingDynamicTargetingKeysList (..),
+    newDFAReportingDynamicTargetingKeysList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.dynamicTargetingKeys.list@ method which the
+-- 'DFAReportingDynamicTargetingKeysList' request conforms to.
+type DFAReportingDynamicTargetingKeysListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "dynamicTargetingKeys"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "names" Core.Text
+    Core.:> Core.QueryParam "objectId" Core.Int64
+    Core.:> Core.QueryParam "objectType" DynamicTargetingKeysListObjectType
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] DynamicTargetingKeysListResponse
+
+-- | Retrieves a list of dynamic targeting keys.
+--
+-- /See:/ 'newDFAReportingDynamicTargetingKeysList' smart constructor.
+data DFAReportingDynamicTargetingKeysList = DFAReportingDynamicTargetingKeysList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only dynamic targeting keys whose object has this advertiser ID.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only dynamic targeting keys exactly matching these names.
+    names :: (Core.Maybe [Core.Text]),
+    -- | Select only dynamic targeting keys with this object ID.
+    objectId :: (Core.Maybe Core.Int64),
+    -- | Select only dynamic targeting keys with this object type.
+    objectType :: (Core.Maybe DynamicTargetingKeysListObjectType),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingDynamicTargetingKeysList' with the minimum fields required to make a request.
+newDFAReportingDynamicTargetingKeysList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingDynamicTargetingKeysList
+newDFAReportingDynamicTargetingKeysList profileId =
+  DFAReportingDynamicTargetingKeysList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = Core.Nothing,
+      callback = Core.Nothing,
+      names = Core.Nothing,
+      objectId = Core.Nothing,
+      objectType = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingDynamicTargetingKeysList where
+  type
+    Rs DFAReportingDynamicTargetingKeysList =
+      DynamicTargetingKeysListResponse
+  type
+    Scopes DFAReportingDynamicTargetingKeysList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingDynamicTargetingKeysList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      advertiserId
+      callback
+      (names Core.^. Core._Default)
+      objectId
+      objectType
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingDynamicTargetingKeysListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/Delete.hs b/gen/Gogol/DFAReporting/EventTags/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/Delete.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.EventTags.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 event tag.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.delete@.
+module Gogol.DFAReporting.EventTags.Delete
+  ( -- * Resource
+    DFAReportingEventTagsDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsDelete (..),
+    newDFAReportingEventTagsDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.delete@ method which the
+-- 'DFAReportingEventTagsDelete' request conforms to.
+type DFAReportingEventTagsDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    Core.:> Core.Capture "id" 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 event tag.
+--
+-- /See:/ 'newDFAReportingEventTagsDelete' smart constructor.
+data DFAReportingEventTagsDelete = DFAReportingEventTagsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Event tag ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingEventTagsDelete' with the minimum fields required to make a request.
+newDFAReportingEventTagsDelete ::
+  -- |  Event tag ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsDelete
+newDFAReportingEventTagsDelete id profileId =
+  DFAReportingEventTagsDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsDelete where
+  type Rs DFAReportingEventTagsDelete = ()
+  type
+    Scopes DFAReportingEventTagsDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsDeleteResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/Get.hs b/gen/Gogol/DFAReporting/EventTags/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.EventTags.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one event tag by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.get@.
+module Gogol.DFAReporting.EventTags.Get
+  ( -- * Resource
+    DFAReportingEventTagsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsGet (..),
+    newDFAReportingEventTagsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.get@ method which the
+-- 'DFAReportingEventTagsGet' request conforms to.
+type DFAReportingEventTagsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    Core.:> Core.Capture "id" 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] EventTag
+
+-- | Gets one event tag by ID.
+--
+-- /See:/ 'newDFAReportingEventTagsGet' smart constructor.
+data DFAReportingEventTagsGet = DFAReportingEventTagsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Event tag ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingEventTagsGet' with the minimum fields required to make a request.
+newDFAReportingEventTagsGet ::
+  -- |  Event tag ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsGet
+newDFAReportingEventTagsGet id profileId =
+  DFAReportingEventTagsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsGet where
+  type Rs DFAReportingEventTagsGet = EventTag
+  type
+    Scopes DFAReportingEventTagsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/Insert.hs b/gen/Gogol/DFAReporting/EventTags/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.EventTags.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new event tag.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.insert@.
+module Gogol.DFAReporting.EventTags.Insert
+  ( -- * Resource
+    DFAReportingEventTagsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsInsert (..),
+    newDFAReportingEventTagsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.insert@ method which the
+-- 'DFAReportingEventTagsInsert' request conforms to.
+type DFAReportingEventTagsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    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] EventTag
+    Core.:> Core.Post '[Core.JSON] EventTag
+
+-- | Inserts a new event tag.
+--
+-- /See:/ 'newDFAReportingEventTagsInsert' smart constructor.
+data DFAReportingEventTagsInsert = DFAReportingEventTagsInsert
+  { -- | 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 :: EventTag,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingEventTagsInsert' with the minimum fields required to make a request.
+newDFAReportingEventTagsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  EventTag ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsInsert
+newDFAReportingEventTagsInsert payload profileId =
+  DFAReportingEventTagsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsInsert where
+  type Rs DFAReportingEventTagsInsert = EventTag
+  type
+    Scopes DFAReportingEventTagsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/List.hs b/gen/Gogol/DFAReporting/EventTags/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/List.hs
@@ -0,0 +1,162 @@
+{-# 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.DFAReporting.EventTags.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)
+--
+-- Retrieves a list of event tags, possibly filtered.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.list@.
+module Gogol.DFAReporting.EventTags.List
+  ( -- * Resource
+    DFAReportingEventTagsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsList (..),
+    newDFAReportingEventTagsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.list@ method which the
+-- 'DFAReportingEventTagsList' request conforms to.
+type DFAReportingEventTagsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "adId" Core.Int64
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "campaignId" Core.Int64
+    Core.:> Core.QueryParam "definitionsOnly" Core.Bool
+    Core.:> Core.QueryParam "enabled" Core.Bool
+    Core.:> Core.QueryParams "eventTagTypes" EventTagsListEventTagTypes
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" EventTagsListSortField
+    Core.:> Core.QueryParam "sortOrder" EventTagsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] EventTagsListResponse
+
+-- | Retrieves a list of event tags, possibly filtered.
+--
+-- /See:/ 'newDFAReportingEventTagsList' smart constructor.
+data DFAReportingEventTagsList = DFAReportingEventTagsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only event tags that belong to this ad.
+    adId :: (Core.Maybe Core.Int64),
+    -- | Select only event tags that belong to this advertiser.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only event tags that belong to this campaign.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Examine only the specified campaign or advertiser\'s event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.
+    definitionsOnly :: (Core.Maybe Core.Bool),
+    -- | Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign\'s event tags\' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign\'s parent advertiser\'s or parent campaign\'s event tags\' enabledByDefault and status fields are examined as well.
+    enabled :: (Core.Maybe Core.Bool),
+    -- | Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.
+    eventTagTypes :: (Core.Maybe [EventTagsListEventTagTypes]),
+    -- | Select only event tags with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"eventtag/2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: EventTagsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: EventTagsListSortOrder,
+    -- | 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 'DFAReportingEventTagsList' with the minimum fields required to make a request.
+newDFAReportingEventTagsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsList
+newDFAReportingEventTagsList profileId =
+  DFAReportingEventTagsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      adId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      callback = Core.Nothing,
+      campaignId = Core.Nothing,
+      definitionsOnly = Core.Nothing,
+      enabled = Core.Nothing,
+      eventTagTypes = Core.Nothing,
+      ids = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = EventTagsListSortField_ID,
+      sortOrder = EventTagsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsList where
+  type Rs DFAReportingEventTagsList = EventTagsListResponse
+  type
+    Scopes DFAReportingEventTagsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      adId
+      advertiserId
+      callback
+      campaignId
+      definitionsOnly
+      enabled
+      (eventTagTypes Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/Patch.hs b/gen/Gogol/DFAReporting/EventTags/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.EventTags.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing event tag. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.patch@.
+module Gogol.DFAReporting.EventTags.Patch
+  ( -- * Resource
+    DFAReportingEventTagsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsPatch (..),
+    newDFAReportingEventTagsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.patch@ method which the
+-- 'DFAReportingEventTagsPatch' request conforms to.
+type DFAReportingEventTagsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] EventTag
+    Core.:> Core.Patch '[Core.JSON] EventTag
+
+-- | Updates an existing event tag. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingEventTagsPatch' smart constructor.
+data DFAReportingEventTagsPatch = DFAReportingEventTagsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. EventTag ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: EventTag,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingEventTagsPatch' with the minimum fields required to make a request.
+newDFAReportingEventTagsPatch ::
+  -- |  Required. EventTag ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  EventTag ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsPatch
+newDFAReportingEventTagsPatch id payload profileId =
+  DFAReportingEventTagsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsPatch where
+  type Rs DFAReportingEventTagsPatch = EventTag
+  type
+    Scopes DFAReportingEventTagsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/EventTags/Update.hs b/gen/Gogol/DFAReporting/EventTags/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/EventTags/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.EventTags.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing event tag.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.eventTags.update@.
+module Gogol.DFAReporting.EventTags.Update
+  ( -- * Resource
+    DFAReportingEventTagsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingEventTagsUpdate (..),
+    newDFAReportingEventTagsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.eventTags.update@ method which the
+-- 'DFAReportingEventTagsUpdate' request conforms to.
+type DFAReportingEventTagsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "eventTags"
+    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] EventTag
+    Core.:> Core.Put '[Core.JSON] EventTag
+
+-- | Updates an existing event tag.
+--
+-- /See:/ 'newDFAReportingEventTagsUpdate' smart constructor.
+data DFAReportingEventTagsUpdate = DFAReportingEventTagsUpdate
+  { -- | 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 :: EventTag,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingEventTagsUpdate' with the minimum fields required to make a request.
+newDFAReportingEventTagsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  EventTag ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingEventTagsUpdate
+newDFAReportingEventTagsUpdate payload profileId =
+  DFAReportingEventTagsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingEventTagsUpdate where
+  type Rs DFAReportingEventTagsUpdate = EventTag
+  type
+    Scopes DFAReportingEventTagsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingEventTagsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingEventTagsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Files/Get.hs b/gen/Gogol/DFAReporting/Files/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Files/Get.hs
@@ -0,0 +1,155 @@
+{-# 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.DFAReporting.Files.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 file by its report ID and file ID. This method supports media download.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.files.get@.
+module Gogol.DFAReporting.Files.Get
+  ( -- * Resource
+    DFAReportingFilesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingFilesGet (..),
+    newDFAReportingFilesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.files.get@ method which the
+-- 'DFAReportingFilesGet' request conforms to.
+type DFAReportingFilesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.Capture "fileId" 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] File
+    Core.:<|> "dfareporting"
+    Core.:> "v4"
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.Capture "fileId" 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.AltMedia
+    Core.:> Core.Get '[Core.OctetStream] Core.Stream
+
+-- | Retrieves a report file by its report ID and file ID. This method supports media download.
+--
+-- /See:/ 'newDFAReportingFilesGet' smart constructor.
+data DFAReportingFilesGet = DFAReportingFilesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The ID of the report file.
+    fileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingFilesGet' with the minimum fields required to make a request.
+newDFAReportingFilesGet ::
+  -- |  The ID of the report file. See 'fileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingFilesGet
+newDFAReportingFilesGet fileId reportId =
+  DFAReportingFilesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      fileId = fileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFilesGet where
+  type Rs DFAReportingFilesGet = File
+  type Scopes DFAReportingFilesGet = '[Dfareporting'FullControl]
+  requestClient DFAReportingFilesGet {..} =
+    go
+      reportId
+      fileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go Core.:<|> _ =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingFilesGetResource)
+          Core.mempty
+
+instance
+  Core.GoogleRequest
+    (Core.MediaDownload DFAReportingFilesGet)
+  where
+  type Rs (Core.MediaDownload DFAReportingFilesGet) = Core.Stream
+  type
+    Scopes (Core.MediaDownload DFAReportingFilesGet) =
+      Core.Scopes DFAReportingFilesGet
+  requestClient (Core.MediaDownload DFAReportingFilesGet {..}) =
+    go
+      reportId
+      fileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltMedia)
+      dFAReportingService
+    where
+      _ Core.:<|> go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingFilesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Files/List.hs b/gen/Gogol/DFAReporting/Files/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Files/List.hs
@@ -0,0 +1,135 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Files.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 files for a user profile.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.files.list@.
+module Gogol.DFAReporting.Files.List
+  ( -- * Resource
+    DFAReportingFilesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingFilesList (..),
+    newDFAReportingFilesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.files.list@ method which the
+-- 'DFAReportingFilesList' request conforms to.
+type DFAReportingFilesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "scope" FilesListScope
+    Core.:> Core.QueryParam "sortField" FilesListSortField
+    Core.:> Core.QueryParam "sortOrder" FilesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] FileList
+
+-- | Lists files for a user profile.
+--
+-- /See:/ 'newDFAReportingFilesList' smart constructor.
+data DFAReportingFilesList = DFAReportingFilesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | The value of the nextToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The scope that defines which results are returned.
+    scope :: FilesListScope,
+    -- | The field by which to sort the list.
+    sortField :: FilesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: FilesListSortOrder,
+    -- | 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 'DFAReportingFilesList' with the minimum fields required to make a request.
+newDFAReportingFilesList ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFilesList
+newDFAReportingFilesList profileId =
+  DFAReportingFilesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      maxResults = 10,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      scope = FilesListScope_Mine,
+      sortField = FilesListSortField_LASTMODIFIEDTIME,
+      sortOrder = FilesListSortOrder_Descending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFilesList where
+  type Rs DFAReportingFilesList = FileList
+  type Scopes DFAReportingFilesList = '[Dfareporting'FullControl]
+  requestClient DFAReportingFilesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (Core.Just maxResults)
+      pageToken
+      (Core.Just scope)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingFilesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Delete.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Delete.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.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 floodlight activity.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.delete@.
+module Gogol.DFAReporting.FloodlightActivities.Delete
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesDelete (..),
+    newDFAReportingFloodlightActivitiesDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.delete@ method which the
+-- 'DFAReportingFloodlightActivitiesDelete' request conforms to.
+type DFAReportingFloodlightActivitiesDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    Core.:> Core.Capture "id" 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 floodlight activity.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesDelete' smart constructor.
+data DFAReportingFloodlightActivitiesDelete = DFAReportingFloodlightActivitiesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Floodlight activity ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesDelete' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesDelete ::
+  -- |  Floodlight activity ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesDelete
+newDFAReportingFloodlightActivitiesDelete id profileId =
+  DFAReportingFloodlightActivitiesDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesDelete where
+  type Rs DFAReportingFloodlightActivitiesDelete = ()
+  type
+    Scopes DFAReportingFloodlightActivitiesDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Generatetag.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Generatetag.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Generatetag.hs
@@ -0,0 +1,125 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.Generatetag
+-- 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)
+--
+-- Generates a tag for a floodlight activity.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.generatetag@.
+module Gogol.DFAReporting.FloodlightActivities.Generatetag
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesGeneratetagResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesGeneratetag (..),
+    newDFAReportingFloodlightActivitiesGeneratetag,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.generatetag@ method which the
+-- 'DFAReportingFloodlightActivitiesGeneratetag' request conforms to.
+type DFAReportingFloodlightActivitiesGeneratetagResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    Core.:> "generatetag"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "floodlightActivityId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Post '[Core.JSON] FloodlightActivitiesGenerateTagResponse
+
+-- | Generates a tag for a floodlight activity.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesGeneratetag' smart constructor.
+data DFAReportingFloodlightActivitiesGeneratetag = DFAReportingFloodlightActivitiesGeneratetag
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Floodlight activity ID for which we want to generate a tag.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesGeneratetag' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesGeneratetag ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesGeneratetag
+newDFAReportingFloodlightActivitiesGeneratetag profileId =
+  DFAReportingFloodlightActivitiesGeneratetag
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      floodlightActivityId = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightActivitiesGeneratetag
+  where
+  type
+    Rs DFAReportingFloodlightActivitiesGeneratetag =
+      FloodlightActivitiesGenerateTagResponse
+  type
+    Scopes DFAReportingFloodlightActivitiesGeneratetag =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesGeneratetag {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      floodlightActivityId
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesGeneratetagResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Get.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one floodlight activity by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.get@.
+module Gogol.DFAReporting.FloodlightActivities.Get
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesGet (..),
+    newDFAReportingFloodlightActivitiesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.get@ method which the
+-- 'DFAReportingFloodlightActivitiesGet' request conforms to.
+type DFAReportingFloodlightActivitiesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    Core.:> Core.Capture "id" 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] FloodlightActivity
+
+-- | Gets one floodlight activity by ID.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesGet' smart constructor.
+data DFAReportingFloodlightActivitiesGet = DFAReportingFloodlightActivitiesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Floodlight activity ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesGet' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesGet ::
+  -- |  Floodlight activity ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesGet
+newDFAReportingFloodlightActivitiesGet id profileId =
+  DFAReportingFloodlightActivitiesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesGet where
+  type Rs DFAReportingFloodlightActivitiesGet = FloodlightActivity
+  type
+    Scopes DFAReportingFloodlightActivitiesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Insert.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new floodlight activity.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.insert@.
+module Gogol.DFAReporting.FloodlightActivities.Insert
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesInsert (..),
+    newDFAReportingFloodlightActivitiesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.insert@ method which the
+-- 'DFAReportingFloodlightActivitiesInsert' request conforms to.
+type DFAReportingFloodlightActivitiesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    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] FloodlightActivity
+    Core.:> Core.Post '[Core.JSON] FloodlightActivity
+
+-- | Inserts a new floodlight activity.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesInsert' smart constructor.
+data DFAReportingFloodlightActivitiesInsert = DFAReportingFloodlightActivitiesInsert
+  { -- | 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 :: FloodlightActivity,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesInsert' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivity ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesInsert
+newDFAReportingFloodlightActivitiesInsert payload profileId =
+  DFAReportingFloodlightActivitiesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesInsert where
+  type Rs DFAReportingFloodlightActivitiesInsert = FloodlightActivity
+  type
+    Scopes DFAReportingFloodlightActivitiesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/List.hs b/gen/Gogol/DFAReporting/FloodlightActivities/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/List.hs
@@ -0,0 +1,189 @@
+{-# 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.DFAReporting.FloodlightActivities.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)
+--
+-- Retrieves a list of floodlight activities, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.list@.
+module Gogol.DFAReporting.FloodlightActivities.List
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesList (..),
+    newDFAReportingFloodlightActivitiesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.list@ method which the
+-- 'DFAReportingFloodlightActivitiesList' request conforms to.
+type DFAReportingFloodlightActivitiesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "floodlightActivityGroupIds" Core.Int64
+    Core.:> Core.QueryParam "floodlightActivityGroupName" Core.Text
+    Core.:> Core.QueryParam "floodlightActivityGroupTagString" Core.Text
+    Core.:> Core.QueryParam
+              "floodlightActivityGroupType"
+              FloodlightActivitiesListFloodlightActivityGroupType
+    Core.:> Core.QueryParam "floodlightConfigurationId" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam
+              "sortField"
+              FloodlightActivitiesListSortField
+    Core.:> Core.QueryParam
+              "sortOrder"
+              FloodlightActivitiesListSortOrder
+    Core.:> Core.QueryParam "tagString" 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]
+              FloodlightActivitiesListResponse
+
+-- | Retrieves a list of floodlight activities, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesList' smart constructor.
+data DFAReportingFloodlightActivitiesList = DFAReportingFloodlightActivitiesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activities with the specified floodlight activity group IDs.
+    floodlightActivityGroupIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only floodlight activities with the specified floodlight activity group name.
+    floodlightActivityGroupName :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activities with the specified floodlight activity group tag string.
+    floodlightActivityGroupTagString :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activities with the specified floodlight activity group type.
+    floodlightActivityGroupType :: (Core.Maybe FloodlightActivitiesListFloodlightActivityGroupType),
+    -- | Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"floodlightactivity/2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: FloodlightActivitiesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: FloodlightActivitiesListSortOrder,
+    -- | Select only floodlight activities with the specified tag string.
+    tagString :: (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 'DFAReportingFloodlightActivitiesList' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesList
+newDFAReportingFloodlightActivitiesList profileId =
+  DFAReportingFloodlightActivitiesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = Core.Nothing,
+      callback = Core.Nothing,
+      floodlightActivityGroupIds = Core.Nothing,
+      floodlightActivityGroupName = Core.Nothing,
+      floodlightActivityGroupTagString = Core.Nothing,
+      floodlightActivityGroupType = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = FloodlightActivitiesListSortField_ID,
+      sortOrder = FloodlightActivitiesListSortOrder_Ascending,
+      tagString = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesList where
+  type
+    Rs DFAReportingFloodlightActivitiesList =
+      FloodlightActivitiesListResponse
+  type
+    Scopes DFAReportingFloodlightActivitiesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      advertiserId
+      callback
+      (floodlightActivityGroupIds Core.^. Core._Default)
+      floodlightActivityGroupName
+      floodlightActivityGroupTagString
+      floodlightActivityGroupType
+      floodlightConfigurationId
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      tagString
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Patch.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight activity. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.patch@.
+module Gogol.DFAReporting.FloodlightActivities.Patch
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesPatch (..),
+    newDFAReportingFloodlightActivitiesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.patch@ method which the
+-- 'DFAReportingFloodlightActivitiesPatch' request conforms to.
+type DFAReportingFloodlightActivitiesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] FloodlightActivity
+    Core.:> Core.Patch '[Core.JSON] FloodlightActivity
+
+-- | Updates an existing floodlight activity. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesPatch' smart constructor.
+data DFAReportingFloodlightActivitiesPatch = DFAReportingFloodlightActivitiesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. EventTag ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: FloodlightActivity,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesPatch' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesPatch ::
+  -- |  Required. EventTag ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivity ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesPatch
+newDFAReportingFloodlightActivitiesPatch id payload profileId =
+  DFAReportingFloodlightActivitiesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesPatch where
+  type Rs DFAReportingFloodlightActivitiesPatch = FloodlightActivity
+  type
+    Scopes DFAReportingFloodlightActivitiesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivities/Update.hs b/gen/Gogol/DFAReporting/FloodlightActivities/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivities/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivities.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight activity.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivities.update@.
+module Gogol.DFAReporting.FloodlightActivities.Update
+  ( -- * Resource
+    DFAReportingFloodlightActivitiesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivitiesUpdate (..),
+    newDFAReportingFloodlightActivitiesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivities.update@ method which the
+-- 'DFAReportingFloodlightActivitiesUpdate' request conforms to.
+type DFAReportingFloodlightActivitiesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivities"
+    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] FloodlightActivity
+    Core.:> Core.Put '[Core.JSON] FloodlightActivity
+
+-- | Updates an existing floodlight activity.
+--
+-- /See:/ 'newDFAReportingFloodlightActivitiesUpdate' smart constructor.
+data DFAReportingFloodlightActivitiesUpdate = DFAReportingFloodlightActivitiesUpdate
+  { -- | 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 :: FloodlightActivity,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivitiesUpdate' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivitiesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivity ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivitiesUpdate
+newDFAReportingFloodlightActivitiesUpdate payload profileId =
+  DFAReportingFloodlightActivitiesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivitiesUpdate where
+  type Rs DFAReportingFloodlightActivitiesUpdate = FloodlightActivity
+  type
+    Scopes DFAReportingFloodlightActivitiesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivitiesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivitiesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivityGroups/Get.hs b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Get.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivityGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one floodlight activity group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivityGroups.get@.
+module Gogol.DFAReporting.FloodlightActivityGroups.Get
+  ( -- * Resource
+    DFAReportingFloodlightActivityGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivityGroupsGet (..),
+    newDFAReportingFloodlightActivityGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivityGroups.get@ method which the
+-- 'DFAReportingFloodlightActivityGroupsGet' request conforms to.
+type DFAReportingFloodlightActivityGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivityGroups"
+    Core.:> Core.Capture "id" 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] FloodlightActivityGroup
+
+-- | Gets one floodlight activity group by ID.
+--
+-- /See:/ 'newDFAReportingFloodlightActivityGroupsGet' smart constructor.
+data DFAReportingFloodlightActivityGroupsGet = DFAReportingFloodlightActivityGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Floodlight activity Group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivityGroupsGet' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivityGroupsGet ::
+  -- |  Floodlight activity Group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivityGroupsGet
+newDFAReportingFloodlightActivityGroupsGet id profileId =
+  DFAReportingFloodlightActivityGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightActivityGroupsGet where
+  type
+    Rs DFAReportingFloodlightActivityGroupsGet =
+      FloodlightActivityGroup
+  type
+    Scopes DFAReportingFloodlightActivityGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivityGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivityGroupsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivityGroups/Insert.hs b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Insert.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivityGroups.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new floodlight activity group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivityGroups.insert@.
+module Gogol.DFAReporting.FloodlightActivityGroups.Insert
+  ( -- * Resource
+    DFAReportingFloodlightActivityGroupsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivityGroupsInsert (..),
+    newDFAReportingFloodlightActivityGroupsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivityGroups.insert@ method which the
+-- 'DFAReportingFloodlightActivityGroupsInsert' request conforms to.
+type DFAReportingFloodlightActivityGroupsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivityGroups"
+    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] FloodlightActivityGroup
+    Core.:> Core.Post '[Core.JSON] FloodlightActivityGroup
+
+-- | Inserts a new floodlight activity group.
+--
+-- /See:/ 'newDFAReportingFloodlightActivityGroupsInsert' smart constructor.
+data DFAReportingFloodlightActivityGroupsInsert = DFAReportingFloodlightActivityGroupsInsert
+  { -- | 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 :: FloodlightActivityGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivityGroupsInsert' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivityGroupsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivityGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivityGroupsInsert
+newDFAReportingFloodlightActivityGroupsInsert payload profileId =
+  DFAReportingFloodlightActivityGroupsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightActivityGroupsInsert
+  where
+  type
+    Rs DFAReportingFloodlightActivityGroupsInsert =
+      FloodlightActivityGroup
+  type
+    Scopes DFAReportingFloodlightActivityGroupsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivityGroupsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivityGroupsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivityGroups/List.hs b/gen/Gogol/DFAReporting/FloodlightActivityGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivityGroups/List.hs
@@ -0,0 +1,167 @@
+{-# 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.DFAReporting.FloodlightActivityGroups.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)
+--
+-- Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivityGroups.list@.
+module Gogol.DFAReporting.FloodlightActivityGroups.List
+  ( -- * Resource
+    DFAReportingFloodlightActivityGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivityGroupsList (..),
+    newDFAReportingFloodlightActivityGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivityGroups.list@ method which the
+-- 'DFAReportingFloodlightActivityGroupsList' request conforms to.
+type DFAReportingFloodlightActivityGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivityGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "floodlightConfigurationId" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" FloodlightActivityGroupsListSortField
+    Core.:> Core.QueryParam "sortOrder" FloodlightActivityGroupsListSortOrder
+    Core.:> Core.QueryParam "type" FloodlightActivityGroupsListType
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              FloodlightActivityGroupsListResponse
+
+-- | Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingFloodlightActivityGroupsList' smart constructor.
+data DFAReportingFloodlightActivityGroupsList = DFAReportingFloodlightActivityGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"floodlightactivitygroup/2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: FloodlightActivityGroupsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: FloodlightActivityGroupsListSortOrder,
+    -- | Select only floodlight activity groups with the specified floodlight activity group type.
+    type' :: (Core.Maybe FloodlightActivityGroupsListType),
+    -- | 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 'DFAReportingFloodlightActivityGroupsList' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivityGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivityGroupsList
+newDFAReportingFloodlightActivityGroupsList profileId =
+  DFAReportingFloodlightActivityGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = Core.Nothing,
+      callback = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = FloodlightActivityGroupsListSortField_ID,
+      sortOrder =
+        FloodlightActivityGroupsListSortOrder_Ascending,
+      type' = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightActivityGroupsList
+  where
+  type
+    Rs DFAReportingFloodlightActivityGroupsList =
+      FloodlightActivityGroupsListResponse
+  type
+    Scopes DFAReportingFloodlightActivityGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivityGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      advertiserId
+      callback
+      floodlightConfigurationId
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      type'
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivityGroupsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivityGroups/Patch.hs b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Patch.hs
@@ -0,0 +1,133 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivityGroups.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight activity group. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivityGroups.patch@.
+module Gogol.DFAReporting.FloodlightActivityGroups.Patch
+  ( -- * Resource
+    DFAReportingFloodlightActivityGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivityGroupsPatch (..),
+    newDFAReportingFloodlightActivityGroupsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivityGroups.patch@ method which the
+-- 'DFAReportingFloodlightActivityGroupsPatch' request conforms to.
+type DFAReportingFloodlightActivityGroupsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivityGroups"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] FloodlightActivityGroup
+    Core.:> Core.Patch '[Core.JSON] FloodlightActivityGroup
+
+-- | Updates an existing floodlight activity group. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingFloodlightActivityGroupsPatch' smart constructor.
+data DFAReportingFloodlightActivityGroupsPatch = DFAReportingFloodlightActivityGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. EventTag ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: FloodlightActivityGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivityGroupsPatch' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivityGroupsPatch ::
+  -- |  Required. EventTag ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivityGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivityGroupsPatch
+newDFAReportingFloodlightActivityGroupsPatch id payload profileId =
+  DFAReportingFloodlightActivityGroupsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightActivityGroupsPatch
+  where
+  type
+    Rs DFAReportingFloodlightActivityGroupsPatch =
+      FloodlightActivityGroup
+  type
+    Scopes DFAReportingFloodlightActivityGroupsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivityGroupsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivityGroupsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightActivityGroups/Update.hs b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightActivityGroups/Update.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightActivityGroups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight activity group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightActivityGroups.update@.
+module Gogol.DFAReporting.FloodlightActivityGroups.Update
+  ( -- * Resource
+    DFAReportingFloodlightActivityGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightActivityGroupsUpdate (..),
+    newDFAReportingFloodlightActivityGroupsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightActivityGroups.update@ method which the
+-- 'DFAReportingFloodlightActivityGroupsUpdate' request conforms to.
+type DFAReportingFloodlightActivityGroupsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightActivityGroups"
+    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] FloodlightActivityGroup
+    Core.:> Core.Put '[Core.JSON] FloodlightActivityGroup
+
+-- | Updates an existing floodlight activity group.
+--
+-- /See:/ 'newDFAReportingFloodlightActivityGroupsUpdate' smart constructor.
+data DFAReportingFloodlightActivityGroupsUpdate = DFAReportingFloodlightActivityGroupsUpdate
+  { -- | 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 :: FloodlightActivityGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightActivityGroupsUpdate' with the minimum fields required to make a request.
+newDFAReportingFloodlightActivityGroupsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightActivityGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightActivityGroupsUpdate
+newDFAReportingFloodlightActivityGroupsUpdate payload profileId =
+  DFAReportingFloodlightActivityGroupsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightActivityGroupsUpdate
+  where
+  type
+    Rs DFAReportingFloodlightActivityGroupsUpdate =
+      FloodlightActivityGroup
+  type
+    Scopes DFAReportingFloodlightActivityGroupsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightActivityGroupsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightActivityGroupsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightConfigurations/Get.hs b/gen/Gogol/DFAReporting/FloodlightConfigurations/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightConfigurations/Get.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightConfigurations.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one floodlight configuration by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightConfigurations.get@.
+module Gogol.DFAReporting.FloodlightConfigurations.Get
+  ( -- * Resource
+    DFAReportingFloodlightConfigurationsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightConfigurationsGet (..),
+    newDFAReportingFloodlightConfigurationsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightConfigurations.get@ method which the
+-- 'DFAReportingFloodlightConfigurationsGet' request conforms to.
+type DFAReportingFloodlightConfigurationsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightConfigurations"
+    Core.:> Core.Capture "id" 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] FloodlightConfiguration
+
+-- | Gets one floodlight configuration by ID.
+--
+-- /See:/ 'newDFAReportingFloodlightConfigurationsGet' smart constructor.
+data DFAReportingFloodlightConfigurationsGet = DFAReportingFloodlightConfigurationsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Floodlight configuration ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightConfigurationsGet' with the minimum fields required to make a request.
+newDFAReportingFloodlightConfigurationsGet ::
+  -- |  Floodlight configuration ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightConfigurationsGet
+newDFAReportingFloodlightConfigurationsGet id profileId =
+  DFAReportingFloodlightConfigurationsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingFloodlightConfigurationsGet where
+  type
+    Rs DFAReportingFloodlightConfigurationsGet =
+      FloodlightConfiguration
+  type
+    Scopes DFAReportingFloodlightConfigurationsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightConfigurationsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightConfigurationsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightConfigurations/List.hs b/gen/Gogol/DFAReporting/FloodlightConfigurations/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightConfigurations/List.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightConfigurations.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)
+--
+-- Retrieves a list of floodlight configurations, possibly filtered.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightConfigurations.list@.
+module Gogol.DFAReporting.FloodlightConfigurations.List
+  ( -- * Resource
+    DFAReportingFloodlightConfigurationsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightConfigurationsList (..),
+    newDFAReportingFloodlightConfigurationsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightConfigurations.list@ method which the
+-- 'DFAReportingFloodlightConfigurationsList' request conforms to.
+type DFAReportingFloodlightConfigurationsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightConfigurations"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] FloodlightConfigurationsListResponse
+
+-- | Retrieves a list of floodlight configurations, possibly filtered.
+--
+-- /See:/ 'newDFAReportingFloodlightConfigurationsList' smart constructor.
+data DFAReportingFloodlightConfigurationsList = DFAReportingFloodlightConfigurationsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightConfigurationsList' with the minimum fields required to make a request.
+newDFAReportingFloodlightConfigurationsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightConfigurationsList
+newDFAReportingFloodlightConfigurationsList profileId =
+  DFAReportingFloodlightConfigurationsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightConfigurationsList
+  where
+  type
+    Rs DFAReportingFloodlightConfigurationsList =
+      FloodlightConfigurationsListResponse
+  type
+    Scopes DFAReportingFloodlightConfigurationsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightConfigurationsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightConfigurationsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightConfigurations/Patch.hs b/gen/Gogol/DFAReporting/FloodlightConfigurations/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightConfigurations/Patch.hs
@@ -0,0 +1,133 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightConfigurations.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight configuration. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightConfigurations.patch@.
+module Gogol.DFAReporting.FloodlightConfigurations.Patch
+  ( -- * Resource
+    DFAReportingFloodlightConfigurationsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightConfigurationsPatch (..),
+    newDFAReportingFloodlightConfigurationsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightConfigurations.patch@ method which the
+-- 'DFAReportingFloodlightConfigurationsPatch' request conforms to.
+type DFAReportingFloodlightConfigurationsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightConfigurations"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] FloodlightConfiguration
+    Core.:> Core.Patch '[Core.JSON] FloodlightConfiguration
+
+-- | Updates an existing floodlight configuration. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingFloodlightConfigurationsPatch' smart constructor.
+data DFAReportingFloodlightConfigurationsPatch = DFAReportingFloodlightConfigurationsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. EventTag ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: FloodlightConfiguration,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightConfigurationsPatch' with the minimum fields required to make a request.
+newDFAReportingFloodlightConfigurationsPatch ::
+  -- |  Required. EventTag ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightConfiguration ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightConfigurationsPatch
+newDFAReportingFloodlightConfigurationsPatch id payload profileId =
+  DFAReportingFloodlightConfigurationsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightConfigurationsPatch
+  where
+  type
+    Rs DFAReportingFloodlightConfigurationsPatch =
+      FloodlightConfiguration
+  type
+    Scopes DFAReportingFloodlightConfigurationsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightConfigurationsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightConfigurationsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/FloodlightConfigurations/Update.hs b/gen/Gogol/DFAReporting/FloodlightConfigurations/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/FloodlightConfigurations/Update.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.FloodlightConfigurations.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing floodlight configuration.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.floodlightConfigurations.update@.
+module Gogol.DFAReporting.FloodlightConfigurations.Update
+  ( -- * Resource
+    DFAReportingFloodlightConfigurationsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingFloodlightConfigurationsUpdate (..),
+    newDFAReportingFloodlightConfigurationsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.floodlightConfigurations.update@ method which the
+-- 'DFAReportingFloodlightConfigurationsUpdate' request conforms to.
+type DFAReportingFloodlightConfigurationsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "floodlightConfigurations"
+    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] FloodlightConfiguration
+    Core.:> Core.Put '[Core.JSON] FloodlightConfiguration
+
+-- | Updates an existing floodlight configuration.
+--
+-- /See:/ 'newDFAReportingFloodlightConfigurationsUpdate' smart constructor.
+data DFAReportingFloodlightConfigurationsUpdate = DFAReportingFloodlightConfigurationsUpdate
+  { -- | 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 :: FloodlightConfiguration,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingFloodlightConfigurationsUpdate' with the minimum fields required to make a request.
+newDFAReportingFloodlightConfigurationsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  FloodlightConfiguration ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingFloodlightConfigurationsUpdate
+newDFAReportingFloodlightConfigurationsUpdate payload profileId =
+  DFAReportingFloodlightConfigurationsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingFloodlightConfigurationsUpdate
+  where
+  type
+    Rs DFAReportingFloodlightConfigurationsUpdate =
+      FloodlightConfiguration
+  type
+    Scopes DFAReportingFloodlightConfigurationsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingFloodlightConfigurationsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingFloodlightConfigurationsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Internal/Product.hs b/gen/Gogol/DFAReporting/Internal/Product.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Internal/Product.hs
@@ -0,0 +1,16008 @@
+{-# 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.DFAReporting.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.DFAReporting.Internal.Product
+  ( -- * Account
+    Account (..),
+    newAccount,
+
+    -- * AccountActiveAdSummary
+    AccountActiveAdSummary (..),
+    newAccountActiveAdSummary,
+
+    -- * AccountPermission
+    AccountPermission (..),
+    newAccountPermission,
+
+    -- * AccountPermissionGroup
+    AccountPermissionGroup (..),
+    newAccountPermissionGroup,
+
+    -- * AccountPermissionGroupsListResponse
+    AccountPermissionGroupsListResponse (..),
+    newAccountPermissionGroupsListResponse,
+
+    -- * AccountPermissionsListResponse
+    AccountPermissionsListResponse (..),
+    newAccountPermissionsListResponse,
+
+    -- * AccountUserProfile
+    AccountUserProfile (..),
+    newAccountUserProfile,
+
+    -- * AccountUserProfilesListResponse
+    AccountUserProfilesListResponse (..),
+    newAccountUserProfilesListResponse,
+
+    -- * AccountsListResponse
+    AccountsListResponse (..),
+    newAccountsListResponse,
+
+    -- * Activities
+    Activities (..),
+    newActivities,
+
+    -- * Ad
+    Ad (..),
+    newAd,
+
+    -- * AdBlockingConfiguration
+    AdBlockingConfiguration (..),
+    newAdBlockingConfiguration,
+
+    -- * AdSlot
+    AdSlot (..),
+    newAdSlot,
+
+    -- * AdsListResponse
+    AdsListResponse (..),
+    newAdsListResponse,
+
+    -- * Advertiser
+    Advertiser (..),
+    newAdvertiser,
+
+    -- * AdvertiserGroup
+    AdvertiserGroup (..),
+    newAdvertiserGroup,
+
+    -- * AdvertiserGroupsListResponse
+    AdvertiserGroupsListResponse (..),
+    newAdvertiserGroupsListResponse,
+
+    -- * AdvertiserInvoicesListResponse
+    AdvertiserInvoicesListResponse (..),
+    newAdvertiserInvoicesListResponse,
+
+    -- * AdvertiserLandingPagesListResponse
+    AdvertiserLandingPagesListResponse (..),
+    newAdvertiserLandingPagesListResponse,
+
+    -- * AdvertisersListResponse
+    AdvertisersListResponse (..),
+    newAdvertisersListResponse,
+
+    -- * AudienceSegment
+    AudienceSegment (..),
+    newAudienceSegment,
+
+    -- * AudienceSegmentGroup
+    AudienceSegmentGroup (..),
+    newAudienceSegmentGroup,
+
+    -- * BillingAssignment
+    BillingAssignment (..),
+    newBillingAssignment,
+
+    -- * BillingAssignmentsListResponse
+    BillingAssignmentsListResponse (..),
+    newBillingAssignmentsListResponse,
+
+    -- * BillingProfile
+    BillingProfile (..),
+    newBillingProfile,
+
+    -- * BillingProfilesListResponse
+    BillingProfilesListResponse (..),
+    newBillingProfilesListResponse,
+
+    -- * BillingRate
+    BillingRate (..),
+    newBillingRate,
+
+    -- * BillingRateTieredRate
+    BillingRateTieredRate (..),
+    newBillingRateTieredRate,
+
+    -- * BillingRatesListResponse
+    BillingRatesListResponse (..),
+    newBillingRatesListResponse,
+
+    -- * Browser
+    Browser (..),
+    newBrowser,
+
+    -- * BrowsersListResponse
+    BrowsersListResponse (..),
+    newBrowsersListResponse,
+
+    -- * Campaign
+    Campaign (..),
+    newCampaign,
+
+    -- * CampaignCreativeAssociation
+    CampaignCreativeAssociation (..),
+    newCampaignCreativeAssociation,
+
+    -- * CampaignCreativeAssociationsListResponse
+    CampaignCreativeAssociationsListResponse (..),
+    newCampaignCreativeAssociationsListResponse,
+
+    -- * CampaignSummary
+    CampaignSummary (..),
+    newCampaignSummary,
+
+    -- * CampaignsListResponse
+    CampaignsListResponse (..),
+    newCampaignsListResponse,
+
+    -- * CartData
+    CartData (..),
+    newCartData,
+
+    -- * CartDataItem
+    CartDataItem (..),
+    newCartDataItem,
+
+    -- * ChangeLog
+    ChangeLog (..),
+    newChangeLog,
+
+    -- * ChangeLogsListResponse
+    ChangeLogsListResponse (..),
+    newChangeLogsListResponse,
+
+    -- * CitiesListResponse
+    CitiesListResponse (..),
+    newCitiesListResponse,
+
+    -- * City
+    City (..),
+    newCity,
+
+    -- * ClickTag
+    ClickTag (..),
+    newClickTag,
+
+    -- * ClickThroughUrl
+    ClickThroughUrl (..),
+    newClickThroughUrl,
+
+    -- * ClickThroughUrlSuffixProperties
+    ClickThroughUrlSuffixProperties (..),
+    newClickThroughUrlSuffixProperties,
+
+    -- * CompanionClickThroughOverride
+    CompanionClickThroughOverride (..),
+    newCompanionClickThroughOverride,
+
+    -- * CompanionSetting
+    CompanionSetting (..),
+    newCompanionSetting,
+
+    -- * CompatibleFields
+    CompatibleFields (..),
+    newCompatibleFields,
+
+    -- * ConnectionType
+    ConnectionType (..),
+    newConnectionType,
+
+    -- * ConnectionTypesListResponse
+    ConnectionTypesListResponse (..),
+    newConnectionTypesListResponse,
+
+    -- * ContentCategoriesListResponse
+    ContentCategoriesListResponse (..),
+    newContentCategoriesListResponse,
+
+    -- * ContentCategory
+    ContentCategory (..),
+    newContentCategory,
+
+    -- * Conversion
+    Conversion (..),
+    newConversion,
+
+    -- * ConversionError
+    ConversionError (..),
+    newConversionError,
+
+    -- * ConversionStatus
+    ConversionStatus (..),
+    newConversionStatus,
+
+    -- * ConversionsBatchInsertRequest
+    ConversionsBatchInsertRequest (..),
+    newConversionsBatchInsertRequest,
+
+    -- * ConversionsBatchInsertResponse
+    ConversionsBatchInsertResponse (..),
+    newConversionsBatchInsertResponse,
+
+    -- * ConversionsBatchUpdateRequest
+    ConversionsBatchUpdateRequest (..),
+    newConversionsBatchUpdateRequest,
+
+    -- * ConversionsBatchUpdateResponse
+    ConversionsBatchUpdateResponse (..),
+    newConversionsBatchUpdateResponse,
+
+    -- * CountriesListResponse
+    CountriesListResponse (..),
+    newCountriesListResponse,
+
+    -- * Country
+    Country (..),
+    newCountry,
+
+    -- * Creative
+    Creative (..),
+    newCreative,
+
+    -- * CreativeAsset
+    CreativeAsset (..),
+    newCreativeAsset,
+
+    -- * CreativeAssetId
+    CreativeAssetId (..),
+    newCreativeAssetId,
+
+    -- * CreativeAssetMetadata
+    CreativeAssetMetadata (..),
+    newCreativeAssetMetadata,
+
+    -- * CreativeAssetSelection
+    CreativeAssetSelection (..),
+    newCreativeAssetSelection,
+
+    -- * CreativeAssignment
+    CreativeAssignment (..),
+    newCreativeAssignment,
+
+    -- * CreativeClickThroughUrl
+    CreativeClickThroughUrl (..),
+    newCreativeClickThroughUrl,
+
+    -- * CreativeCustomEvent
+    CreativeCustomEvent (..),
+    newCreativeCustomEvent,
+
+    -- * CreativeField
+    CreativeField (..),
+    newCreativeField,
+
+    -- * CreativeFieldAssignment
+    CreativeFieldAssignment (..),
+    newCreativeFieldAssignment,
+
+    -- * CreativeFieldValue
+    CreativeFieldValue (..),
+    newCreativeFieldValue,
+
+    -- * CreativeFieldValuesListResponse
+    CreativeFieldValuesListResponse (..),
+    newCreativeFieldValuesListResponse,
+
+    -- * CreativeFieldsListResponse
+    CreativeFieldsListResponse (..),
+    newCreativeFieldsListResponse,
+
+    -- * CreativeGroup
+    CreativeGroup (..),
+    newCreativeGroup,
+
+    -- * CreativeGroupAssignment
+    CreativeGroupAssignment (..),
+    newCreativeGroupAssignment,
+
+    -- * CreativeGroupsListResponse
+    CreativeGroupsListResponse (..),
+    newCreativeGroupsListResponse,
+
+    -- * CreativeOptimizationConfiguration
+    CreativeOptimizationConfiguration (..),
+    newCreativeOptimizationConfiguration,
+
+    -- * CreativeRotation
+    CreativeRotation (..),
+    newCreativeRotation,
+
+    -- * CreativesListResponse
+    CreativesListResponse (..),
+    newCreativesListResponse,
+
+    -- * CrossDimensionReachReportCompatibleFields
+    CrossDimensionReachReportCompatibleFields (..),
+    newCrossDimensionReachReportCompatibleFields,
+
+    -- * CrossMediaReachReportCompatibleFields
+    CrossMediaReachReportCompatibleFields (..),
+    newCrossMediaReachReportCompatibleFields,
+
+    -- * CustomFloodlightVariable
+    CustomFloodlightVariable (..),
+    newCustomFloodlightVariable,
+
+    -- * CustomRichMediaEvents
+    CustomRichMediaEvents (..),
+    newCustomRichMediaEvents,
+
+    -- * CustomViewabilityMetric
+    CustomViewabilityMetric (..),
+    newCustomViewabilityMetric,
+
+    -- * CustomViewabilityMetricConfiguration
+    CustomViewabilityMetricConfiguration (..),
+    newCustomViewabilityMetricConfiguration,
+
+    -- * DateRange
+    DateRange (..),
+    newDateRange,
+
+    -- * DayPartTargeting
+    DayPartTargeting (..),
+    newDayPartTargeting,
+
+    -- * DeepLink
+    DeepLink (..),
+    newDeepLink,
+
+    -- * DefaultClickThroughEventTagProperties
+    DefaultClickThroughEventTagProperties (..),
+    newDefaultClickThroughEventTagProperties,
+
+    -- * DeliverySchedule
+    DeliverySchedule (..),
+    newDeliverySchedule,
+
+    -- * DfpSettings
+    DfpSettings (..),
+    newDfpSettings,
+
+    -- * Dimension
+    Dimension (..),
+    newDimension,
+
+    -- * DimensionFilter
+    DimensionFilter (..),
+    newDimensionFilter,
+
+    -- * DimensionValue
+    DimensionValue (..),
+    newDimensionValue,
+
+    -- * DimensionValueList
+    DimensionValueList (..),
+    newDimensionValueList,
+
+    -- * DimensionValueRequest
+    DimensionValueRequest (..),
+    newDimensionValueRequest,
+
+    -- * DirectorySite
+    DirectorySite (..),
+    newDirectorySite,
+
+    -- * DirectorySiteSettings
+    DirectorySiteSettings (..),
+    newDirectorySiteSettings,
+
+    -- * DirectorySitesListResponse
+    DirectorySitesListResponse (..),
+    newDirectorySitesListResponse,
+
+    -- * DynamicTargetingKey
+    DynamicTargetingKey (..),
+    newDynamicTargetingKey,
+
+    -- * DynamicTargetingKeysListResponse
+    DynamicTargetingKeysListResponse (..),
+    newDynamicTargetingKeysListResponse,
+
+    -- * EncryptionInfo
+    EncryptionInfo (..),
+    newEncryptionInfo,
+
+    -- * EventTag
+    EventTag (..),
+    newEventTag,
+
+    -- * EventTagOverride
+    EventTagOverride (..),
+    newEventTagOverride,
+
+    -- * EventTagsListResponse
+    EventTagsListResponse (..),
+    newEventTagsListResponse,
+
+    -- * File
+    File (..),
+    newFile,
+
+    -- * File_Urls
+    File_Urls (..),
+    newFile_Urls,
+
+    -- * FileList
+    FileList (..),
+    newFileList,
+
+    -- * Flight
+    Flight (..),
+    newFlight,
+
+    -- * FloodlightActivitiesGenerateTagResponse
+    FloodlightActivitiesGenerateTagResponse (..),
+    newFloodlightActivitiesGenerateTagResponse,
+
+    -- * FloodlightActivitiesListResponse
+    FloodlightActivitiesListResponse (..),
+    newFloodlightActivitiesListResponse,
+
+    -- * FloodlightActivity
+    FloodlightActivity (..),
+    newFloodlightActivity,
+
+    -- * FloodlightActivityDynamicTag
+    FloodlightActivityDynamicTag (..),
+    newFloodlightActivityDynamicTag,
+
+    -- * FloodlightActivityGroup
+    FloodlightActivityGroup (..),
+    newFloodlightActivityGroup,
+
+    -- * FloodlightActivityGroupsListResponse
+    FloodlightActivityGroupsListResponse (..),
+    newFloodlightActivityGroupsListResponse,
+
+    -- * FloodlightActivityPublisherDynamicTag
+    FloodlightActivityPublisherDynamicTag (..),
+    newFloodlightActivityPublisherDynamicTag,
+
+    -- * FloodlightConfiguration
+    FloodlightConfiguration (..),
+    newFloodlightConfiguration,
+
+    -- * FloodlightConfigurationsListResponse
+    FloodlightConfigurationsListResponse (..),
+    newFloodlightConfigurationsListResponse,
+
+    -- * FloodlightReportCompatibleFields
+    FloodlightReportCompatibleFields (..),
+    newFloodlightReportCompatibleFields,
+
+    -- * FrequencyCap
+    FrequencyCap (..),
+    newFrequencyCap,
+
+    -- * FsCommand
+    FsCommand (..),
+    newFsCommand,
+
+    -- * GeoTargeting
+    GeoTargeting (..),
+    newGeoTargeting,
+
+    -- * InventoryItem
+    InventoryItem (..),
+    newInventoryItem,
+
+    -- * InventoryItemsListResponse
+    InventoryItemsListResponse (..),
+    newInventoryItemsListResponse,
+
+    -- * Invoice
+    Invoice (..),
+    newInvoice,
+
+    -- * KeyValueTargetingExpression
+    KeyValueTargetingExpression (..),
+    newKeyValueTargetingExpression,
+
+    -- * LandingPage
+    LandingPage (..),
+    newLandingPage,
+
+    -- * Language
+    Language (..),
+    newLanguage,
+
+    -- * LanguageTargeting
+    LanguageTargeting (..),
+    newLanguageTargeting,
+
+    -- * LanguagesListResponse
+    LanguagesListResponse (..),
+    newLanguagesListResponse,
+
+    -- * LastModifiedInfo
+    LastModifiedInfo (..),
+    newLastModifiedInfo,
+
+    -- * ListPopulationClause
+    ListPopulationClause (..),
+    newListPopulationClause,
+
+    -- * ListPopulationRule
+    ListPopulationRule (..),
+    newListPopulationRule,
+
+    -- * ListPopulationTerm
+    ListPopulationTerm (..),
+    newListPopulationTerm,
+
+    -- * ListTargetingExpression
+    ListTargetingExpression (..),
+    newListTargetingExpression,
+
+    -- * LookbackConfiguration
+    LookbackConfiguration (..),
+    newLookbackConfiguration,
+
+    -- * MeasurementPartnerAdvertiserLink
+    MeasurementPartnerAdvertiserLink (..),
+    newMeasurementPartnerAdvertiserLink,
+
+    -- * MeasurementPartnerCampaignLink
+    MeasurementPartnerCampaignLink (..),
+    newMeasurementPartnerCampaignLink,
+
+    -- * MeasurementPartnerWrappingData
+    MeasurementPartnerWrappingData (..),
+    newMeasurementPartnerWrappingData,
+
+    -- * Metric
+    Metric (..),
+    newMetric,
+
+    -- * Metro
+    Metro (..),
+    newMetro,
+
+    -- * MetrosListResponse
+    MetrosListResponse (..),
+    newMetrosListResponse,
+
+    -- * MobileApp
+    MobileApp (..),
+    newMobileApp,
+
+    -- * MobileAppsListResponse
+    MobileAppsListResponse (..),
+    newMobileAppsListResponse,
+
+    -- * MobileCarrier
+    MobileCarrier (..),
+    newMobileCarrier,
+
+    -- * MobileCarriersListResponse
+    MobileCarriersListResponse (..),
+    newMobileCarriersListResponse,
+
+    -- * ObaIcon
+    ObaIcon (..),
+    newObaIcon,
+
+    -- * ObjectFilter
+    ObjectFilter (..),
+    newObjectFilter,
+
+    -- * OfflineUserAddressInfo
+    OfflineUserAddressInfo (..),
+    newOfflineUserAddressInfo,
+
+    -- * OffsetPosition
+    OffsetPosition (..),
+    newOffsetPosition,
+
+    -- * OmnitureSettings
+    OmnitureSettings (..),
+    newOmnitureSettings,
+
+    -- * OperatingSystem
+    OperatingSystem (..),
+    newOperatingSystem,
+
+    -- * OperatingSystemVersion
+    OperatingSystemVersion (..),
+    newOperatingSystemVersion,
+
+    -- * OperatingSystemVersionsListResponse
+    OperatingSystemVersionsListResponse (..),
+    newOperatingSystemVersionsListResponse,
+
+    -- * OperatingSystemsListResponse
+    OperatingSystemsListResponse (..),
+    newOperatingSystemsListResponse,
+
+    -- * OptimizationActivity
+    OptimizationActivity (..),
+    newOptimizationActivity,
+
+    -- * Order
+    Order (..),
+    newOrder,
+
+    -- * OrderContact
+    OrderContact (..),
+    newOrderContact,
+
+    -- * OrdersListResponse
+    OrdersListResponse (..),
+    newOrdersListResponse,
+
+    -- * PathToConversionReportCompatibleFields
+    PathToConversionReportCompatibleFields (..),
+    newPathToConversionReportCompatibleFields,
+
+    -- * Placement
+    Placement (..),
+    newPlacement,
+
+    -- * PlacementAssignment
+    PlacementAssignment (..),
+    newPlacementAssignment,
+
+    -- * PlacementConversionDomainOverride
+    PlacementConversionDomainOverride (..),
+    newPlacementConversionDomainOverride,
+
+    -- * PlacementGroup
+    PlacementGroup (..),
+    newPlacementGroup,
+
+    -- * PlacementGroupsListResponse
+    PlacementGroupsListResponse (..),
+    newPlacementGroupsListResponse,
+
+    -- * PlacementSingleConversionDomain
+    PlacementSingleConversionDomain (..),
+    newPlacementSingleConversionDomain,
+
+    -- * PlacementStrategiesListResponse
+    PlacementStrategiesListResponse (..),
+    newPlacementStrategiesListResponse,
+
+    -- * PlacementStrategy
+    PlacementStrategy (..),
+    newPlacementStrategy,
+
+    -- * PlacementTag
+    PlacementTag (..),
+    newPlacementTag,
+
+    -- * PlacementsGenerateTagsResponse
+    PlacementsGenerateTagsResponse (..),
+    newPlacementsGenerateTagsResponse,
+
+    -- * PlacementsListResponse
+    PlacementsListResponse (..),
+    newPlacementsListResponse,
+
+    -- * PlatformType
+    PlatformType (..),
+    newPlatformType,
+
+    -- * PlatformTypesListResponse
+    PlatformTypesListResponse (..),
+    newPlatformTypesListResponse,
+
+    -- * PopupWindowProperties
+    PopupWindowProperties (..),
+    newPopupWindowProperties,
+
+    -- * PostalCode
+    PostalCode (..),
+    newPostalCode,
+
+    -- * PostalCodesListResponse
+    PostalCodesListResponse (..),
+    newPostalCodesListResponse,
+
+    -- * Pricing
+    Pricing (..),
+    newPricing,
+
+    -- * PricingSchedule
+    PricingSchedule (..),
+    newPricingSchedule,
+
+    -- * PricingSchedulePricingPeriod
+    PricingSchedulePricingPeriod (..),
+    newPricingSchedulePricingPeriod,
+
+    -- * Project
+    Project (..),
+    newProject,
+
+    -- * ProjectsListResponse
+    ProjectsListResponse (..),
+    newProjectsListResponse,
+
+    -- * ReachReportCompatibleFields
+    ReachReportCompatibleFields (..),
+    newReachReportCompatibleFields,
+
+    -- * Recipient
+    Recipient (..),
+    newRecipient,
+
+    -- * Region
+    Region (..),
+    newRegion,
+
+    -- * RegionsListResponse
+    RegionsListResponse (..),
+    newRegionsListResponse,
+
+    -- * RemarketingList
+    RemarketingList (..),
+    newRemarketingList,
+
+    -- * RemarketingListShare
+    RemarketingListShare (..),
+    newRemarketingListShare,
+
+    -- * RemarketingListsListResponse
+    RemarketingListsListResponse (..),
+    newRemarketingListsListResponse,
+
+    -- * Report
+    Report (..),
+    newReport,
+
+    -- * Report_Criteria
+    Report_Criteria (..),
+    newReport_Criteria,
+
+    -- * Report_CrossDimensionReachCriteria
+    Report_CrossDimensionReachCriteria (..),
+    newReport_CrossDimensionReachCriteria,
+
+    -- * Report_CrossMediaReachCriteria
+    Report_CrossMediaReachCriteria (..),
+    newReport_CrossMediaReachCriteria,
+
+    -- * Report_Delivery
+    Report_Delivery (..),
+    newReport_Delivery,
+
+    -- * Report_FloodlightCriteria
+    Report_FloodlightCriteria (..),
+    newReport_FloodlightCriteria,
+
+    -- * Report_FloodlightCriteria_ReportProperties
+    Report_FloodlightCriteria_ReportProperties (..),
+    newReport_FloodlightCriteria_ReportProperties,
+
+    -- * Report_PathToConversionCriteria
+    Report_PathToConversionCriteria (..),
+    newReport_PathToConversionCriteria,
+
+    -- * Report_PathToConversionCriteria_ReportProperties
+    Report_PathToConversionCriteria_ReportProperties (..),
+    newReport_PathToConversionCriteria_ReportProperties,
+
+    -- * Report_ReachCriteria
+    Report_ReachCriteria (..),
+    newReport_ReachCriteria,
+
+    -- * Report_Schedule
+    Report_Schedule (..),
+    newReport_Schedule,
+
+    -- * ReportCompatibleFields
+    ReportCompatibleFields (..),
+    newReportCompatibleFields,
+
+    -- * ReportList
+    ReportList (..),
+    newReportList,
+
+    -- * ReportsConfiguration
+    ReportsConfiguration (..),
+    newReportsConfiguration,
+
+    -- * RichMediaExitOverride
+    RichMediaExitOverride (..),
+    newRichMediaExitOverride,
+
+    -- * Rule
+    Rule (..),
+    newRule,
+
+    -- * Site
+    Site (..),
+    newSite,
+
+    -- * SiteCompanionSetting
+    SiteCompanionSetting (..),
+    newSiteCompanionSetting,
+
+    -- * SiteContact
+    SiteContact (..),
+    newSiteContact,
+
+    -- * SiteSettings
+    SiteSettings (..),
+    newSiteSettings,
+
+    -- * SiteSkippableSetting
+    SiteSkippableSetting (..),
+    newSiteSkippableSetting,
+
+    -- * SiteTranscodeSetting
+    SiteTranscodeSetting (..),
+    newSiteTranscodeSetting,
+
+    -- * SiteVideoSettings
+    SiteVideoSettings (..),
+    newSiteVideoSettings,
+
+    -- * SitesListResponse
+    SitesListResponse (..),
+    newSitesListResponse,
+
+    -- * Size
+    Size (..),
+    newSize,
+
+    -- * SizesListResponse
+    SizesListResponse (..),
+    newSizesListResponse,
+
+    -- * SkippableSetting
+    SkippableSetting (..),
+    newSkippableSetting,
+
+    -- * SortedDimension
+    SortedDimension (..),
+    newSortedDimension,
+
+    -- * Subaccount
+    Subaccount (..),
+    newSubaccount,
+
+    -- * SubaccountsListResponse
+    SubaccountsListResponse (..),
+    newSubaccountsListResponse,
+
+    -- * TagData
+    TagData (..),
+    newTagData,
+
+    -- * TagSetting
+    TagSetting (..),
+    newTagSetting,
+
+    -- * TagSettings
+    TagSettings (..),
+    newTagSettings,
+
+    -- * TargetWindow
+    TargetWindow (..),
+    newTargetWindow,
+
+    -- * TargetableRemarketingList
+    TargetableRemarketingList (..),
+    newTargetableRemarketingList,
+
+    -- * TargetableRemarketingListsListResponse
+    TargetableRemarketingListsListResponse (..),
+    newTargetableRemarketingListsListResponse,
+
+    -- * TargetingTemplate
+    TargetingTemplate (..),
+    newTargetingTemplate,
+
+    -- * TargetingTemplatesListResponse
+    TargetingTemplatesListResponse (..),
+    newTargetingTemplatesListResponse,
+
+    -- * TechnologyTargeting
+    TechnologyTargeting (..),
+    newTechnologyTargeting,
+
+    -- * ThirdPartyAuthenticationToken
+    ThirdPartyAuthenticationToken (..),
+    newThirdPartyAuthenticationToken,
+
+    -- * ThirdPartyTrackingUrl
+    ThirdPartyTrackingUrl (..),
+    newThirdPartyTrackingUrl,
+
+    -- * TranscodeSetting
+    TranscodeSetting (..),
+    newTranscodeSetting,
+
+    -- * TvCampaignDetail
+    TvCampaignDetail (..),
+    newTvCampaignDetail,
+
+    -- * TvCampaignSummariesListResponse
+    TvCampaignSummariesListResponse (..),
+    newTvCampaignSummariesListResponse,
+
+    -- * TvCampaignSummary
+    TvCampaignSummary (..),
+    newTvCampaignSummary,
+
+    -- * TvCampaignTimepoint
+    TvCampaignTimepoint (..),
+    newTvCampaignTimepoint,
+
+    -- * UniversalAdId
+    UniversalAdId (..),
+    newUniversalAdId,
+
+    -- * UserDefinedVariableConfiguration
+    UserDefinedVariableConfiguration (..),
+    newUserDefinedVariableConfiguration,
+
+    -- * UserIdentifier
+    UserIdentifier (..),
+    newUserIdentifier,
+
+    -- * UserProfile
+    UserProfile (..),
+    newUserProfile,
+
+    -- * UserProfileList
+    UserProfileList (..),
+    newUserProfileList,
+
+    -- * UserRole
+    UserRole (..),
+    newUserRole,
+
+    -- * UserRolePermission
+    UserRolePermission (..),
+    newUserRolePermission,
+
+    -- * UserRolePermissionGroup
+    UserRolePermissionGroup (..),
+    newUserRolePermissionGroup,
+
+    -- * UserRolePermissionGroupsListResponse
+    UserRolePermissionGroupsListResponse (..),
+    newUserRolePermissionGroupsListResponse,
+
+    -- * UserRolePermissionsListResponse
+    UserRolePermissionsListResponse (..),
+    newUserRolePermissionsListResponse,
+
+    -- * UserRolesListResponse
+    UserRolesListResponse (..),
+    newUserRolesListResponse,
+
+    -- * VideoFormat
+    VideoFormat (..),
+    newVideoFormat,
+
+    -- * VideoFormatsListResponse
+    VideoFormatsListResponse (..),
+    newVideoFormatsListResponse,
+
+    -- * VideoOffset
+    VideoOffset (..),
+    newVideoOffset,
+
+    -- * VideoSettings
+    VideoSettings (..),
+    newVideoSettings,
+  )
+where
+
+import Gogol.DFAReporting.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Contains properties of a Campaign Manager account.
+--
+-- /See:/ 'newAccount' smart constructor.
+data Account = Account
+  { -- | Account permissions assigned to this account.
+    accountPermissionIds :: (Core.Maybe [Core.Int64]),
+    -- | Profile for this account. This is a read-only field that can be left blank.
+    accountProfile :: (Core.Maybe Account_AccountProfile),
+    -- | Whether this account is active.
+    active :: (Core.Maybe Core.Bool),
+    -- | Maximum number of active ads allowed for this account.
+    activeAdsLimitTier :: (Core.Maybe Account_ActiveAdsLimitTier),
+    -- | Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions.
+    activeViewOptOut :: (Core.Maybe Core.Bool),
+    -- | User role permissions available to the user roles of this account.
+    availablePermissionIds :: (Core.Maybe [Core.Int64]),
+    -- | ID of the country associated with this account.
+    countryId :: (Core.Maybe Core.Int64),
+    -- | ID of currency associated with this account. This is a required field. Acceptable values are: - \"1\" for USD - \"2\" for GBP - \"3\" for ESP - \"4\" for SEK - \"5\" for CAD - \"6\" for JPY - \"7\" for DEM - \"8\" for AUD - \"9\" for FRF - \"10\" for ITL - \"11\" for DKK - \"12\" for NOK - \"13\" for FIM - \"14\" for ZAR - \"15\" for IEP - \"16\" for NLG - \"17\" for EUR - \"18\" for KRW - \"19\" for TWD - \"20\" for SGD - \"21\" for CNY - \"22\" for HKD - \"23\" for NZD - \"24\" for MYR - \"25\" for BRL - \"26\" for PTE - \"28\" for CLP - \"29\" for TRY - \"30\" for ARS - \"31\" for PEN - \"32\" for ILS - \"33\" for CHF - \"34\" for VEF - \"35\" for COP - \"36\" for GTQ - \"37\" for PLN - \"39\" for INR - \"40\" for THB - \"41\" for IDR - \"42\" for CZK - \"43\" for RON - \"44\" for HUF - \"45\" for RUB - \"46\" for AED - \"47\" for BGN - \"48\" for HRK - \"49\" for MXN - \"50\" for NGN - \"51\" for EGP
+    currencyId :: (Core.Maybe Core.Int64),
+    -- | Default placement dimensions for this account.
+    defaultCreativeSizeId :: (Core.Maybe Core.Int64),
+    -- | Description of this account.
+    description :: (Core.Maybe Core.Text),
+    -- | ID of this account. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Locale of this account. Acceptable values are: - \"cs\" (Czech) - \"de\" (German) - \"en\" (English) - \"en-GB\" (English United Kingdom) - \"es\" (Spanish) - \"fr\" (French) - \"it\" (Italian) - \"ja\" (Japanese) - \"ko\" (Korean) - \"pl\" (Polish) - \"pt-BR\" (Portuguese Brazil) - \"ru\" (Russian) - \"sv\" (Swedish) - \"tr\" (Turkish) - \"zh-CN\" (Chinese Simplified) - \"zh-TW\" (Chinese Traditional)
+    locale :: (Core.Maybe Core.Text),
+    -- | Maximum image size allowed for this account, in kilobytes. Value must be greater than or equal to 1.
+    maximumImageSize :: (Core.Maybe Core.Int64),
+    -- | Name of this account. This is a required field, and must be less than 128 characters long and be globally unique.
+    name :: (Core.Maybe Core.Text),
+    -- | Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default.
+    nielsenOcrEnabled :: (Core.Maybe Core.Bool),
+    -- | Reporting configuration of this account.
+    reportsConfiguration :: (Core.Maybe ReportsConfiguration),
+    -- | Share Path to Conversion reports with Twitter.
+    shareReportsWithTwitter :: (Core.Maybe Core.Bool),
+    -- | File size limit in kilobytes of Rich Media teaser creatives. Acceptable values are 1 to 10240, inclusive.
+    teaserSizeLimit :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Account' with the minimum fields required to make a request.
+newAccount ::
+  Account
+newAccount =
+  Account
+    { accountPermissionIds = Core.Nothing,
+      accountProfile = Core.Nothing,
+      active = Core.Nothing,
+      activeAdsLimitTier = Core.Nothing,
+      activeViewOptOut = Core.Nothing,
+      availablePermissionIds = Core.Nothing,
+      countryId = Core.Nothing,
+      currencyId = Core.Nothing,
+      defaultCreativeSizeId = Core.Nothing,
+      description = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      locale = Core.Nothing,
+      maximumImageSize = Core.Nothing,
+      name = Core.Nothing,
+      nielsenOcrEnabled = Core.Nothing,
+      reportsConfiguration = Core.Nothing,
+      shareReportsWithTwitter = Core.Nothing,
+      teaserSizeLimit = Core.Nothing
+    }
+
+instance Core.FromJSON Account where
+  parseJSON =
+    Core.withObject
+      "Account"
+      ( \o ->
+          Account
+            Core.<$> ( o
+                         Core..:? "accountPermissionIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "accountProfile")
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "activeAdsLimitTier")
+            Core.<*> (o Core..:? "activeViewOptOut")
+            Core.<*> ( o
+                         Core..:? "availablePermissionIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "countryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "currencyId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "defaultCreativeSizeId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "locale")
+            Core.<*> (o Core..:? "maximumImageSize" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "nielsenOcrEnabled")
+            Core.<*> (o Core..:? "reportsConfiguration")
+            Core.<*> (o Core..:? "shareReportsWithTwitter")
+            Core.<*> (o Core..:? "teaserSizeLimit" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON Account where
+  toJSON Account {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountPermissionIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> accountPermissionIds,
+            ("accountProfile" Core..=) Core.<$> accountProfile,
+            ("active" Core..=) Core.<$> active,
+            ("activeAdsLimitTier" Core..=) Core.<$> activeAdsLimitTier,
+            ("activeViewOptOut" Core..=) Core.<$> activeViewOptOut,
+            ("availablePermissionIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> availablePermissionIds,
+            ("countryId" Core..=) Core.. Core.AsText Core.<$> countryId,
+            ("currencyId" Core..=) Core.. Core.AsText Core.<$> currencyId,
+            ("defaultCreativeSizeId" Core..=)
+              Core.. Core.AsText
+              Core.<$> defaultCreativeSizeId,
+            ("description" Core..=) Core.<$> description,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("locale" Core..=) Core.<$> locale,
+            ("maximumImageSize" Core..=)
+              Core.. Core.AsText
+              Core.<$> maximumImageSize,
+            ("name" Core..=) Core.<$> name,
+            ("nielsenOcrEnabled" Core..=) Core.<$> nielsenOcrEnabled,
+            ("reportsConfiguration" Core..=) Core.<$> reportsConfiguration,
+            ("shareReportsWithTwitter" Core..=)
+              Core.<$> shareReportsWithTwitter,
+            ("teaserSizeLimit" Core..=)
+              Core.. Core.AsText
+              Core.<$> teaserSizeLimit
+          ]
+      )
+
+-- | Gets a summary of active ads in an account.
+--
+-- /See:/ 'newAccountActiveAdSummary' smart constructor.
+data AccountActiveAdSummary = AccountActiveAdSummary
+  { -- | ID of the account.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Ads that have been activated for the account
+    activeAds :: (Core.Maybe Core.Int64),
+    -- | Maximum number of active ads allowed for the account.
+    activeAdsLimitTier :: (Core.Maybe AccountActiveAdSummary_ActiveAdsLimitTier),
+    -- | Ads that can be activated for the account.
+    availableAds :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountActiveAdSummary' with the minimum fields required to make a request.
+newAccountActiveAdSummary ::
+  AccountActiveAdSummary
+newAccountActiveAdSummary =
+  AccountActiveAdSummary
+    { accountId = Core.Nothing,
+      activeAds = Core.Nothing,
+      activeAdsLimitTier = Core.Nothing,
+      availableAds = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON AccountActiveAdSummary where
+  parseJSON =
+    Core.withObject
+      "AccountActiveAdSummary"
+      ( \o ->
+          AccountActiveAdSummary
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "activeAds" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "activeAdsLimitTier")
+            Core.<*> (o Core..:? "availableAds" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON AccountActiveAdSummary where
+  toJSON AccountActiveAdSummary {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("activeAds" Core..=) Core.. Core.AsText Core.<$> activeAds,
+            ("activeAdsLimitTier" Core..=) Core.<$> activeAdsLimitTier,
+            ("availableAds" Core..=) Core.. Core.AsText Core.<$> availableAds,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | AccountPermissions contains information about a particular account permission. Some features of Campaign Manager require an account permission to be present in the account.
+--
+-- /See:/ 'newAccountPermission' smart constructor.
+data AccountPermission = AccountPermission
+  { -- | Account profiles associated with this account permission. Possible values are: - \"ACCOUNT/PROFILE/BASIC\" - \"ACCOUNT/PROFILE/STANDARD\"
+    accountProfiles :: (Core.Maybe [AccountPermission_AccountProfilesItem]),
+    -- | ID of this account permission.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Administrative level required to enable this account permission.
+    level :: (Core.Maybe AccountPermission_Level),
+    -- | Name of this account permission.
+    name :: (Core.Maybe Core.Text),
+    -- | Permission group of this account permission.
+    permissionGroupId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountPermission' with the minimum fields required to make a request.
+newAccountPermission ::
+  AccountPermission
+newAccountPermission =
+  AccountPermission
+    { accountProfiles = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      level = Core.Nothing,
+      name = Core.Nothing,
+      permissionGroupId = Core.Nothing
+    }
+
+instance Core.FromJSON AccountPermission where
+  parseJSON =
+    Core.withObject
+      "AccountPermission"
+      ( \o ->
+          AccountPermission
+            Core.<$> (o Core..:? "accountProfiles")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "level")
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "permissionGroupId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON AccountPermission where
+  toJSON AccountPermission {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountProfiles" Core..=) Core.<$> accountProfiles,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("level" Core..=) Core.<$> level,
+            ("name" Core..=) Core.<$> name,
+            ("permissionGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> permissionGroupId
+          ]
+      )
+
+-- | AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.
+--
+-- /See:/ 'newAccountPermissionGroup' smart constructor.
+data AccountPermissionGroup = AccountPermissionGroup
+  { -- | ID of this account permission group.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this account permission group.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountPermissionGroup' with the minimum fields required to make a request.
+newAccountPermissionGroup ::
+  AccountPermissionGroup
+newAccountPermissionGroup =
+  AccountPermissionGroup
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON AccountPermissionGroup where
+  parseJSON =
+    Core.withObject
+      "AccountPermissionGroup"
+      ( \o ->
+          AccountPermissionGroup
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON AccountPermissionGroup where
+  toJSON AccountPermissionGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Account Permission Group List Response
+--
+-- /See:/ 'newAccountPermissionGroupsListResponse' smart constructor.
+data AccountPermissionGroupsListResponse = AccountPermissionGroupsListResponse
+  { -- | Account permission group collection.
+    accountPermissionGroups :: (Core.Maybe [AccountPermissionGroup]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountPermissionGroupsListResponse' with the minimum fields required to make a request.
+newAccountPermissionGroupsListResponse ::
+  AccountPermissionGroupsListResponse
+newAccountPermissionGroupsListResponse =
+  AccountPermissionGroupsListResponse
+    { accountPermissionGroups =
+        Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON AccountPermissionGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "AccountPermissionGroupsListResponse"
+      ( \o ->
+          AccountPermissionGroupsListResponse
+            Core.<$> (o Core..:? "accountPermissionGroups")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON AccountPermissionGroupsListResponse where
+  toJSON AccountPermissionGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountPermissionGroups" Core..=)
+              Core.<$> accountPermissionGroups,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Account Permission List Response
+--
+-- /See:/ 'newAccountPermissionsListResponse' smart constructor.
+data AccountPermissionsListResponse = AccountPermissionsListResponse
+  { -- | Account permission collection.
+    accountPermissions :: (Core.Maybe [AccountPermission]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountPermissionsListResponse' with the minimum fields required to make a request.
+newAccountPermissionsListResponse ::
+  AccountPermissionsListResponse
+newAccountPermissionsListResponse =
+  AccountPermissionsListResponse
+    { accountPermissions = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON AccountPermissionsListResponse where
+  parseJSON =
+    Core.withObject
+      "AccountPermissionsListResponse"
+      ( \o ->
+          AccountPermissionsListResponse
+            Core.<$> (o Core..:? "accountPermissions")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON AccountPermissionsListResponse where
+  toJSON AccountPermissionsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountPermissions" Core..=) Core.<$> accountPermissions,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | AccountUserProfiles contains properties of a Campaign Manager user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.
+--
+-- /See:/ 'newAccountUserProfile' smart constructor.
+data AccountUserProfile = AccountUserProfile
+  { -- | Account ID of the user profile. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable.
+    active :: (Core.Maybe Core.Bool),
+    -- | Filter that describes which advertisers are visible to the user profile.
+    advertiserFilter :: (Core.Maybe ObjectFilter),
+    -- | Filter that describes which campaigns are visible to the user profile.
+    campaignFilter :: (Core.Maybe ObjectFilter),
+    -- | Comments for this user profile.
+    comments :: (Core.Maybe Core.Text),
+    -- | Email of the user profile. The email address must be linked to a Google Account. This field is required on insertion and is read-only after insertion.
+    email :: (Core.Maybe Core.Text),
+    -- | ID of the user profile. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Locale of the user profile. This is a required field. Acceptable values are: - \"cs\" (Czech) - \"de\" (German) - \"en\" (English) - \"en-GB\" (English United Kingdom) - \"es\" (Spanish) - \"fr\" (French) - \"it\" (Italian) - \"ja\" (Japanese) - \"ko\" (Korean) - \"pl\" (Polish) - \"pt-BR\" (Portuguese Brazil) - \"ru\" (Russian) - \"sv\" (Swedish) - \"tr\" (Turkish) - \"zh-CN\" (Chinese Simplified) - \"zh-TW\" (Chinese Traditional)
+    locale :: (Core.Maybe Core.Text),
+    -- | Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"&;\<>\"#%,\".
+    name :: (Core.Maybe Core.Text),
+    -- | Filter that describes which sites are visible to the user profile.
+    siteFilter :: (Core.Maybe ObjectFilter),
+    -- | Subaccount ID of the user profile. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Trafficker type of this user profile. This is a read-only field.
+    traffickerType :: (Core.Maybe AccountUserProfile_TraffickerType),
+    -- | User type of the user profile. This is a read-only field that can be left blank.
+    userAccessType :: (Core.Maybe AccountUserProfile_UserAccessType),
+    -- | Filter that describes which user roles are visible to the user profile.
+    userRoleFilter :: (Core.Maybe ObjectFilter),
+    -- | User role ID of the user profile. This is a required field.
+    userRoleId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountUserProfile' with the minimum fields required to make a request.
+newAccountUserProfile ::
+  AccountUserProfile
+newAccountUserProfile =
+  AccountUserProfile
+    { accountId = Core.Nothing,
+      active = Core.Nothing,
+      advertiserFilter = Core.Nothing,
+      campaignFilter = Core.Nothing,
+      comments = Core.Nothing,
+      email = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      locale = Core.Nothing,
+      name = Core.Nothing,
+      siteFilter = Core.Nothing,
+      subaccountId = Core.Nothing,
+      traffickerType = Core.Nothing,
+      userAccessType = Core.Nothing,
+      userRoleFilter = Core.Nothing,
+      userRoleId = Core.Nothing
+    }
+
+instance Core.FromJSON AccountUserProfile where
+  parseJSON =
+    Core.withObject
+      "AccountUserProfile"
+      ( \o ->
+          AccountUserProfile
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "advertiserFilter")
+            Core.<*> (o Core..:? "campaignFilter")
+            Core.<*> (o Core..:? "comments")
+            Core.<*> (o Core..:? "email")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "locale")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "siteFilter")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "traffickerType")
+            Core.<*> (o Core..:? "userAccessType")
+            Core.<*> (o Core..:? "userRoleFilter")
+            Core.<*> (o Core..:? "userRoleId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON AccountUserProfile where
+  toJSON AccountUserProfile {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("active" Core..=) Core.<$> active,
+            ("advertiserFilter" Core..=) Core.<$> advertiserFilter,
+            ("campaignFilter" Core..=) Core.<$> campaignFilter,
+            ("comments" Core..=) Core.<$> comments,
+            ("email" Core..=) Core.<$> email,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("locale" Core..=) Core.<$> locale,
+            ("name" Core..=) Core.<$> name,
+            ("siteFilter" Core..=) Core.<$> siteFilter,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("traffickerType" Core..=) Core.<$> traffickerType,
+            ("userAccessType" Core..=) Core.<$> userAccessType,
+            ("userRoleFilter" Core..=) Core.<$> userRoleFilter,
+            ("userRoleId" Core..=) Core.. Core.AsText Core.<$> userRoleId
+          ]
+      )
+
+-- | Account User Profile List Response
+--
+-- /See:/ 'newAccountUserProfilesListResponse' smart constructor.
+data AccountUserProfilesListResponse = AccountUserProfilesListResponse
+  { -- | Account user profile collection.
+    accountUserProfiles :: (Core.Maybe [AccountUserProfile]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountUserProfilesListResponse' with the minimum fields required to make a request.
+newAccountUserProfilesListResponse ::
+  AccountUserProfilesListResponse
+newAccountUserProfilesListResponse =
+  AccountUserProfilesListResponse
+    { accountUserProfiles =
+        Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AccountUserProfilesListResponse where
+  parseJSON =
+    Core.withObject
+      "AccountUserProfilesListResponse"
+      ( \o ->
+          AccountUserProfilesListResponse
+            Core.<$> (o Core..:? "accountUserProfiles")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AccountUserProfilesListResponse where
+  toJSON AccountUserProfilesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountUserProfiles" Core..=) Core.<$> accountUserProfiles,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Account List Response
+--
+-- /See:/ 'newAccountsListResponse' smart constructor.
+data AccountsListResponse = AccountsListResponse
+  { -- | Account collection.
+    accounts :: (Core.Maybe [Account]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AccountsListResponse' with the minimum fields required to make a request.
+newAccountsListResponse ::
+  AccountsListResponse
+newAccountsListResponse =
+  AccountsListResponse
+    { accounts = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AccountsListResponse where
+  parseJSON =
+    Core.withObject
+      "AccountsListResponse"
+      ( \o ->
+          AccountsListResponse
+            Core.<$> (o Core..:? "accounts")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AccountsListResponse where
+  toJSON AccountsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accounts" Core..=) Core.<$> accounts,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Represents an activity group.
+--
+-- /See:/ 'newActivities' smart constructor.
+data Activities = Activities
+  { -- | List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".
+    filters :: (Core.Maybe [DimensionValue]),
+    -- | The kind of resource this is, in this case dfareporting#activities.
+    kind :: (Core.Maybe Core.Text),
+    -- | List of names of floodlight activity metrics.
+    metricNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Activities' with the minimum fields required to make a request.
+newActivities ::
+  Activities
+newActivities =
+  Activities
+    { filters = Core.Nothing,
+      kind = Core.Nothing,
+      metricNames = Core.Nothing
+    }
+
+instance Core.FromJSON Activities where
+  parseJSON =
+    Core.withObject
+      "Activities"
+      ( \o ->
+          Activities
+            Core.<$> (o Core..:? "filters")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metricNames")
+      )
+
+instance Core.ToJSON Activities where
+  toJSON Activities {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("filters" Core..=) Core.<$> filters,
+            ("kind" Core..=) Core.<$> kind,
+            ("metricNames" Core..=) Core.<$> metricNames
+          ]
+      )
+
+-- | Contains properties of a Campaign Manager ad.
+--
+-- /See:/ 'newAd' smart constructor.
+data Ad = Ad
+  { -- | Account ID of this ad. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this ad is active. When true, archived must be false.
+    active :: (Core.Maybe Core.Bool),
+    -- | Advertiser ID of this ad. This is a required field on insertion.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether this ad is archived. When true, active must be false.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Audience segment ID that is being targeted for this ad. Applicable when type is AD/SERVING/STANDARD_AD.
+    audienceSegmentId :: (Core.Maybe Core.Int64),
+    -- | Campaign ID of this ad. This is a required field on insertion.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
+    campaignIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD/SERVING/CLICK_TRACKER.
+    clickThroughUrl :: (Core.Maybe ClickThroughUrl),
+    -- | Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative.
+    clickThroughUrlSuffixProperties :: (Core.Maybe ClickThroughUrlSuffixProperties),
+    -- | Comments for this ad.
+    comments :: (Core.Maybe Core.Text),
+    -- | Compatibility of this ad. Applicable when type is AD/SERVING/DEFAULT/AD. DISPLAY and DISPLAY/INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP/INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY/INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN/STREAM/VIDEO refers to rendering in-stream video ads developed with the VAST standard.
+    compatibility :: (Core.Maybe Ad_Compatibility),
+    -- | Information about the creation of this ad. This is a read-only field.
+    createInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Creative group assignments for this ad. Applicable when type is AD/SERVING/CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.
+    creativeGroupAssignments :: (Core.Maybe [CreativeGroupAssignment]),
+    -- | Creative rotation for this ad. Applicable when type is AD/SERVING/DEFAULT/AD, AD/SERVING/STANDARD/AD, or AD/SERVING/TRACKING. When type is AD/SERVING/DEFAULT_AD, this field should have exactly one creativeAssignment .
+    creativeRotation :: (Core.Maybe CreativeRotation),
+    -- | Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    dayPartTargeting :: (Core.Maybe DayPartTargeting),
+    -- | Default click-through event tag properties for this ad.
+    defaultClickThroughEventTagProperties :: (Core.Maybe DefaultClickThroughEventTagProperties),
+    -- | Delivery schedule information for this ad. Applicable when type is AD/SERVING/STANDARD/AD or AD/SERVING/TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD/SERVING/STANDARD/AD.
+    deliverySchedule :: (Core.Maybe DeliverySchedule),
+    -- | Whether this ad is a dynamic click tracker. Applicable when type is AD/SERVING/CLICK_TRACKER. This is a required field on insert, and is read-only after insert.
+    dynamicClickTracker :: (Core.Maybe Core.Bool),
+    endTime :: (Core.Maybe Core.DateTime),
+    -- | Event tag overrides for this ad.
+    eventTagOverrides :: (Core.Maybe [EventTagOverride]),
+    -- | Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    geoTargeting :: (Core.Maybe GeoTargeting),
+    -- | ID of this ad. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this ad. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    keyValueTargetingExpression :: (Core.Maybe KeyValueTargetingExpression),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    languageTargeting :: (Core.Maybe LanguageTargeting),
+    -- | Information about the most recent modification of this ad. This is a read-only field.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Name of this ad. This is a required field and must be less than 256 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Placement assignments for this ad.
+    placementAssignments :: (Core.Maybe [PlacementAssignment]),
+    -- | Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    remarketingListExpression :: (Core.Maybe ListTargetingExpression),
+    -- | Size of this ad. Applicable when type is AD/SERVING/DEFAULT_AD.
+    size :: (Core.Maybe Size),
+    -- | Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated.
+    sslRequired :: (Core.Maybe Core.Bool),
+    startTime :: (Core.Maybe Core.DateTime),
+    -- | Subaccount ID of this ad. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD/SERVING/STANDARD_AD.
+    targetingTemplateId :: (Core.Maybe Core.Int64),
+    -- | Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD/SERVING/STANDARD_AD.
+    technologyTargeting :: (Core.Maybe TechnologyTargeting),
+    -- | Type of ad. This is a required field on insertion. Note that default ads ( AD/SERVING/DEFAULT_AD) cannot be created directly (see Creative resource).
+    type' :: (Core.Maybe Ad_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Ad' with the minimum fields required to make a request.
+newAd ::
+  Ad
+newAd =
+  Ad
+    { accountId = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      archived = Core.Nothing,
+      audienceSegmentId = Core.Nothing,
+      campaignId = Core.Nothing,
+      campaignIdDimensionValue = Core.Nothing,
+      clickThroughUrl = Core.Nothing,
+      clickThroughUrlSuffixProperties = Core.Nothing,
+      comments = Core.Nothing,
+      compatibility = Core.Nothing,
+      createInfo = Core.Nothing,
+      creativeGroupAssignments = Core.Nothing,
+      creativeRotation = Core.Nothing,
+      dayPartTargeting = Core.Nothing,
+      defaultClickThroughEventTagProperties = Core.Nothing,
+      deliverySchedule = Core.Nothing,
+      dynamicClickTracker = Core.Nothing,
+      endTime = Core.Nothing,
+      eventTagOverrides = Core.Nothing,
+      geoTargeting = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      keyValueTargetingExpression = Core.Nothing,
+      kind = Core.Nothing,
+      languageTargeting = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      name = Core.Nothing,
+      placementAssignments = Core.Nothing,
+      remarketingListExpression = Core.Nothing,
+      size = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      sslRequired = Core.Nothing,
+      startTime = Core.Nothing,
+      subaccountId = Core.Nothing,
+      targetingTemplateId = Core.Nothing,
+      technologyTargeting = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON Ad where
+  parseJSON =
+    Core.withObject
+      "Ad"
+      ( \o ->
+          Ad
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "archived")
+            Core.<*> (o Core..:? "audienceSegmentId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "campaignId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "campaignIdDimensionValue")
+            Core.<*> (o Core..:? "clickThroughUrl")
+            Core.<*> (o Core..:? "clickThroughUrlSuffixProperties")
+            Core.<*> (o Core..:? "comments")
+            Core.<*> (o Core..:? "compatibility")
+            Core.<*> (o Core..:? "createInfo")
+            Core.<*> (o Core..:? "creativeGroupAssignments")
+            Core.<*> (o Core..:? "creativeRotation")
+            Core.<*> (o Core..:? "dayPartTargeting")
+            Core.<*> (o Core..:? "defaultClickThroughEventTagProperties")
+            Core.<*> (o Core..:? "deliverySchedule")
+            Core.<*> (o Core..:? "dynamicClickTracker")
+            Core.<*> (o Core..:? "endTime")
+            Core.<*> (o Core..:? "eventTagOverrides")
+            Core.<*> (o Core..:? "geoTargeting")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "keyValueTargetingExpression")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "languageTargeting")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "placementAssignments")
+            Core.<*> (o Core..:? "remarketingListExpression")
+            Core.<*> (o Core..:? "size")
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "sslRequired")
+            Core.<*> (o Core..:? "startTime")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "targetingTemplateId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "technologyTargeting")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON Ad where
+  toJSON Ad {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("active" Core..=) Core.<$> active,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("archived" Core..=) Core.<$> archived,
+            ("audienceSegmentId" Core..=)
+              Core.. Core.AsText
+              Core.<$> audienceSegmentId,
+            ("campaignId" Core..=) Core.. Core.AsText Core.<$> campaignId,
+            ("campaignIdDimensionValue" Core..=)
+              Core.<$> campaignIdDimensionValue,
+            ("clickThroughUrl" Core..=) Core.<$> clickThroughUrl,
+            ("clickThroughUrlSuffixProperties" Core..=)
+              Core.<$> clickThroughUrlSuffixProperties,
+            ("comments" Core..=) Core.<$> comments,
+            ("compatibility" Core..=) Core.<$> compatibility,
+            ("createInfo" Core..=) Core.<$> createInfo,
+            ("creativeGroupAssignments" Core..=)
+              Core.<$> creativeGroupAssignments,
+            ("creativeRotation" Core..=) Core.<$> creativeRotation,
+            ("dayPartTargeting" Core..=) Core.<$> dayPartTargeting,
+            ("defaultClickThroughEventTagProperties" Core..=)
+              Core.<$> defaultClickThroughEventTagProperties,
+            ("deliverySchedule" Core..=) Core.<$> deliverySchedule,
+            ("dynamicClickTracker" Core..=) Core.<$> dynamicClickTracker,
+            ("endTime" Core..=) Core.<$> endTime,
+            ("eventTagOverrides" Core..=) Core.<$> eventTagOverrides,
+            ("geoTargeting" Core..=) Core.<$> geoTargeting,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("keyValueTargetingExpression" Core..=)
+              Core.<$> keyValueTargetingExpression,
+            ("kind" Core..=) Core.<$> kind,
+            ("languageTargeting" Core..=) Core.<$> languageTargeting,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("name" Core..=) Core.<$> name,
+            ("placementAssignments" Core..=) Core.<$> placementAssignments,
+            ("remarketingListExpression" Core..=)
+              Core.<$> remarketingListExpression,
+            ("size" Core..=) Core.<$> size,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("sslRequired" Core..=) Core.<$> sslRequired,
+            ("startTime" Core..=) Core.<$> startTime,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("targetingTemplateId" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetingTemplateId,
+            ("technologyTargeting" Core..=) Core.<$> technologyTargeting,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Campaign ad blocking settings.
+--
+-- /See:/ 'newAdBlockingConfiguration' smart constructor.
+newtype AdBlockingConfiguration = AdBlockingConfiguration
+  { -- | Whether this campaign has enabled ad blocking. When true, ad blocking is enabled for placements in the campaign, but this may be overridden by site and placement settings. When false, ad blocking is disabled for all placements under the campaign, regardless of site and placement settings.
+    enabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdBlockingConfiguration' with the minimum fields required to make a request.
+newAdBlockingConfiguration ::
+  AdBlockingConfiguration
+newAdBlockingConfiguration =
+  AdBlockingConfiguration {enabled = Core.Nothing}
+
+instance Core.FromJSON AdBlockingConfiguration where
+  parseJSON =
+    Core.withObject
+      "AdBlockingConfiguration"
+      (\o -> AdBlockingConfiguration Core.<$> (o Core..:? "enabled"))
+
+instance Core.ToJSON AdBlockingConfiguration where
+  toJSON AdBlockingConfiguration {..} =
+    Core.object
+      (Core.catMaybes [("enabled" Core..=) Core.<$> enabled])
+
+-- | Ad Slot
+--
+-- /See:/ 'newAdSlot' smart constructor.
+data AdSlot = AdSlot
+  { -- | Comment for this ad slot.
+    comment :: (Core.Maybe Core.Text),
+    -- | Ad slot compatibility. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM/VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
+    compatibility :: (Core.Maybe AdSlot_Compatibility),
+    -- | Height of this ad slot.
+    height :: (Core.Maybe Core.Int64),
+    -- | ID of the placement from an external platform that is linked to this ad slot.
+    linkedPlacementId :: (Core.Maybe Core.Int64),
+    -- | Name of this ad slot.
+    name :: (Core.Maybe Core.Text),
+    -- | Payment source type of this ad slot.
+    paymentSourceType :: (Core.Maybe AdSlot_PaymentSourceType),
+    -- | Primary ad slot of a roadblock inventory item.
+    primary :: (Core.Maybe Core.Bool),
+    -- | Width of this ad slot.
+    width :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdSlot' with the minimum fields required to make a request.
+newAdSlot ::
+  AdSlot
+newAdSlot =
+  AdSlot
+    { comment = Core.Nothing,
+      compatibility = Core.Nothing,
+      height = Core.Nothing,
+      linkedPlacementId = Core.Nothing,
+      name = Core.Nothing,
+      paymentSourceType = Core.Nothing,
+      primary = Core.Nothing,
+      width = Core.Nothing
+    }
+
+instance Core.FromJSON AdSlot where
+  parseJSON =
+    Core.withObject
+      "AdSlot"
+      ( \o ->
+          AdSlot
+            Core.<$> (o Core..:? "comment")
+            Core.<*> (o Core..:? "compatibility")
+            Core.<*> (o Core..:? "height" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "linkedPlacementId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "paymentSourceType")
+            Core.<*> (o Core..:? "primary")
+            Core.<*> (o Core..:? "width" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON AdSlot where
+  toJSON AdSlot {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("comment" Core..=) Core.<$> comment,
+            ("compatibility" Core..=) Core.<$> compatibility,
+            ("height" Core..=) Core.. Core.AsText Core.<$> height,
+            ("linkedPlacementId" Core..=)
+              Core.. Core.AsText
+              Core.<$> linkedPlacementId,
+            ("name" Core..=) Core.<$> name,
+            ("paymentSourceType" Core..=) Core.<$> paymentSourceType,
+            ("primary" Core..=) Core.<$> primary,
+            ("width" Core..=) Core.. Core.AsText Core.<$> width
+          ]
+      )
+
+-- | Ad List Response
+--
+-- /See:/ 'newAdsListResponse' smart constructor.
+data AdsListResponse = AdsListResponse
+  { -- | Ad collection.
+    ads :: (Core.Maybe [Ad]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdsListResponse' with the minimum fields required to make a request.
+newAdsListResponse ::
+  AdsListResponse
+newAdsListResponse =
+  AdsListResponse
+    { ads = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AdsListResponse where
+  parseJSON =
+    Core.withObject
+      "AdsListResponse"
+      ( \o ->
+          AdsListResponse
+            Core.<$> (o Core..:? "ads")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AdsListResponse where
+  toJSON AdsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("ads" Core..=) Core.<$> ads,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains properties of a Campaign Manager advertiser.
+--
+-- /See:/ 'newAdvertiser' smart constructor.
+data Advertiser = Advertiser
+  { -- | Account ID of this advertiser.This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.
+    advertiserGroupId :: (Core.Maybe Core.Int64),
+    -- | Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long.
+    clickThroughUrlSuffix :: (Core.Maybe Core.Text),
+    -- | ID of the click-through event tag to apply by default to the landing pages of this advertiser\'s campaigns.
+    defaultClickThroughEventTagId :: (Core.Maybe Core.Int64),
+    -- | Default email address used in sender field for tag emails.
+    defaultEmail :: (Core.Maybe Core.Text),
+    -- | Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser\'s floodlight configuration ID in order to share that advertiser\'s floodlight configuration with this advertiser, so long as: - This advertiser\'s original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. - This advertiser\'s original floodlight configuration is not already shared with another advertiser.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
+    floodlightConfigurationIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | ID of this advertiser. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this advertiser. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Measurement partner advertiser link for tag wrapping.
+    measurementPartnerLink :: (Core.Maybe MeasurementPartnerAdvertiserLink),
+    -- | Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account.
+    name :: (Core.Maybe Core.Text),
+    -- | Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser\'s current floodlight configuration. You cannot unshare an advertiser\'s floodlight configuration if the shared configuration has activities associated with any campaign or placement.
+    originalFloodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Status of this advertiser.
+    status :: (Core.Maybe Advertiser_Status),
+    -- | Subaccount ID of this advertiser.This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Suspension status of this advertiser.
+    suspended :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Advertiser' with the minimum fields required to make a request.
+newAdvertiser ::
+  Advertiser
+newAdvertiser =
+  Advertiser
+    { accountId = Core.Nothing,
+      advertiserGroupId = Core.Nothing,
+      clickThroughUrlSuffix = Core.Nothing,
+      defaultClickThroughEventTagId = Core.Nothing,
+      defaultEmail = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      floodlightConfigurationIdDimensionValue = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      measurementPartnerLink = Core.Nothing,
+      name = Core.Nothing,
+      originalFloodlightConfigurationId = Core.Nothing,
+      status = Core.Nothing,
+      subaccountId = Core.Nothing,
+      suspended = Core.Nothing
+    }
+
+instance Core.FromJSON Advertiser where
+  parseJSON =
+    Core.withObject
+      "Advertiser"
+      ( \o ->
+          Advertiser
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserGroupId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "clickThroughUrlSuffix")
+            Core.<*> ( o
+                         Core..:? "defaultClickThroughEventTagId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "defaultEmail")
+            Core.<*> ( o
+                         Core..:? "floodlightConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightConfigurationIdDimensionValue")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "measurementPartnerLink")
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "originalFloodlightConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "suspended")
+      )
+
+instance Core.ToJSON Advertiser where
+  toJSON Advertiser {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> advertiserGroupId,
+            ("clickThroughUrlSuffix" Core..=) Core.<$> clickThroughUrlSuffix,
+            ("defaultClickThroughEventTagId" Core..=)
+              Core.. Core.AsText
+              Core.<$> defaultClickThroughEventTagId,
+            ("defaultEmail" Core..=) Core.<$> defaultEmail,
+            ("floodlightConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightConfigurationId,
+            ("floodlightConfigurationIdDimensionValue" Core..=)
+              Core.<$> floodlightConfigurationIdDimensionValue,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("measurementPartnerLink" Core..=) Core.<$> measurementPartnerLink,
+            ("name" Core..=) Core.<$> name,
+            ("originalFloodlightConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> originalFloodlightConfigurationId,
+            ("status" Core..=) Core.<$> status,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("suspended" Core..=) Core.<$> suspended
+          ]
+      )
+
+-- | Groups advertisers together so that reports can be generated for the entire group at once.
+--
+-- /See:/ 'newAdvertiserGroup' smart constructor.
+data AdvertiserGroup = AdvertiserGroup
+  { -- | Account ID of this advertiser group. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | ID of this advertiser group. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdvertiserGroup' with the minimum fields required to make a request.
+newAdvertiserGroup ::
+  AdvertiserGroup
+newAdvertiserGroup =
+  AdvertiserGroup
+    { accountId = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON AdvertiserGroup where
+  parseJSON =
+    Core.withObject
+      "AdvertiserGroup"
+      ( \o ->
+          AdvertiserGroup
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON AdvertiserGroup where
+  toJSON AdvertiserGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Advertiser Group List Response
+--
+-- /See:/ 'newAdvertiserGroupsListResponse' smart constructor.
+data AdvertiserGroupsListResponse = AdvertiserGroupsListResponse
+  { -- | Advertiser group collection.
+    advertiserGroups :: (Core.Maybe [AdvertiserGroup]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdvertiserGroupsListResponse' with the minimum fields required to make a request.
+newAdvertiserGroupsListResponse ::
+  AdvertiserGroupsListResponse
+newAdvertiserGroupsListResponse =
+  AdvertiserGroupsListResponse
+    { advertiserGroups = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AdvertiserGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "AdvertiserGroupsListResponse"
+      ( \o ->
+          AdvertiserGroupsListResponse
+            Core.<$> (o Core..:? "advertiserGroups")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AdvertiserGroupsListResponse where
+  toJSON AdvertiserGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advertiserGroups" Core..=) Core.<$> advertiserGroups,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Invoice List Response
+--
+-- /See:/ 'newAdvertiserInvoicesListResponse' smart constructor.
+data AdvertiserInvoicesListResponse = AdvertiserInvoicesListResponse
+  { -- | Invoice collection
+    invoices :: (Core.Maybe [Invoice]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserInvoicesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdvertiserInvoicesListResponse' with the minimum fields required to make a request.
+newAdvertiserInvoicesListResponse ::
+  AdvertiserInvoicesListResponse
+newAdvertiserInvoicesListResponse =
+  AdvertiserInvoicesListResponse
+    { invoices = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AdvertiserInvoicesListResponse where
+  parseJSON =
+    Core.withObject
+      "AdvertiserInvoicesListResponse"
+      ( \o ->
+          AdvertiserInvoicesListResponse
+            Core.<$> (o Core..:? "invoices")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AdvertiserInvoicesListResponse where
+  toJSON AdvertiserInvoicesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("invoices" Core..=) Core.<$> invoices,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Landing Page List Response
+--
+-- /See:/ 'newAdvertiserLandingPagesListResponse' smart constructor.
+data AdvertiserLandingPagesListResponse = AdvertiserLandingPagesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserLandingPagesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Landing page collection
+    landingPages :: (Core.Maybe [LandingPage]),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdvertiserLandingPagesListResponse' with the minimum fields required to make a request.
+newAdvertiserLandingPagesListResponse ::
+  AdvertiserLandingPagesListResponse
+newAdvertiserLandingPagesListResponse =
+  AdvertiserLandingPagesListResponse
+    { kind = Core.Nothing,
+      landingPages = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AdvertiserLandingPagesListResponse where
+  parseJSON =
+    Core.withObject
+      "AdvertiserLandingPagesListResponse"
+      ( \o ->
+          AdvertiserLandingPagesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "landingPages")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AdvertiserLandingPagesListResponse where
+  toJSON AdvertiserLandingPagesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("landingPages" Core..=) Core.<$> landingPages,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Advertiser List Response
+--
+-- /See:/ 'newAdvertisersListResponse' smart constructor.
+data AdvertisersListResponse = AdvertisersListResponse
+  { -- | Advertiser collection.
+    advertisers :: (Core.Maybe [Advertiser]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AdvertisersListResponse' with the minimum fields required to make a request.
+newAdvertisersListResponse ::
+  AdvertisersListResponse
+newAdvertisersListResponse =
+  AdvertisersListResponse
+    { advertisers = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON AdvertisersListResponse where
+  parseJSON =
+    Core.withObject
+      "AdvertisersListResponse"
+      ( \o ->
+          AdvertisersListResponse
+            Core.<$> (o Core..:? "advertisers")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON AdvertisersListResponse where
+  toJSON AdvertisersListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advertisers" Core..=) Core.<$> advertisers,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Audience Segment.
+--
+-- /See:/ 'newAudienceSegment' smart constructor.
+data AudienceSegment = AudienceSegment
+  { -- | Weight allocated to this segment. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group. Acceptable values are 1 to 1000, inclusive.
+    allocation :: (Core.Maybe Core.Int32),
+    -- | ID of this audience segment. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of this audience segment. This is a required field and must be less than 65 characters long.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AudienceSegment' with the minimum fields required to make a request.
+newAudienceSegment ::
+  AudienceSegment
+newAudienceSegment =
+  AudienceSegment
+    { allocation = Core.Nothing,
+      id = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON AudienceSegment where
+  parseJSON =
+    Core.withObject
+      "AudienceSegment"
+      ( \o ->
+          AudienceSegment
+            Core.<$> (o Core..:? "allocation")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON AudienceSegment where
+  toJSON AudienceSegment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("allocation" Core..=) Core.<$> allocation,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Audience Segment Group.
+--
+-- /See:/ 'newAudienceSegmentGroup' smart constructor.
+data AudienceSegmentGroup = AudienceSegmentGroup
+  { -- | Audience segments assigned to this group. The number of segments must be between 2 and 100.
+    audienceSegments :: (Core.Maybe [AudienceSegment]),
+    -- | ID of this audience segment group. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of this audience segment group. This is a required field and must be less than 65 characters long.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'AudienceSegmentGroup' with the minimum fields required to make a request.
+newAudienceSegmentGroup ::
+  AudienceSegmentGroup
+newAudienceSegmentGroup =
+  AudienceSegmentGroup
+    { audienceSegments = Core.Nothing,
+      id = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON AudienceSegmentGroup where
+  parseJSON =
+    Core.withObject
+      "AudienceSegmentGroup"
+      ( \o ->
+          AudienceSegmentGroup
+            Core.<$> (o Core..:? "audienceSegments")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON AudienceSegmentGroup where
+  toJSON AudienceSegmentGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audienceSegments" Core..=) Core.<$> audienceSegments,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | List account, subaccount, advertiser, and campaign associated with a given Billing Profile.
+--
+-- /See:/ 'newBillingAssignment' smart constructor.
+data BillingAssignment = BillingAssignment
+  { -- | ID of the account associated with the billing assignment.This is a read-only, auto-generated field.
+    accountId :: (Core.Maybe Core.Text),
+    -- | ID of the advertiser associated with the billing assignment.Wildcard (*) means this assignment is not limited to a single advertiser
+    advertiserId :: (Core.Maybe Core.Text),
+    -- | ID of the campaign associated with the billing assignment. Wildcard (*) means this assignment is not limited to a single campaign
+    campaignId :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#billingAssignment\".
+    kind :: (Core.Maybe Core.Text),
+    -- | ID of the subaccount associated with the billing assignment.Wildcard (*) means this assignment is not limited to a single subaccountThis is a read-only, auto-generated field.
+    subaccountId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingAssignment' with the minimum fields required to make a request.
+newBillingAssignment ::
+  BillingAssignment
+newBillingAssignment =
+  BillingAssignment
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      campaignId = Core.Nothing,
+      kind = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON BillingAssignment where
+  parseJSON =
+    Core.withObject
+      "BillingAssignment"
+      ( \o ->
+          BillingAssignment
+            Core.<$> (o Core..:? "accountId")
+            Core.<*> (o Core..:? "advertiserId")
+            Core.<*> (o Core..:? "campaignId")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "subaccountId")
+      )
+
+instance Core.ToJSON BillingAssignment where
+  toJSON BillingAssignment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.<$> accountId,
+            ("advertiserId" Core..=) Core.<$> advertiserId,
+            ("campaignId" Core..=) Core.<$> campaignId,
+            ("kind" Core..=) Core.<$> kind,
+            ("subaccountId" Core..=) Core.<$> subaccountId
+          ]
+      )
+
+-- | Billing assignment List Response
+--
+-- /See:/ 'newBillingAssignmentsListResponse' smart constructor.
+data BillingAssignmentsListResponse = BillingAssignmentsListResponse
+  { -- | Billing assignments collection.
+    billingAssignments :: (Core.Maybe [BillingAssignment]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#billingAssignmentsListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingAssignmentsListResponse' with the minimum fields required to make a request.
+newBillingAssignmentsListResponse ::
+  BillingAssignmentsListResponse
+newBillingAssignmentsListResponse =
+  BillingAssignmentsListResponse
+    { billingAssignments = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON BillingAssignmentsListResponse where
+  parseJSON =
+    Core.withObject
+      "BillingAssignmentsListResponse"
+      ( \o ->
+          BillingAssignmentsListResponse
+            Core.<$> (o Core..:? "billingAssignments")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON BillingAssignmentsListResponse where
+  toJSON BillingAssignmentsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("billingAssignments" Core..=) Core.<$> billingAssignments,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains properties of a Campaign Manager Billing Profile.
+--
+-- /See:/ 'newBillingProfile' smart constructor.
+data BillingProfile = BillingProfile
+  { -- | Consolidated invoice option for this billing profile. Used to get a single, consolidated invoice across the chosen invoice level.
+    consolidatedInvoice :: (Core.Maybe Core.Bool),
+    -- | Country code of this billing profile.This is a read-only field.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | Billing currency code in ISO 4217 format.This is a read-only field.
+    currencyCode :: (Core.Maybe Core.Text),
+    -- | ID of this billing profile. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Invoice level for this billing profile. Used to group fees into separate invoices by account, advertiser, or campaign.
+    invoiceLevel :: (Core.Maybe BillingProfile_InvoiceLevel),
+    -- | True if the billing profile is the account default profile. This is a read-only field.
+    isDefault :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#billingProfile\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this billing profile. This is a required field and must be less than 256 characters long and must be unique among billing profile in the same account.
+    name :: (Core.Maybe Core.Text),
+    -- | The ID of the payment account the billing profile belongs to. This is a read-only field.
+    paymentsAccountId :: (Core.Maybe Core.Text),
+    -- | The ID of the payment customer the billing profile belongs to. This is a read-only field.
+    paymentsCustomerId :: (Core.Maybe Core.Text),
+    -- | Purchase order (PO) for this billing profile. This PO number is used in the invoices for all of the advertisers in this billing profile.
+    purchaseOrder :: (Core.Maybe Core.Text),
+    -- | The ID of the secondary payment customer the billing profile belongs to. This is a read-only field.
+    secondaryPaymentsCustomerId :: (Core.Maybe Core.Text),
+    -- | Status of this billing profile.This is a read-only field.
+    status :: (Core.Maybe BillingProfile_Status)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingProfile' with the minimum fields required to make a request.
+newBillingProfile ::
+  BillingProfile
+newBillingProfile =
+  BillingProfile
+    { consolidatedInvoice = Core.Nothing,
+      countryCode = Core.Nothing,
+      currencyCode = Core.Nothing,
+      id = Core.Nothing,
+      invoiceLevel = Core.Nothing,
+      isDefault = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      paymentsAccountId = Core.Nothing,
+      paymentsCustomerId = Core.Nothing,
+      purchaseOrder = Core.Nothing,
+      secondaryPaymentsCustomerId = Core.Nothing,
+      status = Core.Nothing
+    }
+
+instance Core.FromJSON BillingProfile where
+  parseJSON =
+    Core.withObject
+      "BillingProfile"
+      ( \o ->
+          BillingProfile
+            Core.<$> (o Core..:? "consolidatedInvoice")
+            Core.<*> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "currencyCode")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "invoiceLevel")
+            Core.<*> (o Core..:? "isDefault")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "paymentsAccountId")
+            Core.<*> (o Core..:? "paymentsCustomerId")
+            Core.<*> (o Core..:? "purchaseOrder")
+            Core.<*> (o Core..:? "secondaryPaymentsCustomerId")
+            Core.<*> (o Core..:? "status")
+      )
+
+instance Core.ToJSON BillingProfile where
+  toJSON BillingProfile {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("consolidatedInvoice" Core..=) Core.<$> consolidatedInvoice,
+            ("countryCode" Core..=) Core.<$> countryCode,
+            ("currencyCode" Core..=) Core.<$> currencyCode,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("invoiceLevel" Core..=) Core.<$> invoiceLevel,
+            ("isDefault" Core..=) Core.<$> isDefault,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("paymentsAccountId" Core..=) Core.<$> paymentsAccountId,
+            ("paymentsCustomerId" Core..=) Core.<$> paymentsCustomerId,
+            ("purchaseOrder" Core..=) Core.<$> purchaseOrder,
+            ("secondaryPaymentsCustomerId" Core..=)
+              Core.<$> secondaryPaymentsCustomerId,
+            ("status" Core..=) Core.<$> status
+          ]
+      )
+
+-- | Billing profile List Response
+--
+-- /See:/ 'newBillingProfilesListResponse' smart constructor.
+data BillingProfilesListResponse = BillingProfilesListResponse
+  { -- | Billing profiles collection.
+    billingProfiles :: (Core.Maybe [BillingProfile]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#billingProfilesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingProfilesListResponse' with the minimum fields required to make a request.
+newBillingProfilesListResponse ::
+  BillingProfilesListResponse
+newBillingProfilesListResponse =
+  BillingProfilesListResponse
+    { billingProfiles = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON BillingProfilesListResponse where
+  parseJSON =
+    Core.withObject
+      "BillingProfilesListResponse"
+      ( \o ->
+          BillingProfilesListResponse
+            Core.<$> (o Core..:? "billingProfiles")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON BillingProfilesListResponse where
+  toJSON BillingProfilesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("billingProfiles" Core..=) Core.<$> billingProfiles,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+--
+-- /See:/ 'newBillingRate' smart constructor.
+data BillingRate = BillingRate
+  { -- | Billing currency code in ISO 4217 format.
+    currencyCode :: (Core.Maybe Core.Text),
+    -- | End date of this billing rate.
+    endDate :: (Core.Maybe Core.Text),
+    -- | ID of this billing rate.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of this billing rate. This must be less than 256 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Flat rate in micros of this billing rate. This cannot co-exist with tiered rate.
+    rateInMicros :: (Core.Maybe Core.Int64),
+    -- | Start date of this billing rate.
+    startDate :: (Core.Maybe Core.Text),
+    -- | Tiered rate of this billing rate. This cannot co-exist with flat rate.
+    tieredRates :: (Core.Maybe [BillingRateTieredRate]),
+    -- | Type of this billing rate.
+    type' :: (Core.Maybe BillingRate_Type),
+    -- | Unit of measure for this billing rate.
+    unitOfMeasure :: (Core.Maybe BillingRate_UnitOfMeasure)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingRate' with the minimum fields required to make a request.
+newBillingRate ::
+  BillingRate
+newBillingRate =
+  BillingRate
+    { currencyCode = Core.Nothing,
+      endDate = Core.Nothing,
+      id = Core.Nothing,
+      name = Core.Nothing,
+      rateInMicros = Core.Nothing,
+      startDate = Core.Nothing,
+      tieredRates = Core.Nothing,
+      type' = Core.Nothing,
+      unitOfMeasure = Core.Nothing
+    }
+
+instance Core.FromJSON BillingRate where
+  parseJSON =
+    Core.withObject
+      "BillingRate"
+      ( \o ->
+          BillingRate
+            Core.<$> (o Core..:? "currencyCode")
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "rateInMicros" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "tieredRates")
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "unitOfMeasure")
+      )
+
+instance Core.ToJSON BillingRate where
+  toJSON BillingRate {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("currencyCode" Core..=) Core.<$> currencyCode,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name,
+            ("rateInMicros" Core..=) Core.. Core.AsText Core.<$> rateInMicros,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("tieredRates" Core..=) Core.<$> tieredRates,
+            ("type" Core..=) Core.<$> type',
+            ("unitOfMeasure" Core..=) Core.<$> unitOfMeasure
+          ]
+      )
+
+--
+-- /See:/ 'newBillingRateTieredRate' smart constructor.
+data BillingRateTieredRate = BillingRateTieredRate
+  { -- | The maximum for this tier range.
+    highValue :: (Core.Maybe Core.Int64),
+    -- | The minimum for this tier range.
+    lowValue :: (Core.Maybe Core.Int64),
+    -- | Rate in micros for this tier.
+    rateInMicros :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingRateTieredRate' with the minimum fields required to make a request.
+newBillingRateTieredRate ::
+  BillingRateTieredRate
+newBillingRateTieredRate =
+  BillingRateTieredRate
+    { highValue = Core.Nothing,
+      lowValue = Core.Nothing,
+      rateInMicros = Core.Nothing
+    }
+
+instance Core.FromJSON BillingRateTieredRate where
+  parseJSON =
+    Core.withObject
+      "BillingRateTieredRate"
+      ( \o ->
+          BillingRateTieredRate
+            Core.<$> (o Core..:? "highValue" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "lowValue" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "rateInMicros" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON BillingRateTieredRate where
+  toJSON BillingRateTieredRate {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("highValue" Core..=) Core.. Core.AsText Core.<$> highValue,
+            ("lowValue" Core..=) Core.. Core.AsText Core.<$> lowValue,
+            ("rateInMicros" Core..=) Core.. Core.AsText Core.<$> rateInMicros
+          ]
+      )
+
+-- | Billing Rate List Response
+--
+-- /See:/ 'newBillingRatesListResponse' smart constructor.
+data BillingRatesListResponse = BillingRatesListResponse
+  { -- | Billing rates collection.
+    billingRates :: (Core.Maybe [BillingRate]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#billingRatesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BillingRatesListResponse' with the minimum fields required to make a request.
+newBillingRatesListResponse ::
+  BillingRatesListResponse
+newBillingRatesListResponse =
+  BillingRatesListResponse
+    { billingRates = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON BillingRatesListResponse where
+  parseJSON =
+    Core.withObject
+      "BillingRatesListResponse"
+      ( \o ->
+          BillingRatesListResponse
+            Core.<$> (o Core..:? "billingRates")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON BillingRatesListResponse where
+  toJSON BillingRatesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("billingRates" Core..=) Core.<$> billingRates,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains information about a browser that can be targeted by ads.
+--
+-- /See:/ 'newBrowser' smart constructor.
+data Browser = Browser
+  { -- | ID referring to this grouping of browser and version numbers. This is the ID used for targeting.
+    browserVersionId :: (Core.Maybe Core.Int64),
+    -- | DART ID of this browser. This is the ID used when generating reports.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (/) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome /.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can\'t tell which version it is.
+    majorVersion :: (Core.Maybe Core.Text),
+    -- | Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (/) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome /.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can\'t tell which version it is.
+    minorVersion :: (Core.Maybe Core.Text),
+    -- | Name of this browser.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Browser' with the minimum fields required to make a request.
+newBrowser ::
+  Browser
+newBrowser =
+  Browser
+    { browserVersionId = Core.Nothing,
+      dartId = Core.Nothing,
+      kind = Core.Nothing,
+      majorVersion = Core.Nothing,
+      minorVersion = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON Browser where
+  parseJSON =
+    Core.withObject
+      "Browser"
+      ( \o ->
+          Browser
+            Core.<$> (o Core..:? "browserVersionId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "majorVersion")
+            Core.<*> (o Core..:? "minorVersion")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Browser where
+  toJSON Browser {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("browserVersionId" Core..=)
+              Core.. Core.AsText
+              Core.<$> browserVersionId,
+            ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("kind" Core..=) Core.<$> kind,
+            ("majorVersion" Core..=) Core.<$> majorVersion,
+            ("minorVersion" Core..=) Core.<$> minorVersion,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Browser List Response
+--
+-- /See:/ 'newBrowsersListResponse' smart constructor.
+data BrowsersListResponse = BrowsersListResponse
+  { -- | Browser collection.
+    browsers :: (Core.Maybe [Browser]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'BrowsersListResponse' with the minimum fields required to make a request.
+newBrowsersListResponse ::
+  BrowsersListResponse
+newBrowsersListResponse =
+  BrowsersListResponse
+    { browsers = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON BrowsersListResponse where
+  parseJSON =
+    Core.withObject
+      "BrowsersListResponse"
+      ( \o ->
+          BrowsersListResponse
+            Core.<$> (o Core..:? "browsers")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON BrowsersListResponse where
+  toJSON BrowsersListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("browsers" Core..=) Core.<$> browsers,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains properties of a Campaign Manager campaign.
+--
+-- /See:/ 'newCampaign' smart constructor.
+data Campaign = Campaign
+  { -- | Account ID of this campaign. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Ad blocking settings for this campaign.
+    adBlockingConfiguration :: (Core.Maybe AdBlockingConfiguration),
+    -- | Additional creative optimization configurations for the campaign.
+    additionalCreativeOptimizationConfigurations :: (Core.Maybe [CreativeOptimizationConfiguration]),
+    -- | Advertiser group ID of the associated advertiser.
+    advertiserGroupId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this campaign. This is a required field.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether this campaign has been archived.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.
+    audienceSegmentGroups :: (Core.Maybe [AudienceSegmentGroup]),
+    -- | Billing invoice code included in the Campaign Manager client billing invoices associated with the campaign.
+    billingInvoiceCode :: (Core.Maybe Core.Text),
+    -- | Click-through URL suffix override properties for this campaign.
+    clickThroughUrlSuffixProperties :: (Core.Maybe ClickThroughUrlSuffixProperties),
+    -- | Arbitrary comments about this campaign. Must be less than 256 characters long.
+    comment :: (Core.Maybe Core.Text),
+    -- | Information about the creation of this campaign. This is a read-only field.
+    createInfo :: (Core.Maybe LastModifiedInfo),
+    -- | List of creative group IDs that are assigned to the campaign.
+    creativeGroupIds :: (Core.Maybe [Core.Int64]),
+    -- | Creative optimization configuration for the campaign.
+    creativeOptimizationConfiguration :: (Core.Maybe CreativeOptimizationConfiguration),
+    -- | Click-through event tag ID override properties for this campaign.
+    defaultClickThroughEventTagProperties :: (Core.Maybe DefaultClickThroughEventTagProperties),
+    -- | The default landing page ID for this campaign.
+    defaultLandingPageId :: (Core.Maybe Core.Int64),
+    endDate :: (Core.Maybe Core.Date),
+    -- | Overrides that can be used to activate or deactivate advertiser event tags.
+    eventTagOverrides :: (Core.Maybe [EventTagOverride]),
+    -- | External ID for this campaign.
+    externalId :: (Core.Maybe Core.Text),
+    -- | ID of this campaign. This is a read-only auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this campaign. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this campaign. This is a read-only field.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Measurement partner campaign link for tag wrapping.
+    measurementPartnerLink :: (Core.Maybe MeasurementPartnerCampaignLink),
+    -- | Name of this campaign. This is a required field and must be less than 512 characters long and unique among campaigns of the same advertiser.
+    name :: (Core.Maybe Core.Text),
+    startDate :: (Core.Maybe Core.Date),
+    -- | Subaccount ID of this campaign. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Campaign' with the minimum fields required to make a request.
+newCampaign ::
+  Campaign
+newCampaign =
+  Campaign
+    { accountId = Core.Nothing,
+      adBlockingConfiguration = Core.Nothing,
+      additionalCreativeOptimizationConfigurations = Core.Nothing,
+      advertiserGroupId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      archived = Core.Nothing,
+      audienceSegmentGroups = Core.Nothing,
+      billingInvoiceCode = Core.Nothing,
+      clickThroughUrlSuffixProperties = Core.Nothing,
+      comment = Core.Nothing,
+      createInfo = Core.Nothing,
+      creativeGroupIds = Core.Nothing,
+      creativeOptimizationConfiguration = Core.Nothing,
+      defaultClickThroughEventTagProperties = Core.Nothing,
+      defaultLandingPageId = Core.Nothing,
+      endDate = Core.Nothing,
+      eventTagOverrides = Core.Nothing,
+      externalId = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      measurementPartnerLink = Core.Nothing,
+      name = Core.Nothing,
+      startDate = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON Campaign where
+  parseJSON =
+    Core.withObject
+      "Campaign"
+      ( \o ->
+          Campaign
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "adBlockingConfiguration")
+            Core.<*> (o Core..:? "additionalCreativeOptimizationConfigurations")
+            Core.<*> (o Core..:? "advertiserGroupId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "archived")
+            Core.<*> (o Core..:? "audienceSegmentGroups")
+            Core.<*> (o Core..:? "billingInvoiceCode")
+            Core.<*> (o Core..:? "clickThroughUrlSuffixProperties")
+            Core.<*> (o Core..:? "comment")
+            Core.<*> (o Core..:? "createInfo")
+            Core.<*> ( o
+                         Core..:? "creativeGroupIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "creativeOptimizationConfiguration")
+            Core.<*> (o Core..:? "defaultClickThroughEventTagProperties")
+            Core.<*> ( o
+                         Core..:? "defaultLandingPageId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "eventTagOverrides")
+            Core.<*> (o Core..:? "externalId")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "measurementPartnerLink")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON Campaign where
+  toJSON Campaign {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("adBlockingConfiguration" Core..=)
+              Core.<$> adBlockingConfiguration,
+            ("additionalCreativeOptimizationConfigurations" Core..=)
+              Core.<$> additionalCreativeOptimizationConfigurations,
+            ("advertiserGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> advertiserGroupId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("archived" Core..=) Core.<$> archived,
+            ("audienceSegmentGroups" Core..=) Core.<$> audienceSegmentGroups,
+            ("billingInvoiceCode" Core..=) Core.<$> billingInvoiceCode,
+            ("clickThroughUrlSuffixProperties" Core..=)
+              Core.<$> clickThroughUrlSuffixProperties,
+            ("comment" Core..=) Core.<$> comment,
+            ("createInfo" Core..=) Core.<$> createInfo,
+            ("creativeGroupIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> creativeGroupIds,
+            ("creativeOptimizationConfiguration" Core..=)
+              Core.<$> creativeOptimizationConfiguration,
+            ("defaultClickThroughEventTagProperties" Core..=)
+              Core.<$> defaultClickThroughEventTagProperties,
+            ("defaultLandingPageId" Core..=)
+              Core.. Core.AsText
+              Core.<$> defaultLandingPageId,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("eventTagOverrides" Core..=) Core.<$> eventTagOverrides,
+            ("externalId" Core..=) Core.<$> externalId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("measurementPartnerLink" Core..=) Core.<$> measurementPartnerLink,
+            ("name" Core..=) Core.<$> name,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Identifies a creative which has been associated with a given campaign.
+--
+-- /See:/ 'newCampaignCreativeAssociation' smart constructor.
+data CampaignCreativeAssociation = CampaignCreativeAssociation
+  { -- | ID of the creative associated with the campaign. This is a required field.
+    creativeId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CampaignCreativeAssociation' with the minimum fields required to make a request.
+newCampaignCreativeAssociation ::
+  CampaignCreativeAssociation
+newCampaignCreativeAssociation =
+  CampaignCreativeAssociation
+    { creativeId = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON CampaignCreativeAssociation where
+  parseJSON =
+    Core.withObject
+      "CampaignCreativeAssociation"
+      ( \o ->
+          CampaignCreativeAssociation
+            Core.<$> (o Core..:? "creativeId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON CampaignCreativeAssociation where
+  toJSON CampaignCreativeAssociation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeId" Core..=) Core.. Core.AsText Core.<$> creativeId,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Campaign Creative Association List Response
+--
+-- /See:/ 'newCampaignCreativeAssociationsListResponse' smart constructor.
+data CampaignCreativeAssociationsListResponse = CampaignCreativeAssociationsListResponse
+  { -- | Campaign creative association collection
+    campaignCreativeAssociations :: (Core.Maybe [CampaignCreativeAssociation]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CampaignCreativeAssociationsListResponse' with the minimum fields required to make a request.
+newCampaignCreativeAssociationsListResponse ::
+  CampaignCreativeAssociationsListResponse
+newCampaignCreativeAssociationsListResponse =
+  CampaignCreativeAssociationsListResponse
+    { campaignCreativeAssociations =
+        Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CampaignCreativeAssociationsListResponse where
+  parseJSON =
+    Core.withObject
+      "CampaignCreativeAssociationsListResponse"
+      ( \o ->
+          CampaignCreativeAssociationsListResponse
+            Core.<$> (o Core..:? "campaignCreativeAssociations")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CampaignCreativeAssociationsListResponse where
+  toJSON CampaignCreativeAssociationsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("campaignCreativeAssociations" Core..=)
+              Core.<$> campaignCreativeAssociations,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Represents a summarized campaign information associated with this invoice.
+--
+-- /See:/ 'newCampaignSummary' smart constructor.
+data CampaignSummary = CampaignSummary
+  { -- | Campaign billing invoice code.
+    billingInvoiceCode :: (Core.Maybe Core.Text),
+    -- | Campaign ID.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | The pre-tax amount for this campaign, in micros of the invoice\'s currency.
+    preTaxAmountMicros :: (Core.Maybe Core.Int64),
+    -- | The tax amount for this campaign, in micros of the invoice\'s currency.
+    taxAmountMicros :: (Core.Maybe Core.Int64),
+    -- | The total amount of charges for this campaign, in micros of the invoice\'s currency.
+    totalAmountMicros :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CampaignSummary' with the minimum fields required to make a request.
+newCampaignSummary ::
+  CampaignSummary
+newCampaignSummary =
+  CampaignSummary
+    { billingInvoiceCode = Core.Nothing,
+      campaignId = Core.Nothing,
+      preTaxAmountMicros = Core.Nothing,
+      taxAmountMicros = Core.Nothing,
+      totalAmountMicros = Core.Nothing
+    }
+
+instance Core.FromJSON CampaignSummary where
+  parseJSON =
+    Core.withObject
+      "CampaignSummary"
+      ( \o ->
+          CampaignSummary
+            Core.<$> (o Core..:? "billingInvoiceCode")
+            Core.<*> (o Core..:? "campaignId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "preTaxAmountMicros"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "taxAmountMicros" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "totalAmountMicros"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON CampaignSummary where
+  toJSON CampaignSummary {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("billingInvoiceCode" Core..=) Core.<$> billingInvoiceCode,
+            ("campaignId" Core..=) Core.. Core.AsText Core.<$> campaignId,
+            ("preTaxAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> preTaxAmountMicros,
+            ("taxAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> taxAmountMicros,
+            ("totalAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> totalAmountMicros
+          ]
+      )
+
+-- | Campaign List Response
+--
+-- /See:/ 'newCampaignsListResponse' smart constructor.
+data CampaignsListResponse = CampaignsListResponse
+  { -- | Campaign collection.
+    campaigns :: (Core.Maybe [Campaign]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CampaignsListResponse' with the minimum fields required to make a request.
+newCampaignsListResponse ::
+  CampaignsListResponse
+newCampaignsListResponse =
+  CampaignsListResponse
+    { campaigns = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CampaignsListResponse where
+  parseJSON =
+    Core.withObject
+      "CampaignsListResponse"
+      ( \o ->
+          CampaignsListResponse
+            Core.<$> (o Core..:? "campaigns")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CampaignsListResponse where
+  toJSON CampaignsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("campaigns" Core..=) Core.<$> campaigns,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains additional information about cart data. This field may only be used when calling batchinsert; it is not supported by batchupdate.
+--
+-- /See:/ 'newCartData' smart constructor.
+data CartData = CartData
+  { -- | Data of the items purchased.
+    items :: (Core.Maybe [CartDataItem]),
+    -- | The feed labels associated with the feed where your items are uploaded. For more information, please refer to ​​ https:\/\/support.google.com\/merchants\/answer\/12453549. Providing the feed label reduces ambiguity in identifying the right offer details.
+    merchantFeedLabel :: (Core.Maybe Core.Text),
+    -- | The language associated with the feed where your items are uploaded. Use ISO 639-1 language codes. Providing the feed language reduces ambiguity in identifying the right offer details.
+    merchantFeedLanguage :: (Core.Maybe Core.Text),
+    -- | The Merchant Center ID where the items are uploaded. Providing Merchant Center ID reduces ambiguity in identifying the right offer details.
+    merchantId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CartData' with the minimum fields required to make a request.
+newCartData ::
+  CartData
+newCartData =
+  CartData
+    { items = Core.Nothing,
+      merchantFeedLabel = Core.Nothing,
+      merchantFeedLanguage = Core.Nothing,
+      merchantId = Core.Nothing
+    }
+
+instance Core.FromJSON CartData where
+  parseJSON =
+    Core.withObject
+      "CartData"
+      ( \o ->
+          CartData
+            Core.<$> (o Core..:? "items")
+            Core.<*> (o Core..:? "merchantFeedLabel")
+            Core.<*> (o Core..:? "merchantFeedLanguage")
+            Core.<*> (o Core..:? "merchantId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON CartData where
+  toJSON CartData {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("items" Core..=) Core.<$> items,
+            ("merchantFeedLabel" Core..=) Core.<$> merchantFeedLabel,
+            ("merchantFeedLanguage" Core..=) Core.<$> merchantFeedLanguage,
+            ("merchantId" Core..=) Core.. Core.AsText Core.<$> merchantId
+          ]
+      )
+
+-- | Contains data of the items purchased.
+--
+-- /See:/ 'newCartDataItem' smart constructor.
+data CartDataItem = CartDataItem
+  { -- | The shopping id of the item. Must be equal to the Merchant Center product identifier. This is a required field.
+    itemId :: (Core.Maybe Core.Text),
+    -- | Number of items sold. This is a required field.
+    quantity :: (Core.Maybe Core.Int32),
+    -- | Unit price excluding tax, shipping, and any transaction level discounts. Interpreted in CM360 Floodlight config parent advertiser\'s currency code. This is a required field.
+    unitPrice :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CartDataItem' with the minimum fields required to make a request.
+newCartDataItem ::
+  CartDataItem
+newCartDataItem =
+  CartDataItem
+    { itemId = Core.Nothing,
+      quantity = Core.Nothing,
+      unitPrice = Core.Nothing
+    }
+
+instance Core.FromJSON CartDataItem where
+  parseJSON =
+    Core.withObject
+      "CartDataItem"
+      ( \o ->
+          CartDataItem
+            Core.<$> (o Core..:? "itemId")
+            Core.<*> (o Core..:? "quantity")
+            Core.<*> (o Core..:? "unitPrice")
+      )
+
+instance Core.ToJSON CartDataItem where
+  toJSON CartDataItem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("itemId" Core..=) Core.<$> itemId,
+            ("quantity" Core..=) Core.<$> quantity,
+            ("unitPrice" Core..=) Core.<$> unitPrice
+          ]
+      )
+
+-- | Describes a change that a user has made to a resource.
+--
+-- /See:/ 'newChangeLog' smart constructor.
+data ChangeLog = ChangeLog
+  { -- | Account ID of the modified object.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Action which caused the change.
+    action :: (Core.Maybe Core.Text),
+    changeTime :: (Core.Maybe Core.DateTime),
+    -- | Field name of the object which changed.
+    fieldName :: (Core.Maybe Core.Text),
+    -- | ID of this change log.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".
+    kind :: (Core.Maybe Core.Text),
+    -- | New value of the object field.
+    newValue' :: (Core.Maybe Core.Text),
+    -- | ID of the object of this change log. The object could be a campaign, placement, ad, or other type.
+    objectId :: (Core.Maybe Core.Int64),
+    -- | Object type of the change log.
+    objectType :: (Core.Maybe Core.Text),
+    -- | Old value of the object field.
+    oldValue :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of the modified object.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.
+    transactionId :: (Core.Maybe Core.Int64),
+    -- | ID of the user who modified the object.
+    userProfileId :: (Core.Maybe Core.Int64),
+    -- | User profile name of the user who modified the object.
+    userProfileName :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ChangeLog' with the minimum fields required to make a request.
+newChangeLog ::
+  ChangeLog
+newChangeLog =
+  ChangeLog
+    { accountId = Core.Nothing,
+      action = Core.Nothing,
+      changeTime = Core.Nothing,
+      fieldName = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      newValue' = Core.Nothing,
+      objectId = Core.Nothing,
+      objectType = Core.Nothing,
+      oldValue = Core.Nothing,
+      subaccountId = Core.Nothing,
+      transactionId = Core.Nothing,
+      userProfileId = Core.Nothing,
+      userProfileName = Core.Nothing
+    }
+
+instance Core.FromJSON ChangeLog where
+  parseJSON =
+    Core.withObject
+      "ChangeLog"
+      ( \o ->
+          ChangeLog
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "action")
+            Core.<*> (o Core..:? "changeTime")
+            Core.<*> (o Core..:? "fieldName")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "newValue")
+            Core.<*> (o Core..:? "objectId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "objectType")
+            Core.<*> (o Core..:? "oldValue")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "transactionId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "userProfileId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "userProfileName")
+      )
+
+instance Core.ToJSON ChangeLog where
+  toJSON ChangeLog {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("action" Core..=) Core.<$> action,
+            ("changeTime" Core..=) Core.<$> changeTime,
+            ("fieldName" Core..=) Core.<$> fieldName,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("newValue" Core..=) Core.<$> newValue',
+            ("objectId" Core..=) Core.. Core.AsText Core.<$> objectId,
+            ("objectType" Core..=) Core.<$> objectType,
+            ("oldValue" Core..=) Core.<$> oldValue,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("transactionId" Core..=)
+              Core.. Core.AsText
+              Core.<$> transactionId,
+            ("userProfileId" Core..=)
+              Core.. Core.AsText
+              Core.<$> userProfileId,
+            ("userProfileName" Core..=) Core.<$> userProfileName
+          ]
+      )
+
+-- | Change Log List Response
+--
+-- /See:/ 'newChangeLogsListResponse' smart constructor.
+data ChangeLogsListResponse = ChangeLogsListResponse
+  { -- | Change log collection.
+    changeLogs :: (Core.Maybe [ChangeLog]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ChangeLogsListResponse' with the minimum fields required to make a request.
+newChangeLogsListResponse ::
+  ChangeLogsListResponse
+newChangeLogsListResponse =
+  ChangeLogsListResponse
+    { changeLogs = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON ChangeLogsListResponse where
+  parseJSON =
+    Core.withObject
+      "ChangeLogsListResponse"
+      ( \o ->
+          ChangeLogsListResponse
+            Core.<$> (o Core..:? "changeLogs")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON ChangeLogsListResponse where
+  toJSON ChangeLogsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("changeLogs" Core..=) Core.<$> changeLogs,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | City List Response
+--
+-- /See:/ 'newCitiesListResponse' smart constructor.
+data CitiesListResponse = CitiesListResponse
+  { -- | City collection.
+    cities :: (Core.Maybe [City]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CitiesListResponse' with the minimum fields required to make a request.
+newCitiesListResponse ::
+  CitiesListResponse
+newCitiesListResponse =
+  CitiesListResponse {cities = Core.Nothing, kind = Core.Nothing}
+
+instance Core.FromJSON CitiesListResponse where
+  parseJSON =
+    Core.withObject
+      "CitiesListResponse"
+      ( \o ->
+          CitiesListResponse
+            Core.<$> (o Core..:? "cities")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON CitiesListResponse where
+  toJSON CitiesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("cities" Core..=) Core.<$> cities,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains information about a city that can be targeted by ads.
+--
+-- /See:/ 'newCity' smart constructor.
+data City = City
+  { -- | Country code of the country to which this city belongs.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the country to which this city belongs.
+    countryDartId :: (Core.Maybe Core.Int64),
+    -- | DART ID of this city. This is the ID used for targeting and generating reports.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Metro region code of the metro region (DMA) to which this city belongs.
+    metroCode :: (Core.Maybe Core.Text),
+    -- | ID of the metro region (DMA) to which this city belongs.
+    metroDmaId :: (Core.Maybe Core.Int64),
+    -- | Name of this city.
+    name :: (Core.Maybe Core.Text),
+    -- | Region code of the region to which this city belongs.
+    regionCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the region to which this city belongs.
+    regionDartId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'City' with the minimum fields required to make a request.
+newCity ::
+  City
+newCity =
+  City
+    { countryCode = Core.Nothing,
+      countryDartId = Core.Nothing,
+      dartId = Core.Nothing,
+      kind = Core.Nothing,
+      metroCode = Core.Nothing,
+      metroDmaId = Core.Nothing,
+      name = Core.Nothing,
+      regionCode = Core.Nothing,
+      regionDartId = Core.Nothing
+    }
+
+instance Core.FromJSON City where
+  parseJSON =
+    Core.withObject
+      "City"
+      ( \o ->
+          City
+            Core.<$> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "countryDartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metroCode")
+            Core.<*> (o Core..:? "metroDmaId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "regionCode")
+            Core.<*> (o Core..:? "regionDartId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON City where
+  toJSON City {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countryCode" Core..=) Core.<$> countryCode,
+            ("countryDartId" Core..=)
+              Core.. Core.AsText
+              Core.<$> countryDartId,
+            ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("kind" Core..=) Core.<$> kind,
+            ("metroCode" Core..=) Core.<$> metroCode,
+            ("metroDmaId" Core..=) Core.. Core.AsText Core.<$> metroDmaId,
+            ("name" Core..=) Core.<$> name,
+            ("regionCode" Core..=) Core.<$> regionCode,
+            ("regionDartId" Core..=) Core.. Core.AsText Core.<$> regionDartId
+          ]
+      )
+
+-- | Creative Click Tag.
+--
+-- /See:/ 'newClickTag' smart constructor.
+data ClickTag = ClickTag
+  { -- | Parameter value for the specified click tag. This field contains a click-through url.
+    clickThroughUrl :: (Core.Maybe CreativeClickThroughUrl),
+    -- | Advertiser event name associated with the click tag. This field is used by DISPLAY/IMAGE/GALLERY and HTML5/BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    eventName :: (Core.Maybe Core.Text),
+    -- | Parameter name for the specified click tag. For DISPLAY/IMAGE/GALLERY creative assets, this field must match the value of the creative asset\'s creativeAssetId.name field.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ClickTag' with the minimum fields required to make a request.
+newClickTag ::
+  ClickTag
+newClickTag =
+  ClickTag
+    { clickThroughUrl = Core.Nothing,
+      eventName = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON ClickTag where
+  parseJSON =
+    Core.withObject
+      "ClickTag"
+      ( \o ->
+          ClickTag
+            Core.<$> (o Core..:? "clickThroughUrl")
+            Core.<*> (o Core..:? "eventName")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON ClickTag where
+  toJSON ClickTag {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickThroughUrl" Core..=) Core.<$> clickThroughUrl,
+            ("eventName" Core..=) Core.<$> eventName,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Click-through URL
+--
+-- /See:/ 'newClickThroughUrl' smart constructor.
+data ClickThroughUrl = ClickThroughUrl
+  { -- | Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: - If defaultLandingPage is enabled then the campaign\'s default landing page URL is assigned to this field. - If defaultLandingPage is not enabled and a landingPageId is specified then that landing page\'s URL is assigned to this field. - If neither of the above cases apply, then the customClickThroughUrl is assigned to this field.
+    computedClickThroughUrl :: (Core.Maybe Core.Text),
+    -- | Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset.
+    customClickThroughUrl :: (Core.Maybe Core.Text),
+    -- | Whether the campaign default landing page is used.
+    defaultLandingPage :: (Core.Maybe Core.Bool),
+    -- | ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.
+    landingPageId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ClickThroughUrl' with the minimum fields required to make a request.
+newClickThroughUrl ::
+  ClickThroughUrl
+newClickThroughUrl =
+  ClickThroughUrl
+    { computedClickThroughUrl = Core.Nothing,
+      customClickThroughUrl = Core.Nothing,
+      defaultLandingPage = Core.Nothing,
+      landingPageId = Core.Nothing
+    }
+
+instance Core.FromJSON ClickThroughUrl where
+  parseJSON =
+    Core.withObject
+      "ClickThroughUrl"
+      ( \o ->
+          ClickThroughUrl
+            Core.<$> (o Core..:? "computedClickThroughUrl")
+            Core.<*> (o Core..:? "customClickThroughUrl")
+            Core.<*> (o Core..:? "defaultLandingPage")
+            Core.<*> (o Core..:? "landingPageId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON ClickThroughUrl where
+  toJSON ClickThroughUrl {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("computedClickThroughUrl" Core..=)
+              Core.<$> computedClickThroughUrl,
+            ("customClickThroughUrl" Core..=) Core.<$> customClickThroughUrl,
+            ("defaultLandingPage" Core..=) Core.<$> defaultLandingPage,
+            ("landingPageId" Core..=)
+              Core.. Core.AsText
+              Core.<$> landingPageId
+          ]
+      )
+
+-- | Click Through URL Suffix settings.
+--
+-- /See:/ 'newClickThroughUrlSuffixProperties' smart constructor.
+data ClickThroughUrlSuffixProperties = ClickThroughUrlSuffixProperties
+  { -- | Click-through URL suffix to apply to all ads in this entity\'s scope. Must be less than 128 characters long.
+    clickThroughUrlSuffix :: (Core.Maybe Core.Text),
+    -- | Whether this entity should override the inherited click-through URL suffix with its own defined value.
+    overrideInheritedSuffix :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ClickThroughUrlSuffixProperties' with the minimum fields required to make a request.
+newClickThroughUrlSuffixProperties ::
+  ClickThroughUrlSuffixProperties
+newClickThroughUrlSuffixProperties =
+  ClickThroughUrlSuffixProperties
+    { clickThroughUrlSuffix =
+        Core.Nothing,
+      overrideInheritedSuffix = Core.Nothing
+    }
+
+instance Core.FromJSON ClickThroughUrlSuffixProperties where
+  parseJSON =
+    Core.withObject
+      "ClickThroughUrlSuffixProperties"
+      ( \o ->
+          ClickThroughUrlSuffixProperties
+            Core.<$> (o Core..:? "clickThroughUrlSuffix")
+            Core.<*> (o Core..:? "overrideInheritedSuffix")
+      )
+
+instance Core.ToJSON ClickThroughUrlSuffixProperties where
+  toJSON ClickThroughUrlSuffixProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickThroughUrlSuffix" Core..=) Core.<$> clickThroughUrlSuffix,
+            ("overrideInheritedSuffix" Core..=)
+              Core.<$> overrideInheritedSuffix
+          ]
+      )
+
+-- | Companion Click-through override.
+--
+-- /See:/ 'newCompanionClickThroughOverride' smart constructor.
+data CompanionClickThroughOverride = CompanionClickThroughOverride
+  { -- | Click-through URL of this companion click-through override.
+    clickThroughUrl :: (Core.Maybe ClickThroughUrl),
+    -- | ID of the creative for this companion click-through override.
+    creativeId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CompanionClickThroughOverride' with the minimum fields required to make a request.
+newCompanionClickThroughOverride ::
+  CompanionClickThroughOverride
+newCompanionClickThroughOverride =
+  CompanionClickThroughOverride
+    { clickThroughUrl = Core.Nothing,
+      creativeId = Core.Nothing
+    }
+
+instance Core.FromJSON CompanionClickThroughOverride where
+  parseJSON =
+    Core.withObject
+      "CompanionClickThroughOverride"
+      ( \o ->
+          CompanionClickThroughOverride
+            Core.<$> (o Core..:? "clickThroughUrl")
+            Core.<*> (o Core..:? "creativeId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON CompanionClickThroughOverride where
+  toJSON CompanionClickThroughOverride {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickThroughUrl" Core..=) Core.<$> clickThroughUrl,
+            ("creativeId" Core..=) Core.. Core.AsText Core.<$> creativeId
+          ]
+      )
+
+-- | Companion Settings
+--
+-- /See:/ 'newCompanionSetting' smart constructor.
+data CompanionSetting = CompanionSetting
+  { -- | Whether companions are disabled for this placement.
+    companionsDisabled :: (Core.Maybe Core.Bool),
+    -- | Allowlist of companion sizes to be served to this placement. Set this list to null or empty to serve all companion sizes.
+    enabledSizes :: (Core.Maybe [Size]),
+    -- | Whether to serve only static images as companions.
+    imageOnly :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#companionSetting\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CompanionSetting' with the minimum fields required to make a request.
+newCompanionSetting ::
+  CompanionSetting
+newCompanionSetting =
+  CompanionSetting
+    { companionsDisabled = Core.Nothing,
+      enabledSizes = Core.Nothing,
+      imageOnly = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON CompanionSetting where
+  parseJSON =
+    Core.withObject
+      "CompanionSetting"
+      ( \o ->
+          CompanionSetting
+            Core.<$> (o Core..:? "companionsDisabled")
+            Core.<*> (o Core..:? "enabledSizes")
+            Core.<*> (o Core..:? "imageOnly")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON CompanionSetting where
+  toJSON CompanionSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("companionsDisabled" Core..=) Core.<$> companionsDisabled,
+            ("enabledSizes" Core..=) Core.<$> enabledSizes,
+            ("imageOnly" Core..=) Core.<$> imageOnly,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Represents a response to the queryCompatibleFields method. Next ID: 10
+--
+-- /See:/ 'newCompatibleFields' smart constructor.
+data CompatibleFields = CompatibleFields
+  { -- | Contains items that are compatible to be selected for a report of type \"CROSS/DIMENSION/REACH\".
+    crossDimensionReachReportCompatibleFields :: (Core.Maybe CrossDimensionReachReportCompatibleFields),
+    -- | Contains items that are compatible to be selected for a report of type \"CROSS/MEDIA/REACH\".
+    crossMediaReachReportCompatibleFields :: (Core.Maybe CrossMediaReachReportCompatibleFields),
+    -- | Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\".
+    floodlightReportCompatibleFields :: (Core.Maybe FloodlightReportCompatibleFields),
+    -- | The kind of resource this is, in this case dfareporting#compatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Contains items that are compatible to be selected for a report of type \"PATH/TO/CONVERSION\".
+    pathToConversionReportCompatibleFields :: (Core.Maybe PathToConversionReportCompatibleFields),
+    -- | Contains items that are compatible to be selected for a report of type \"REACH\".
+    reachReportCompatibleFields :: (Core.Maybe ReachReportCompatibleFields),
+    -- | Contains items that are compatible to be selected for a report of type \"STANDARD\".
+    reportCompatibleFields :: (Core.Maybe ReportCompatibleFields)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CompatibleFields' with the minimum fields required to make a request.
+newCompatibleFields ::
+  CompatibleFields
+newCompatibleFields =
+  CompatibleFields
+    { crossDimensionReachReportCompatibleFields =
+        Core.Nothing,
+      crossMediaReachReportCompatibleFields = Core.Nothing,
+      floodlightReportCompatibleFields = Core.Nothing,
+      kind = Core.Nothing,
+      pathToConversionReportCompatibleFields = Core.Nothing,
+      reachReportCompatibleFields = Core.Nothing,
+      reportCompatibleFields = Core.Nothing
+    }
+
+instance Core.FromJSON CompatibleFields where
+  parseJSON =
+    Core.withObject
+      "CompatibleFields"
+      ( \o ->
+          CompatibleFields
+            Core.<$> (o Core..:? "crossDimensionReachReportCompatibleFields")
+            Core.<*> (o Core..:? "crossMediaReachReportCompatibleFields")
+            Core.<*> (o Core..:? "floodlightReportCompatibleFields")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "pathToConversionReportCompatibleFields")
+            Core.<*> (o Core..:? "reachReportCompatibleFields")
+            Core.<*> (o Core..:? "reportCompatibleFields")
+      )
+
+instance Core.ToJSON CompatibleFields where
+  toJSON CompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("crossDimensionReachReportCompatibleFields" Core..=)
+              Core.<$> crossDimensionReachReportCompatibleFields,
+            ("crossMediaReachReportCompatibleFields" Core..=)
+              Core.<$> crossMediaReachReportCompatibleFields,
+            ("floodlightReportCompatibleFields" Core..=)
+              Core.<$> floodlightReportCompatibleFields,
+            ("kind" Core..=) Core.<$> kind,
+            ("pathToConversionReportCompatibleFields" Core..=)
+              Core.<$> pathToConversionReportCompatibleFields,
+            ("reachReportCompatibleFields" Core..=)
+              Core.<$> reachReportCompatibleFields,
+            ("reportCompatibleFields" Core..=)
+              Core.<$> reportCompatibleFields
+          ]
+      )
+
+-- | Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.
+--
+-- /See:/ 'newConnectionType' smart constructor.
+data ConnectionType = ConnectionType
+  { -- | ID of this connection type.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this connection type.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConnectionType' with the minimum fields required to make a request.
+newConnectionType ::
+  ConnectionType
+newConnectionType =
+  ConnectionType
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON ConnectionType where
+  parseJSON =
+    Core.withObject
+      "ConnectionType"
+      ( \o ->
+          ConnectionType
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON ConnectionType where
+  toJSON ConnectionType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Connection Type List Response
+--
+-- /See:/ 'newConnectionTypesListResponse' smart constructor.
+data ConnectionTypesListResponse = ConnectionTypesListResponse
+  { -- | Collection of connection types such as broadband and mobile.
+    connectionTypes :: (Core.Maybe [ConnectionType]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConnectionTypesListResponse' with the minimum fields required to make a request.
+newConnectionTypesListResponse ::
+  ConnectionTypesListResponse
+newConnectionTypesListResponse =
+  ConnectionTypesListResponse
+    { connectionTypes = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON ConnectionTypesListResponse where
+  parseJSON =
+    Core.withObject
+      "ConnectionTypesListResponse"
+      ( \o ->
+          ConnectionTypesListResponse
+            Core.<$> (o Core..:? "connectionTypes")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON ConnectionTypesListResponse where
+  toJSON ConnectionTypesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("connectionTypes" Core..=) Core.<$> connectionTypes,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Content Category List Response
+--
+-- /See:/ 'newContentCategoriesListResponse' smart constructor.
+data ContentCategoriesListResponse = ContentCategoriesListResponse
+  { -- | Content category collection.
+    contentCategories :: (Core.Maybe [ContentCategory]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ContentCategoriesListResponse' with the minimum fields required to make a request.
+newContentCategoriesListResponse ::
+  ContentCategoriesListResponse
+newContentCategoriesListResponse =
+  ContentCategoriesListResponse
+    { contentCategories = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON ContentCategoriesListResponse where
+  parseJSON =
+    Core.withObject
+      "ContentCategoriesListResponse"
+      ( \o ->
+          ContentCategoriesListResponse
+            Core.<$> (o Core..:? "contentCategories")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON ContentCategoriesListResponse where
+  toJSON ContentCategoriesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contentCategories" Core..=) Core.<$> contentCategories,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+--
+-- /See:/ 'newContentCategory' smart constructor.
+data ContentCategory = ContentCategory
+  { -- | Account ID of this content category. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | ID of this content category. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ContentCategory' with the minimum fields required to make a request.
+newContentCategory ::
+  ContentCategory
+newContentCategory =
+  ContentCategory
+    { accountId = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON ContentCategory where
+  parseJSON =
+    Core.withObject
+      "ContentCategory"
+      ( \o ->
+          ContentCategory
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON ContentCategory where
+  toJSON ContentCategory {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | A Conversion represents when a user successfully performs a desired action after seeing an ad.
+--
+-- /See:/ 'newConversion' smart constructor.
+data Conversion = Conversion
+  { -- | This represents consent for ad user data.
+    adUserDataConsent :: (Core.Maybe Conversion_AdUserDataConsent),
+    -- | The cart data associated with this conversion.
+    cartData :: (Core.Maybe CartData),
+    -- | Whether this particular request may come from a user under the age of 13, under COPPA compliance.
+    childDirectedTreatment :: (Core.Maybe Core.Bool),
+    -- | Custom floodlight variables.
+    customVariables :: (Core.Maybe [CustomFloodlightVariable]),
+    -- | The display click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId, gclid, and impressionId. This or encryptedUserId or encryptedUserIdCandidates[] or matchId or mobileDeviceId or gclid or impressionId is a required field.
+    dclid :: (Core.Maybe Core.Text),
+    -- | The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[], matchId, mobileDeviceId, gclid, dclid, and impressionId. This or encryptedUserIdCandidates[] or matchId or mobileDeviceId or gclid or dclid or impressionId is a required field.
+    encryptedUserId :: (Core.Maybe Core.Text),
+    -- | A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with INVALID_ARGUMENT error. When set, encryptionInfo should also be specified. This field may only be used when calling batchinsert; it is not supported by batchupdate. This field is mutually exclusive with encryptedUserId, matchId, mobileDeviceId, gclid dclid, and impressionId. This or encryptedUserId or matchId or mobileDeviceId or gclid or dclid or impressionId is a required field.
+    encryptedUserIdCandidates :: (Core.Maybe [Core.Text]),
+    -- | Floodlight Activity ID of this conversion. This is a required field.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | Floodlight Configuration ID of this conversion. This is a required field.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | The Google click ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId, dclid, and impressionId. This or encryptedUserId or encryptedUserIdCandidates[] or matchId or mobileDeviceId or dclid or impressionId is a required field.
+    gclid :: (Core.Maybe Core.Text),
+    -- | The impression ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId, and gclid. One of these identifiers must be set.
+    impressionId :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Whether Limit Ad Tracking is enabled. When set to true, the conversion will be used for reporting but not targeting. This will prevent remarketing.
+    limitAdTracking :: (Core.Maybe Core.Bool),
+    -- | The match ID field. A match ID is your own first-party identifier that has been synced with Google using the match ID feature in Floodlight. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[],mobileDeviceId, gclid, dclid, and impressionId. This or encryptedUserId orencryptedUserIdCandidates[] or mobileDeviceId or gclid or dclid or impressionIdis a required field.
+    matchId :: (Core.Maybe Core.Text),
+    -- | The mobile device ID. This field is mutually exclusive with encryptedUserId, encryptedUserIdCandidates[], matchId, gclid, dclid, and impressionId. This or encryptedUserId or encryptedUserIdCandidates[] or matchId or gclid or dclid or impressionId is a required field.
+    mobileDeviceId :: (Core.Maybe Core.Text),
+    -- | Whether the conversion was for a non personalized ad.
+    nonPersonalizedAd :: (Core.Maybe Core.Bool),
+    -- | The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field.
+    ordinal :: (Core.Maybe Core.Text),
+    -- | The quantity of the conversion. This is a required field.
+    quantity :: (Core.Maybe Core.Int64),
+    -- | The timestamp of conversion, in Unix epoch micros. This is a required field.
+    timestampMicros :: (Core.Maybe Core.Int64),
+    -- | Whether this particular request may come from a user under the age of 16 (may differ by country), under compliance with the European Union\'s General Data Protection Regulation (GDPR).
+    treatmentForUnderage :: (Core.Maybe Core.Bool),
+    -- | The user identifiers to enhance the conversion. The maximum number of user identifiers for each conversion is 5.
+    userIdentifiers :: (Core.Maybe [UserIdentifier]),
+    -- | The value of the conversion. Interpreted in CM360 Floodlight config parent advertiser\'s currency code. This is a required field.
+    value :: (Core.Maybe Core.Double)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Conversion' with the minimum fields required to make a request.
+newConversion ::
+  Conversion
+newConversion =
+  Conversion
+    { adUserDataConsent = Core.Nothing,
+      cartData = Core.Nothing,
+      childDirectedTreatment = Core.Nothing,
+      customVariables = Core.Nothing,
+      dclid = Core.Nothing,
+      encryptedUserId = Core.Nothing,
+      encryptedUserIdCandidates = Core.Nothing,
+      floodlightActivityId = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      gclid = Core.Nothing,
+      impressionId = Core.Nothing,
+      kind = Core.Nothing,
+      limitAdTracking = Core.Nothing,
+      matchId = Core.Nothing,
+      mobileDeviceId = Core.Nothing,
+      nonPersonalizedAd = Core.Nothing,
+      ordinal = Core.Nothing,
+      quantity = Core.Nothing,
+      timestampMicros = Core.Nothing,
+      treatmentForUnderage = Core.Nothing,
+      userIdentifiers = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON Conversion where
+  parseJSON =
+    Core.withObject
+      "Conversion"
+      ( \o ->
+          Conversion
+            Core.<$> (o Core..:? "adUserDataConsent")
+            Core.<*> (o Core..:? "cartData")
+            Core.<*> (o Core..:? "childDirectedTreatment")
+            Core.<*> (o Core..:? "customVariables")
+            Core.<*> (o Core..:? "dclid")
+            Core.<*> (o Core..:? "encryptedUserId")
+            Core.<*> (o Core..:? "encryptedUserIdCandidates")
+            Core.<*> ( o
+                         Core..:? "floodlightActivityId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> ( o
+                         Core..:? "floodlightConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "gclid")
+            Core.<*> (o Core..:? "impressionId")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "limitAdTracking")
+            Core.<*> (o Core..:? "matchId")
+            Core.<*> (o Core..:? "mobileDeviceId")
+            Core.<*> (o Core..:? "nonPersonalizedAd")
+            Core.<*> (o Core..:? "ordinal")
+            Core.<*> (o Core..:? "quantity" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "timestampMicros" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "treatmentForUnderage")
+            Core.<*> (o Core..:? "userIdentifiers")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON Conversion where
+  toJSON Conversion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("adUserDataConsent" Core..=) Core.<$> adUserDataConsent,
+            ("cartData" Core..=) Core.<$> cartData,
+            ("childDirectedTreatment" Core..=) Core.<$> childDirectedTreatment,
+            ("customVariables" Core..=) Core.<$> customVariables,
+            ("dclid" Core..=) Core.<$> dclid,
+            ("encryptedUserId" Core..=) Core.<$> encryptedUserId,
+            ("encryptedUserIdCandidates" Core..=)
+              Core.<$> encryptedUserIdCandidates,
+            ("floodlightActivityId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightActivityId,
+            ("floodlightConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightConfigurationId,
+            ("gclid" Core..=) Core.<$> gclid,
+            ("impressionId" Core..=) Core.<$> impressionId,
+            ("kind" Core..=) Core.<$> kind,
+            ("limitAdTracking" Core..=) Core.<$> limitAdTracking,
+            ("matchId" Core..=) Core.<$> matchId,
+            ("mobileDeviceId" Core..=) Core.<$> mobileDeviceId,
+            ("nonPersonalizedAd" Core..=) Core.<$> nonPersonalizedAd,
+            ("ordinal" Core..=) Core.<$> ordinal,
+            ("quantity" Core..=) Core.. Core.AsText Core.<$> quantity,
+            ("timestampMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> timestampMicros,
+            ("treatmentForUnderage" Core..=) Core.<$> treatmentForUnderage,
+            ("userIdentifiers" Core..=) Core.<$> userIdentifiers,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | The error code and description for a conversion that failed to insert or update.
+--
+-- /See:/ 'newConversionError' smart constructor.
+data ConversionError = ConversionError
+  { -- | The error code.
+    code :: (Core.Maybe ConversionError_Code),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".
+    kind :: (Core.Maybe Core.Text),
+    -- | A description of the error.
+    message :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionError' with the minimum fields required to make a request.
+newConversionError ::
+  ConversionError
+newConversionError =
+  ConversionError
+    { code = Core.Nothing,
+      kind = Core.Nothing,
+      message = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionError where
+  parseJSON =
+    Core.withObject
+      "ConversionError"
+      ( \o ->
+          ConversionError
+            Core.<$> (o Core..:? "code")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "message")
+      )
+
+instance Core.ToJSON ConversionError where
+  toJSON ConversionError {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("code" Core..=) Core.<$> code,
+            ("kind" Core..=) Core.<$> kind,
+            ("message" Core..=) Core.<$> message
+          ]
+      )
+
+-- | The original conversion that was inserted or updated and whether there were any errors.
+--
+-- /See:/ 'newConversionStatus' smart constructor.
+data ConversionStatus = ConversionStatus
+  { -- | The original conversion that was inserted or updated.
+    conversion :: (Core.Maybe Conversion),
+    -- | A list of errors related to this conversion.
+    errors :: (Core.Maybe [ConversionError]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionStatus' with the minimum fields required to make a request.
+newConversionStatus ::
+  ConversionStatus
+newConversionStatus =
+  ConversionStatus
+    { conversion = Core.Nothing,
+      errors = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionStatus where
+  parseJSON =
+    Core.withObject
+      "ConversionStatus"
+      ( \o ->
+          ConversionStatus
+            Core.<$> (o Core..:? "conversion")
+            Core.<*> (o Core..:? "errors")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON ConversionStatus where
+  toJSON ConversionStatus {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversion" Core..=) Core.<$> conversion,
+            ("errors" Core..=) Core.<$> errors,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Insert Conversions Request.
+--
+-- /See:/ 'newConversionsBatchInsertRequest' smart constructor.
+data ConversionsBatchInsertRequest = ConversionsBatchInsertRequest
+  { -- | The set of conversions to insert.
+    conversions :: (Core.Maybe [Conversion]),
+    -- | Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used.
+    encryptionInfo :: (Core.Maybe EncryptionInfo),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionsBatchInsertRequest' with the minimum fields required to make a request.
+newConversionsBatchInsertRequest ::
+  ConversionsBatchInsertRequest
+newConversionsBatchInsertRequest =
+  ConversionsBatchInsertRequest
+    { conversions = Core.Nothing,
+      encryptionInfo = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionsBatchInsertRequest where
+  parseJSON =
+    Core.withObject
+      "ConversionsBatchInsertRequest"
+      ( \o ->
+          ConversionsBatchInsertRequest
+            Core.<$> (o Core..:? "conversions")
+            Core.<*> (o Core..:? "encryptionInfo")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON ConversionsBatchInsertRequest where
+  toJSON ConversionsBatchInsertRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversions" Core..=) Core.<$> conversions,
+            ("encryptionInfo" Core..=) Core.<$> encryptionInfo,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Insert Conversions Response.
+--
+-- /See:/ 'newConversionsBatchInsertResponse' smart constructor.
+data ConversionsBatchInsertResponse = ConversionsBatchInsertResponse
+  { -- | Indicates that some or all conversions failed to insert.
+    hasFailures :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The insert status of each conversion. Statuses are returned in the same order that conversions are inserted.
+    status :: (Core.Maybe [ConversionStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionsBatchInsertResponse' with the minimum fields required to make a request.
+newConversionsBatchInsertResponse ::
+  ConversionsBatchInsertResponse
+newConversionsBatchInsertResponse =
+  ConversionsBatchInsertResponse
+    { hasFailures = Core.Nothing,
+      kind = Core.Nothing,
+      status = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionsBatchInsertResponse where
+  parseJSON =
+    Core.withObject
+      "ConversionsBatchInsertResponse"
+      ( \o ->
+          ConversionsBatchInsertResponse
+            Core.<$> (o Core..:? "hasFailures")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "status")
+      )
+
+instance Core.ToJSON ConversionsBatchInsertResponse where
+  toJSON ConversionsBatchInsertResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("hasFailures" Core..=) Core.<$> hasFailures,
+            ("kind" Core..=) Core.<$> kind,
+            ("status" Core..=) Core.<$> status
+          ]
+      )
+
+-- | Update Conversions Request.
+--
+-- /See:/ 'newConversionsBatchUpdateRequest' smart constructor.
+data ConversionsBatchUpdateRequest = ConversionsBatchUpdateRequest
+  { -- | The set of conversions to update.
+    conversions :: (Core.Maybe [Conversion]),
+    -- | Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used.
+    encryptionInfo :: (Core.Maybe EncryptionInfo),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateRequest\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionsBatchUpdateRequest' with the minimum fields required to make a request.
+newConversionsBatchUpdateRequest ::
+  ConversionsBatchUpdateRequest
+newConversionsBatchUpdateRequest =
+  ConversionsBatchUpdateRequest
+    { conversions = Core.Nothing,
+      encryptionInfo = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionsBatchUpdateRequest where
+  parseJSON =
+    Core.withObject
+      "ConversionsBatchUpdateRequest"
+      ( \o ->
+          ConversionsBatchUpdateRequest
+            Core.<$> (o Core..:? "conversions")
+            Core.<*> (o Core..:? "encryptionInfo")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON ConversionsBatchUpdateRequest where
+  toJSON ConversionsBatchUpdateRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversions" Core..=) Core.<$> conversions,
+            ("encryptionInfo" Core..=) Core.<$> encryptionInfo,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Update Conversions Response.
+--
+-- /See:/ 'newConversionsBatchUpdateResponse' smart constructor.
+data ConversionsBatchUpdateResponse = ConversionsBatchUpdateResponse
+  { -- | Indicates that some or all conversions failed to update.
+    hasFailures :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchUpdateResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The update status of each conversion. Statuses are returned in the same order that conversions are updated.
+    status :: (Core.Maybe [ConversionStatus])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConversionsBatchUpdateResponse' with the minimum fields required to make a request.
+newConversionsBatchUpdateResponse ::
+  ConversionsBatchUpdateResponse
+newConversionsBatchUpdateResponse =
+  ConversionsBatchUpdateResponse
+    { hasFailures = Core.Nothing,
+      kind = Core.Nothing,
+      status = Core.Nothing
+    }
+
+instance Core.FromJSON ConversionsBatchUpdateResponse where
+  parseJSON =
+    Core.withObject
+      "ConversionsBatchUpdateResponse"
+      ( \o ->
+          ConversionsBatchUpdateResponse
+            Core.<$> (o Core..:? "hasFailures")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "status")
+      )
+
+instance Core.ToJSON ConversionsBatchUpdateResponse where
+  toJSON ConversionsBatchUpdateResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("hasFailures" Core..=) Core.<$> hasFailures,
+            ("kind" Core..=) Core.<$> kind,
+            ("status" Core..=) Core.<$> status
+          ]
+      )
+
+-- | Country List Response
+--
+-- /See:/ 'newCountriesListResponse' smart constructor.
+data CountriesListResponse = CountriesListResponse
+  { -- | Country collection.
+    countries :: (Core.Maybe [Country]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CountriesListResponse' with the minimum fields required to make a request.
+newCountriesListResponse ::
+  CountriesListResponse
+newCountriesListResponse =
+  CountriesListResponse
+    { countries = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON CountriesListResponse where
+  parseJSON =
+    Core.withObject
+      "CountriesListResponse"
+      ( \o ->
+          CountriesListResponse
+            Core.<$> (o Core..:? "countries")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON CountriesListResponse where
+  toJSON CountriesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countries" Core..=) Core.<$> countries,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains information about a country that can be targeted by ads.
+--
+-- /See:/ 'newCountry' smart constructor.
+data Country = Country
+  { -- | Country code.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of this country. This is the ID used for targeting and generating reports.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this country.
+    name :: (Core.Maybe Core.Text),
+    -- | Whether ad serving supports secure servers in this country.
+    sslEnabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Country' with the minimum fields required to make a request.
+newCountry ::
+  Country
+newCountry =
+  Country
+    { countryCode = Core.Nothing,
+      dartId = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      sslEnabled = Core.Nothing
+    }
+
+instance Core.FromJSON Country where
+  parseJSON =
+    Core.withObject
+      "Country"
+      ( \o ->
+          Country
+            Core.<$> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "sslEnabled")
+      )
+
+instance Core.ToJSON Country where
+  toJSON Country {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countryCode" Core..=) Core.<$> countryCode,
+            ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("sslEnabled" Core..=) Core.<$> sslEnabled
+          ]
+      )
+
+-- | Contains properties of a Creative.
+--
+-- /See:/ 'newCreative' smart constructor.
+data Creative = Creative
+  { -- | Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether the creative is active. Applicable to all creative types.
+    active :: (Core.Maybe Core.Bool),
+    -- | Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID.
+    adParameters :: (Core.Maybe Core.Text),
+    -- | Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    adTagKeys :: (Core.Maybe [Core.Text]),
+    -- | Additional sizes associated with a responsive creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. Applicable to DISPLAY creatives when the primary asset type is HTML_IMAGE.
+    additionalSizes :: (Core.Maybe [Size]),
+    -- | Required. Advertiser ID of this creative. This is a required field. Applicable to all creative types.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE.
+    allowScriptAccess :: (Core.Maybe Core.Bool),
+    -- | Whether the creative is archived. Applicable to all creative types.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    artworkType :: (Core.Maybe Creative_ArtworkType),
+    -- | Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.
+    authoringSource :: (Core.Maybe Creative_AuthoringSource),
+    -- | Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
+    authoringTool :: (Core.Maybe Creative_AuthoringTool),
+    -- | Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY.
+    autoAdvanceImages :: (Core.Maybe Core.Bool),
+    -- | The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE.
+    backgroundColor :: (Core.Maybe Core.Text),
+    -- | Click-through URL for backup image. Applicable to ENHANCED/BANNER when the primary asset type is not HTML/IMAGE.
+    backupImageClickThroughUrl :: (Core.Maybe CreativeClickThroughUrl),
+    -- | List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by Campaign Manager for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets\' detected features. Applicable to the following creative types: HTML5/BANNER. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    backupImageFeatures :: (Core.Maybe [Creative_BackupImageFeaturesItem]),
+    -- | Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE.
+    backupImageReportingLabel :: (Core.Maybe Core.Text),
+    -- | Target window for backup image. Applicable to the following creative types: FLASH/INPAGE and HTML5/BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
+    backupImageTargetWindow :: (Core.Maybe TargetWindow),
+    -- | Click tags of the creative. For DISPLAY, FLASH/INPAGE, and HTML5/BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY/IMAGE/GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY, FLASH/INPAGE, HTML5/BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
+    clickTags :: (Core.Maybe [ClickTag]),
+    -- | Industry standard ID assigned to creative for reach and frequency. Applicable to INSTREAM/VIDEO/REDIRECT creatives.
+    commercialId :: (Core.Maybe Core.Text),
+    -- | List of companion creatives assigned to an in-Stream video creative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID, all INSTREAM/AUDIO and all INSTREAM/VIDEO with dynamicAssetSelection set to false.
+    companionCreatives :: (Core.Maybe [Core.Int64]),
+    -- | Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY/INTERSTITIAL instead. IN/STREAM/VIDEO refers to rendering in in-stream video ads developed with the VAST standard. IN/STREAM/AUDIO refers to rendering in in-stream audio ads developed with the VAST standard. Applicable to all creative types. Acceptable values are: - \"APP\" - \"APP/INTERSTITIAL\" - \"IN/STREAM/VIDEO\" - \"IN/STREAM/AUDIO\" - \"DISPLAY\" - \"DISPLAY_INTERSTITIAL\"
+    compatibility :: (Core.Maybe [Creative_CompatibilityItem]),
+    -- | Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don\'t want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH/INPAGE. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    convertFlashToHtml5 :: (Core.Maybe Core.Bool),
+    -- | List of counter events configured for the creative. For DISPLAY/IMAGE/GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY, all RICH_MEDIA, and all VPAID.
+    counterCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | Required if dynamicAssetSelection is true.
+    creativeAssetSelection :: (Core.Maybe CreativeAssetSelection),
+    -- | Assets associated with a creative. Applicable to all but the following creative types: INTERNAL/REDIRECT, INTERSTITIAL/INTERNAL_REDIRECT, and REDIRECT
+    creativeAssets :: (Core.Maybe [CreativeAsset]),
+    -- | Creative field assignments for this creative. Applicable to all creative types.
+    creativeFieldAssignments :: (Core.Maybe [CreativeFieldAssignment]),
+    -- | Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    customKeyValues :: (Core.Maybe [Core.Text]),
+    -- | Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives.
+    dynamicAssetSelection :: (Core.Maybe Core.Bool),
+    -- | List of exit events configured for the creative. For DISPLAY and DISPLAY/IMAGE/GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY, all RICH/MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    exitCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE.
+    fsCommand :: (Core.Maybe FsCommand),
+    -- | HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is true. Applicable to the following creative types: all CUSTOM, FLASH/INPAGE, and HTML5/BANNER, and all RICH_MEDIA.
+    htmlCode :: (Core.Maybe Core.Text),
+    -- | Whether HTML code is generated by Campaign Manager or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH/INPAGE and HTML5/BANNER.
+    htmlCodeLocked :: (Core.Maybe Core.Bool),
+    -- | ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Creative last modification information. This is a read-only field. Applicable to all creative types.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    latestTraffickedCreativeId :: (Core.Maybe Core.Int64),
+    -- | Description of the audio or video ad. Applicable to the following creative types: all INSTREAM/VIDEO, INSTREAM/AUDIO, and all VPAID.
+    mediaDescription :: (Core.Maybe Core.Text),
+    -- | Creative audio or video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM/VIDEO, INSTREAM/AUDIO, all RICH_MEDIA, and all VPAID.
+    mediaDuration :: (Core.Maybe Core.Double),
+    -- | Required. Name of the creative. This must be less than 256 characters long. Applicable to all creative types.
+    name :: (Core.Maybe Core.Text),
+    -- | Online behavioral advertising icon to be added to the creative. Applicable to the following creative types: all INSTREAM_VIDEO.
+    obaIcon :: (Core.Maybe ObaIcon),
+    -- | Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA.
+    overrideCss :: (Core.Maybe Core.Text),
+    -- | Amount of time to play the video before counting a view. Applicable to the following creative types: all INSTREAM_VIDEO.
+    progressOffset :: (Core.Maybe VideoOffset),
+    -- | URL of hosted image or hosted video or another ad tag. For INSTREAM/VIDEO/REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY/REDIRECT, INTERNAL/REDIRECT, INTERSTITIAL/INTERNAL/REDIRECT, and INSTREAM/VIDEO/REDIRECT
+    redirectUrl :: (Core.Maybe Core.Text),
+    -- | ID of current rendering version. This is a read-only field. Applicable to all creative types.
+    renderingId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types.
+    renderingIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    requiredFlashPluginVersion :: (Core.Maybe Core.Text),
+    -- | The internal Flash version for this creative as calculated by Studio. This is a read-only field. Applicable to the following creative types: FLASH/INPAGE all RICH/MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
+    requiredFlashVersion :: (Core.Maybe Core.Int32),
+    -- | Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH/INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML/IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY/IMAGE/GALLERY, FLASH/INPAGE, HTML5/BANNER, IMAGE, and all RICH_MEDIA.
+    size :: (Core.Maybe Size),
+    -- | Amount of time to play the video before the skip button appears. Applicable to the following creative types: all INSTREAM_VIDEO.
+    skipOffset :: (Core.Maybe VideoOffset),
+    -- | Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.
+    skippable :: (Core.Maybe Core.Bool),
+    -- | Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Whether creative should be treated as SSL compliant even if the system scan shows it\'s not. Applicable to all creative types.
+    sslOverride :: (Core.Maybe Core.Bool),
+    -- | Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    studioAdvertiserId :: (Core.Maybe Core.Int64),
+    -- | Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    studioCreativeId :: (Core.Maybe Core.Int64),
+    -- | Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    studioTraffickedCreativeId :: (Core.Maybe Core.Int64),
+    -- | Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA.
+    thirdPartyBackupImageImpressionsUrl :: (Core.Maybe Core.Text),
+    -- | Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA.
+    thirdPartyRichMediaImpressionsUrl :: (Core.Maybe Core.Text),
+    -- | Third-party URLs for tracking in-stream creative events. Applicable to the following creative types: all INSTREAM/VIDEO, all INSTREAM/AUDIO, and all VPAID.
+    thirdPartyUrls :: (Core.Maybe [ThirdPartyTrackingUrl]),
+    -- | List of timer events configured for the creative. For DISPLAY/IMAGE/GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY, all RICH/MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML/IMAGE.
+    timerCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+    totalFileSize :: (Core.Maybe Core.Int64),
+    -- | Required. Type of this creative. Applicable to all creative types. /Note:/ FLASH/INPAGE, HTML5/BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.
+    type' :: (Core.Maybe Creative_Type),
+    -- | A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM/AUDIO and INSTREAM/VIDEO and VPAID.
+    universalAdId :: (Core.Maybe UniversalAdId),
+    -- | The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.
+    version :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Creative' with the minimum fields required to make a request.
+newCreative ::
+  Creative
+newCreative =
+  Creative
+    { accountId = Core.Nothing,
+      active = Core.Nothing,
+      adParameters = Core.Nothing,
+      adTagKeys = Core.Nothing,
+      additionalSizes = Core.Nothing,
+      advertiserId = Core.Nothing,
+      allowScriptAccess = Core.Nothing,
+      archived = Core.Nothing,
+      artworkType = Core.Nothing,
+      authoringSource = Core.Nothing,
+      authoringTool = Core.Nothing,
+      autoAdvanceImages = Core.Nothing,
+      backgroundColor = Core.Nothing,
+      backupImageClickThroughUrl = Core.Nothing,
+      backupImageFeatures = Core.Nothing,
+      backupImageReportingLabel = Core.Nothing,
+      backupImageTargetWindow = Core.Nothing,
+      clickTags = Core.Nothing,
+      commercialId = Core.Nothing,
+      companionCreatives = Core.Nothing,
+      compatibility = Core.Nothing,
+      convertFlashToHtml5 = Core.Nothing,
+      counterCustomEvents = Core.Nothing,
+      creativeAssetSelection = Core.Nothing,
+      creativeAssets = Core.Nothing,
+      creativeFieldAssignments = Core.Nothing,
+      customKeyValues = Core.Nothing,
+      dynamicAssetSelection = Core.Nothing,
+      exitCustomEvents = Core.Nothing,
+      fsCommand = Core.Nothing,
+      htmlCode = Core.Nothing,
+      htmlCodeLocked = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      latestTraffickedCreativeId = Core.Nothing,
+      mediaDescription = Core.Nothing,
+      mediaDuration = Core.Nothing,
+      name = Core.Nothing,
+      obaIcon = Core.Nothing,
+      overrideCss = Core.Nothing,
+      progressOffset = Core.Nothing,
+      redirectUrl = Core.Nothing,
+      renderingId = Core.Nothing,
+      renderingIdDimensionValue = Core.Nothing,
+      requiredFlashPluginVersion = Core.Nothing,
+      requiredFlashVersion = Core.Nothing,
+      size = Core.Nothing,
+      skipOffset = Core.Nothing,
+      skippable = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      sslOverride = Core.Nothing,
+      studioAdvertiserId = Core.Nothing,
+      studioCreativeId = Core.Nothing,
+      studioTraffickedCreativeId = Core.Nothing,
+      subaccountId = Core.Nothing,
+      thirdPartyBackupImageImpressionsUrl = Core.Nothing,
+      thirdPartyRichMediaImpressionsUrl = Core.Nothing,
+      thirdPartyUrls = Core.Nothing,
+      timerCustomEvents = Core.Nothing,
+      totalFileSize = Core.Nothing,
+      type' = Core.Nothing,
+      universalAdId = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance Core.FromJSON Creative where
+  parseJSON =
+    Core.withObject
+      "Creative"
+      ( \o ->
+          Creative
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "adParameters")
+            Core.<*> (o Core..:? "adTagKeys")
+            Core.<*> (o Core..:? "additionalSizes")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "allowScriptAccess")
+            Core.<*> (o Core..:? "archived")
+            Core.<*> (o Core..:? "artworkType")
+            Core.<*> (o Core..:? "authoringSource")
+            Core.<*> (o Core..:? "authoringTool")
+            Core.<*> (o Core..:? "autoAdvanceImages")
+            Core.<*> (o Core..:? "backgroundColor")
+            Core.<*> (o Core..:? "backupImageClickThroughUrl")
+            Core.<*> (o Core..:? "backupImageFeatures")
+            Core.<*> (o Core..:? "backupImageReportingLabel")
+            Core.<*> (o Core..:? "backupImageTargetWindow")
+            Core.<*> (o Core..:? "clickTags")
+            Core.<*> (o Core..:? "commercialId")
+            Core.<*> ( o
+                         Core..:? "companionCreatives"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "compatibility")
+            Core.<*> (o Core..:? "convertFlashToHtml5")
+            Core.<*> (o Core..:? "counterCustomEvents")
+            Core.<*> (o Core..:? "creativeAssetSelection")
+            Core.<*> (o Core..:? "creativeAssets")
+            Core.<*> (o Core..:? "creativeFieldAssignments")
+            Core.<*> (o Core..:? "customKeyValues")
+            Core.<*> (o Core..:? "dynamicAssetSelection")
+            Core.<*> (o Core..:? "exitCustomEvents")
+            Core.<*> (o Core..:? "fsCommand")
+            Core.<*> (o Core..:? "htmlCode")
+            Core.<*> (o Core..:? "htmlCodeLocked")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> ( o
+                         Core..:? "latestTraffickedCreativeId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "mediaDescription")
+            Core.<*> (o Core..:? "mediaDuration")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "obaIcon")
+            Core.<*> (o Core..:? "overrideCss")
+            Core.<*> (o Core..:? "progressOffset")
+            Core.<*> (o Core..:? "redirectUrl")
+            Core.<*> (o Core..:? "renderingId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "renderingIdDimensionValue")
+            Core.<*> (o Core..:? "requiredFlashPluginVersion")
+            Core.<*> (o Core..:? "requiredFlashVersion")
+            Core.<*> (o Core..:? "size")
+            Core.<*> (o Core..:? "skipOffset")
+            Core.<*> (o Core..:? "skippable")
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "sslOverride")
+            Core.<*> ( o
+                         Core..:? "studioAdvertiserId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "studioCreativeId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "studioTraffickedCreativeId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "thirdPartyBackupImageImpressionsUrl")
+            Core.<*> (o Core..:? "thirdPartyRichMediaImpressionsUrl")
+            Core.<*> (o Core..:? "thirdPartyUrls")
+            Core.<*> (o Core..:? "timerCustomEvents")
+            Core.<*> (o Core..:? "totalFileSize" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "universalAdId")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance Core.ToJSON Creative where
+  toJSON Creative {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("active" Core..=) Core.<$> active,
+            ("adParameters" Core..=) Core.<$> adParameters,
+            ("adTagKeys" Core..=) Core.<$> adTagKeys,
+            ("additionalSizes" Core..=) Core.<$> additionalSizes,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("allowScriptAccess" Core..=) Core.<$> allowScriptAccess,
+            ("archived" Core..=) Core.<$> archived,
+            ("artworkType" Core..=) Core.<$> artworkType,
+            ("authoringSource" Core..=) Core.<$> authoringSource,
+            ("authoringTool" Core..=) Core.<$> authoringTool,
+            ("autoAdvanceImages" Core..=) Core.<$> autoAdvanceImages,
+            ("backgroundColor" Core..=) Core.<$> backgroundColor,
+            ("backupImageClickThroughUrl" Core..=)
+              Core.<$> backupImageClickThroughUrl,
+            ("backupImageFeatures" Core..=) Core.<$> backupImageFeatures,
+            ("backupImageReportingLabel" Core..=)
+              Core.<$> backupImageReportingLabel,
+            ("backupImageTargetWindow" Core..=)
+              Core.<$> backupImageTargetWindow,
+            ("clickTags" Core..=) Core.<$> clickTags,
+            ("commercialId" Core..=) Core.<$> commercialId,
+            ("companionCreatives" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> companionCreatives,
+            ("compatibility" Core..=) Core.<$> compatibility,
+            ("convertFlashToHtml5" Core..=) Core.<$> convertFlashToHtml5,
+            ("counterCustomEvents" Core..=) Core.<$> counterCustomEvents,
+            ("creativeAssetSelection" Core..=) Core.<$> creativeAssetSelection,
+            ("creativeAssets" Core..=) Core.<$> creativeAssets,
+            ("creativeFieldAssignments" Core..=)
+              Core.<$> creativeFieldAssignments,
+            ("customKeyValues" Core..=) Core.<$> customKeyValues,
+            ("dynamicAssetSelection" Core..=) Core.<$> dynamicAssetSelection,
+            ("exitCustomEvents" Core..=) Core.<$> exitCustomEvents,
+            ("fsCommand" Core..=) Core.<$> fsCommand,
+            ("htmlCode" Core..=) Core.<$> htmlCode,
+            ("htmlCodeLocked" Core..=) Core.<$> htmlCodeLocked,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("latestTraffickedCreativeId" Core..=)
+              Core.. Core.AsText
+              Core.<$> latestTraffickedCreativeId,
+            ("mediaDescription" Core..=) Core.<$> mediaDescription,
+            ("mediaDuration" Core..=) Core.<$> mediaDuration,
+            ("name" Core..=) Core.<$> name,
+            ("obaIcon" Core..=) Core.<$> obaIcon,
+            ("overrideCss" Core..=) Core.<$> overrideCss,
+            ("progressOffset" Core..=) Core.<$> progressOffset,
+            ("redirectUrl" Core..=) Core.<$> redirectUrl,
+            ("renderingId" Core..=) Core.. Core.AsText Core.<$> renderingId,
+            ("renderingIdDimensionValue" Core..=)
+              Core.<$> renderingIdDimensionValue,
+            ("requiredFlashPluginVersion" Core..=)
+              Core.<$> requiredFlashPluginVersion,
+            ("requiredFlashVersion" Core..=) Core.<$> requiredFlashVersion,
+            ("size" Core..=) Core.<$> size,
+            ("skipOffset" Core..=) Core.<$> skipOffset,
+            ("skippable" Core..=) Core.<$> skippable,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("sslOverride" Core..=) Core.<$> sslOverride,
+            ("studioAdvertiserId" Core..=)
+              Core.. Core.AsText
+              Core.<$> studioAdvertiserId,
+            ("studioCreativeId" Core..=)
+              Core.. Core.AsText
+              Core.<$> studioCreativeId,
+            ("studioTraffickedCreativeId" Core..=)
+              Core.. Core.AsText
+              Core.<$> studioTraffickedCreativeId,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("thirdPartyBackupImageImpressionsUrl" Core..=)
+              Core.<$> thirdPartyBackupImageImpressionsUrl,
+            ("thirdPartyRichMediaImpressionsUrl" Core..=)
+              Core.<$> thirdPartyRichMediaImpressionsUrl,
+            ("thirdPartyUrls" Core..=) Core.<$> thirdPartyUrls,
+            ("timerCustomEvents" Core..=) Core.<$> timerCustomEvents,
+            ("totalFileSize" Core..=)
+              Core.. Core.AsText
+              Core.<$> totalFileSize,
+            ("type" Core..=) Core.<$> type',
+            ("universalAdId" Core..=) Core.<$> universalAdId,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | Creative Asset.
+--
+-- /See:/ 'newCreativeAsset' smart constructor.
+data CreativeAsset = CreativeAsset
+  { -- | Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH/INPAGE. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    actionScript3 :: (Core.Maybe Core.Bool),
+    -- | Whether the video or audio asset is active. This is a read-only field for VPAID/NON/LINEAR/VIDEO assets. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM_VIDEO and all VPAID.
+    active :: (Core.Maybe Core.Bool),
+    -- | Additional sizes associated with this creative asset. HTML5 asset generated by compatible software such as GWD will be able to support more sizes this creative asset can render.
+    additionalSizes :: (Core.Maybe [Size]),
+    -- | Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH/MEDIA/DISPLAY/MULTI/FLOATING_INTERSTITIAL .
+    alignment :: (Core.Maybe CreativeAsset_Alignment),
+    -- | Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+    artworkType :: (Core.Maybe CreativeAsset_ArtworkType),
+    -- | Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
+    assetIdentifier :: (Core.Maybe CreativeAssetId),
+    -- | Audio stream bit rate in kbps. This is a read-only field. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and all VPAID.
+    audioBitRate :: (Core.Maybe Core.Int32),
+    -- | Audio sample bit rate in hertz. This is a read-only field. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and all VPAID.
+    audioSampleRate :: (Core.Maybe Core.Int32),
+    -- | Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA.
+    backupImageExit :: (Core.Maybe CreativeCustomEvent),
+    -- | Detected bit-rate for audio or video asset. This is a read-only field. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and all VPAID.
+    bitRate :: (Core.Maybe Core.Int32),
+    -- | Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.
+    childAssetType :: (Core.Maybe CreativeAsset_ChildAssetType),
+    -- | Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH/MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET/DISPLAY/TYPE/EXPANDING or ASSET/DISPLAY/TYPE/PEEL/DOWN.
+    collapsedSize :: (Core.Maybe Size),
+    -- | List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.
+    companionCreativeIds :: (Core.Maybe [Core.Int64]),
+    -- | Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA. Value must be greater than or equal to 0.
+    customStartTimeValue :: (Core.Maybe Core.Int32),
+    -- | List of feature dependencies for the creative asset that are detected by Campaign Manager. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5/BANNER. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE.
+    detectedFeatures :: (Core.Maybe [CreativeAsset_DetectedFeaturesItem]),
+    -- | Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+    displayType :: (Core.Maybe CreativeAsset_DisplayType),
+    -- | Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and VPAID/LINEAR/VIDEO. Value must be greater than or equal to 1.
+    duration :: (Core.Maybe Core.Int32),
+    -- | Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.
+    durationType :: (Core.Maybe CreativeAsset_DurationType),
+    -- | Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
+    expandedDimension :: (Core.Maybe Size),
+    -- | File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
+    fileSize :: (Core.Maybe Core.Int64),
+    -- | Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH/INPAGE, all RICH/MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
+    flashVersion :: (Core.Maybe Core.Int32),
+    -- | Video frame rate for video asset in frames per second. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
+    frameRate :: (Core.Maybe Core.Double),
+    -- | Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
+    hideFlashObjects :: (Core.Maybe Core.Bool),
+    -- | Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA.
+    hideSelectionBoxes :: (Core.Maybe Core.Bool),
+    -- | Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+    horizontallyLocked :: (Core.Maybe Core.Bool),
+    -- | Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the asset. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Detected duration for audio or video asset. This is a read-only field. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and all VPAID.
+    mediaDuration :: (Core.Maybe Core.Double),
+    -- | Detected MIME type for audio or video asset. This is a read-only field. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and all VPAID.
+    mimeType :: (Core.Maybe Core.Text),
+    -- | Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH/MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET/DISPLAY/TYPE/EXPANDING or ASSET/DISPLAY/TYPE/PEEL/DOWN.
+    offset :: (Core.Maybe OffsetPosition),
+    -- | Orientation of video asset. This is a read-only, auto-generated field.
+    orientation :: (Core.Maybe CreativeAsset_Orientation),
+    -- | Whether the backup asset is original or changed by the user in Campaign Manager. Applicable to the following creative types: all RICH_MEDIA.
+    originalBackup :: (Core.Maybe Core.Bool),
+    -- | Whether this asset is used as a polite load asset.
+    politeLoad :: (Core.Maybe Core.Bool),
+    -- | Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA.
+    position :: (Core.Maybe OffsetPosition),
+    -- | Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+    positionLeftUnit :: (Core.Maybe CreativeAsset_PositionLeftUnit),
+    -- | Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET/DISPLAY/TYPE/OVERLAY. Applicable to the following creative types: all RICH/MEDIA.
+    positionTopUnit :: (Core.Maybe CreativeAsset_PositionTopUnit),
+    -- | Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
+    progressiveServingUrl :: (Core.Maybe Core.Text),
+    -- | Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.
+    pushdown :: (Core.Maybe Core.Bool),
+    -- | Pushdown duration in seconds for an asset. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height. Acceptable values are 0 to 9.99, inclusive.
+    pushdownDuration :: (Core.Maybe Core.Double),
+    -- | Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING/TEXT. This is a required field. PRIMARY applies to DISPLAY, FLASH/INPAGE, HTML5/BANNER, IMAGE, DISPLAY/IMAGE/GALLERY, all RICH/MEDIA (which may contain multiple primary assets), and all VPAID creatives. BACKUP/IMAGE applies to FLASH/INPAGE, HTML5/BANNER, all RICH/MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE. ADDITIONAL/IMAGE and ADDITIONAL/FLASH apply to FLASH/INPAGE creatives. OTHER refers to assets from sources other than Campaign Manager, such as Studio uploaded assets, applicable to all RICH/MEDIA and all VPAID creatives. PARENT/VIDEO refers to videos uploaded by the user in Campaign Manager and is applicable to INSTREAM/VIDEO and VPAID/LINEAR/VIDEO creatives. TRANSCODED/VIDEO refers to videos transcoded by Campaign Manager from PARENT/VIDEO assets and is applicable to INSTREAM/VIDEO and VPAID/LINEAR/VIDEO creatives. ALTERNATE/VIDEO
+    -- refers to the Campaign Manager representation of child asset videos from Studio, and is applicable to VPAID/LINEAR/VIDEO creatives. These cannot be added or removed within Campaign Manager. For VPAID/LINEAR/VIDEO creatives, PARENT/VIDEO, TRANSCODED/VIDEO and ALTERNATE/VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT/VIDEO assets can be added or removed for an INSTREAM/VIDEO or VPAID/LINEAR/VIDEO creative. PARENT/AUDIO refers to audios uploaded by the user in Campaign Manager and is applicable to INSTREAM/AUDIO creatives. TRANSCODED/AUDIO refers to audios transcoded by Campaign Manager from PARENT/AUDIO assets and is applicable to INSTREAM_AUDIO creatives.
+    role' :: (Core.Maybe CreativeAsset_Role),
+    -- | Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH/INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY/IMAGE/GALLERY, FLASH/INPAGE, HTML5/BANNER, IMAGE, and all RICH/MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
+    size :: (Core.Maybe Size),
+    -- | Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
+    startTimeType :: (Core.Maybe CreativeAsset_StartTimeType),
+    -- | Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.
+    streamingServingUrl :: (Core.Maybe Core.Text),
+    -- | Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.
+    transparency :: (Core.Maybe Core.Bool),
+    -- | Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+    verticallyLocked :: (Core.Maybe Core.Bool),
+    -- | Window mode options for flash assets. Applicable to the following creative types: FLASH/INPAGE, RICH/MEDIA/DISPLAY/EXPANDING, RICH/MEDIA/IM/EXPAND, RICH/MEDIA/DISPLAY/BANNER, and RICH/MEDIA/INPAGE_FLOATING.
+    windowMode :: (Core.Maybe CreativeAsset_WindowMode),
+    -- | zIndex value of an asset. Applicable to the following creative types: all RICH/MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET/DISPLAY/TYPE/INPAGE or ASSET/DISPLAY/TYPE_OVERLAY. Acceptable values are -999999999 to 999999999, inclusive.
+    zIndex :: (Core.Maybe Core.Int32),
+    -- | File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
+    zipFilename :: (Core.Maybe Core.Text),
+    -- | Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
+    zipFilesize :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeAsset' with the minimum fields required to make a request.
+newCreativeAsset ::
+  CreativeAsset
+newCreativeAsset =
+  CreativeAsset
+    { actionScript3 = Core.Nothing,
+      active = Core.Nothing,
+      additionalSizes = Core.Nothing,
+      alignment = Core.Nothing,
+      artworkType = Core.Nothing,
+      assetIdentifier = Core.Nothing,
+      audioBitRate = Core.Nothing,
+      audioSampleRate = Core.Nothing,
+      backupImageExit = Core.Nothing,
+      bitRate = Core.Nothing,
+      childAssetType = Core.Nothing,
+      collapsedSize = Core.Nothing,
+      companionCreativeIds = Core.Nothing,
+      customStartTimeValue = Core.Nothing,
+      detectedFeatures = Core.Nothing,
+      displayType = Core.Nothing,
+      duration = Core.Nothing,
+      durationType = Core.Nothing,
+      expandedDimension = Core.Nothing,
+      fileSize = Core.Nothing,
+      flashVersion = Core.Nothing,
+      frameRate = Core.Nothing,
+      hideFlashObjects = Core.Nothing,
+      hideSelectionBoxes = Core.Nothing,
+      horizontallyLocked = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      mediaDuration = Core.Nothing,
+      mimeType = Core.Nothing,
+      offset = Core.Nothing,
+      orientation = Core.Nothing,
+      originalBackup = Core.Nothing,
+      politeLoad = Core.Nothing,
+      position = Core.Nothing,
+      positionLeftUnit = Core.Nothing,
+      positionTopUnit = Core.Nothing,
+      progressiveServingUrl = Core.Nothing,
+      pushdown = Core.Nothing,
+      pushdownDuration = Core.Nothing,
+      role' = Core.Nothing,
+      size = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      startTimeType = Core.Nothing,
+      streamingServingUrl = Core.Nothing,
+      transparency = Core.Nothing,
+      verticallyLocked = Core.Nothing,
+      windowMode = Core.Nothing,
+      zIndex = Core.Nothing,
+      zipFilename = Core.Nothing,
+      zipFilesize = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeAsset where
+  parseJSON =
+    Core.withObject
+      "CreativeAsset"
+      ( \o ->
+          CreativeAsset
+            Core.<$> (o Core..:? "actionScript3")
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "additionalSizes")
+            Core.<*> (o Core..:? "alignment")
+            Core.<*> (o Core..:? "artworkType")
+            Core.<*> (o Core..:? "assetIdentifier")
+            Core.<*> (o Core..:? "audioBitRate")
+            Core.<*> (o Core..:? "audioSampleRate")
+            Core.<*> (o Core..:? "backupImageExit")
+            Core.<*> (o Core..:? "bitRate")
+            Core.<*> (o Core..:? "childAssetType")
+            Core.<*> (o Core..:? "collapsedSize")
+            Core.<*> ( o
+                         Core..:? "companionCreativeIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "customStartTimeValue")
+            Core.<*> (o Core..:? "detectedFeatures")
+            Core.<*> (o Core..:? "displayType")
+            Core.<*> (o Core..:? "duration")
+            Core.<*> (o Core..:? "durationType")
+            Core.<*> (o Core..:? "expandedDimension")
+            Core.<*> (o Core..:? "fileSize" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "flashVersion")
+            Core.<*> (o Core..:? "frameRate")
+            Core.<*> (o Core..:? "hideFlashObjects")
+            Core.<*> (o Core..:? "hideSelectionBoxes")
+            Core.<*> (o Core..:? "horizontallyLocked")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "mediaDuration")
+            Core.<*> (o Core..:? "mimeType")
+            Core.<*> (o Core..:? "offset")
+            Core.<*> (o Core..:? "orientation")
+            Core.<*> (o Core..:? "originalBackup")
+            Core.<*> (o Core..:? "politeLoad")
+            Core.<*> (o Core..:? "position")
+            Core.<*> (o Core..:? "positionLeftUnit")
+            Core.<*> (o Core..:? "positionTopUnit")
+            Core.<*> (o Core..:? "progressiveServingUrl")
+            Core.<*> (o Core..:? "pushdown")
+            Core.<*> (o Core..:? "pushdownDuration")
+            Core.<*> (o Core..:? "role")
+            Core.<*> (o Core..:? "size")
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "startTimeType")
+            Core.<*> (o Core..:? "streamingServingUrl")
+            Core.<*> (o Core..:? "transparency")
+            Core.<*> (o Core..:? "verticallyLocked")
+            Core.<*> (o Core..:? "windowMode")
+            Core.<*> (o Core..:? "zIndex")
+            Core.<*> (o Core..:? "zipFilename")
+            Core.<*> (o Core..:? "zipFilesize")
+      )
+
+instance Core.ToJSON CreativeAsset where
+  toJSON CreativeAsset {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("actionScript3" Core..=) Core.<$> actionScript3,
+            ("active" Core..=) Core.<$> active,
+            ("additionalSizes" Core..=) Core.<$> additionalSizes,
+            ("alignment" Core..=) Core.<$> alignment,
+            ("artworkType" Core..=) Core.<$> artworkType,
+            ("assetIdentifier" Core..=) Core.<$> assetIdentifier,
+            ("audioBitRate" Core..=) Core.<$> audioBitRate,
+            ("audioSampleRate" Core..=) Core.<$> audioSampleRate,
+            ("backupImageExit" Core..=) Core.<$> backupImageExit,
+            ("bitRate" Core..=) Core.<$> bitRate,
+            ("childAssetType" Core..=) Core.<$> childAssetType,
+            ("collapsedSize" Core..=) Core.<$> collapsedSize,
+            ("companionCreativeIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> companionCreativeIds,
+            ("customStartTimeValue" Core..=) Core.<$> customStartTimeValue,
+            ("detectedFeatures" Core..=) Core.<$> detectedFeatures,
+            ("displayType" Core..=) Core.<$> displayType,
+            ("duration" Core..=) Core.<$> duration,
+            ("durationType" Core..=) Core.<$> durationType,
+            ("expandedDimension" Core..=) Core.<$> expandedDimension,
+            ("fileSize" Core..=) Core.. Core.AsText Core.<$> fileSize,
+            ("flashVersion" Core..=) Core.<$> flashVersion,
+            ("frameRate" Core..=) Core.<$> frameRate,
+            ("hideFlashObjects" Core..=) Core.<$> hideFlashObjects,
+            ("hideSelectionBoxes" Core..=) Core.<$> hideSelectionBoxes,
+            ("horizontallyLocked" Core..=) Core.<$> horizontallyLocked,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("mediaDuration" Core..=) Core.<$> mediaDuration,
+            ("mimeType" Core..=) Core.<$> mimeType,
+            ("offset" Core..=) Core.<$> offset,
+            ("orientation" Core..=) Core.<$> orientation,
+            ("originalBackup" Core..=) Core.<$> originalBackup,
+            ("politeLoad" Core..=) Core.<$> politeLoad,
+            ("position" Core..=) Core.<$> position,
+            ("positionLeftUnit" Core..=) Core.<$> positionLeftUnit,
+            ("positionTopUnit" Core..=) Core.<$> positionTopUnit,
+            ("progressiveServingUrl" Core..=) Core.<$> progressiveServingUrl,
+            ("pushdown" Core..=) Core.<$> pushdown,
+            ("pushdownDuration" Core..=) Core.<$> pushdownDuration,
+            ("role" Core..=) Core.<$> role',
+            ("size" Core..=) Core.<$> size,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("startTimeType" Core..=) Core.<$> startTimeType,
+            ("streamingServingUrl" Core..=) Core.<$> streamingServingUrl,
+            ("transparency" Core..=) Core.<$> transparency,
+            ("verticallyLocked" Core..=) Core.<$> verticallyLocked,
+            ("windowMode" Core..=) Core.<$> windowMode,
+            ("zIndex" Core..=) Core.<$> zIndex,
+            ("zipFilename" Core..=) Core.<$> zipFilename,
+            ("zipFilesize" Core..=) Core.<$> zipFilesize
+          ]
+      )
+
+-- | Creative Asset ID.
+--
+-- /See:/ 'newCreativeAssetId' smart constructor.
+data CreativeAssetId = CreativeAssetId
+  { -- | Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed.
+    name :: (Core.Maybe Core.Text),
+    -- | Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.
+    type' :: (Core.Maybe CreativeAssetId_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeAssetId' with the minimum fields required to make a request.
+newCreativeAssetId ::
+  CreativeAssetId
+newCreativeAssetId =
+  CreativeAssetId {name = Core.Nothing, type' = Core.Nothing}
+
+instance Core.FromJSON CreativeAssetId where
+  parseJSON =
+    Core.withObject
+      "CreativeAssetId"
+      ( \o ->
+          CreativeAssetId
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON CreativeAssetId where
+  toJSON CreativeAssetId {..} =
+    Core.object
+      ( Core.catMaybes
+          [("name" Core..=) Core.<$> name, ("type" Core..=) Core.<$> type']
+      )
+
+-- | CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.
+--
+-- /See:/ 'newCreativeAssetMetadata' smart constructor.
+data CreativeAssetMetadata = CreativeAssetMetadata
+  { -- | ID of the creative asset. This is a required field.
+    assetIdentifier :: (Core.Maybe CreativeAssetId),
+    -- | List of detected click tags for assets. This is a read-only, auto-generated field. This field is empty for a rich media asset.
+    clickTags :: (Core.Maybe [ClickTag]),
+    -- | List of counter events configured for the asset. This is a read-only, auto-generated field and only applicable to a rich media asset.
+    counterCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | List of feature dependencies for the creative asset that are detected by Campaign Manager. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.
+    detectedFeatures :: (Core.Maybe [CreativeAssetMetadata_DetectedFeaturesItem]),
+    -- | List of exit events configured for the asset. This is a read-only, auto-generated field and only applicable to a rich media asset.
+    exitCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | Numeric ID of the asset. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".
+    kind :: (Core.Maybe Core.Text),
+    -- | True if the uploaded asset is a rich media asset. This is a read-only, auto-generated field.
+    richMedia :: (Core.Maybe Core.Bool),
+    -- | List of timer events configured for the asset. This is a read-only, auto-generated field and only applicable to a rich media asset.
+    timerCustomEvents :: (Core.Maybe [CreativeCustomEvent]),
+    -- | Rules validated during code generation that generated a warning. This is a read-only, auto-generated field. Possible values are: - \"ADMOB/REFERENCED\" - \"ASSET/FORMAT/UNSUPPORTED/DCM\" - \"ASSET/INVALID\" - \"CLICK/TAG/HARD/CODED\" - \"CLICK/TAG/INVALID\" - \"CLICK/TAG/IN/GWD\" - \"CLICK/TAG/MISSING\" - \"CLICK/TAG/MORE/THAN/ONE\" - \"CLICK/TAG/NON/TOP/LEVEL\" - \"COMPONENT/UNSUPPORTED/DCM\" - \"ENABLER/UNSUPPORTED/METHOD/DCM\" - \"EXTERNAL/FILE/REFERENCED\" - \"FILE/DETAIL/EMPTY\" - \"FILE/TYPE/INVALID\" - \"GWD/PROPERTIES/INVALID\" - \"HTML5/FEATURE/UNSUPPORTED\" - \"LINKED/FILE/NOT/FOUND\" - \"MAX/FLASH/VERSION/11\" - \"MRAID/REFERENCED\" - \"NOT/SSL/COMPLIANT\" - \"ORPHANED/ASSET\" - \"PRIMARY/HTML/MISSING\" - \"SVG/INVALID\" - \"ZIP/INVALID\"
+    warnedValidationRules :: (Core.Maybe [CreativeAssetMetadata_WarnedValidationRulesItem])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeAssetMetadata' with the minimum fields required to make a request.
+newCreativeAssetMetadata ::
+  CreativeAssetMetadata
+newCreativeAssetMetadata =
+  CreativeAssetMetadata
+    { assetIdentifier = Core.Nothing,
+      clickTags = Core.Nothing,
+      counterCustomEvents = Core.Nothing,
+      detectedFeatures = Core.Nothing,
+      exitCustomEvents = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      richMedia = Core.Nothing,
+      timerCustomEvents = Core.Nothing,
+      warnedValidationRules = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeAssetMetadata where
+  parseJSON =
+    Core.withObject
+      "CreativeAssetMetadata"
+      ( \o ->
+          CreativeAssetMetadata
+            Core.<$> (o Core..:? "assetIdentifier")
+            Core.<*> (o Core..:? "clickTags")
+            Core.<*> (o Core..:? "counterCustomEvents")
+            Core.<*> (o Core..:? "detectedFeatures")
+            Core.<*> (o Core..:? "exitCustomEvents")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "richMedia")
+            Core.<*> (o Core..:? "timerCustomEvents")
+            Core.<*> (o Core..:? "warnedValidationRules")
+      )
+
+instance Core.ToJSON CreativeAssetMetadata where
+  toJSON CreativeAssetMetadata {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("assetIdentifier" Core..=) Core.<$> assetIdentifier,
+            ("clickTags" Core..=) Core.<$> clickTags,
+            ("counterCustomEvents" Core..=) Core.<$> counterCustomEvents,
+            ("detectedFeatures" Core..=) Core.<$> detectedFeatures,
+            ("exitCustomEvents" Core..=) Core.<$> exitCustomEvents,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("richMedia" Core..=) Core.<$> richMedia,
+            ("timerCustomEvents" Core..=) Core.<$> timerCustomEvents,
+            ("warnedValidationRules" Core..=) Core.<$> warnedValidationRules
+          ]
+      )
+
+-- | Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.
+--
+-- /See:/ 'newCreativeAssetSelection' smart constructor.
+data CreativeAssetSelection = CreativeAssetSelection
+  { -- | A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.
+    defaultAssetId :: (Core.Maybe Core.Int64),
+    -- | Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.
+    rules :: (Core.Maybe [Rule])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeAssetSelection' with the minimum fields required to make a request.
+newCreativeAssetSelection ::
+  CreativeAssetSelection
+newCreativeAssetSelection =
+  CreativeAssetSelection
+    { defaultAssetId = Core.Nothing,
+      rules = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeAssetSelection where
+  parseJSON =
+    Core.withObject
+      "CreativeAssetSelection"
+      ( \o ->
+          CreativeAssetSelection
+            Core.<$> (o Core..:? "defaultAssetId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "rules")
+      )
+
+instance Core.ToJSON CreativeAssetSelection where
+  toJSON CreativeAssetSelection {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("defaultAssetId" Core..=)
+              Core.. Core.AsText
+              Core.<$> defaultAssetId,
+            ("rules" Core..=) Core.<$> rules
+          ]
+      )
+
+-- | Creative Assignment.
+--
+-- /See:/ 'newCreativeAssignment' smart constructor.
+data CreativeAssignment = CreativeAssignment
+  { -- | Whether this creative assignment is active. When true, the creative will be included in the ad\'s rotation.
+    active :: (Core.Maybe Core.Bool),
+    -- | Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL/REDIRECT, INTERSTITIAL/INTERNAL/REDIRECT, and INSTREAM/VIDEO.
+    applyEventTags :: (Core.Maybe Core.Bool),
+    -- | Click-through URL of the creative assignment.
+    clickThroughUrl :: (Core.Maybe ClickThroughUrl),
+    -- | Companion creative overrides for this creative assignment. Applicable to video ads.
+    companionCreativeOverrides :: (Core.Maybe [CompanionClickThroughOverride]),
+    -- | Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.
+    creativeGroupAssignments :: (Core.Maybe [CreativeGroupAssignment]),
+    -- | ID of the creative to be assigned. This is a required field.
+    creativeId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the creative. This is a read-only, auto-generated field.
+    creativeIdDimensionValue :: (Core.Maybe DimensionValue),
+    endTime :: (Core.Maybe Core.DateTime),
+    -- | Rich media exit overrides for this creative assignment. Applicable when the creative type is any of the following: - DISPLAY - RICH/MEDIA/INPAGE - RICH/MEDIA/INPAGE/FLOATING - RICH/MEDIA/IM/EXPAND - RICH/MEDIA/EXPANDING - RICH/MEDIA/INTERSTITIAL/FLOAT - RICH/MEDIA/MOBILE/IN/APP - RICH/MEDIA/MULTI/FLOATING - RICH/MEDIA/PEEL/DOWN - VPAID/LINEAR - VPAID/NON/LINEAR
+    richMediaExitOverrides :: (Core.Maybe [RichMediaExitOverride]),
+    -- | Sequence number of the creative assignment, applicable when the rotation type is CREATIVE/ROTATION/TYPE_SEQUENTIAL. Acceptable values are 1 to 65535, inclusive.
+    sequence :: (Core.Maybe Core.Int32),
+    -- | Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    startTime :: (Core.Maybe Core.DateTime),
+    -- | Weight of the creative assignment, applicable when the rotation type is CREATIVE/ROTATION/TYPE_RANDOM. Value must be greater than or equal to 1.
+    weight :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeAssignment' with the minimum fields required to make a request.
+newCreativeAssignment ::
+  CreativeAssignment
+newCreativeAssignment =
+  CreativeAssignment
+    { active = Core.Nothing,
+      applyEventTags = Core.Nothing,
+      clickThroughUrl = Core.Nothing,
+      companionCreativeOverrides = Core.Nothing,
+      creativeGroupAssignments = Core.Nothing,
+      creativeId = Core.Nothing,
+      creativeIdDimensionValue = Core.Nothing,
+      endTime = Core.Nothing,
+      richMediaExitOverrides = Core.Nothing,
+      sequence = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      startTime = Core.Nothing,
+      weight = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeAssignment where
+  parseJSON =
+    Core.withObject
+      "CreativeAssignment"
+      ( \o ->
+          CreativeAssignment
+            Core.<$> (o Core..:? "active")
+            Core.<*> (o Core..:? "applyEventTags")
+            Core.<*> (o Core..:? "clickThroughUrl")
+            Core.<*> (o Core..:? "companionCreativeOverrides")
+            Core.<*> (o Core..:? "creativeGroupAssignments")
+            Core.<*> (o Core..:? "creativeId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "creativeIdDimensionValue")
+            Core.<*> (o Core..:? "endTime")
+            Core.<*> (o Core..:? "richMediaExitOverrides")
+            Core.<*> (o Core..:? "sequence")
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "startTime")
+            Core.<*> (o Core..:? "weight")
+      )
+
+instance Core.ToJSON CreativeAssignment where
+  toJSON CreativeAssignment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("active" Core..=) Core.<$> active,
+            ("applyEventTags" Core..=) Core.<$> applyEventTags,
+            ("clickThroughUrl" Core..=) Core.<$> clickThroughUrl,
+            ("companionCreativeOverrides" Core..=)
+              Core.<$> companionCreativeOverrides,
+            ("creativeGroupAssignments" Core..=)
+              Core.<$> creativeGroupAssignments,
+            ("creativeId" Core..=) Core.. Core.AsText Core.<$> creativeId,
+            ("creativeIdDimensionValue" Core..=)
+              Core.<$> creativeIdDimensionValue,
+            ("endTime" Core..=) Core.<$> endTime,
+            ("richMediaExitOverrides" Core..=) Core.<$> richMediaExitOverrides,
+            ("sequence" Core..=) Core.<$> sequence,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("startTime" Core..=) Core.<$> startTime,
+            ("weight" Core..=) Core.<$> weight
+          ]
+      )
+
+-- | Click-through URL
+--
+-- /See:/ 'newCreativeClickThroughUrl' smart constructor.
+data CreativeClickThroughUrl = CreativeClickThroughUrl
+  { -- | Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: - If landingPageId is specified then that landing page\'s URL is assigned to this field. - Otherwise, the customClickThroughUrl is assigned to this field.
+    computedClickThroughUrl :: (Core.Maybe Core.Text),
+    -- | Custom click-through URL. Applicable if the landingPageId field is left unset.
+    customClickThroughUrl :: (Core.Maybe Core.Text),
+    -- | ID of the landing page for the click-through URL.
+    landingPageId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeClickThroughUrl' with the minimum fields required to make a request.
+newCreativeClickThroughUrl ::
+  CreativeClickThroughUrl
+newCreativeClickThroughUrl =
+  CreativeClickThroughUrl
+    { computedClickThroughUrl = Core.Nothing,
+      customClickThroughUrl = Core.Nothing,
+      landingPageId = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeClickThroughUrl where
+  parseJSON =
+    Core.withObject
+      "CreativeClickThroughUrl"
+      ( \o ->
+          CreativeClickThroughUrl
+            Core.<$> (o Core..:? "computedClickThroughUrl")
+            Core.<*> (o Core..:? "customClickThroughUrl")
+            Core.<*> (o Core..:? "landingPageId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON CreativeClickThroughUrl where
+  toJSON CreativeClickThroughUrl {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("computedClickThroughUrl" Core..=)
+              Core.<$> computedClickThroughUrl,
+            ("customClickThroughUrl" Core..=) Core.<$> customClickThroughUrl,
+            ("landingPageId" Core..=)
+              Core.. Core.AsText
+              Core.<$> landingPageId
+          ]
+      )
+
+-- | Creative Custom Event.
+--
+-- /See:/ 'newCreativeCustomEvent' smart constructor.
+data CreativeCustomEvent = CreativeCustomEvent
+  { -- | Unique ID of this event used by Reporting and Data Transfer. This is a read-only field.
+    advertiserCustomEventId :: (Core.Maybe Core.Int64),
+    -- | User-entered name for the event.
+    advertiserCustomEventName :: (Core.Maybe Core.Text),
+    -- | Type of the event. This is a read-only field.
+    advertiserCustomEventType :: (Core.Maybe CreativeCustomEvent_AdvertiserCustomEventType),
+    -- | Artwork label column, used to link events in Campaign Manager back to events in Studio. This is a required field and should not be modified after insertion.
+    artworkLabel :: (Core.Maybe Core.Text),
+    -- | Artwork type used by the creative.This is a read-only field.
+    artworkType :: (Core.Maybe CreativeCustomEvent_ArtworkType),
+    -- | Exit click-through URL for the event. This field is used only for exit events.
+    exitClickThroughUrl :: (Core.Maybe CreativeClickThroughUrl),
+    -- | ID of this event. This is a required field and should not be modified after insertion.
+    id :: (Core.Maybe Core.Int64),
+    -- | Properties for rich media popup windows. This field is used only for exit events.
+    popupWindowProperties :: (Core.Maybe PopupWindowProperties),
+    -- | Target type used by the event.
+    targetType :: (Core.Maybe CreativeCustomEvent_TargetType),
+    -- | Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field.
+    videoReportingId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeCustomEvent' with the minimum fields required to make a request.
+newCreativeCustomEvent ::
+  CreativeCustomEvent
+newCreativeCustomEvent =
+  CreativeCustomEvent
+    { advertiserCustomEventId = Core.Nothing,
+      advertiserCustomEventName = Core.Nothing,
+      advertiserCustomEventType = Core.Nothing,
+      artworkLabel = Core.Nothing,
+      artworkType = Core.Nothing,
+      exitClickThroughUrl = Core.Nothing,
+      id = Core.Nothing,
+      popupWindowProperties = Core.Nothing,
+      targetType = Core.Nothing,
+      videoReportingId = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeCustomEvent where
+  parseJSON =
+    Core.withObject
+      "CreativeCustomEvent"
+      ( \o ->
+          CreativeCustomEvent
+            Core.<$> ( o
+                         Core..:? "advertiserCustomEventId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "advertiserCustomEventName")
+            Core.<*> (o Core..:? "advertiserCustomEventType")
+            Core.<*> (o Core..:? "artworkLabel")
+            Core.<*> (o Core..:? "artworkType")
+            Core.<*> (o Core..:? "exitClickThroughUrl")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "popupWindowProperties")
+            Core.<*> (o Core..:? "targetType")
+            Core.<*> (o Core..:? "videoReportingId")
+      )
+
+instance Core.ToJSON CreativeCustomEvent where
+  toJSON CreativeCustomEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advertiserCustomEventId" Core..=)
+              Core.. Core.AsText
+              Core.<$> advertiserCustomEventId,
+            ("advertiserCustomEventName" Core..=)
+              Core.<$> advertiserCustomEventName,
+            ("advertiserCustomEventType" Core..=)
+              Core.<$> advertiserCustomEventType,
+            ("artworkLabel" Core..=) Core.<$> artworkLabel,
+            ("artworkType" Core..=) Core.<$> artworkType,
+            ("exitClickThroughUrl" Core..=) Core.<$> exitClickThroughUrl,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("popupWindowProperties" Core..=) Core.<$> popupWindowProperties,
+            ("targetType" Core..=) Core.<$> targetType,
+            ("videoReportingId" Core..=) Core.<$> videoReportingId
+          ]
+      )
+
+-- | Contains properties of a creative field.
+--
+-- /See:/ 'newCreativeField' smart constructor.
+data CreativeField = CreativeField
+  { -- | Account ID of this creative field. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this creative field. This is a required field on insertion.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | ID of this creative field. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this creative field. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeField' with the minimum fields required to make a request.
+newCreativeField ::
+  CreativeField
+newCreativeField =
+  CreativeField
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeField where
+  parseJSON =
+    Core.withObject
+      "CreativeField"
+      ( \o ->
+          CreativeField
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON CreativeField where
+  toJSON CreativeField {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Creative Field Assignment.
+--
+-- /See:/ 'newCreativeFieldAssignment' smart constructor.
+data CreativeFieldAssignment = CreativeFieldAssignment
+  { -- | ID of the creative field.
+    creativeFieldId :: (Core.Maybe Core.Int64),
+    -- | ID of the creative field value.
+    creativeFieldValueId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeFieldAssignment' with the minimum fields required to make a request.
+newCreativeFieldAssignment ::
+  CreativeFieldAssignment
+newCreativeFieldAssignment =
+  CreativeFieldAssignment
+    { creativeFieldId = Core.Nothing,
+      creativeFieldValueId = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeFieldAssignment where
+  parseJSON =
+    Core.withObject
+      "CreativeFieldAssignment"
+      ( \o ->
+          CreativeFieldAssignment
+            Core.<$> (o Core..:? "creativeFieldId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "creativeFieldValueId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON CreativeFieldAssignment where
+  toJSON CreativeFieldAssignment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeFieldId" Core..=)
+              Core.. Core.AsText
+              Core.<$> creativeFieldId,
+            ("creativeFieldValueId" Core..=)
+              Core.. Core.AsText
+              Core.<$> creativeFieldValueId
+          ]
+      )
+
+-- | Contains properties of a creative field value.
+--
+-- /See:/ 'newCreativeFieldValue' smart constructor.
+data CreativeFieldValue = CreativeFieldValue
+  { -- | ID of this creative field value. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeFieldValue' with the minimum fields required to make a request.
+newCreativeFieldValue ::
+  CreativeFieldValue
+newCreativeFieldValue =
+  CreativeFieldValue
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeFieldValue where
+  parseJSON =
+    Core.withObject
+      "CreativeFieldValue"
+      ( \o ->
+          CreativeFieldValue
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON CreativeFieldValue where
+  toJSON CreativeFieldValue {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Creative Field Value List Response
+--
+-- /See:/ 'newCreativeFieldValuesListResponse' smart constructor.
+data CreativeFieldValuesListResponse = CreativeFieldValuesListResponse
+  { -- | Creative field value collection.
+    creativeFieldValues :: (Core.Maybe [CreativeFieldValue]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeFieldValuesListResponse' with the minimum fields required to make a request.
+newCreativeFieldValuesListResponse ::
+  CreativeFieldValuesListResponse
+newCreativeFieldValuesListResponse =
+  CreativeFieldValuesListResponse
+    { creativeFieldValues =
+        Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeFieldValuesListResponse where
+  parseJSON =
+    Core.withObject
+      "CreativeFieldValuesListResponse"
+      ( \o ->
+          CreativeFieldValuesListResponse
+            Core.<$> (o Core..:? "creativeFieldValues")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CreativeFieldValuesListResponse where
+  toJSON CreativeFieldValuesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeFieldValues" Core..=) Core.<$> creativeFieldValues,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Creative Field List Response
+--
+-- /See:/ 'newCreativeFieldsListResponse' smart constructor.
+data CreativeFieldsListResponse = CreativeFieldsListResponse
+  { -- | Creative field collection.
+    creativeFields :: (Core.Maybe [CreativeField]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeFieldsListResponse' with the minimum fields required to make a request.
+newCreativeFieldsListResponse ::
+  CreativeFieldsListResponse
+newCreativeFieldsListResponse =
+  CreativeFieldsListResponse
+    { creativeFields = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeFieldsListResponse where
+  parseJSON =
+    Core.withObject
+      "CreativeFieldsListResponse"
+      ( \o ->
+          CreativeFieldsListResponse
+            Core.<$> (o Core..:? "creativeFields")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CreativeFieldsListResponse where
+  toJSON CreativeFieldsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeFields" Core..=) Core.<$> creativeFields,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains properties of a creative group.
+--
+-- /See:/ 'newCreativeGroup' smart constructor.
+data CreativeGroup = CreativeGroup
+  { -- | Account ID of this creative group. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this creative group. This is a required field on insertion.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Subgroup of the creative group. Assign your creative groups to a subgroup in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion. Acceptable values are 1 to 2, inclusive.
+    groupNumber :: (Core.Maybe Core.Int32),
+    -- | ID of this creative group. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this creative group. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeGroup' with the minimum fields required to make a request.
+newCreativeGroup ::
+  CreativeGroup
+newCreativeGroup =
+  CreativeGroup
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      groupNumber = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeGroup where
+  parseJSON =
+    Core.withObject
+      "CreativeGroup"
+      ( \o ->
+          CreativeGroup
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "groupNumber")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON CreativeGroup where
+  toJSON CreativeGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("groupNumber" Core..=) Core.<$> groupNumber,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Creative Group Assignment.
+--
+-- /See:/ 'newCreativeGroupAssignment' smart constructor.
+data CreativeGroupAssignment = CreativeGroupAssignment
+  { -- | ID of the creative group to be assigned.
+    creativeGroupId :: (Core.Maybe Core.Int64),
+    -- | Creative group number of the creative group assignment.
+    creativeGroupNumber :: (Core.Maybe CreativeGroupAssignment_CreativeGroupNumber)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeGroupAssignment' with the minimum fields required to make a request.
+newCreativeGroupAssignment ::
+  CreativeGroupAssignment
+newCreativeGroupAssignment =
+  CreativeGroupAssignment
+    { creativeGroupId = Core.Nothing,
+      creativeGroupNumber = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeGroupAssignment where
+  parseJSON =
+    Core.withObject
+      "CreativeGroupAssignment"
+      ( \o ->
+          CreativeGroupAssignment
+            Core.<$> (o Core..:? "creativeGroupId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "creativeGroupNumber")
+      )
+
+instance Core.ToJSON CreativeGroupAssignment where
+  toJSON CreativeGroupAssignment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> creativeGroupId,
+            ("creativeGroupNumber" Core..=) Core.<$> creativeGroupNumber
+          ]
+      )
+
+-- | Creative Group List Response
+--
+-- /See:/ 'newCreativeGroupsListResponse' smart constructor.
+data CreativeGroupsListResponse = CreativeGroupsListResponse
+  { -- | Creative group collection.
+    creativeGroups :: (Core.Maybe [CreativeGroup]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeGroupsListResponse' with the minimum fields required to make a request.
+newCreativeGroupsListResponse ::
+  CreativeGroupsListResponse
+newCreativeGroupsListResponse =
+  CreativeGroupsListResponse
+    { creativeGroups = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "CreativeGroupsListResponse"
+      ( \o ->
+          CreativeGroupsListResponse
+            Core.<$> (o Core..:? "creativeGroups")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CreativeGroupsListResponse where
+  toJSON CreativeGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeGroups" Core..=) Core.<$> creativeGroups,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Creative optimization settings.
+--
+-- /See:/ 'newCreativeOptimizationConfiguration' smart constructor.
+data CreativeOptimizationConfiguration = CreativeOptimizationConfiguration
+  { -- | ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of this creative optimization config. This is a required field and must be less than 129 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | List of optimization activities associated with this configuration.
+    optimizationActivitys :: (Core.Maybe [OptimizationActivity]),
+    -- | Optimization model for this configuration.
+    optimizationModel :: (Core.Maybe CreativeOptimizationConfiguration_OptimizationModel)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeOptimizationConfiguration' with the minimum fields required to make a request.
+newCreativeOptimizationConfiguration ::
+  CreativeOptimizationConfiguration
+newCreativeOptimizationConfiguration =
+  CreativeOptimizationConfiguration
+    { id = Core.Nothing,
+      name = Core.Nothing,
+      optimizationActivitys = Core.Nothing,
+      optimizationModel = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeOptimizationConfiguration where
+  parseJSON =
+    Core.withObject
+      "CreativeOptimizationConfiguration"
+      ( \o ->
+          CreativeOptimizationConfiguration
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "optimizationActivitys")
+            Core.<*> (o Core..:? "optimizationModel")
+      )
+
+instance Core.ToJSON CreativeOptimizationConfiguration where
+  toJSON CreativeOptimizationConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name,
+            ("optimizationActivitys" Core..=) Core.<$> optimizationActivitys,
+            ("optimizationModel" Core..=) Core.<$> optimizationModel
+          ]
+      )
+
+-- | Creative Rotation.
+--
+-- /See:/ 'newCreativeRotation' smart constructor.
+data CreativeRotation = CreativeRotation
+  { -- | Creative assignments in this creative rotation.
+    creativeAssignments :: (Core.Maybe [CreativeAssignment]),
+    -- | Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad\'s campaign. If it is unset or set to 0, then the campaign\'s default optimization configuration will be used for this ad.
+    creativeOptimizationConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Type of creative rotation. Can be used to specify whether to use sequential or random rotation.
+    type' :: (Core.Maybe CreativeRotation_Type),
+    -- | Strategy for calculating weights. Used with CREATIVE/ROTATION/TYPE_RANDOM.
+    weightCalculationStrategy :: (Core.Maybe CreativeRotation_WeightCalculationStrategy)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativeRotation' with the minimum fields required to make a request.
+newCreativeRotation ::
+  CreativeRotation
+newCreativeRotation =
+  CreativeRotation
+    { creativeAssignments = Core.Nothing,
+      creativeOptimizationConfigurationId = Core.Nothing,
+      type' = Core.Nothing,
+      weightCalculationStrategy = Core.Nothing
+    }
+
+instance Core.FromJSON CreativeRotation where
+  parseJSON =
+    Core.withObject
+      "CreativeRotation"
+      ( \o ->
+          CreativeRotation
+            Core.<$> (o Core..:? "creativeAssignments")
+            Core.<*> ( o
+                         Core..:? "creativeOptimizationConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "weightCalculationStrategy")
+      )
+
+instance Core.ToJSON CreativeRotation where
+  toJSON CreativeRotation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creativeAssignments" Core..=) Core.<$> creativeAssignments,
+            ("creativeOptimizationConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> creativeOptimizationConfigurationId,
+            ("type" Core..=) Core.<$> type',
+            ("weightCalculationStrategy" Core..=)
+              Core.<$> weightCalculationStrategy
+          ]
+      )
+
+-- | Creative List Response
+--
+-- /See:/ 'newCreativesListResponse' smart constructor.
+data CreativesListResponse = CreativesListResponse
+  { -- | Creative collection.
+    creatives :: (Core.Maybe [Creative]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CreativesListResponse' with the minimum fields required to make a request.
+newCreativesListResponse ::
+  CreativesListResponse
+newCreativesListResponse =
+  CreativesListResponse
+    { creatives = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON CreativesListResponse where
+  parseJSON =
+    Core.withObject
+      "CreativesListResponse"
+      ( \o ->
+          CreativesListResponse
+            Core.<$> (o Core..:? "creatives")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON CreativesListResponse where
+  toJSON CreativesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("creatives" Core..=) Core.<$> creatives,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"CROSS/DIMENSION/REACH\".
+--
+-- /See:/ 'newCrossDimensionReachReportCompatibleFields' smart constructor.
+data CrossDimensionReachReportCompatibleFields = CrossDimensionReachReportCompatibleFields
+  { -- | Dimensions which are compatible to be selected in the \"breakdown\" section of the report.
+    breakdown :: (Core.Maybe [Dimension]),
+    -- | Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.
+    dimensionFilters :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric]),
+    -- | Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.
+    overlapMetrics :: (Core.Maybe [Metric])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CrossDimensionReachReportCompatibleFields' with the minimum fields required to make a request.
+newCrossDimensionReachReportCompatibleFields ::
+  CrossDimensionReachReportCompatibleFields
+newCrossDimensionReachReportCompatibleFields =
+  CrossDimensionReachReportCompatibleFields
+    { breakdown =
+        Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing,
+      overlapMetrics = Core.Nothing
+    }
+
+instance Core.FromJSON CrossDimensionReachReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "CrossDimensionReachReportCompatibleFields"
+      ( \o ->
+          CrossDimensionReachReportCompatibleFields
+            Core.<$> (o Core..:? "breakdown")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "overlapMetrics")
+      )
+
+instance Core.ToJSON CrossDimensionReachReportCompatibleFields where
+  toJSON CrossDimensionReachReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("breakdown" Core..=) Core.<$> breakdown,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics,
+            ("overlapMetrics" Core..=) Core.<$> overlapMetrics
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"CROSS/MEDIA/REACH\".
+--
+-- /See:/ 'newCrossMediaReachReportCompatibleFields' smart constructor.
+data CrossMediaReachReportCompatibleFields = CrossMediaReachReportCompatibleFields
+  { -- | Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.
+    dimensionFilters :: (Core.Maybe [Dimension]),
+    -- | Dimensions which are compatible to be selected in the \"dimensions\" section of the report.
+    dimensions :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#crossMediaReachReportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CrossMediaReachReportCompatibleFields' with the minimum fields required to make a request.
+newCrossMediaReachReportCompatibleFields ::
+  CrossMediaReachReportCompatibleFields
+newCrossMediaReachReportCompatibleFields =
+  CrossMediaReachReportCompatibleFields
+    { dimensionFilters =
+        Core.Nothing,
+      dimensions = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing
+    }
+
+instance Core.FromJSON CrossMediaReachReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "CrossMediaReachReportCompatibleFields"
+      ( \o ->
+          CrossMediaReachReportCompatibleFields
+            Core.<$> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+      )
+
+instance Core.ToJSON CrossMediaReachReportCompatibleFields where
+  toJSON CrossMediaReachReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics
+          ]
+      )
+
+-- | A custom floodlight variable. This field may only be used when calling batchinsert; it is not supported by batchupdate.
+--
+-- /See:/ 'newCustomFloodlightVariable' smart constructor.
+data CustomFloodlightVariable = CustomFloodlightVariable
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The type of custom floodlight variable to supply a value for. These map to the \"u[1-100]=\" in the tags.
+    type' :: (Core.Maybe CustomFloodlightVariable_Type),
+    -- | The value of the custom floodlight variable. The length of string must not exceed 100 characters.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CustomFloodlightVariable' with the minimum fields required to make a request.
+newCustomFloodlightVariable ::
+  CustomFloodlightVariable
+newCustomFloodlightVariable =
+  CustomFloodlightVariable
+    { kind = Core.Nothing,
+      type' = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON CustomFloodlightVariable where
+  parseJSON =
+    Core.withObject
+      "CustomFloodlightVariable"
+      ( \o ->
+          CustomFloodlightVariable
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON CustomFloodlightVariable where
+  toJSON CustomFloodlightVariable {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("type" Core..=) Core.<$> type',
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Represents a Custom Rich Media Events group.
+--
+-- /See:/ 'newCustomRichMediaEvents' smart constructor.
+data CustomRichMediaEvents = CustomRichMediaEvents
+  { -- | List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+    filteredEventIds :: (Core.Maybe [DimensionValue]),
+    -- | The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CustomRichMediaEvents' with the minimum fields required to make a request.
+newCustomRichMediaEvents ::
+  CustomRichMediaEvents
+newCustomRichMediaEvents =
+  CustomRichMediaEvents
+    { filteredEventIds = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON CustomRichMediaEvents where
+  parseJSON =
+    Core.withObject
+      "CustomRichMediaEvents"
+      ( \o ->
+          CustomRichMediaEvents
+            Core.<$> (o Core..:? "filteredEventIds")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON CustomRichMediaEvents where
+  toJSON CustomRichMediaEvents {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("filteredEventIds" Core..=) Core.<$> filteredEventIds,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Custom Viewability Metric
+--
+-- /See:/ 'newCustomViewabilityMetric' smart constructor.
+data CustomViewabilityMetric = CustomViewabilityMetric
+  { -- | Configuration of the custom viewability metric.
+    configuration :: (Core.Maybe CustomViewabilityMetricConfiguration),
+    -- | ID of the custom viewability metric.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of the custom viewability metric.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CustomViewabilityMetric' with the minimum fields required to make a request.
+newCustomViewabilityMetric ::
+  CustomViewabilityMetric
+newCustomViewabilityMetric =
+  CustomViewabilityMetric
+    { configuration = Core.Nothing,
+      id = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON CustomViewabilityMetric where
+  parseJSON =
+    Core.withObject
+      "CustomViewabilityMetric"
+      ( \o ->
+          CustomViewabilityMetric
+            Core.<$> (o Core..:? "configuration")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON CustomViewabilityMetric where
+  toJSON CustomViewabilityMetric {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("configuration" Core..=) Core.<$> configuration,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | The attributes, like playtime and percent onscreen, that define the Custom Viewability Metric.
+--
+-- /See:/ 'newCustomViewabilityMetricConfiguration' smart constructor.
+data CustomViewabilityMetricConfiguration = CustomViewabilityMetricConfiguration
+  { -- | Whether the video must be audible to count an impression.
+    audible :: (Core.Maybe Core.Bool),
+    -- | The time in milliseconds the video must play for the Custom Viewability Metric to count an impression. If both this and timePercent are specified, the earlier of the two will be used.
+    timeMillis :: (Core.Maybe Core.Int32),
+    -- | The percentage of video that must play for the Custom Viewability Metric to count an impression. If both this and timeMillis are specified, the earlier of the two will be used.
+    timePercent :: (Core.Maybe Core.Int32),
+    -- | The percentage of video that must be on screen for the Custom Viewability Metric to count an impression.
+    viewabilityPercent :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CustomViewabilityMetricConfiguration' with the minimum fields required to make a request.
+newCustomViewabilityMetricConfiguration ::
+  CustomViewabilityMetricConfiguration
+newCustomViewabilityMetricConfiguration =
+  CustomViewabilityMetricConfiguration
+    { audible = Core.Nothing,
+      timeMillis = Core.Nothing,
+      timePercent = Core.Nothing,
+      viewabilityPercent = Core.Nothing
+    }
+
+instance Core.FromJSON CustomViewabilityMetricConfiguration where
+  parseJSON =
+    Core.withObject
+      "CustomViewabilityMetricConfiguration"
+      ( \o ->
+          CustomViewabilityMetricConfiguration
+            Core.<$> (o Core..:? "audible")
+            Core.<*> (o Core..:? "timeMillis")
+            Core.<*> (o Core..:? "timePercent")
+            Core.<*> (o Core..:? "viewabilityPercent")
+      )
+
+instance Core.ToJSON CustomViewabilityMetricConfiguration where
+  toJSON CustomViewabilityMetricConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audible" Core..=) Core.<$> audible,
+            ("timeMillis" Core..=) Core.<$> timeMillis,
+            ("timePercent" Core..=) Core.<$> timePercent,
+            ("viewabilityPercent" Core..=) Core.<$> viewabilityPercent
+          ]
+      )
+
+-- | Represents a date range.
+--
+-- /See:/ 'newDateRange' smart constructor.
+data DateRange = DateRange
+  { endDate :: (Core.Maybe Core.Date),
+    -- | The kind of resource this is, in this case dfareporting#dateRange.
+    kind :: (Core.Maybe Core.Text),
+    -- | The date range relative to the date of when the report is run.
+    relativeDateRange :: (Core.Maybe DateRange_RelativeDateRange),
+    startDate :: (Core.Maybe Core.Date)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DateRange' with the minimum fields required to make a request.
+newDateRange ::
+  DateRange
+newDateRange =
+  DateRange
+    { endDate = Core.Nothing,
+      kind = Core.Nothing,
+      relativeDateRange = Core.Nothing,
+      startDate = Core.Nothing
+    }
+
+instance Core.FromJSON DateRange where
+  parseJSON =
+    Core.withObject
+      "DateRange"
+      ( \o ->
+          DateRange
+            Core.<$> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "relativeDateRange")
+            Core.<*> (o Core..:? "startDate")
+      )
+
+instance Core.ToJSON DateRange where
+  toJSON DateRange {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endDate" Core..=) Core.<$> endDate,
+            ("kind" Core..=) Core.<$> kind,
+            ("relativeDateRange" Core..=) Core.<$> relativeDateRange,
+            ("startDate" Core..=) Core.<$> startDate
+          ]
+      )
+
+-- | Day Part Targeting.
+--
+-- /See:/ 'newDayPartTargeting' smart constructor.
+data DayPartTargeting = DayPartTargeting
+  { -- | Days of the week when the ad will serve. Acceptable values are: - \"SUNDAY\" - \"MONDAY\" - \"TUESDAY\" - \"WEDNESDAY\" - \"THURSDAY\" - \"FRIDAY\" - \"SATURDAY\"
+    daysOfWeek :: (Core.Maybe [DayPartTargeting_DaysOfWeekItem]),
+    -- | Hours of the day when the ad will serve, where 0 is midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.
+    hoursOfDay :: (Core.Maybe [Core.Int32]),
+    -- | Whether or not to use the user\'s local time. If false, the America\/New York time zone applies.
+    userLocalTime :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DayPartTargeting' with the minimum fields required to make a request.
+newDayPartTargeting ::
+  DayPartTargeting
+newDayPartTargeting =
+  DayPartTargeting
+    { daysOfWeek = Core.Nothing,
+      hoursOfDay = Core.Nothing,
+      userLocalTime = Core.Nothing
+    }
+
+instance Core.FromJSON DayPartTargeting where
+  parseJSON =
+    Core.withObject
+      "DayPartTargeting"
+      ( \o ->
+          DayPartTargeting
+            Core.<$> (o Core..:? "daysOfWeek")
+            Core.<*> (o Core..:? "hoursOfDay")
+            Core.<*> (o Core..:? "userLocalTime")
+      )
+
+instance Core.ToJSON DayPartTargeting where
+  toJSON DayPartTargeting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("daysOfWeek" Core..=) Core.<$> daysOfWeek,
+            ("hoursOfDay" Core..=) Core.<$> hoursOfDay,
+            ("userLocalTime" Core..=) Core.<$> userLocalTime
+          ]
+      )
+
+-- | Contains information about a landing page deep link.
+--
+-- /See:/ 'newDeepLink' smart constructor.
+data DeepLink = DeepLink
+  { -- | The URL of the mobile app being linked to.
+    appUrl :: (Core.Maybe Core.Text),
+    -- | The fallback URL. This URL will be served to users who do not have the mobile app installed.
+    fallbackUrl :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#deepLink\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The mobile app targeted by this deep link.
+    mobileApp :: (Core.Maybe MobileApp),
+    -- | Ads served to users on these remarketing lists will use this deep link. Applicable when mobileApp.directory is APPLE/APP/STORE.
+    remarketingListIds :: (Core.Maybe [Core.Int64])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DeepLink' with the minimum fields required to make a request.
+newDeepLink ::
+  DeepLink
+newDeepLink =
+  DeepLink
+    { appUrl = Core.Nothing,
+      fallbackUrl = Core.Nothing,
+      kind = Core.Nothing,
+      mobileApp = Core.Nothing,
+      remarketingListIds = Core.Nothing
+    }
+
+instance Core.FromJSON DeepLink where
+  parseJSON =
+    Core.withObject
+      "DeepLink"
+      ( \o ->
+          DeepLink
+            Core.<$> (o Core..:? "appUrl")
+            Core.<*> (o Core..:? "fallbackUrl")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "mobileApp")
+            Core.<*> ( o
+                         Core..:? "remarketingListIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+      )
+
+instance Core.ToJSON DeepLink where
+  toJSON DeepLink {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("appUrl" Core..=) Core.<$> appUrl,
+            ("fallbackUrl" Core..=) Core.<$> fallbackUrl,
+            ("kind" Core..=) Core.<$> kind,
+            ("mobileApp" Core..=) Core.<$> mobileApp,
+            ("remarketingListIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> remarketingListIds
+          ]
+      )
+
+-- | Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign\'s setting further.
+--
+-- /See:/ 'newDefaultClickThroughEventTagProperties' smart constructor.
+data DefaultClickThroughEventTagProperties = DefaultClickThroughEventTagProperties
+  { -- | ID of the click-through event tag to apply to all ads in this entity\'s scope.
+    defaultClickThroughEventTagId :: (Core.Maybe Core.Int64),
+    -- | Whether this entity should override the inherited default click-through event tag with its own defined value.
+    overrideInheritedEventTag :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DefaultClickThroughEventTagProperties' with the minimum fields required to make a request.
+newDefaultClickThroughEventTagProperties ::
+  DefaultClickThroughEventTagProperties
+newDefaultClickThroughEventTagProperties =
+  DefaultClickThroughEventTagProperties
+    { defaultClickThroughEventTagId =
+        Core.Nothing,
+      overrideInheritedEventTag = Core.Nothing
+    }
+
+instance Core.FromJSON DefaultClickThroughEventTagProperties where
+  parseJSON =
+    Core.withObject
+      "DefaultClickThroughEventTagProperties"
+      ( \o ->
+          DefaultClickThroughEventTagProperties
+            Core.<$> ( o
+                         Core..:? "defaultClickThroughEventTagId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "overrideInheritedEventTag")
+      )
+
+instance Core.ToJSON DefaultClickThroughEventTagProperties where
+  toJSON DefaultClickThroughEventTagProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("defaultClickThroughEventTagId" Core..=)
+              Core.. Core.AsText
+              Core.<$> defaultClickThroughEventTagId,
+            ("overrideInheritedEventTag" Core..=)
+              Core.<$> overrideInheritedEventTag
+          ]
+      )
+
+-- | Delivery Schedule.
+--
+-- /See:/ 'newDeliverySchedule' smart constructor.
+data DeliverySchedule = DeliverySchedule
+  { -- | Limit on the number of times an individual user can be served the ad within a specified period of time.
+    frequencyCap :: (Core.Maybe FrequencyCap),
+    -- | Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals.
+    hardCutoff :: (Core.Maybe Core.Bool),
+    -- | Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then Campaign Manager will serve ad B three times as often as ad A. Acceptable values are 1 to 10, inclusive.
+    impressionRatio :: (Core.Maybe Core.Int64),
+    -- | Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.
+    priority :: (Core.Maybe DeliverySchedule_Priority)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DeliverySchedule' with the minimum fields required to make a request.
+newDeliverySchedule ::
+  DeliverySchedule
+newDeliverySchedule =
+  DeliverySchedule
+    { frequencyCap = Core.Nothing,
+      hardCutoff = Core.Nothing,
+      impressionRatio = Core.Nothing,
+      priority = Core.Nothing
+    }
+
+instance Core.FromJSON DeliverySchedule where
+  parseJSON =
+    Core.withObject
+      "DeliverySchedule"
+      ( \o ->
+          DeliverySchedule
+            Core.<$> (o Core..:? "frequencyCap")
+            Core.<*> (o Core..:? "hardCutoff")
+            Core.<*> (o Core..:? "impressionRatio" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "priority")
+      )
+
+instance Core.ToJSON DeliverySchedule where
+  toJSON DeliverySchedule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("frequencyCap" Core..=) Core.<$> frequencyCap,
+            ("hardCutoff" Core..=) Core.<$> hardCutoff,
+            ("impressionRatio" Core..=)
+              Core.. Core.AsText
+              Core.<$> impressionRatio,
+            ("priority" Core..=) Core.<$> priority
+          ]
+      )
+
+-- | Google Ad Manager Settings
+--
+-- /See:/ 'newDfpSettings' smart constructor.
+data DfpSettings = DfpSettings
+  { -- | Ad Manager network code for this directory site.
+    dfpNetworkCode :: (Core.Maybe Core.Text),
+    -- | Ad Manager network name for this directory site.
+    dfpNetworkName :: (Core.Maybe Core.Text),
+    -- | Whether this directory site accepts programmatic placements.
+    programmaticPlacementAccepted :: (Core.Maybe Core.Bool),
+    -- | Whether this directory site accepts publisher-paid tags.
+    pubPaidPlacementAccepted :: (Core.Maybe Core.Bool),
+    -- | Whether this directory site is available only via Publisher Portal.
+    publisherPortalOnly :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DfpSettings' with the minimum fields required to make a request.
+newDfpSettings ::
+  DfpSettings
+newDfpSettings =
+  DfpSettings
+    { dfpNetworkCode = Core.Nothing,
+      dfpNetworkName = Core.Nothing,
+      programmaticPlacementAccepted = Core.Nothing,
+      pubPaidPlacementAccepted = Core.Nothing,
+      publisherPortalOnly = Core.Nothing
+    }
+
+instance Core.FromJSON DfpSettings where
+  parseJSON =
+    Core.withObject
+      "DfpSettings"
+      ( \o ->
+          DfpSettings
+            Core.<$> (o Core..:? "dfpNetworkCode")
+            Core.<*> (o Core..:? "dfpNetworkName")
+            Core.<*> (o Core..:? "programmaticPlacementAccepted")
+            Core.<*> (o Core..:? "pubPaidPlacementAccepted")
+            Core.<*> (o Core..:? "publisherPortalOnly")
+      )
+
+instance Core.ToJSON DfpSettings where
+  toJSON DfpSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dfpNetworkCode" Core..=) Core.<$> dfpNetworkCode,
+            ("dfpNetworkName" Core..=) Core.<$> dfpNetworkName,
+            ("programmaticPlacementAccepted" Core..=)
+              Core.<$> programmaticPlacementAccepted,
+            ("pubPaidPlacementAccepted" Core..=)
+              Core.<$> pubPaidPlacementAccepted,
+            ("publisherPortalOnly" Core..=) Core.<$> publisherPortalOnly
+          ]
+      )
+
+-- | Represents a dimension.
+--
+-- /See:/ 'newDimension' smart constructor.
+data Dimension = Dimension
+  { -- | The kind of resource this is, in this case dfareporting#dimension.
+    kind :: (Core.Maybe Core.Text),
+    -- | The dimension name, e.g. advertiser
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Dimension' with the minimum fields required to make a request.
+newDimension ::
+  Dimension
+newDimension = Dimension {kind = Core.Nothing, name = Core.Nothing}
+
+instance Core.FromJSON Dimension where
+  parseJSON =
+    Core.withObject
+      "Dimension"
+      ( \o ->
+          Dimension
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Dimension where
+  toJSON Dimension {..} =
+    Core.object
+      ( Core.catMaybes
+          [("kind" Core..=) Core.<$> kind, ("name" Core..=) Core.<$> name]
+      )
+
+-- | Represents a dimension filter.
+--
+-- /See:/ 'newDimensionFilter' smart constructor.
+data DimensionFilter = DimensionFilter
+  { -- | The name of the dimension to filter.
+    dimensionName :: (Core.Maybe Core.Text),
+    -- | The kind of resource this is, in this case dfareporting#dimensionFilter.
+    kind :: (Core.Maybe Core.Text),
+    -- | The value of the dimension to filter.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DimensionFilter' with the minimum fields required to make a request.
+newDimensionFilter ::
+  DimensionFilter
+newDimensionFilter =
+  DimensionFilter
+    { dimensionName = Core.Nothing,
+      kind = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON DimensionFilter where
+  parseJSON =
+    Core.withObject
+      "DimensionFilter"
+      ( \o ->
+          DimensionFilter
+            Core.<$> (o Core..:? "dimensionName")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON DimensionFilter where
+  toJSON DimensionFilter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionName" Core..=) Core.<$> dimensionName,
+            ("kind" Core..=) Core.<$> kind,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Represents a DimensionValue resource.
+--
+-- /See:/ 'newDimensionValue' smart constructor.
+data DimensionValue = DimensionValue
+  { -- | The name of the dimension.
+    dimensionName :: (Core.Maybe Core.Text),
+    -- | The eTag of this response for caching purposes.
+    etag :: (Core.Maybe Core.Text),
+    -- | The ID associated with the value if available.
+    id :: (Core.Maybe Core.Text),
+    -- | The kind of resource this is, in this case dfareporting#dimensionValue.
+    kind :: (Core.Maybe Core.Text),
+    -- | Determines how the \'value\' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, \'/\' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions (\'dfa:paidSearch/\') allow a matchType other than EXACT.
+    matchType :: (Core.Maybe DimensionValue_MatchType),
+    -- | The value of the dimension.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DimensionValue' with the minimum fields required to make a request.
+newDimensionValue ::
+  DimensionValue
+newDimensionValue =
+  DimensionValue
+    { dimensionName = Core.Nothing,
+      etag = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      matchType = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON DimensionValue where
+  parseJSON =
+    Core.withObject
+      "DimensionValue"
+      ( \o ->
+          DimensionValue
+            Core.<$> (o Core..:? "dimensionName")
+            Core.<*> (o Core..:? "etag")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "matchType")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON DimensionValue where
+  toJSON DimensionValue {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionName" Core..=) Core.<$> dimensionName,
+            ("etag" Core..=) Core.<$> etag,
+            ("id" Core..=) Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("matchType" Core..=) Core.<$> matchType,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | Represents the list of DimensionValue resources.
+--
+-- /See:/ 'newDimensionValueList' smart constructor.
+data DimensionValueList = DimensionValueList
+  { -- | The eTag of this response for caching purposes.
+    etag :: (Core.Maybe Core.Text),
+    -- | The dimension values returned in this response.
+    items :: (Core.Maybe [DimensionValue]),
+    -- | The kind of list this is, in this case dfareporting#dimensionValueList.
+    kind :: (Core.Maybe Core.Text),
+    -- | Continuation token used to page through dimension values. To retrieve the next page of results, set the next request\'s \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DimensionValueList' with the minimum fields required to make a request.
+newDimensionValueList ::
+  DimensionValueList
+newDimensionValueList =
+  DimensionValueList
+    { etag = Core.Nothing,
+      items = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON DimensionValueList where
+  parseJSON =
+    Core.withObject
+      "DimensionValueList"
+      ( \o ->
+          DimensionValueList
+            Core.<$> (o Core..:? "etag")
+            Core.<*> (o Core..:? "items")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON DimensionValueList where
+  toJSON DimensionValueList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("etag" Core..=) Core.<$> etag,
+            ("items" Core..=) Core.<$> items,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Represents a DimensionValuesRequest.
+--
+-- /See:/ 'newDimensionValueRequest' smart constructor.
+data DimensionValueRequest = DimensionValueRequest
+  { -- | The name of the dimension for which values should be requested.
+    dimensionName :: (Core.Maybe Core.Text),
+    endDate :: (Core.Maybe Core.Date),
+    -- | The list of filters by which to filter values. The filters are ANDed.
+    filters :: (Core.Maybe [DimensionFilter]),
+    -- | The kind of request this is, in this case dfareporting#dimensionValueRequest .
+    kind :: (Core.Maybe Core.Text),
+    startDate :: (Core.Maybe Core.Date)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DimensionValueRequest' with the minimum fields required to make a request.
+newDimensionValueRequest ::
+  DimensionValueRequest
+newDimensionValueRequest =
+  DimensionValueRequest
+    { dimensionName = Core.Nothing,
+      endDate = Core.Nothing,
+      filters = Core.Nothing,
+      kind = Core.Nothing,
+      startDate = Core.Nothing
+    }
+
+instance Core.FromJSON DimensionValueRequest where
+  parseJSON =
+    Core.withObject
+      "DimensionValueRequest"
+      ( \o ->
+          DimensionValueRequest
+            Core.<$> (o Core..:? "dimensionName")
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "filters")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "startDate")
+      )
+
+instance Core.ToJSON DimensionValueRequest where
+  toJSON DimensionValueRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionName" Core..=) Core.<$> dimensionName,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("filters" Core..=) Core.<$> filters,
+            ("kind" Core..=) Core.<$> kind,
+            ("startDate" Core..=) Core.<$> startDate
+          ]
+      )
+
+-- | DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.
+--
+-- /See:/ 'newDirectorySite' smart constructor.
+data DirectorySite = DirectorySite
+  { -- | ID of this directory site. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this directory site. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Tag types for regular placements. Acceptable values are: - \"STANDARD\" - \"IFRAME/JAVASCRIPT/INPAGE\" - \"INTERNAL/REDIRECT/INPAGE\" - \"JAVASCRIPT_INPAGE\"
+    inpageTagFormats :: (Core.Maybe [DirectorySite_InpageTagFormatsItem]),
+    -- | Tag types for interstitial placements. Acceptable values are: - \"IFRAME/JAVASCRIPT/INTERSTITIAL\" - \"INTERNAL/REDIRECT/INTERSTITIAL\" - \"JAVASCRIPT_INTERSTITIAL\"
+    interstitialTagFormats :: (Core.Maybe [DirectorySite_InterstitialTagFormatsItem]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this directory site.
+    name :: (Core.Maybe Core.Text),
+    -- | Output only. Default publisher specification ID of video placements under this directory site. Possible values are: * @1@, Hulu * @2@, NBC * @3@, CBS * @4@, CBS Desktop * @5@, Discovery * @6@, VEVO HD * @7@, VEVO Vertical * @8@, Fox * @9@, CW Network * @10@, Disney * @11@, IGN * @12@, NFL.com * @13@, Turner Broadcasting * @14@, Tubi on Fox * @15@, Hearst Corporation * @16@, Twitch Desktop * @17@, ABC * @18@, Univision * @19@, MLB.com * @20@, MLB.com Mobile * @21@, MLB.com OTT * @22@, Polsat * @23@, TVN * @24@, Mediaset * @25@, Antena 3 * @26@, Mediamond * @27@, Sky Italia * @28@, Tubi on CBS * @29@, Spotify * @30@, Paramount * @31@, Max
+    publisherSpecificationId :: (Core.Maybe Core.Int64),
+    -- | Directory site settings.
+    settings :: (Core.Maybe DirectorySiteSettings),
+    -- | URL of this directory site.
+    url :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DirectorySite' with the minimum fields required to make a request.
+newDirectorySite ::
+  DirectorySite
+newDirectorySite =
+  DirectorySite
+    { id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      inpageTagFormats = Core.Nothing,
+      interstitialTagFormats = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      publisherSpecificationId = Core.Nothing,
+      settings = Core.Nothing,
+      url = Core.Nothing
+    }
+
+instance Core.FromJSON DirectorySite where
+  parseJSON =
+    Core.withObject
+      "DirectorySite"
+      ( \o ->
+          DirectorySite
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "inpageTagFormats")
+            Core.<*> (o Core..:? "interstitialTagFormats")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "publisherSpecificationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "settings")
+            Core.<*> (o Core..:? "url")
+      )
+
+instance Core.ToJSON DirectorySite where
+  toJSON DirectorySite {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("inpageTagFormats" Core..=) Core.<$> inpageTagFormats,
+            ("interstitialTagFormats" Core..=) Core.<$> interstitialTagFormats,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("publisherSpecificationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> publisherSpecificationId,
+            ("settings" Core..=) Core.<$> settings,
+            ("url" Core..=) Core.<$> url
+          ]
+      )
+
+-- | Directory Site Settings
+--
+-- /See:/ 'newDirectorySiteSettings' smart constructor.
+data DirectorySiteSettings = DirectorySiteSettings
+  { -- | Whether this directory site has disabled active view creatives.
+    activeViewOptOut :: (Core.Maybe Core.Bool),
+    -- | Directory site Ad Manager settings.
+    dfpSettings :: (Core.Maybe DfpSettings),
+    -- | Whether this site accepts in-stream video ads.
+    instreamVideoPlacementAccepted :: (Core.Maybe Core.Bool),
+    -- | Whether this site accepts interstitial ads.
+    interstitialPlacementAccepted :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DirectorySiteSettings' with the minimum fields required to make a request.
+newDirectorySiteSettings ::
+  DirectorySiteSettings
+newDirectorySiteSettings =
+  DirectorySiteSettings
+    { activeViewOptOut = Core.Nothing,
+      dfpSettings = Core.Nothing,
+      instreamVideoPlacementAccepted = Core.Nothing,
+      interstitialPlacementAccepted = Core.Nothing
+    }
+
+instance Core.FromJSON DirectorySiteSettings where
+  parseJSON =
+    Core.withObject
+      "DirectorySiteSettings"
+      ( \o ->
+          DirectorySiteSettings
+            Core.<$> (o Core..:? "activeViewOptOut")
+            Core.<*> (o Core..:? "dfpSettings")
+            Core.<*> (o Core..:? "instreamVideoPlacementAccepted")
+            Core.<*> (o Core..:? "interstitialPlacementAccepted")
+      )
+
+instance Core.ToJSON DirectorySiteSettings where
+  toJSON DirectorySiteSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("activeViewOptOut" Core..=) Core.<$> activeViewOptOut,
+            ("dfpSettings" Core..=) Core.<$> dfpSettings,
+            ("instreamVideoPlacementAccepted" Core..=)
+              Core.<$> instreamVideoPlacementAccepted,
+            ("interstitialPlacementAccepted" Core..=)
+              Core.<$> interstitialPlacementAccepted
+          ]
+      )
+
+-- | Directory Site List Response
+--
+-- /See:/ 'newDirectorySitesListResponse' smart constructor.
+data DirectorySitesListResponse = DirectorySitesListResponse
+  { -- | Directory site collection.
+    directorySites :: (Core.Maybe [DirectorySite]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DirectorySitesListResponse' with the minimum fields required to make a request.
+newDirectorySitesListResponse ::
+  DirectorySitesListResponse
+newDirectorySitesListResponse =
+  DirectorySitesListResponse
+    { directorySites = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON DirectorySitesListResponse where
+  parseJSON =
+    Core.withObject
+      "DirectorySitesListResponse"
+      ( \o ->
+          DirectorySitesListResponse
+            Core.<$> (o Core..:? "directorySites")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON DirectorySitesListResponse where
+  toJSON DirectorySitesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("directorySites" Core..=) Core.<$> directorySites,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with Studio dynamic creatives. Use these labels instead of numeric Campaign Manager IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.
+--
+-- /See:/ 'newDynamicTargetingKey' smart constructor.
+data DynamicTargetingKey = DynamicTargetingKey
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.
+    name :: (Core.Maybe Core.Text),
+    -- | ID of the object of this dynamic targeting key. This is a required field.
+    objectId :: (Core.Maybe Core.Int64),
+    -- | Type of the object of this dynamic targeting key. This is a required field.
+    objectType :: (Core.Maybe DynamicTargetingKey_ObjectType)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DynamicTargetingKey' with the minimum fields required to make a request.
+newDynamicTargetingKey ::
+  DynamicTargetingKey
+newDynamicTargetingKey =
+  DynamicTargetingKey
+    { kind = Core.Nothing,
+      name = Core.Nothing,
+      objectId = Core.Nothing,
+      objectType = Core.Nothing
+    }
+
+instance Core.FromJSON DynamicTargetingKey where
+  parseJSON =
+    Core.withObject
+      "DynamicTargetingKey"
+      ( \o ->
+          DynamicTargetingKey
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "objectId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "objectType")
+      )
+
+instance Core.ToJSON DynamicTargetingKey where
+  toJSON DynamicTargetingKey {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("objectId" Core..=) Core.. Core.AsText Core.<$> objectId,
+            ("objectType" Core..=) Core.<$> objectType
+          ]
+      )
+
+-- | Dynamic Targeting Key List Response
+--
+-- /See:/ 'newDynamicTargetingKeysListResponse' smart constructor.
+data DynamicTargetingKeysListResponse = DynamicTargetingKeysListResponse
+  { -- | Dynamic targeting key collection.
+    dynamicTargetingKeys :: (Core.Maybe [DynamicTargetingKey]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DynamicTargetingKeysListResponse' with the minimum fields required to make a request.
+newDynamicTargetingKeysListResponse ::
+  DynamicTargetingKeysListResponse
+newDynamicTargetingKeysListResponse =
+  DynamicTargetingKeysListResponse
+    { dynamicTargetingKeys =
+        Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON DynamicTargetingKeysListResponse where
+  parseJSON =
+    Core.withObject
+      "DynamicTargetingKeysListResponse"
+      ( \o ->
+          DynamicTargetingKeysListResponse
+            Core.<$> (o Core..:? "dynamicTargetingKeys")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON DynamicTargetingKeysListResponse where
+  toJSON DynamicTargetingKeysListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dynamicTargetingKeys" Core..=) Core.<$> dynamicTargetingKeys,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | A description of how user IDs are encrypted.
+--
+-- /See:/ 'newEncryptionInfo' smart constructor.
+data EncryptionInfo = EncryptionInfo
+  { -- | The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.
+    encryptionEntityId :: (Core.Maybe Core.Int64),
+    -- | The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.
+    encryptionEntityType :: (Core.Maybe EncryptionInfo_EncryptionEntityType),
+    -- | Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.
+    encryptionSource :: (Core.Maybe EncryptionInfo_EncryptionSource),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'EncryptionInfo' with the minimum fields required to make a request.
+newEncryptionInfo ::
+  EncryptionInfo
+newEncryptionInfo =
+  EncryptionInfo
+    { encryptionEntityId = Core.Nothing,
+      encryptionEntityType = Core.Nothing,
+      encryptionSource = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON EncryptionInfo where
+  parseJSON =
+    Core.withObject
+      "EncryptionInfo"
+      ( \o ->
+          EncryptionInfo
+            Core.<$> ( o
+                         Core..:? "encryptionEntityId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "encryptionEntityType")
+            Core.<*> (o Core..:? "encryptionSource")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON EncryptionInfo where
+  toJSON EncryptionInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("encryptionEntityId" Core..=)
+              Core.. Core.AsText
+              Core.<$> encryptionEntityId,
+            ("encryptionEntityType" Core..=) Core.<$> encryptionEntityType,
+            ("encryptionSource" Core..=) Core.<$> encryptionSource,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains properties of an event tag.
+--
+-- /See:/ 'newEventTag' smart constructor.
+data EventTag = EventTag
+  { -- | Account ID of this event tag. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this event tag. This field or the campaignId field is required on insertion.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Campaign ID of this event tag. This field or the advertiserId field is required on insertion.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
+    campaignIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether this event tag should be automatically enabled for all of the advertiser\'s campaigns and ads.
+    enabledByDefault :: (Core.Maybe Core.Bool),
+    -- | Whether to remove this event tag from ads that are trafficked through Display & Video 360 to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network.
+    excludeFromAdxRequests :: (Core.Maybe Core.Bool),
+    -- | ID of this event tag. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this event tag. This is a required field and must be less than 256 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.
+    siteFilterType :: (Core.Maybe EventTag_SiteFilterType),
+    -- | Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a allowlist or blocklist filter.
+    siteIds :: (Core.Maybe [Core.Int64]),
+    -- | Whether this tag is SSL-compliant or not. This is a read-only field.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.
+    status :: (Core.Maybe EventTag_Status),
+    -- | Subaccount ID of this event tag. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.
+    type' :: (Core.Maybe EventTag_Type),
+    -- | Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion.
+    url :: (Core.Maybe Core.Text),
+    -- | Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.
+    urlEscapeLevels :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'EventTag' with the minimum fields required to make a request.
+newEventTag ::
+  EventTag
+newEventTag =
+  EventTag
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      campaignId = Core.Nothing,
+      campaignIdDimensionValue = Core.Nothing,
+      enabledByDefault = Core.Nothing,
+      excludeFromAdxRequests = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      siteFilterType = Core.Nothing,
+      siteIds = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      status = Core.Nothing,
+      subaccountId = Core.Nothing,
+      type' = Core.Nothing,
+      url = Core.Nothing,
+      urlEscapeLevels = Core.Nothing
+    }
+
+instance Core.FromJSON EventTag where
+  parseJSON =
+    Core.withObject
+      "EventTag"
+      ( \o ->
+          EventTag
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "campaignId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "campaignIdDimensionValue")
+            Core.<*> (o Core..:? "enabledByDefault")
+            Core.<*> (o Core..:? "excludeFromAdxRequests")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "siteFilterType")
+            Core.<*> ( o
+                         Core..:? "siteIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "url")
+            Core.<*> (o Core..:? "urlEscapeLevels")
+      )
+
+instance Core.ToJSON EventTag where
+  toJSON EventTag {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("campaignId" Core..=) Core.. Core.AsText Core.<$> campaignId,
+            ("campaignIdDimensionValue" Core..=)
+              Core.<$> campaignIdDimensionValue,
+            ("enabledByDefault" Core..=) Core.<$> enabledByDefault,
+            ("excludeFromAdxRequests" Core..=) Core.<$> excludeFromAdxRequests,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("siteFilterType" Core..=) Core.<$> siteFilterType,
+            ("siteIds" Core..=) Core.. Core.fmap Core.AsText Core.<$> siteIds,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("status" Core..=) Core.<$> status,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("type" Core..=) Core.<$> type',
+            ("url" Core..=) Core.<$> url,
+            ("urlEscapeLevels" Core..=) Core.<$> urlEscapeLevels
+          ]
+      )
+
+-- | Event tag override information.
+--
+-- /See:/ 'newEventTagOverride' smart constructor.
+data EventTagOverride = EventTagOverride
+  { -- | Whether this override is enabled.
+    enabled :: (Core.Maybe Core.Bool),
+    -- | ID of this event tag override. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'EventTagOverride' with the minimum fields required to make a request.
+newEventTagOverride ::
+  EventTagOverride
+newEventTagOverride =
+  EventTagOverride {enabled = Core.Nothing, id = Core.Nothing}
+
+instance Core.FromJSON EventTagOverride where
+  parseJSON =
+    Core.withObject
+      "EventTagOverride"
+      ( \o ->
+          EventTagOverride
+            Core.<$> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON EventTagOverride where
+  toJSON EventTagOverride {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enabled" Core..=) Core.<$> enabled,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id
+          ]
+      )
+
+-- | Event Tag List Response
+--
+-- /See:/ 'newEventTagsListResponse' smart constructor.
+data EventTagsListResponse = EventTagsListResponse
+  { -- | Event tag collection.
+    eventTags :: (Core.Maybe [EventTag]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'EventTagsListResponse' with the minimum fields required to make a request.
+newEventTagsListResponse ::
+  EventTagsListResponse
+newEventTagsListResponse =
+  EventTagsListResponse
+    { eventTags = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON EventTagsListResponse where
+  parseJSON =
+    Core.withObject
+      "EventTagsListResponse"
+      ( \o ->
+          EventTagsListResponse
+            Core.<$> (o Core..:? "eventTags")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON EventTagsListResponse where
+  toJSON EventTagsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("eventTags" Core..=) Core.<$> eventTags,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".
+--
+-- /See:/ 'newFile' smart constructor.
+data File = File
+  { -- | The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
+    dateRange :: (Core.Maybe DateRange),
+    -- | Etag of this resource.
+    etag :: (Core.Maybe Core.Text),
+    -- | The filename of the file.
+    fileName :: (Core.Maybe Core.Text),
+    -- | The output format of the report. Only available once the file is available.
+    format :: (Core.Maybe File_Format),
+    -- | The unique ID of this report file.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#file\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The timestamp in milliseconds since epoch when this file was last modified.
+    lastModifiedTime :: (Core.Maybe Core.Int64),
+    -- | The ID of the report this file was generated from.
+    reportId :: (Core.Maybe Core.Int64),
+    -- | The status of the report file.
+    status :: (Core.Maybe File_Status),
+    -- | The URLs where the completed report file can be downloaded.
+    urls :: (Core.Maybe File_Urls)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'File' with the minimum fields required to make a request.
+newFile ::
+  File
+newFile =
+  File
+    { dateRange = Core.Nothing,
+      etag = Core.Nothing,
+      fileName = Core.Nothing,
+      format = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedTime = Core.Nothing,
+      reportId = Core.Nothing,
+      status = Core.Nothing,
+      urls = Core.Nothing
+    }
+
+instance Core.FromJSON File where
+  parseJSON =
+    Core.withObject
+      "File"
+      ( \o ->
+          File
+            Core.<$> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "etag")
+            Core.<*> (o Core..:? "fileName")
+            Core.<*> (o Core..:? "format")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedTime" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "reportId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "urls")
+      )
+
+instance Core.ToJSON File where
+  toJSON File {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dateRange" Core..=) Core.<$> dateRange,
+            ("etag" Core..=) Core.<$> etag,
+            ("fileName" Core..=) Core.<$> fileName,
+            ("format" Core..=) Core.<$> format,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedTime" Core..=)
+              Core.. Core.AsText
+              Core.<$> lastModifiedTime,
+            ("reportId" Core..=) Core.. Core.AsText Core.<$> reportId,
+            ("status" Core..=) Core.<$> status,
+            ("urls" Core..=) Core.<$> urls
+          ]
+      )
+
+-- | The URLs where the completed report file can be downloaded.
+--
+-- /See:/ 'newFile_Urls' smart constructor.
+data File_Urls = File_Urls
+  { -- | The URL for downloading the report data through the API.
+    apiUrl :: (Core.Maybe Core.Text),
+    -- | The URL for downloading the report data through a browser.
+    browserUrl :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'File_Urls' with the minimum fields required to make a request.
+newFile_Urls ::
+  File_Urls
+newFile_Urls =
+  File_Urls {apiUrl = Core.Nothing, browserUrl = Core.Nothing}
+
+instance Core.FromJSON File_Urls where
+  parseJSON =
+    Core.withObject
+      "File_Urls"
+      ( \o ->
+          File_Urls
+            Core.<$> (o Core..:? "apiUrl")
+            Core.<*> (o Core..:? "browserUrl")
+      )
+
+instance Core.ToJSON File_Urls where
+  toJSON File_Urls {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("apiUrl" Core..=) Core.<$> apiUrl,
+            ("browserUrl" Core..=) Core.<$> browserUrl
+          ]
+      )
+
+-- | List of files for a report.
+--
+-- /See:/ 'newFileList' smart constructor.
+data FileList = FileList
+  { -- | Etag of this resource.
+    etag :: (Core.Maybe Core.Text),
+    -- | The files returned in this response.
+    items :: (Core.Maybe [File]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#fileList\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Continuation token used to page through files. To retrieve the next page of results, set the next request\'s \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FileList' with the minimum fields required to make a request.
+newFileList ::
+  FileList
+newFileList =
+  FileList
+    { etag = Core.Nothing,
+      items = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON FileList where
+  parseJSON =
+    Core.withObject
+      "FileList"
+      ( \o ->
+          FileList
+            Core.<$> (o Core..:? "etag")
+            Core.<*> (o Core..:? "items")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON FileList where
+  toJSON FileList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("etag" Core..=) Core.<$> etag,
+            ("items" Core..=) Core.<$> items,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Flight
+--
+-- /See:/ 'newFlight' smart constructor.
+data Flight = Flight
+  { endDate :: (Core.Maybe Core.Date),
+    -- | Rate or cost of this flight.
+    rateOrCost :: (Core.Maybe Core.Int64),
+    startDate :: (Core.Maybe Core.Date),
+    -- | Units of this flight.
+    units :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Flight' with the minimum fields required to make a request.
+newFlight ::
+  Flight
+newFlight =
+  Flight
+    { endDate = Core.Nothing,
+      rateOrCost = Core.Nothing,
+      startDate = Core.Nothing,
+      units = Core.Nothing
+    }
+
+instance Core.FromJSON Flight where
+  parseJSON =
+    Core.withObject
+      "Flight"
+      ( \o ->
+          Flight
+            Core.<$> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "rateOrCost" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "units" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON Flight where
+  toJSON Flight {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endDate" Core..=) Core.<$> endDate,
+            ("rateOrCost" Core..=) Core.. Core.AsText Core.<$> rateOrCost,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("units" Core..=) Core.. Core.AsText Core.<$> units
+          ]
+      )
+
+-- | Floodlight Activity GenerateTag Response
+--
+-- /See:/ 'newFloodlightActivitiesGenerateTagResponse' smart constructor.
+data FloodlightActivitiesGenerateTagResponse = FloodlightActivitiesGenerateTagResponse
+  { -- | Generated tag for this Floodlight activity. For Google tags, this is the event snippet.
+    floodlightActivityTag :: (Core.Maybe Core.Text),
+    -- | The global snippet section of a Google tag. The Google tag sets new cookies on your domain, which will store a unique identifier for a user or the ad click that brought the user to your site. Learn more.
+    globalSiteTagGlobalSnippet :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivitiesGenerateTagResponse' with the minimum fields required to make a request.
+newFloodlightActivitiesGenerateTagResponse ::
+  FloodlightActivitiesGenerateTagResponse
+newFloodlightActivitiesGenerateTagResponse =
+  FloodlightActivitiesGenerateTagResponse
+    { floodlightActivityTag =
+        Core.Nothing,
+      globalSiteTagGlobalSnippet = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivitiesGenerateTagResponse where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivitiesGenerateTagResponse"
+      ( \o ->
+          FloodlightActivitiesGenerateTagResponse
+            Core.<$> (o Core..:? "floodlightActivityTag")
+            Core.<*> (o Core..:? "globalSiteTagGlobalSnippet")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON FloodlightActivitiesGenerateTagResponse where
+  toJSON FloodlightActivitiesGenerateTagResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightActivityTag" Core..=) Core.<$> floodlightActivityTag,
+            ("globalSiteTagGlobalSnippet" Core..=)
+              Core.<$> globalSiteTagGlobalSnippet,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Floodlight Activity List Response
+--
+-- /See:/ 'newFloodlightActivitiesListResponse' smart constructor.
+data FloodlightActivitiesListResponse = FloodlightActivitiesListResponse
+  { -- | Floodlight activity collection.
+    floodlightActivities :: (Core.Maybe [FloodlightActivity]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivitiesListResponse' with the minimum fields required to make a request.
+newFloodlightActivitiesListResponse ::
+  FloodlightActivitiesListResponse
+newFloodlightActivitiesListResponse =
+  FloodlightActivitiesListResponse
+    { floodlightActivities =
+        Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivitiesListResponse where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivitiesListResponse"
+      ( \o ->
+          FloodlightActivitiesListResponse
+            Core.<$> (o Core..:? "floodlightActivities")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON FloodlightActivitiesListResponse where
+  toJSON FloodlightActivitiesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightActivities" Core..=) Core.<$> floodlightActivities,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains properties of a Floodlight activity.
+--
+-- /See:/ 'newFloodlightActivity' smart constructor.
+data FloodlightActivity = FloodlightActivity
+  { -- | Account ID of this floodlight activity. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group\'s advertiser or the existing activity\'s advertiser.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether the activity is enabled for attribution.
+    attributionEnabled :: (Core.Maybe Core.Bool),
+    -- | Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD/COUNTING or UNIQUE/COUNTING.
+    cacheBustingType :: (Core.Maybe FloodlightActivity_CacheBustingType),
+    -- | Counting method for conversions for this floodlight activity. This is a required field.
+    countingMethod :: (Core.Maybe FloodlightActivity_CountingMethod),
+    -- | Dynamic floodlight tags.
+    defaultTags :: (Core.Maybe [FloodlightActivityDynamicTag]),
+    -- | URL where this tag will be deployed. If specified, must be less than 256 characters long.
+    expectedUrl :: (Core.Maybe Core.Text),
+    -- | Floodlight activity group ID of this floodlight activity. This is a required field.
+    floodlightActivityGroupId :: (Core.Maybe Core.Int64),
+    -- | Name of the associated floodlight activity group. This is a read-only field.
+    floodlightActivityGroupName :: (Core.Maybe Core.Text),
+    -- | Tag string of the associated floodlight activity group. This is a read-only field.
+    floodlightActivityGroupTagString :: (Core.Maybe Core.Text),
+    -- | Type of the associated floodlight activity group. This is a read-only field.
+    floodlightActivityGroupType :: (Core.Maybe FloodlightActivity_FloodlightActivityGroupType),
+    -- | Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group\'s floodlight configuration or from the existing activity\'s floodlight configuration.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
+    floodlightConfigurationIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | The type of Floodlight tag this activity will generate. This is a required field.
+    floodlightTagType :: (Core.Maybe FloodlightActivity_FloodlightTagType),
+    -- | ID of this floodlight activity. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes.
+    name :: (Core.Maybe Core.Text),
+    -- | General notes or implementation instructions for the tag.
+    notes :: (Core.Maybe Core.Text),
+    -- | Publisher dynamic floodlight tags.
+    publisherTags :: (Core.Maybe [FloodlightActivityPublisherDynamicTag]),
+    -- | Whether this tag should use SSL.
+    secure :: (Core.Maybe Core.Bool),
+    -- | Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags.
+    sslCompliant :: (Core.Maybe Core.Bool),
+    -- | Whether this floodlight activity must be SSL-compliant.
+    sslRequired :: (Core.Maybe Core.Bool),
+    -- | The status of the activity. This can only be set to ACTIVE or ARCHIVED/AND/DISABLED. The ARCHIVED status is no longer supported and cannot be set for Floodlight activities. The DISABLED_POLICY status indicates that a Floodlight activity is violating Google policy. Contact your account manager for more information.
+    status :: (Core.Maybe FloodlightActivity_Status),
+    -- | Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.
+    tagFormat :: (Core.Maybe FloodlightActivity_TagFormat),
+    -- | Value of the cat= parameter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being a-z0-9[ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion.
+    tagString :: (Core.Maybe Core.Text),
+    -- | List of the user-defined variables used by this conversion tag. These map to the \"u[1-100]=\" in the tags. Each of these can have a user defined type. Acceptable values are U1 to U100, inclusive.
+    userDefinedVariableTypes :: (Core.Maybe [FloodlightActivity_UserDefinedVariableTypesItem])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivity' with the minimum fields required to make a request.
+newFloodlightActivity ::
+  FloodlightActivity
+newFloodlightActivity =
+  FloodlightActivity
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      attributionEnabled = Core.Nothing,
+      cacheBustingType = Core.Nothing,
+      countingMethod = Core.Nothing,
+      defaultTags = Core.Nothing,
+      expectedUrl = Core.Nothing,
+      floodlightActivityGroupId = Core.Nothing,
+      floodlightActivityGroupName = Core.Nothing,
+      floodlightActivityGroupTagString = Core.Nothing,
+      floodlightActivityGroupType = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      floodlightConfigurationIdDimensionValue = Core.Nothing,
+      floodlightTagType = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      notes = Core.Nothing,
+      publisherTags = Core.Nothing,
+      secure = Core.Nothing,
+      sslCompliant = Core.Nothing,
+      sslRequired = Core.Nothing,
+      status = Core.Nothing,
+      subaccountId = Core.Nothing,
+      tagFormat = Core.Nothing,
+      tagString = Core.Nothing,
+      userDefinedVariableTypes = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivity where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivity"
+      ( \o ->
+          FloodlightActivity
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "attributionEnabled")
+            Core.<*> (o Core..:? "cacheBustingType")
+            Core.<*> (o Core..:? "countingMethod")
+            Core.<*> (o Core..:? "defaultTags")
+            Core.<*> (o Core..:? "expectedUrl")
+            Core.<*> ( o
+                         Core..:? "floodlightActivityGroupId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightActivityGroupName")
+            Core.<*> (o Core..:? "floodlightActivityGroupTagString")
+            Core.<*> (o Core..:? "floodlightActivityGroupType")
+            Core.<*> ( o
+                         Core..:? "floodlightConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightConfigurationIdDimensionValue")
+            Core.<*> (o Core..:? "floodlightTagType")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "notes")
+            Core.<*> (o Core..:? "publisherTags")
+            Core.<*> (o Core..:? "secure")
+            Core.<*> (o Core..:? "sslCompliant")
+            Core.<*> (o Core..:? "sslRequired")
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "tagFormat")
+            Core.<*> (o Core..:? "tagString")
+            Core.<*> (o Core..:? "userDefinedVariableTypes")
+      )
+
+instance Core.ToJSON FloodlightActivity where
+  toJSON FloodlightActivity {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("attributionEnabled" Core..=) Core.<$> attributionEnabled,
+            ("cacheBustingType" Core..=) Core.<$> cacheBustingType,
+            ("countingMethod" Core..=) Core.<$> countingMethod,
+            ("defaultTags" Core..=) Core.<$> defaultTags,
+            ("expectedUrl" Core..=) Core.<$> expectedUrl,
+            ("floodlightActivityGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightActivityGroupId,
+            ("floodlightActivityGroupName" Core..=)
+              Core.<$> floodlightActivityGroupName,
+            ("floodlightActivityGroupTagString" Core..=)
+              Core.<$> floodlightActivityGroupTagString,
+            ("floodlightActivityGroupType" Core..=)
+              Core.<$> floodlightActivityGroupType,
+            ("floodlightConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightConfigurationId,
+            ("floodlightConfigurationIdDimensionValue" Core..=)
+              Core.<$> floodlightConfigurationIdDimensionValue,
+            ("floodlightTagType" Core..=) Core.<$> floodlightTagType,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("notes" Core..=) Core.<$> notes,
+            ("publisherTags" Core..=) Core.<$> publisherTags,
+            ("secure" Core..=) Core.<$> secure,
+            ("sslCompliant" Core..=) Core.<$> sslCompliant,
+            ("sslRequired" Core..=) Core.<$> sslRequired,
+            ("status" Core..=) Core.<$> status,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("tagFormat" Core..=) Core.<$> tagFormat,
+            ("tagString" Core..=) Core.<$> tagString,
+            ("userDefinedVariableTypes" Core..=)
+              Core.<$> userDefinedVariableTypes
+          ]
+      )
+
+-- | Dynamic Tag
+--
+-- /See:/ 'newFloodlightActivityDynamicTag' smart constructor.
+data FloodlightActivityDynamicTag = FloodlightActivityDynamicTag
+  { -- | ID of this dynamic tag. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Name of this tag.
+    name :: (Core.Maybe Core.Text),
+    -- | Tag code.
+    tag :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivityDynamicTag' with the minimum fields required to make a request.
+newFloodlightActivityDynamicTag ::
+  FloodlightActivityDynamicTag
+newFloodlightActivityDynamicTag =
+  FloodlightActivityDynamicTag
+    { id = Core.Nothing,
+      name = Core.Nothing,
+      tag = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivityDynamicTag where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivityDynamicTag"
+      ( \o ->
+          FloodlightActivityDynamicTag
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "tag")
+      )
+
+instance Core.ToJSON FloodlightActivityDynamicTag where
+  toJSON FloodlightActivityDynamicTag {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("name" Core..=) Core.<$> name,
+            ("tag" Core..=) Core.<$> tag
+          ]
+      )
+
+-- | Contains properties of a Floodlight activity group.
+--
+-- /See:/ 'newFloodlightActivityGroup' smart constructor.
+data FloodlightActivityGroup = FloodlightActivityGroup
+  { -- | Account ID of this floodlight activity group. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration\'s advertiser or from the existing activity group\'s advertiser.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Floodlight configuration ID of this floodlight activity group. This is a required field.
+    floodlightConfigurationId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field.
+    floodlightConfigurationIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | ID of this floodlight activity group. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being a-z0-9[ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion.
+    tagString :: (Core.Maybe Core.Text),
+    -- | Type of the floodlight activity group. This is a required field that is read-only after insertion.
+    type' :: (Core.Maybe FloodlightActivityGroup_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivityGroup' with the minimum fields required to make a request.
+newFloodlightActivityGroup ::
+  FloodlightActivityGroup
+newFloodlightActivityGroup =
+  FloodlightActivityGroup
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      floodlightConfigurationId = Core.Nothing,
+      floodlightConfigurationIdDimensionValue = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing,
+      tagString = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivityGroup where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivityGroup"
+      ( \o ->
+          FloodlightActivityGroup
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> ( o
+                         Core..:? "floodlightConfigurationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightConfigurationIdDimensionValue")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "tagString")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON FloodlightActivityGroup where
+  toJSON FloodlightActivityGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("floodlightConfigurationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightConfigurationId,
+            ("floodlightConfigurationIdDimensionValue" Core..=)
+              Core.<$> floodlightConfigurationIdDimensionValue,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("tagString" Core..=) Core.<$> tagString,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Floodlight Activity Group List Response
+--
+-- /See:/ 'newFloodlightActivityGroupsListResponse' smart constructor.
+data FloodlightActivityGroupsListResponse = FloodlightActivityGroupsListResponse
+  { -- | Floodlight activity group collection.
+    floodlightActivityGroups :: (Core.Maybe [FloodlightActivityGroup]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivityGroupsListResponse' with the minimum fields required to make a request.
+newFloodlightActivityGroupsListResponse ::
+  FloodlightActivityGroupsListResponse
+newFloodlightActivityGroupsListResponse =
+  FloodlightActivityGroupsListResponse
+    { floodlightActivityGroups =
+        Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivityGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivityGroupsListResponse"
+      ( \o ->
+          FloodlightActivityGroupsListResponse
+            Core.<$> (o Core..:? "floodlightActivityGroups")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON FloodlightActivityGroupsListResponse where
+  toJSON FloodlightActivityGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightActivityGroups" Core..=)
+              Core.<$> floodlightActivityGroups,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Publisher Dynamic Tag
+--
+-- /See:/ 'newFloodlightActivityPublisherDynamicTag' smart constructor.
+data FloodlightActivityPublisherDynamicTag = FloodlightActivityPublisherDynamicTag
+  { -- | Whether this tag is applicable only for click-throughs.
+    clickThrough :: (Core.Maybe Core.Bool),
+    -- | Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.
+    directorySiteId :: (Core.Maybe Core.Int64),
+    -- | Dynamic floodlight tag.
+    dynamicTag :: (Core.Maybe FloodlightActivityDynamicTag),
+    -- | Site ID of this dynamic tag.
+    siteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the site. This is a read-only, auto-generated field.
+    siteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether this tag is applicable only for view-throughs.
+    viewThrough :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightActivityPublisherDynamicTag' with the minimum fields required to make a request.
+newFloodlightActivityPublisherDynamicTag ::
+  FloodlightActivityPublisherDynamicTag
+newFloodlightActivityPublisherDynamicTag =
+  FloodlightActivityPublisherDynamicTag
+    { clickThrough =
+        Core.Nothing,
+      directorySiteId = Core.Nothing,
+      dynamicTag = Core.Nothing,
+      siteId = Core.Nothing,
+      siteIdDimensionValue = Core.Nothing,
+      viewThrough = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightActivityPublisherDynamicTag where
+  parseJSON =
+    Core.withObject
+      "FloodlightActivityPublisherDynamicTag"
+      ( \o ->
+          FloodlightActivityPublisherDynamicTag
+            Core.<$> (o Core..:? "clickThrough")
+            Core.<*> (o Core..:? "directorySiteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dynamicTag")
+            Core.<*> (o Core..:? "siteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "siteIdDimensionValue")
+            Core.<*> (o Core..:? "viewThrough")
+      )
+
+instance Core.ToJSON FloodlightActivityPublisherDynamicTag where
+  toJSON FloodlightActivityPublisherDynamicTag {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickThrough" Core..=) Core.<$> clickThrough,
+            ("directorySiteId" Core..=)
+              Core.. Core.AsText
+              Core.<$> directorySiteId,
+            ("dynamicTag" Core..=) Core.<$> dynamicTag,
+            ("siteId" Core..=) Core.. Core.AsText Core.<$> siteId,
+            ("siteIdDimensionValue" Core..=) Core.<$> siteIdDimensionValue,
+            ("viewThrough" Core..=) Core.<$> viewThrough
+          ]
+      )
+
+-- | Contains properties of a Floodlight configuration.
+--
+-- /See:/ 'newFloodlightConfiguration' smart constructor.
+data FloodlightConfiguration = FloodlightConfiguration
+  { -- | Account ID of this floodlight configuration. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of the parent advertiser of this floodlight configuration.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether advertiser data is shared with Google Analytics.
+    analyticsDataSharingEnabled :: (Core.Maybe Core.Bool),
+    -- | Custom Viewability metric for the floodlight configuration.
+    customViewabilityMetric :: (Core.Maybe CustomViewabilityMetric),
+    -- | Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
+    exposureToConversionEnabled :: (Core.Maybe Core.Bool),
+    firstDayOfWeek :: (Core.Maybe FloodlightConfiguration_FirstDayOfWeek),
+    -- | ID of this floodlight configuration. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether in-app attribution tracking is enabled.
+    inAppAttributionTrackingEnabled :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Lookback window settings for this floodlight configuration.
+    lookbackConfiguration :: (Core.Maybe LookbackConfiguration),
+    -- | Types of attribution options for natural search conversions.
+    naturalSearchConversionAttributionOption ::
+      ( Core.Maybe
+          FloodlightConfiguration_NaturalSearchConversionAttributionOption
+      ),
+    -- | Settings for Campaign Manager Omniture integration.
+    omnitureSettings :: (Core.Maybe OmnitureSettings),
+    -- | Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Configuration settings for dynamic and image floodlight tags.
+    tagSettings :: (Core.Maybe TagSettings),
+    -- | List of third-party authentication tokens enabled for this configuration.
+    thirdPartyAuthenticationTokens :: (Core.Maybe [ThirdPartyAuthenticationToken]),
+    -- | List of user defined variables enabled for this configuration.
+    userDefinedVariableConfigurations :: (Core.Maybe [UserDefinedVariableConfiguration])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightConfiguration' with the minimum fields required to make a request.
+newFloodlightConfiguration ::
+  FloodlightConfiguration
+newFloodlightConfiguration =
+  FloodlightConfiguration
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      analyticsDataSharingEnabled = Core.Nothing,
+      customViewabilityMetric = Core.Nothing,
+      exposureToConversionEnabled = Core.Nothing,
+      firstDayOfWeek = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      inAppAttributionTrackingEnabled = Core.Nothing,
+      kind = Core.Nothing,
+      lookbackConfiguration = Core.Nothing,
+      naturalSearchConversionAttributionOption = Core.Nothing,
+      omnitureSettings = Core.Nothing,
+      subaccountId = Core.Nothing,
+      tagSettings = Core.Nothing,
+      thirdPartyAuthenticationTokens = Core.Nothing,
+      userDefinedVariableConfigurations = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightConfiguration where
+  parseJSON =
+    Core.withObject
+      "FloodlightConfiguration"
+      ( \o ->
+          FloodlightConfiguration
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "analyticsDataSharingEnabled")
+            Core.<*> (o Core..:? "customViewabilityMetric")
+            Core.<*> (o Core..:? "exposureToConversionEnabled")
+            Core.<*> (o Core..:? "firstDayOfWeek")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "inAppAttributionTrackingEnabled")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lookbackConfiguration")
+            Core.<*> (o Core..:? "naturalSearchConversionAttributionOption")
+            Core.<*> (o Core..:? "omnitureSettings")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "tagSettings")
+            Core.<*> (o Core..:? "thirdPartyAuthenticationTokens")
+            Core.<*> (o Core..:? "userDefinedVariableConfigurations")
+      )
+
+instance Core.ToJSON FloodlightConfiguration where
+  toJSON FloodlightConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("analyticsDataSharingEnabled" Core..=)
+              Core.<$> analyticsDataSharingEnabled,
+            ("customViewabilityMetric" Core..=)
+              Core.<$> customViewabilityMetric,
+            ("exposureToConversionEnabled" Core..=)
+              Core.<$> exposureToConversionEnabled,
+            ("firstDayOfWeek" Core..=) Core.<$> firstDayOfWeek,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("inAppAttributionTrackingEnabled" Core..=)
+              Core.<$> inAppAttributionTrackingEnabled,
+            ("kind" Core..=) Core.<$> kind,
+            ("lookbackConfiguration" Core..=) Core.<$> lookbackConfiguration,
+            ("naturalSearchConversionAttributionOption" Core..=)
+              Core.<$> naturalSearchConversionAttributionOption,
+            ("omnitureSettings" Core..=) Core.<$> omnitureSettings,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("tagSettings" Core..=) Core.<$> tagSettings,
+            ("thirdPartyAuthenticationTokens" Core..=)
+              Core.<$> thirdPartyAuthenticationTokens,
+            ("userDefinedVariableConfigurations" Core..=)
+              Core.<$> userDefinedVariableConfigurations
+          ]
+      )
+
+-- | Floodlight Configuration List Response
+--
+-- /See:/ 'newFloodlightConfigurationsListResponse' smart constructor.
+data FloodlightConfigurationsListResponse = FloodlightConfigurationsListResponse
+  { -- | Floodlight configuration collection.
+    floodlightConfigurations :: (Core.Maybe [FloodlightConfiguration]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightConfigurationsListResponse' with the minimum fields required to make a request.
+newFloodlightConfigurationsListResponse ::
+  FloodlightConfigurationsListResponse
+newFloodlightConfigurationsListResponse =
+  FloodlightConfigurationsListResponse
+    { floodlightConfigurations =
+        Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightConfigurationsListResponse where
+  parseJSON =
+    Core.withObject
+      "FloodlightConfigurationsListResponse"
+      ( \o ->
+          FloodlightConfigurationsListResponse
+            Core.<$> (o Core..:? "floodlightConfigurations")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON FloodlightConfigurationsListResponse where
+  toJSON FloodlightConfigurationsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightConfigurations" Core..=)
+              Core.<$> floodlightConfigurations,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".
+--
+-- /See:/ 'newFloodlightReportCompatibleFields' smart constructor.
+data FloodlightReportCompatibleFields = FloodlightReportCompatibleFields
+  { -- | Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.
+    dimensionFilters :: (Core.Maybe [Dimension]),
+    -- | Dimensions which are compatible to be selected in the \"dimensions\" section of the report.
+    dimensions :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FloodlightReportCompatibleFields' with the minimum fields required to make a request.
+newFloodlightReportCompatibleFields ::
+  FloodlightReportCompatibleFields
+newFloodlightReportCompatibleFields =
+  FloodlightReportCompatibleFields
+    { dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing
+    }
+
+instance Core.FromJSON FloodlightReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "FloodlightReportCompatibleFields"
+      ( \o ->
+          FloodlightReportCompatibleFields
+            Core.<$> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+      )
+
+instance Core.ToJSON FloodlightReportCompatibleFields where
+  toJSON FloodlightReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics
+          ]
+      )
+
+-- | Frequency Cap.
+--
+-- /See:/ 'newFrequencyCap' smart constructor.
+data FrequencyCap = FrequencyCap
+  { -- | Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days. Acceptable values are 1 to 7776000, inclusive.
+    duration :: (Core.Maybe Core.Int64),
+    -- | Number of times an individual user can be served the ad within the specified duration. Acceptable values are 1 to 15, inclusive.
+    impressions :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FrequencyCap' with the minimum fields required to make a request.
+newFrequencyCap ::
+  FrequencyCap
+newFrequencyCap =
+  FrequencyCap {duration = Core.Nothing, impressions = Core.Nothing}
+
+instance Core.FromJSON FrequencyCap where
+  parseJSON =
+    Core.withObject
+      "FrequencyCap"
+      ( \o ->
+          FrequencyCap
+            Core.<$> (o Core..:? "duration" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "impressions" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON FrequencyCap where
+  toJSON FrequencyCap {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("duration" Core..=) Core.. Core.AsText Core.<$> duration,
+            ("impressions" Core..=) Core.. Core.AsText Core.<$> impressions
+          ]
+      )
+
+-- | FsCommand.
+--
+-- /See:/ 'newFsCommand' smart constructor.
+data FsCommand = FsCommand
+  { -- | Distance from the left of the browser.Applicable when positionOption is DISTANCE/FROM/TOP/LEFT/CORNER.
+    left :: (Core.Maybe Core.Int32),
+    -- | Position in the browser where the window will open.
+    positionOption :: (Core.Maybe FsCommand_PositionOption),
+    -- | Distance from the top of the browser. Applicable when positionOption is DISTANCE/FROM/TOP/LEFT/CORNER.
+    top :: (Core.Maybe Core.Int32),
+    -- | Height of the window.
+    windowHeight :: (Core.Maybe Core.Int32),
+    -- | Width of the window.
+    windowWidth :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FsCommand' with the minimum fields required to make a request.
+newFsCommand ::
+  FsCommand
+newFsCommand =
+  FsCommand
+    { left = Core.Nothing,
+      positionOption = Core.Nothing,
+      top = Core.Nothing,
+      windowHeight = Core.Nothing,
+      windowWidth = Core.Nothing
+    }
+
+instance Core.FromJSON FsCommand where
+  parseJSON =
+    Core.withObject
+      "FsCommand"
+      ( \o ->
+          FsCommand
+            Core.<$> (o Core..:? "left")
+            Core.<*> (o Core..:? "positionOption")
+            Core.<*> (o Core..:? "top")
+            Core.<*> (o Core..:? "windowHeight")
+            Core.<*> (o Core..:? "windowWidth")
+      )
+
+instance Core.ToJSON FsCommand where
+  toJSON FsCommand {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("left" Core..=) Core.<$> left,
+            ("positionOption" Core..=) Core.<$> positionOption,
+            ("top" Core..=) Core.<$> top,
+            ("windowHeight" Core..=) Core.<$> windowHeight,
+            ("windowWidth" Core..=) Core.<$> windowWidth
+          ]
+      )
+
+-- | Geographical Targeting.
+--
+-- /See:/ 'newGeoTargeting' smart constructor.
+data GeoTargeting = GeoTargeting
+  { -- | Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.
+    cities :: (Core.Maybe [City]),
+    -- | Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.
+    countries :: (Core.Maybe [Country]),
+    -- | Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad.
+    excludeCountries :: (Core.Maybe Core.Bool),
+    -- | Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.
+    metros :: (Core.Maybe [Metro]),
+    -- | Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.
+    postalCodes :: (Core.Maybe [PostalCode]),
+    -- | Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.
+    regions :: (Core.Maybe [Region])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'GeoTargeting' with the minimum fields required to make a request.
+newGeoTargeting ::
+  GeoTargeting
+newGeoTargeting =
+  GeoTargeting
+    { cities = Core.Nothing,
+      countries = Core.Nothing,
+      excludeCountries = Core.Nothing,
+      metros = Core.Nothing,
+      postalCodes = Core.Nothing,
+      regions = Core.Nothing
+    }
+
+instance Core.FromJSON GeoTargeting where
+  parseJSON =
+    Core.withObject
+      "GeoTargeting"
+      ( \o ->
+          GeoTargeting
+            Core.<$> (o Core..:? "cities")
+            Core.<*> (o Core..:? "countries")
+            Core.<*> (o Core..:? "excludeCountries")
+            Core.<*> (o Core..:? "metros")
+            Core.<*> (o Core..:? "postalCodes")
+            Core.<*> (o Core..:? "regions")
+      )
+
+instance Core.ToJSON GeoTargeting where
+  toJSON GeoTargeting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("cities" Core..=) Core.<$> cities,
+            ("countries" Core..=) Core.<$> countries,
+            ("excludeCountries" Core..=) Core.<$> excludeCountries,
+            ("metros" Core..=) Core.<$> metros,
+            ("postalCodes" Core..=) Core.<$> postalCodes,
+            ("regions" Core..=) Core.<$> regions
+          ]
+      )
+
+-- | Represents a buy from the Planning inventory store.
+--
+-- /See:/ 'newInventoryItem' smart constructor.
+data InventoryItem = InventoryItem
+  { -- | Account ID of this inventory item.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.
+    adSlots :: (Core.Maybe [AdSlot]),
+    -- | Advertiser ID of this inventory item.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Content category ID of this inventory item.
+    contentCategoryId :: (Core.Maybe Core.Int64),
+    -- | Estimated click-through rate of this inventory item.
+    estimatedClickThroughRate :: (Core.Maybe Core.Int64),
+    -- | Estimated conversion rate of this inventory item.
+    estimatedConversionRate :: (Core.Maybe Core.Int64),
+    -- | ID of this inventory item.
+    id :: (Core.Maybe Core.Int64),
+    -- | Whether this inventory item is in plan.
+    inPlan :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this inventory item.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots.
+    name :: (Core.Maybe Core.Text),
+    -- | Negotiation channel ID of this inventory item.
+    negotiationChannelId :: (Core.Maybe Core.Int64),
+    -- | Order ID of this inventory item.
+    orderId :: (Core.Maybe Core.Int64),
+    -- | Placement strategy ID of this inventory item.
+    placementStrategyId :: (Core.Maybe Core.Int64),
+    -- | Pricing of this inventory item.
+    pricing :: (Core.Maybe Pricing),
+    -- | Project ID of this inventory item.
+    projectId :: (Core.Maybe Core.Int64),
+    -- | RFP ID of this inventory item.
+    rfpId :: (Core.Maybe Core.Int64),
+    -- | ID of the site this inventory item is associated with.
+    siteId :: (Core.Maybe Core.Int64),
+    -- | Subaccount ID of this inventory item.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Type of inventory item.
+    type' :: (Core.Maybe InventoryItem_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'InventoryItem' with the minimum fields required to make a request.
+newInventoryItem ::
+  InventoryItem
+newInventoryItem =
+  InventoryItem
+    { accountId = Core.Nothing,
+      adSlots = Core.Nothing,
+      advertiserId = Core.Nothing,
+      contentCategoryId = Core.Nothing,
+      estimatedClickThroughRate = Core.Nothing,
+      estimatedConversionRate = Core.Nothing,
+      id = Core.Nothing,
+      inPlan = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      name = Core.Nothing,
+      negotiationChannelId = Core.Nothing,
+      orderId = Core.Nothing,
+      placementStrategyId = Core.Nothing,
+      pricing = Core.Nothing,
+      projectId = Core.Nothing,
+      rfpId = Core.Nothing,
+      siteId = Core.Nothing,
+      subaccountId = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON InventoryItem where
+  parseJSON =
+    Core.withObject
+      "InventoryItem"
+      ( \o ->
+          InventoryItem
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "adSlots")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "contentCategoryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "estimatedClickThroughRate"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> ( o
+                         Core..:? "estimatedConversionRate"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "inPlan")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "negotiationChannelId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "orderId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "placementStrategyId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "pricing")
+            Core.<*> (o Core..:? "projectId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "rfpId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "siteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON InventoryItem where
+  toJSON InventoryItem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("adSlots" Core..=) Core.<$> adSlots,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("contentCategoryId" Core..=)
+              Core.. Core.AsText
+              Core.<$> contentCategoryId,
+            ("estimatedClickThroughRate" Core..=)
+              Core.. Core.AsText
+              Core.<$> estimatedClickThroughRate,
+            ("estimatedConversionRate" Core..=)
+              Core.. Core.AsText
+              Core.<$> estimatedConversionRate,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("inPlan" Core..=) Core.<$> inPlan,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("name" Core..=) Core.<$> name,
+            ("negotiationChannelId" Core..=)
+              Core.. Core.AsText
+              Core.<$> negotiationChannelId,
+            ("orderId" Core..=) Core.. Core.AsText Core.<$> orderId,
+            ("placementStrategyId" Core..=)
+              Core.. Core.AsText
+              Core.<$> placementStrategyId,
+            ("pricing" Core..=) Core.<$> pricing,
+            ("projectId" Core..=) Core.. Core.AsText Core.<$> projectId,
+            ("rfpId" Core..=) Core.. Core.AsText Core.<$> rfpId,
+            ("siteId" Core..=) Core.. Core.AsText Core.<$> siteId,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | Inventory item List Response
+--
+-- /See:/ 'newInventoryItemsListResponse' smart constructor.
+data InventoryItemsListResponse = InventoryItemsListResponse
+  { -- | Inventory item collection
+    inventoryItems :: (Core.Maybe [InventoryItem]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'InventoryItemsListResponse' with the minimum fields required to make a request.
+newInventoryItemsListResponse ::
+  InventoryItemsListResponse
+newInventoryItemsListResponse =
+  InventoryItemsListResponse
+    { inventoryItems = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON InventoryItemsListResponse where
+  parseJSON =
+    Core.withObject
+      "InventoryItemsListResponse"
+      ( \o ->
+          InventoryItemsListResponse
+            Core.<$> (o Core..:? "inventoryItems")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON InventoryItemsListResponse where
+  toJSON InventoryItemsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("inventoryItems" Core..=) Core.<$> inventoryItems,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains information about a single invoice
+--
+-- /See:/ 'newInvoice' smart constructor.
+data Invoice = Invoice
+  { -- | The list of summarized campaign information associated with this invoice.
+    campaignSummaries :: (Core.Maybe [CampaignSummary]),
+    -- | The originally issued invoice that is being adjusted by this invoice, if applicable. May appear on invoice PDF as /Reference invoice number/.
+    correctedInvoiceId :: (Core.Maybe Core.Text),
+    -- | Invoice currency code in ISO 4217 format.
+    currencyCode :: (Core.Maybe Core.Text),
+    -- | The invoice due date.
+    dueDate :: (Core.Maybe Core.Text),
+    -- | ID of this invoice.
+    id :: (Core.Maybe Core.Text),
+    -- | The type of invoice document.
+    invoiceType :: (Core.Maybe Invoice_InvoiceType),
+    -- | The date when the invoice was issued.
+    issueDate :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#invoice\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The ID of the payments account the invoice belongs to. Appears on the invoice PDF as /Billing Account Number/.
+    paymentsAccountId :: (Core.Maybe Core.Text),
+    -- | The ID of the payments profile the invoice belongs to. Appears on the invoice PDF as /Billing ID/.
+    paymentsProfileId :: (Core.Maybe Core.Text),
+    -- | The URL to download a PDF copy of the invoice. Note that this URL is user specific and requires a valid OAuth 2.0 access token to access. The access token must be provided in an /Authorization: Bearer/ HTTP header. The URL will only be usable for 7 days from when the api is called.
+    pdfUrl :: (Core.Maybe Core.Text),
+    -- | Purchase order number associated with the invoice.
+    purchaseOrderNumber :: (Core.Maybe Core.Text),
+    -- | The originally issued invoice(s) that is being cancelled by this invoice, if applicable. May appear on invoice PDF as /Replaced invoice numbers/. Note: There may be multiple replaced invoices due to consolidation of multiple invoices into a single invoice.
+    replacedInvoiceIds :: (Core.Maybe [Core.Text]),
+    -- | The invoice service end date.
+    serviceEndDate :: (Core.Maybe Core.Text),
+    -- | The invoice service start date.
+    serviceStartDate :: (Core.Maybe Core.Text),
+    -- | The pre-tax subtotal amount, in micros of the invoice\'s currency.
+    subtotalAmountMicros :: (Core.Maybe Core.Int64),
+    -- | The invoice total amount, in micros of the invoice\'s currency.
+    totalAmountMicros :: (Core.Maybe Core.Int64),
+    -- | The sum of all taxes in invoice, in micros of the invoice\'s currency.
+    totalTaxAmountMicros :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Invoice' with the minimum fields required to make a request.
+newInvoice ::
+  Invoice
+newInvoice =
+  Invoice
+    { campaignSummaries = Core.Nothing,
+      correctedInvoiceId = Core.Nothing,
+      currencyCode = Core.Nothing,
+      dueDate = Core.Nothing,
+      id = Core.Nothing,
+      invoiceType = Core.Nothing,
+      issueDate = Core.Nothing,
+      kind = Core.Nothing,
+      paymentsAccountId = Core.Nothing,
+      paymentsProfileId = Core.Nothing,
+      pdfUrl = Core.Nothing,
+      purchaseOrderNumber = Core.Nothing,
+      replacedInvoiceIds = Core.Nothing,
+      serviceEndDate = Core.Nothing,
+      serviceStartDate = Core.Nothing,
+      subtotalAmountMicros = Core.Nothing,
+      totalAmountMicros = Core.Nothing,
+      totalTaxAmountMicros = Core.Nothing
+    }
+
+instance Core.FromJSON Invoice where
+  parseJSON =
+    Core.withObject
+      "Invoice"
+      ( \o ->
+          Invoice
+            Core.<$> (o Core..:? "campaign_summaries")
+            Core.<*> (o Core..:? "correctedInvoiceId")
+            Core.<*> (o Core..:? "currencyCode")
+            Core.<*> (o Core..:? "dueDate")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "invoiceType")
+            Core.<*> (o Core..:? "issueDate")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "paymentsAccountId")
+            Core.<*> (o Core..:? "paymentsProfileId")
+            Core.<*> (o Core..:? "pdfUrl")
+            Core.<*> (o Core..:? "purchaseOrderNumber")
+            Core.<*> (o Core..:? "replacedInvoiceIds")
+            Core.<*> (o Core..:? "serviceEndDate")
+            Core.<*> (o Core..:? "serviceStartDate")
+            Core.<*> ( o
+                         Core..:? "subtotalAmountMicros"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "totalAmountMicros" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "totalTaxAmountMicros"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON Invoice where
+  toJSON Invoice {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("campaign_summaries" Core..=) Core.<$> campaignSummaries,
+            ("correctedInvoiceId" Core..=) Core.<$> correctedInvoiceId,
+            ("currencyCode" Core..=) Core.<$> currencyCode,
+            ("dueDate" Core..=) Core.<$> dueDate,
+            ("id" Core..=) Core.<$> id,
+            ("invoiceType" Core..=) Core.<$> invoiceType,
+            ("issueDate" Core..=) Core.<$> issueDate,
+            ("kind" Core..=) Core.<$> kind,
+            ("paymentsAccountId" Core..=) Core.<$> paymentsAccountId,
+            ("paymentsProfileId" Core..=) Core.<$> paymentsProfileId,
+            ("pdfUrl" Core..=) Core.<$> pdfUrl,
+            ("purchaseOrderNumber" Core..=) Core.<$> purchaseOrderNumber,
+            ("replacedInvoiceIds" Core..=) Core.<$> replacedInvoiceIds,
+            ("serviceEndDate" Core..=) Core.<$> serviceEndDate,
+            ("serviceStartDate" Core..=) Core.<$> serviceStartDate,
+            ("subtotalAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> subtotalAmountMicros,
+            ("totalAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> totalAmountMicros,
+            ("totalTaxAmountMicros" Core..=)
+              Core.. Core.AsText
+              Core.<$> totalTaxAmountMicros
+          ]
+      )
+
+-- | Key Value Targeting Expression.
+--
+-- /See:/ 'newKeyValueTargetingExpression' smart constructor.
+newtype KeyValueTargetingExpression = KeyValueTargetingExpression
+  { -- | Keyword expression being targeted by the ad.
+    expression :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'KeyValueTargetingExpression' with the minimum fields required to make a request.
+newKeyValueTargetingExpression ::
+  KeyValueTargetingExpression
+newKeyValueTargetingExpression =
+  KeyValueTargetingExpression {expression = Core.Nothing}
+
+instance Core.FromJSON KeyValueTargetingExpression where
+  parseJSON =
+    Core.withObject
+      "KeyValueTargetingExpression"
+      ( \o ->
+          KeyValueTargetingExpression Core.<$> (o Core..:? "expression")
+      )
+
+instance Core.ToJSON KeyValueTargetingExpression where
+  toJSON KeyValueTargetingExpression {..} =
+    Core.object
+      (Core.catMaybes [("expression" Core..=) Core.<$> expression])
+
+-- | Contains information about where a user\'s browser is taken after the user clicks an ad.
+--
+-- /See:/ 'newLandingPage' smart constructor.
+data LandingPage = LandingPage
+  { -- | Advertiser ID of this landing page. This is a required field.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Whether this landing page has been archived.
+    archived :: (Core.Maybe Core.Bool),
+    -- | Links that will direct the user to a mobile app, if installed.
+    deepLinks :: (Core.Maybe [DeepLink]),
+    -- | ID of this landing page. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this landing page. This is a required field. It must be less than 256 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | URL of this landing page. This is a required field.
+    url :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'LandingPage' with the minimum fields required to make a request.
+newLandingPage ::
+  LandingPage
+newLandingPage =
+  LandingPage
+    { advertiserId = Core.Nothing,
+      archived = Core.Nothing,
+      deepLinks = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      url = Core.Nothing
+    }
+
+instance Core.FromJSON LandingPage where
+  parseJSON =
+    Core.withObject
+      "LandingPage"
+      ( \o ->
+          LandingPage
+            Core.<$> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "archived")
+            Core.<*> (o Core..:? "deepLinks")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "url")
+      )
+
+instance Core.ToJSON LandingPage where
+  toJSON LandingPage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("archived" Core..=) Core.<$> archived,
+            ("deepLinks" Core..=) Core.<$> deepLinks,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("url" Core..=) Core.<$> url
+          ]
+      )
+
+-- | Contains information about a language that can be targeted by ads.
+--
+-- /See:/ 'newLanguage' smart constructor.
+data Language = Language
+  { -- | Language ID of this language. This is the ID used for targeting and generating reports.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese.
+    languageCode :: (Core.Maybe Core.Text),
+    -- | Name of this language.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Language' with the minimum fields required to make a request.
+newLanguage ::
+  Language
+newLanguage =
+  Language
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      languageCode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON Language where
+  parseJSON =
+    Core.withObject
+      "Language"
+      ( \o ->
+          Language
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "languageCode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Language where
+  toJSON Language {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("languageCode" Core..=) Core.<$> languageCode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Language Targeting.
+--
+-- /See:/ 'newLanguageTargeting' smart constructor.
+newtype LanguageTargeting = LanguageTargeting
+  { -- | Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.
+    languages :: (Core.Maybe [Language])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'LanguageTargeting' with the minimum fields required to make a request.
+newLanguageTargeting ::
+  LanguageTargeting
+newLanguageTargeting = LanguageTargeting {languages = Core.Nothing}
+
+instance Core.FromJSON LanguageTargeting where
+  parseJSON =
+    Core.withObject
+      "LanguageTargeting"
+      (\o -> LanguageTargeting Core.<$> (o Core..:? "languages"))
+
+instance Core.ToJSON LanguageTargeting where
+  toJSON LanguageTargeting {..} =
+    Core.object
+      (Core.catMaybes [("languages" Core..=) Core.<$> languages])
+
+-- | Language List Response
+--
+-- /See:/ 'newLanguagesListResponse' smart constructor.
+data LanguagesListResponse = LanguagesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Language collection.
+    languages :: (Core.Maybe [Language])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'LanguagesListResponse' with the minimum fields required to make a request.
+newLanguagesListResponse ::
+  LanguagesListResponse
+newLanguagesListResponse =
+  LanguagesListResponse
+    { kind = Core.Nothing,
+      languages = Core.Nothing
+    }
+
+instance Core.FromJSON LanguagesListResponse where
+  parseJSON =
+    Core.withObject
+      "LanguagesListResponse"
+      ( \o ->
+          LanguagesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "languages")
+      )
+
+instance Core.ToJSON LanguagesListResponse where
+  toJSON LanguagesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("languages" Core..=) Core.<$> languages
+          ]
+      )
+
+-- | Modification timestamp.
+--
+-- /See:/ 'newLastModifiedInfo' smart constructor.
+newtype LastModifiedInfo = LastModifiedInfo
+  { -- | Timestamp of the last change in milliseconds since epoch.
+    time :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'LastModifiedInfo' with the minimum fields required to make a request.
+newLastModifiedInfo ::
+  LastModifiedInfo
+newLastModifiedInfo = LastModifiedInfo {time = Core.Nothing}
+
+instance Core.FromJSON LastModifiedInfo where
+  parseJSON =
+    Core.withObject
+      "LastModifiedInfo"
+      ( \o ->
+          LastModifiedInfo
+            Core.<$> (o Core..:? "time" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON LastModifiedInfo where
+  toJSON LastModifiedInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [("time" Core..=) Core.. Core.AsText Core.<$> time]
+      )
+
+-- | A group clause made up of list population terms representing constraints joined by ORs.
+--
+-- /See:/ 'newListPopulationClause' smart constructor.
+newtype ListPopulationClause = ListPopulationClause
+  { -- | Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.
+    terms :: (Core.Maybe [ListPopulationTerm])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListPopulationClause' with the minimum fields required to make a request.
+newListPopulationClause ::
+  ListPopulationClause
+newListPopulationClause =
+  ListPopulationClause {terms = Core.Nothing}
+
+instance Core.FromJSON ListPopulationClause where
+  parseJSON =
+    Core.withObject
+      "ListPopulationClause"
+      (\o -> ListPopulationClause Core.<$> (o Core..:? "terms"))
+
+instance Core.ToJSON ListPopulationClause where
+  toJSON ListPopulationClause {..} =
+    Core.object (Core.catMaybes [("terms" Core..=) Core.<$> terms])
+
+-- | Remarketing List Population Rule.
+--
+-- /See:/ 'newListPopulationRule' smart constructor.
+data ListPopulationRule = ListPopulationRule
+  { -- | Floodlight activity ID associated with this rule. This field can be left blank.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | Name of floodlight activity associated with this rule. This is a read-only, auto-generated field.
+    floodlightActivityName :: (Core.Maybe Core.Text),
+    -- | Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.
+    listPopulationClauses :: (Core.Maybe [ListPopulationClause])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListPopulationRule' with the minimum fields required to make a request.
+newListPopulationRule ::
+  ListPopulationRule
+newListPopulationRule =
+  ListPopulationRule
+    { floodlightActivityId = Core.Nothing,
+      floodlightActivityName = Core.Nothing,
+      listPopulationClauses = Core.Nothing
+    }
+
+instance Core.FromJSON ListPopulationRule where
+  parseJSON =
+    Core.withObject
+      "ListPopulationRule"
+      ( \o ->
+          ListPopulationRule
+            Core.<$> ( o
+                         Core..:? "floodlightActivityId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightActivityName")
+            Core.<*> (o Core..:? "listPopulationClauses")
+      )
+
+instance Core.ToJSON ListPopulationRule where
+  toJSON ListPopulationRule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightActivityId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightActivityId,
+            ("floodlightActivityName" Core..=) Core.<$> floodlightActivityName,
+            ("listPopulationClauses" Core..=) Core.<$> listPopulationClauses
+          ]
+      )
+
+-- | Remarketing List Population Rule Term.
+--
+-- /See:/ 'newListPopulationTerm' smart constructor.
+data ListPopulationTerm = ListPopulationTerm
+  { -- | Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST/MEMBERSHIP/TERM. False by default.
+    contains :: (Core.Maybe Core.Bool),
+    -- | Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM/VARIABLE/TERM or REFERRER_TERM.
+    negation :: (Core.Maybe Core.Bool),
+    -- | Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM/VARIABLE/TERM or REFERRER_TERM.
+    operator :: (Core.Maybe ListPopulationTerm_Operator),
+    -- | ID of the list in question. This field is only relevant when type is set to LIST/MEMBERSHIP/TERM.
+    remarketingListId :: (Core.Maybe Core.Int64),
+    -- | List population term type determines the applicable fields in this object. If left unset or set to CUSTOM/VARIABLE/TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST/MEMBERSHIP/TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.
+    type' :: (Core.Maybe ListPopulationTerm_Type),
+    -- | Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM/VARIABLE/TERM or REFERRER_TERM.
+    value :: (Core.Maybe Core.Text),
+    -- | Friendly name of this term\'s variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM/VARIABLE/TERM.
+    variableFriendlyName :: (Core.Maybe Core.Text),
+    -- | Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM/VARIABLE/TERM or REFERRER_TERM.
+    variableName :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListPopulationTerm' with the minimum fields required to make a request.
+newListPopulationTerm ::
+  ListPopulationTerm
+newListPopulationTerm =
+  ListPopulationTerm
+    { contains = Core.Nothing,
+      negation = Core.Nothing,
+      operator = Core.Nothing,
+      remarketingListId = Core.Nothing,
+      type' = Core.Nothing,
+      value = Core.Nothing,
+      variableFriendlyName = Core.Nothing,
+      variableName = Core.Nothing
+    }
+
+instance Core.FromJSON ListPopulationTerm where
+  parseJSON =
+    Core.withObject
+      "ListPopulationTerm"
+      ( \o ->
+          ListPopulationTerm
+            Core.<$> (o Core..:? "contains")
+            Core.<*> (o Core..:? "negation")
+            Core.<*> (o Core..:? "operator")
+            Core.<*> (o Core..:? "remarketingListId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "value")
+            Core.<*> (o Core..:? "variableFriendlyName")
+            Core.<*> (o Core..:? "variableName")
+      )
+
+instance Core.ToJSON ListPopulationTerm where
+  toJSON ListPopulationTerm {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contains" Core..=) Core.<$> contains,
+            ("negation" Core..=) Core.<$> negation,
+            ("operator" Core..=) Core.<$> operator,
+            ("remarketingListId" Core..=)
+              Core.. Core.AsText
+              Core.<$> remarketingListId,
+            ("type" Core..=) Core.<$> type',
+            ("value" Core..=) Core.<$> value,
+            ("variableFriendlyName" Core..=) Core.<$> variableFriendlyName,
+            ("variableName" Core..=) Core.<$> variableName
+          ]
+      )
+
+-- | Remarketing List Targeting Expression.
+--
+-- /See:/ 'newListTargetingExpression' smart constructor.
+newtype ListTargetingExpression = ListTargetingExpression
+  { -- | Expression describing which lists are being targeted by the ad.
+    expression :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListTargetingExpression' with the minimum fields required to make a request.
+newListTargetingExpression ::
+  ListTargetingExpression
+newListTargetingExpression =
+  ListTargetingExpression {expression = Core.Nothing}
+
+instance Core.FromJSON ListTargetingExpression where
+  parseJSON =
+    Core.withObject
+      "ListTargetingExpression"
+      (\o -> ListTargetingExpression Core.<$> (o Core..:? "expression"))
+
+instance Core.ToJSON ListTargetingExpression where
+  toJSON ListTargetingExpression {..} =
+    Core.object
+      (Core.catMaybes [("expression" Core..=) Core.<$> expression])
+
+-- | Lookback configuration settings.
+--
+-- /See:/ 'newLookbackConfiguration' smart constructor.
+data LookbackConfiguration = LookbackConfiguration
+  { -- | Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.
+    clickDuration :: (Core.Maybe Core.Int32),
+    -- | Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used. Acceptable values are 0 to 90, inclusive.
+    postImpressionActivitiesDuration :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'LookbackConfiguration' with the minimum fields required to make a request.
+newLookbackConfiguration ::
+  LookbackConfiguration
+newLookbackConfiguration =
+  LookbackConfiguration
+    { clickDuration = Core.Nothing,
+      postImpressionActivitiesDuration = Core.Nothing
+    }
+
+instance Core.FromJSON LookbackConfiguration where
+  parseJSON =
+    Core.withObject
+      "LookbackConfiguration"
+      ( \o ->
+          LookbackConfiguration
+            Core.<$> (o Core..:? "clickDuration")
+            Core.<*> (o Core..:? "postImpressionActivitiesDuration")
+      )
+
+instance Core.ToJSON LookbackConfiguration where
+  toJSON LookbackConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickDuration" Core..=) Core.<$> clickDuration,
+            ("postImpressionActivitiesDuration" Core..=)
+              Core.<$> postImpressionActivitiesDuration
+          ]
+      )
+
+--
+-- /See:/ 'newMeasurementPartnerAdvertiserLink' smart constructor.
+data MeasurementPartnerAdvertiserLink = MeasurementPartnerAdvertiserLink
+  { -- | Status of the partner link.
+    linkStatus :: (Core.Maybe MeasurementPartnerAdvertiserLink_LinkStatus),
+    -- | Measurement partner used for tag wrapping.
+    measurementPartner :: (Core.Maybe MeasurementPartnerAdvertiserLink_MeasurementPartner),
+    -- | partner Advertiser Id.
+    partnerAdvertiserId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MeasurementPartnerAdvertiserLink' with the minimum fields required to make a request.
+newMeasurementPartnerAdvertiserLink ::
+  MeasurementPartnerAdvertiserLink
+newMeasurementPartnerAdvertiserLink =
+  MeasurementPartnerAdvertiserLink
+    { linkStatus = Core.Nothing,
+      measurementPartner = Core.Nothing,
+      partnerAdvertiserId = Core.Nothing
+    }
+
+instance Core.FromJSON MeasurementPartnerAdvertiserLink where
+  parseJSON =
+    Core.withObject
+      "MeasurementPartnerAdvertiserLink"
+      ( \o ->
+          MeasurementPartnerAdvertiserLink
+            Core.<$> (o Core..:? "linkStatus")
+            Core.<*> (o Core..:? "measurementPartner")
+            Core.<*> (o Core..:? "partnerAdvertiserId")
+      )
+
+instance Core.ToJSON MeasurementPartnerAdvertiserLink where
+  toJSON MeasurementPartnerAdvertiserLink {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("linkStatus" Core..=) Core.<$> linkStatus,
+            ("measurementPartner" Core..=) Core.<$> measurementPartner,
+            ("partnerAdvertiserId" Core..=) Core.<$> partnerAdvertiserId
+          ]
+      )
+
+--
+-- /See:/ 'newMeasurementPartnerCampaignLink' smart constructor.
+data MeasurementPartnerCampaignLink = MeasurementPartnerCampaignLink
+  { -- | .
+    linkStatus :: (Core.Maybe MeasurementPartnerCampaignLink_LinkStatus),
+    -- | Measurement partner used for tag wrapping.
+    measurementPartner :: (Core.Maybe MeasurementPartnerCampaignLink_MeasurementPartner),
+    -- | Partner campaign ID needed for establishing linking with Measurement partner.
+    partnerCampaignId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MeasurementPartnerCampaignLink' with the minimum fields required to make a request.
+newMeasurementPartnerCampaignLink ::
+  MeasurementPartnerCampaignLink
+newMeasurementPartnerCampaignLink =
+  MeasurementPartnerCampaignLink
+    { linkStatus = Core.Nothing,
+      measurementPartner = Core.Nothing,
+      partnerCampaignId = Core.Nothing
+    }
+
+instance Core.FromJSON MeasurementPartnerCampaignLink where
+  parseJSON =
+    Core.withObject
+      "MeasurementPartnerCampaignLink"
+      ( \o ->
+          MeasurementPartnerCampaignLink
+            Core.<$> (o Core..:? "linkStatus")
+            Core.<*> (o Core..:? "measurementPartner")
+            Core.<*> (o Core..:? "partnerCampaignId")
+      )
+
+instance Core.ToJSON MeasurementPartnerCampaignLink where
+  toJSON MeasurementPartnerCampaignLink {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("linkStatus" Core..=) Core.<$> linkStatus,
+            ("measurementPartner" Core..=) Core.<$> measurementPartner,
+            ("partnerCampaignId" Core..=) Core.<$> partnerCampaignId
+          ]
+      )
+
+-- | Placement tag wrapping
+--
+-- /See:/ 'newMeasurementPartnerWrappingData' smart constructor.
+data MeasurementPartnerWrappingData = MeasurementPartnerWrappingData
+  { -- | Placement wrapping status.
+    linkStatus :: (Core.Maybe MeasurementPartnerWrappingData_LinkStatus),
+    -- | Measurement partner used for wrapping the placement.
+    measurementPartner :: (Core.Maybe MeasurementPartnerWrappingData_MeasurementPartner),
+    -- | Measurement mode for the wrapped placement.
+    tagWrappingMode :: (Core.Maybe MeasurementPartnerWrappingData_TagWrappingMode),
+    -- | Tag provided by the measurement partner during wrapping.
+    wrappedTag :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MeasurementPartnerWrappingData' with the minimum fields required to make a request.
+newMeasurementPartnerWrappingData ::
+  MeasurementPartnerWrappingData
+newMeasurementPartnerWrappingData =
+  MeasurementPartnerWrappingData
+    { linkStatus = Core.Nothing,
+      measurementPartner = Core.Nothing,
+      tagWrappingMode = Core.Nothing,
+      wrappedTag = Core.Nothing
+    }
+
+instance Core.FromJSON MeasurementPartnerWrappingData where
+  parseJSON =
+    Core.withObject
+      "MeasurementPartnerWrappingData"
+      ( \o ->
+          MeasurementPartnerWrappingData
+            Core.<$> (o Core..:? "linkStatus")
+            Core.<*> (o Core..:? "measurementPartner")
+            Core.<*> (o Core..:? "tagWrappingMode")
+            Core.<*> (o Core..:? "wrappedTag")
+      )
+
+instance Core.ToJSON MeasurementPartnerWrappingData where
+  toJSON MeasurementPartnerWrappingData {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("linkStatus" Core..=) Core.<$> linkStatus,
+            ("measurementPartner" Core..=) Core.<$> measurementPartner,
+            ("tagWrappingMode" Core..=) Core.<$> tagWrappingMode,
+            ("wrappedTag" Core..=) Core.<$> wrappedTag
+          ]
+      )
+
+-- | Represents a metric.
+--
+-- /See:/ 'newMetric' smart constructor.
+data Metric = Metric
+  { -- | The kind of resource this is, in this case dfareporting#metric.
+    kind :: (Core.Maybe Core.Text),
+    -- | The metric name, e.g. impressions
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Metric' with the minimum fields required to make a request.
+newMetric ::
+  Metric
+newMetric = Metric {kind = Core.Nothing, name = Core.Nothing}
+
+instance Core.FromJSON Metric where
+  parseJSON =
+    Core.withObject
+      "Metric"
+      ( \o ->
+          Metric Core.<$> (o Core..:? "kind") Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Metric where
+  toJSON Metric {..} =
+    Core.object
+      ( Core.catMaybes
+          [("kind" Core..=) Core.<$> kind, ("name" Core..=) Core.<$> name]
+      )
+
+-- | Contains information about a metro region that can be targeted by ads.
+--
+-- /See:/ 'newMetro' smart constructor.
+data Metro = Metro
+  { -- | Country code of the country to which this metro region belongs.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the country to which this metro region belongs.
+    countryDartId :: (Core.Maybe Core.Int64),
+    -- | DART ID of this metro region.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.
+    dmaId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Metro code of this metro region. This is equivalent to dma_id.
+    metroCode :: (Core.Maybe Core.Text),
+    -- | Name of this metro region.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Metro' with the minimum fields required to make a request.
+newMetro ::
+  Metro
+newMetro =
+  Metro
+    { countryCode = Core.Nothing,
+      countryDartId = Core.Nothing,
+      dartId = Core.Nothing,
+      dmaId = Core.Nothing,
+      kind = Core.Nothing,
+      metroCode = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON Metro where
+  parseJSON =
+    Core.withObject
+      "Metro"
+      ( \o ->
+          Metro
+            Core.<$> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "countryDartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dmaId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metroCode")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Metro where
+  toJSON Metro {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countryCode" Core..=) Core.<$> countryCode,
+            ("countryDartId" Core..=)
+              Core.. Core.AsText
+              Core.<$> countryDartId,
+            ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("dmaId" Core..=) Core.. Core.AsText Core.<$> dmaId,
+            ("kind" Core..=) Core.<$> kind,
+            ("metroCode" Core..=) Core.<$> metroCode,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Metro List Response
+--
+-- /See:/ 'newMetrosListResponse' smart constructor.
+data MetrosListResponse = MetrosListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Metro collection.
+    metros :: (Core.Maybe [Metro])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MetrosListResponse' with the minimum fields required to make a request.
+newMetrosListResponse ::
+  MetrosListResponse
+newMetrosListResponse =
+  MetrosListResponse {kind = Core.Nothing, metros = Core.Nothing}
+
+instance Core.FromJSON MetrosListResponse where
+  parseJSON =
+    Core.withObject
+      "MetrosListResponse"
+      ( \o ->
+          MetrosListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metros")
+      )
+
+instance Core.ToJSON MetrosListResponse where
+  toJSON MetrosListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("metros" Core..=) Core.<$> metros
+          ]
+      )
+
+-- | Contains information about a mobile app. Used as a landing page deep link.
+--
+-- /See:/ 'newMobileApp' smart constructor.
+data MobileApp = MobileApp
+  { -- | Mobile app directory.
+    directory :: (Core.Maybe MobileApp_Directory),
+    -- | ID of this mobile app.
+    id :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileApp\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Publisher name.
+    publisherName :: (Core.Maybe Core.Text),
+    -- | Title of this mobile app.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileApp' with the minimum fields required to make a request.
+newMobileApp ::
+  MobileApp
+newMobileApp =
+  MobileApp
+    { directory = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      publisherName = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance Core.FromJSON MobileApp where
+  parseJSON =
+    Core.withObject
+      "MobileApp"
+      ( \o ->
+          MobileApp
+            Core.<$> (o Core..:? "directory")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "publisherName")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON MobileApp where
+  toJSON MobileApp {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("directory" Core..=) Core.<$> directory,
+            ("id" Core..=) Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("publisherName" Core..=) Core.<$> publisherName,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Mobile app List Response
+--
+-- /See:/ 'newMobileAppsListResponse' smart constructor.
+data MobileAppsListResponse = MobileAppsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileAppsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Mobile apps collection.
+    mobileApps :: (Core.Maybe [MobileApp]),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileAppsListResponse' with the minimum fields required to make a request.
+newMobileAppsListResponse ::
+  MobileAppsListResponse
+newMobileAppsListResponse =
+  MobileAppsListResponse
+    { kind = Core.Nothing,
+      mobileApps = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON MobileAppsListResponse where
+  parseJSON =
+    Core.withObject
+      "MobileAppsListResponse"
+      ( \o ->
+          MobileAppsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "mobileApps")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON MobileAppsListResponse where
+  toJSON MobileAppsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("mobileApps" Core..=) Core.<$> mobileApps,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Contains information about a mobile carrier that can be targeted by ads.
+--
+-- /See:/ 'newMobileCarrier' smart constructor.
+data MobileCarrier = MobileCarrier
+  { -- | Country code of the country to which this mobile carrier belongs.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the country to which this mobile carrier belongs.
+    countryDartId :: (Core.Maybe Core.Int64),
+    -- | ID of this mobile carrier.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this mobile carrier.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileCarrier' with the minimum fields required to make a request.
+newMobileCarrier ::
+  MobileCarrier
+newMobileCarrier =
+  MobileCarrier
+    { countryCode = Core.Nothing,
+      countryDartId = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON MobileCarrier where
+  parseJSON =
+    Core.withObject
+      "MobileCarrier"
+      ( \o ->
+          MobileCarrier
+            Core.<$> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "countryDartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON MobileCarrier where
+  toJSON MobileCarrier {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countryCode" Core..=) Core.<$> countryCode,
+            ("countryDartId" Core..=)
+              Core.. Core.AsText
+              Core.<$> countryDartId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Mobile Carrier List Response
+--
+-- /See:/ 'newMobileCarriersListResponse' smart constructor.
+data MobileCarriersListResponse = MobileCarriersListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Mobile carrier collection.
+    mobileCarriers :: (Core.Maybe [MobileCarrier])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileCarriersListResponse' with the minimum fields required to make a request.
+newMobileCarriersListResponse ::
+  MobileCarriersListResponse
+newMobileCarriersListResponse =
+  MobileCarriersListResponse
+    { kind = Core.Nothing,
+      mobileCarriers = Core.Nothing
+    }
+
+instance Core.FromJSON MobileCarriersListResponse where
+  parseJSON =
+    Core.withObject
+      "MobileCarriersListResponse"
+      ( \o ->
+          MobileCarriersListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "mobileCarriers")
+      )
+
+instance Core.ToJSON MobileCarriersListResponse where
+  toJSON MobileCarriersListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("mobileCarriers" Core..=) Core.<$> mobileCarriers
+          ]
+      )
+
+-- | Online Behavioral Advertiser icon.
+--
+-- /See:/ 'newObaIcon' smart constructor.
+data ObaIcon = ObaIcon
+  { -- | URL to redirect to when an OBA icon is clicked.
+    iconClickThroughUrl :: (Core.Maybe Core.Text),
+    -- | URL to track click when an OBA icon is clicked.
+    iconClickTrackingUrl :: (Core.Maybe Core.Text),
+    -- | URL to track view when an OBA icon is clicked.
+    iconViewTrackingUrl :: (Core.Maybe Core.Text),
+    -- | Identifies the industry initiative that the icon supports. For example, AdChoices.
+    program :: (Core.Maybe Core.Text),
+    -- | OBA icon resource URL. Campaign Manager only supports image and JavaScript icons. Learn more
+    resourceUrl :: (Core.Maybe Core.Text),
+    -- | OBA icon size.
+    size :: (Core.Maybe Size),
+    -- | OBA icon x coordinate position. Accepted values are left or right.
+    xPosition :: (Core.Maybe Core.Text),
+    -- | OBA icon y coordinate position. Accepted values are top or bottom.
+    yPosition :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ObaIcon' with the minimum fields required to make a request.
+newObaIcon ::
+  ObaIcon
+newObaIcon =
+  ObaIcon
+    { iconClickThroughUrl = Core.Nothing,
+      iconClickTrackingUrl = Core.Nothing,
+      iconViewTrackingUrl = Core.Nothing,
+      program = Core.Nothing,
+      resourceUrl = Core.Nothing,
+      size = Core.Nothing,
+      xPosition = Core.Nothing,
+      yPosition = Core.Nothing
+    }
+
+instance Core.FromJSON ObaIcon where
+  parseJSON =
+    Core.withObject
+      "ObaIcon"
+      ( \o ->
+          ObaIcon
+            Core.<$> (o Core..:? "iconClickThroughUrl")
+            Core.<*> (o Core..:? "iconClickTrackingUrl")
+            Core.<*> (o Core..:? "iconViewTrackingUrl")
+            Core.<*> (o Core..:? "program")
+            Core.<*> (o Core..:? "resourceUrl")
+            Core.<*> (o Core..:? "size")
+            Core.<*> (o Core..:? "xPosition")
+            Core.<*> (o Core..:? "yPosition")
+      )
+
+instance Core.ToJSON ObaIcon where
+  toJSON ObaIcon {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("iconClickThroughUrl" Core..=) Core.<$> iconClickThroughUrl,
+            ("iconClickTrackingUrl" Core..=) Core.<$> iconClickTrackingUrl,
+            ("iconViewTrackingUrl" Core..=) Core.<$> iconViewTrackingUrl,
+            ("program" Core..=) Core.<$> program,
+            ("resourceUrl" Core..=) Core.<$> resourceUrl,
+            ("size" Core..=) Core.<$> size,
+            ("xPosition" Core..=) Core.<$> xPosition,
+            ("yPosition" Core..=) Core.<$> yPosition
+          ]
+      )
+
+-- | Object Filter.
+--
+-- /See:/ 'newObjectFilter' smart constructor.
+data ObjectFilter = ObjectFilter
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Applicable when status is ASSIGNED. The user has access to objects with these object IDs.
+    objectIds :: (Core.Maybe [Core.Int64]),
+    -- | Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.
+    status :: (Core.Maybe ObjectFilter_Status)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ObjectFilter' with the minimum fields required to make a request.
+newObjectFilter ::
+  ObjectFilter
+newObjectFilter =
+  ObjectFilter
+    { kind = Core.Nothing,
+      objectIds = Core.Nothing,
+      status = Core.Nothing
+    }
+
+instance Core.FromJSON ObjectFilter where
+  parseJSON =
+    Core.withObject
+      "ObjectFilter"
+      ( \o ->
+          ObjectFilter
+            Core.<$> (o Core..:? "kind")
+            Core.<*> ( o
+                         Core..:? "objectIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "status")
+      )
+
+instance Core.ToJSON ObjectFilter where
+  toJSON ObjectFilter {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("objectIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> objectIds,
+            ("status" Core..=) Core.<$> status
+          ]
+      )
+
+-- | Identify a user by name and address.
+--
+-- /See:/ 'newOfflineUserAddressInfo' smart constructor.
+data OfflineUserAddressInfo = OfflineUserAddressInfo
+  { -- | City of the address.
+    city :: (Core.Maybe Core.Text),
+    -- | 2-letter country code in ISO-3166-1 alpha-2 of the user\'s address.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | First name of the user, which is hashed as SHA-256 after normalized (Lowercase all characters; Remove any extra spaces before, after, and in between).
+    hashedFirstName :: (Core.Maybe Core.Text),
+    -- | Last name of the user, which is hashed as SHA-256 after normalized (lower case only and no punctuation).
+    hashedLastName :: (Core.Maybe Core.Text),
+    -- | The street address of the user hashed using SHA-256 hash function after normalization (lower case only).
+    hashedStreetAddress :: (Core.Maybe Core.Text),
+    -- | Postal code of the user\'s address.
+    postalCode :: (Core.Maybe Core.Text),
+    -- | State code of the address.
+    state :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OfflineUserAddressInfo' with the minimum fields required to make a request.
+newOfflineUserAddressInfo ::
+  OfflineUserAddressInfo
+newOfflineUserAddressInfo =
+  OfflineUserAddressInfo
+    { city = Core.Nothing,
+      countryCode = Core.Nothing,
+      hashedFirstName = Core.Nothing,
+      hashedLastName = Core.Nothing,
+      hashedStreetAddress = Core.Nothing,
+      postalCode = Core.Nothing,
+      state = Core.Nothing
+    }
+
+instance Core.FromJSON OfflineUserAddressInfo where
+  parseJSON =
+    Core.withObject
+      "OfflineUserAddressInfo"
+      ( \o ->
+          OfflineUserAddressInfo
+            Core.<$> (o Core..:? "city")
+            Core.<*> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "hashedFirstName")
+            Core.<*> (o Core..:? "hashedLastName")
+            Core.<*> (o Core..:? "hashedStreetAddress")
+            Core.<*> (o Core..:? "postalCode")
+            Core.<*> (o Core..:? "state")
+      )
+
+instance Core.ToJSON OfflineUserAddressInfo where
+  toJSON OfflineUserAddressInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("city" Core..=) Core.<$> city,
+            ("countryCode" Core..=) Core.<$> countryCode,
+            ("hashedFirstName" Core..=) Core.<$> hashedFirstName,
+            ("hashedLastName" Core..=) Core.<$> hashedLastName,
+            ("hashedStreetAddress" Core..=) Core.<$> hashedStreetAddress,
+            ("postalCode" Core..=) Core.<$> postalCode,
+            ("state" Core..=) Core.<$> state
+          ]
+      )
+
+-- | Offset Position.
+--
+-- /See:/ 'newOffsetPosition' smart constructor.
+data OffsetPosition = OffsetPosition
+  { -- | Offset distance from left side of an asset or a window.
+    left :: (Core.Maybe Core.Int32),
+    -- | Offset distance from top side of an asset or a window.
+    top :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OffsetPosition' with the minimum fields required to make a request.
+newOffsetPosition ::
+  OffsetPosition
+newOffsetPosition =
+  OffsetPosition {left = Core.Nothing, top = Core.Nothing}
+
+instance Core.FromJSON OffsetPosition where
+  parseJSON =
+    Core.withObject
+      "OffsetPosition"
+      ( \o ->
+          OffsetPosition
+            Core.<$> (o Core..:? "left")
+            Core.<*> (o Core..:? "top")
+      )
+
+instance Core.ToJSON OffsetPosition where
+  toJSON OffsetPosition {..} =
+    Core.object
+      ( Core.catMaybes
+          [("left" Core..=) Core.<$> left, ("top" Core..=) Core.<$> top]
+      )
+
+-- | Omniture Integration Settings.
+--
+-- /See:/ 'newOmnitureSettings' smart constructor.
+data OmnitureSettings = OmnitureSettings
+  { -- | Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true.
+    omnitureCostDataEnabled :: (Core.Maybe Core.Bool),
+    -- | Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled.
+    omnitureIntegrationEnabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OmnitureSettings' with the minimum fields required to make a request.
+newOmnitureSettings ::
+  OmnitureSettings
+newOmnitureSettings =
+  OmnitureSettings
+    { omnitureCostDataEnabled = Core.Nothing,
+      omnitureIntegrationEnabled = Core.Nothing
+    }
+
+instance Core.FromJSON OmnitureSettings where
+  parseJSON =
+    Core.withObject
+      "OmnitureSettings"
+      ( \o ->
+          OmnitureSettings
+            Core.<$> (o Core..:? "omnitureCostDataEnabled")
+            Core.<*> (o Core..:? "omnitureIntegrationEnabled")
+      )
+
+instance Core.ToJSON OmnitureSettings where
+  toJSON OmnitureSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("omnitureCostDataEnabled" Core..=)
+              Core.<$> omnitureCostDataEnabled,
+            ("omnitureIntegrationEnabled" Core..=)
+              Core.<$> omnitureIntegrationEnabled
+          ]
+      )
+
+-- | Contains information about an operating system that can be targeted by ads.
+--
+-- /See:/ 'newOperatingSystem' smart constructor.
+data OperatingSystem = OperatingSystem
+  { -- | DART ID of this operating system. This is the ID used for targeting.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | Whether this operating system is for desktop.
+    desktop :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Whether this operating system is for mobile.
+    mobile :: (Core.Maybe Core.Bool),
+    -- | Name of this operating system.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OperatingSystem' with the minimum fields required to make a request.
+newOperatingSystem ::
+  OperatingSystem
+newOperatingSystem =
+  OperatingSystem
+    { dartId = Core.Nothing,
+      desktop = Core.Nothing,
+      kind = Core.Nothing,
+      mobile = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON OperatingSystem where
+  parseJSON =
+    Core.withObject
+      "OperatingSystem"
+      ( \o ->
+          OperatingSystem
+            Core.<$> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "desktop")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "mobile")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON OperatingSystem where
+  toJSON OperatingSystem {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("desktop" Core..=) Core.<$> desktop,
+            ("kind" Core..=) Core.<$> kind,
+            ("mobile" Core..=) Core.<$> mobile,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Contains information about a particular version of an operating system that can be targeted by ads.
+--
+-- /See:/ 'newOperatingSystemVersion' smart constructor.
+data OperatingSystemVersion = OperatingSystemVersion
+  { -- | ID of this operating system version.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Major version (leftmost number) of this operating system version.
+    majorVersion :: (Core.Maybe Core.Text),
+    -- | Minor version (number after the first dot) of this operating system version.
+    minorVersion :: (Core.Maybe Core.Text),
+    -- | Name of this operating system version.
+    name :: (Core.Maybe Core.Text),
+    -- | Operating system of this operating system version.
+    operatingSystem :: (Core.Maybe OperatingSystem)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OperatingSystemVersion' with the minimum fields required to make a request.
+newOperatingSystemVersion ::
+  OperatingSystemVersion
+newOperatingSystemVersion =
+  OperatingSystemVersion
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      majorVersion = Core.Nothing,
+      minorVersion = Core.Nothing,
+      name = Core.Nothing,
+      operatingSystem = Core.Nothing
+    }
+
+instance Core.FromJSON OperatingSystemVersion where
+  parseJSON =
+    Core.withObject
+      "OperatingSystemVersion"
+      ( \o ->
+          OperatingSystemVersion
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "majorVersion")
+            Core.<*> (o Core..:? "minorVersion")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "operatingSystem")
+      )
+
+instance Core.ToJSON OperatingSystemVersion where
+  toJSON OperatingSystemVersion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("majorVersion" Core..=) Core.<$> majorVersion,
+            ("minorVersion" Core..=) Core.<$> minorVersion,
+            ("name" Core..=) Core.<$> name,
+            ("operatingSystem" Core..=) Core.<$> operatingSystem
+          ]
+      )
+
+-- | Operating System Version List Response
+--
+-- /See:/ 'newOperatingSystemVersionsListResponse' smart constructor.
+data OperatingSystemVersionsListResponse = OperatingSystemVersionsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Operating system version collection.
+    operatingSystemVersions :: (Core.Maybe [OperatingSystemVersion])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OperatingSystemVersionsListResponse' with the minimum fields required to make a request.
+newOperatingSystemVersionsListResponse ::
+  OperatingSystemVersionsListResponse
+newOperatingSystemVersionsListResponse =
+  OperatingSystemVersionsListResponse
+    { kind = Core.Nothing,
+      operatingSystemVersions = Core.Nothing
+    }
+
+instance Core.FromJSON OperatingSystemVersionsListResponse where
+  parseJSON =
+    Core.withObject
+      "OperatingSystemVersionsListResponse"
+      ( \o ->
+          OperatingSystemVersionsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "operatingSystemVersions")
+      )
+
+instance Core.ToJSON OperatingSystemVersionsListResponse where
+  toJSON OperatingSystemVersionsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("operatingSystemVersions" Core..=)
+              Core.<$> operatingSystemVersions
+          ]
+      )
+
+-- | Operating System List Response
+--
+-- /See:/ 'newOperatingSystemsListResponse' smart constructor.
+data OperatingSystemsListResponse = OperatingSystemsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Operating system collection.
+    operatingSystems :: (Core.Maybe [OperatingSystem])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OperatingSystemsListResponse' with the minimum fields required to make a request.
+newOperatingSystemsListResponse ::
+  OperatingSystemsListResponse
+newOperatingSystemsListResponse =
+  OperatingSystemsListResponse
+    { kind = Core.Nothing,
+      operatingSystems = Core.Nothing
+    }
+
+instance Core.FromJSON OperatingSystemsListResponse where
+  parseJSON =
+    Core.withObject
+      "OperatingSystemsListResponse"
+      ( \o ->
+          OperatingSystemsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "operatingSystems")
+      )
+
+instance Core.ToJSON OperatingSystemsListResponse where
+  toJSON OperatingSystemsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("operatingSystems" Core..=) Core.<$> operatingSystems
+          ]
+      )
+
+-- | Creative optimization activity.
+--
+-- /See:/ 'newOptimizationActivity' smart constructor.
+data OptimizationActivity = OptimizationActivity
+  { -- | Floodlight activity ID of this optimization activity. This is a required field.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field.
+    floodlightActivityIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Weight associated with this optimization. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities. Value must be greater than or equal to 1.
+    weight :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OptimizationActivity' with the minimum fields required to make a request.
+newOptimizationActivity ::
+  OptimizationActivity
+newOptimizationActivity =
+  OptimizationActivity
+    { floodlightActivityId = Core.Nothing,
+      floodlightActivityIdDimensionValue = Core.Nothing,
+      weight = Core.Nothing
+    }
+
+instance Core.FromJSON OptimizationActivity where
+  parseJSON =
+    Core.withObject
+      "OptimizationActivity"
+      ( \o ->
+          OptimizationActivity
+            Core.<$> ( o
+                         Core..:? "floodlightActivityId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "floodlightActivityIdDimensionValue")
+            Core.<*> (o Core..:? "weight")
+      )
+
+instance Core.ToJSON OptimizationActivity where
+  toJSON OptimizationActivity {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("floodlightActivityId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightActivityId,
+            ("floodlightActivityIdDimensionValue" Core..=)
+              Core.<$> floodlightActivityIdDimensionValue,
+            ("weight" Core..=) Core.<$> weight
+          ]
+      )
+
+-- | Describes properties of a Planning order.
+--
+-- /See:/ 'newOrder' smart constructor.
+data Order = Order
+  { -- | Account ID of this order.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this order.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | IDs for users that have to approve documents created for this order.
+    approverUserProfileIds :: (Core.Maybe [Core.Int64]),
+    -- | Buyer invoice ID associated with this order.
+    buyerInvoiceId :: (Core.Maybe Core.Text),
+    -- | Name of the buyer organization.
+    buyerOrganizationName :: (Core.Maybe Core.Text),
+    -- | Comments in this order.
+    comments :: (Core.Maybe Core.Text),
+    -- | Contacts for this order.
+    contacts :: (Core.Maybe [OrderContact]),
+    -- | ID of this order. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this order.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Name of this order.
+    name :: (Core.Maybe Core.Text),
+    -- | Notes of this order.
+    notes :: (Core.Maybe Core.Text),
+    -- | ID of the terms and conditions template used in this order.
+    planningTermId :: (Core.Maybe Core.Int64),
+    -- | Project ID of this order.
+    projectId :: (Core.Maybe Core.Int64),
+    -- | Seller order ID associated with this order.
+    sellerOrderId :: (Core.Maybe Core.Text),
+    -- | Name of the seller organization.
+    sellerOrganizationName :: (Core.Maybe Core.Text),
+    -- | Site IDs this order is associated with.
+    siteId :: (Core.Maybe [Core.Int64]),
+    -- | Free-form site names this order is associated with.
+    siteNames :: (Core.Maybe [Core.Text]),
+    -- | Subaccount ID of this order.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Terms and conditions of this order.
+    termsAndConditions :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Order' with the minimum fields required to make a request.
+newOrder ::
+  Order
+newOrder =
+  Order
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      approverUserProfileIds = Core.Nothing,
+      buyerInvoiceId = Core.Nothing,
+      buyerOrganizationName = Core.Nothing,
+      comments = Core.Nothing,
+      contacts = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      name = Core.Nothing,
+      notes = Core.Nothing,
+      planningTermId = Core.Nothing,
+      projectId = Core.Nothing,
+      sellerOrderId = Core.Nothing,
+      sellerOrganizationName = Core.Nothing,
+      siteId = Core.Nothing,
+      siteNames = Core.Nothing,
+      subaccountId = Core.Nothing,
+      termsAndConditions = Core.Nothing
+    }
+
+instance Core.FromJSON Order where
+  parseJSON =
+    Core.withObject
+      "Order"
+      ( \o ->
+          Order
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "approverUserProfileIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "buyerInvoiceId")
+            Core.<*> (o Core..:? "buyerOrganizationName")
+            Core.<*> (o Core..:? "comments")
+            Core.<*> (o Core..:? "contacts")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "notes")
+            Core.<*> (o Core..:? "planningTermId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "projectId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "sellerOrderId")
+            Core.<*> (o Core..:? "sellerOrganizationName")
+            Core.<*> ( o
+                         Core..:? "siteId"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "siteNames")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "termsAndConditions")
+      )
+
+instance Core.ToJSON Order where
+  toJSON Order {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("approverUserProfileIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> approverUserProfileIds,
+            ("buyerInvoiceId" Core..=) Core.<$> buyerInvoiceId,
+            ("buyerOrganizationName" Core..=) Core.<$> buyerOrganizationName,
+            ("comments" Core..=) Core.<$> comments,
+            ("contacts" Core..=) Core.<$> contacts,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("name" Core..=) Core.<$> name,
+            ("notes" Core..=) Core.<$> notes,
+            ("planningTermId" Core..=)
+              Core.. Core.AsText
+              Core.<$> planningTermId,
+            ("projectId" Core..=) Core.. Core.AsText Core.<$> projectId,
+            ("sellerOrderId" Core..=) Core.<$> sellerOrderId,
+            ("sellerOrganizationName" Core..=) Core.<$> sellerOrganizationName,
+            ("siteId" Core..=) Core.. Core.fmap Core.AsText Core.<$> siteId,
+            ("siteNames" Core..=) Core.<$> siteNames,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("termsAndConditions" Core..=) Core.<$> termsAndConditions
+          ]
+      )
+
+-- | Contact of an order.
+--
+-- /See:/ 'newOrderContact' smart constructor.
+data OrderContact = OrderContact
+  { -- | Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID.
+    contactInfo :: (Core.Maybe Core.Text),
+    -- | Name of this contact.
+    contactName :: (Core.Maybe Core.Text),
+    -- | Title of this contact.
+    contactTitle :: (Core.Maybe Core.Text),
+    -- | Type of this contact.
+    contactType :: (Core.Maybe OrderContact_ContactType),
+    -- | ID of the user profile containing the signature that will be embedded into order documents.
+    signatureUserProfileId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OrderContact' with the minimum fields required to make a request.
+newOrderContact ::
+  OrderContact
+newOrderContact =
+  OrderContact
+    { contactInfo = Core.Nothing,
+      contactName = Core.Nothing,
+      contactTitle = Core.Nothing,
+      contactType = Core.Nothing,
+      signatureUserProfileId = Core.Nothing
+    }
+
+instance Core.FromJSON OrderContact where
+  parseJSON =
+    Core.withObject
+      "OrderContact"
+      ( \o ->
+          OrderContact
+            Core.<$> (o Core..:? "contactInfo")
+            Core.<*> (o Core..:? "contactName")
+            Core.<*> (o Core..:? "contactTitle")
+            Core.<*> (o Core..:? "contactType")
+            Core.<*> ( o
+                         Core..:? "signatureUserProfileId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON OrderContact where
+  toJSON OrderContact {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("contactInfo" Core..=) Core.<$> contactInfo,
+            ("contactName" Core..=) Core.<$> contactName,
+            ("contactTitle" Core..=) Core.<$> contactTitle,
+            ("contactType" Core..=) Core.<$> contactType,
+            ("signatureUserProfileId" Core..=)
+              Core.. Core.AsText
+              Core.<$> signatureUserProfileId
+          ]
+      )
+
+-- | Order List Response
+--
+-- /See:/ 'newOrdersListResponse' smart constructor.
+data OrdersListResponse = OrdersListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Order collection.
+    orders :: (Core.Maybe [Order])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'OrdersListResponse' with the minimum fields required to make a request.
+newOrdersListResponse ::
+  OrdersListResponse
+newOrdersListResponse =
+  OrdersListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      orders = Core.Nothing
+    }
+
+instance Core.FromJSON OrdersListResponse where
+  parseJSON =
+    Core.withObject
+      "OrdersListResponse"
+      ( \o ->
+          OrdersListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "orders")
+      )
+
+instance Core.ToJSON OrdersListResponse where
+  toJSON OrdersListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("orders" Core..=) Core.<$> orders
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"PATH/TO/CONVERSION\".
+--
+-- /See:/ 'newPathToConversionReportCompatibleFields' smart constructor.
+data PathToConversionReportCompatibleFields = PathToConversionReportCompatibleFields
+  { -- | Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.
+    conversionDimensions :: (Core.Maybe [Dimension]),
+    -- | Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.
+    customFloodlightVariables :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric]),
+    -- | Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.
+    perInteractionDimensions :: (Core.Maybe [Dimension])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PathToConversionReportCompatibleFields' with the minimum fields required to make a request.
+newPathToConversionReportCompatibleFields ::
+  PathToConversionReportCompatibleFields
+newPathToConversionReportCompatibleFields =
+  PathToConversionReportCompatibleFields
+    { conversionDimensions =
+        Core.Nothing,
+      customFloodlightVariables = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing,
+      perInteractionDimensions = Core.Nothing
+    }
+
+instance Core.FromJSON PathToConversionReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "PathToConversionReportCompatibleFields"
+      ( \o ->
+          PathToConversionReportCompatibleFields
+            Core.<$> (o Core..:? "conversionDimensions")
+            Core.<*> (o Core..:? "customFloodlightVariables")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "perInteractionDimensions")
+      )
+
+instance Core.ToJSON PathToConversionReportCompatibleFields where
+  toJSON PathToConversionReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversionDimensions" Core..=) Core.<$> conversionDimensions,
+            ("customFloodlightVariables" Core..=)
+              Core.<$> customFloodlightVariables,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics,
+            ("perInteractionDimensions" Core..=)
+              Core.<$> perInteractionDimensions
+          ]
+      )
+
+-- | Contains properties of a placement.
+--
+-- /See:/ 'newPlacement' smart constructor.
+data Placement = Placement
+  { -- | Account ID of this placement. This field can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this placement is active, inactive, archived or permanently archived.
+    activeStatus :: (Core.Maybe Placement_ActiveStatus),
+    -- | Whether this placement opts out of ad blocking. When true, ad blocking is disabled for this placement. When false, the campaign and site settings take effect.
+    adBlockingOptOut :: (Core.Maybe Core.Bool),
+    -- | Optional. Ad serving platform ID to identify the ad serving platform used by the placement. Measurement partners can use this field to add ad-server specific macros. Possible values are: * @1@, Adelphic * @2@, Adform * @3@, Adobe * @4@, Amobee * @5@, Basis (Centro) * @6@, Beeswax * @7@, Amazon * @8@, DV360 (DBM) * @9@, Innovid * @10@, MediaMath * @11@, Roku OneView DSP * @12@, TabMo Hawk * @13@, The Trade Desk * @14@, Xandr Invest DSP * @15@, Yahoo DSP * @16@, Zeta Global * @17@, Scaleout * @18@, Bidtellect * @19@, Unicorn * @20@, Teads * @21@, Quantcast * @22@, Cognitiv
+    adServingPlatformId :: (Core.Maybe Core.Int64),
+    -- | Additional sizes associated with this placement. When inserting or updating a placement, only the size ID field is used.
+    additionalSizes :: (Core.Maybe [Size]),
+    -- | Advertiser ID of this placement. This field can be left blank.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Campaign ID of this placement. This field is a required field on insertion.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
+    campaignIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Comments for this placement.
+    comment :: (Core.Maybe Core.Text),
+    -- | Placement compatibility. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY/INTERSTITIAL. IN/STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.
+    compatibility :: (Core.Maybe Placement_Compatibility),
+    -- | ID of the content category assigned to this placement.
+    contentCategoryId :: (Core.Maybe Core.Int64),
+    -- | Optional. Conversion domain overrides for a placement.
+    conversionDomainOverride :: (Core.Maybe PlacementConversionDomainOverride),
+    -- | Information about the creation of this placement. This is a read-only field.
+    createInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
+    directorySiteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
+    directorySiteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | External ID for this placement.
+    externalId :: (Core.Maybe Core.Text),
+    -- | ID of this placement. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this placement. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Key name of this placement. This is a read-only, auto-generated field.
+    keyName :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this placement. This is a read-only field.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Lookback window settings for this placement.
+    lookbackConfiguration :: (Core.Maybe LookbackConfiguration),
+    -- | Name of this placement.This is a required field and must be less than or equal to 512 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Measurement partner provided settings for a wrapped placement.
+    partnerWrappingData :: (Core.Maybe MeasurementPartnerWrappingData),
+    -- | Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements.
+    paymentApproved :: (Core.Maybe Core.Bool),
+    -- | Payment source for this placement. This is a required field that is read-only after insertion.
+    paymentSource :: (Core.Maybe Placement_PaymentSource),
+    -- | ID of this placement\'s group, if applicable.
+    placementGroupId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the placement group. This is a read-only, auto-generated field.
+    placementGroupIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | ID of the placement strategy assigned to this placement.
+    placementStrategyId :: (Core.Maybe Core.Int64),
+    -- | Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType.
+    pricingSchedule :: (Core.Maybe PricingSchedule),
+    -- | Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock\'s primaryPlacementId field to the ID of this placement.
+    primary :: (Core.Maybe Core.Bool),
+    -- | Information about the last publisher update. This is a read-only field.
+    publisherUpdateInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.
+    siteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the site. This is a read-only, auto-generated field.
+    siteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Optional. Whether the ads in the placement are served by another platform and CM is only used for tracking or they are served by CM. A false value indicates the ad is served by CM.
+    siteServed :: (Core.Maybe Core.Bool),
+    -- | Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion.
+    size :: (Core.Maybe Size),
+    -- | Whether creatives assigned to this placement must be SSL-compliant.
+    sslRequired :: (Core.Maybe Core.Bool),
+    -- | Third-party placement status.
+    status :: (Core.Maybe Placement_Status),
+    -- | Subaccount ID of this placement. This field can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Tag formats to generate for this placement. This field is required on insertion. Acceptable values are: - \"PLACEMENT/TAG/STANDARD\" - \"PLACEMENT/TAG/IFRAME/JAVASCRIPT\" - \"PLACEMENT/TAG/IFRAME/ILAYER\" - \"PLACEMENT/TAG/INTERNAL/REDIRECT\" - \"PLACEMENT/TAG/JAVASCRIPT\" - \"PLACEMENT/TAG/INTERSTITIAL/IFRAME/JAVASCRIPT\" - \"PLACEMENT/TAG/INTERSTITIAL/INTERNAL/REDIRECT\" - \"PLACEMENT/TAG/INTERSTITIAL/JAVASCRIPT\" - \"PLACEMENT/TAG/CLICK/COMMANDS\" - \"PLACEMENT/TAG/INSTREAM/VIDEO/PREFETCH\" - \"PLACEMENT/TAG/INSTREAM/VIDEO/PREFETCH/VAST/3\" - \"PLACEMENT/TAG/INSTREAM/VIDEO/PREFETCH/VAST/4\" - \"PLACEMENT/TAG/TRACKING\" - \"PLACEMENT/TAG/TRACKING/IFRAME\" - \"PLACEMENT/TAG/TRACKING_JAVASCRIPT\"
+    tagFormats :: (Core.Maybe [Placement_TagFormatsItem]),
+    -- | Tag settings for this placement.
+    tagSetting :: (Core.Maybe TagSetting),
+    -- | Whether Verification and ActiveView are disabled for in-stream video creatives for this placement. The same setting videoActiveViewOptOut exists on the site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView.
+    videoActiveViewOptOut :: (Core.Maybe Core.Bool),
+    -- | A collection of settings which affect video creatives served through this placement. Applicable to placements with IN/STREAM/VIDEO compatibility.
+    videoSettings :: (Core.Maybe VideoSettings),
+    -- | VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement. /Note:/ Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.
+    vpaidAdapterChoice :: (Core.Maybe Placement_VpaidAdapterChoice),
+    -- | Whether this placement opts out of tag wrapping.
+    wrappingOptOut :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Placement' with the minimum fields required to make a request.
+newPlacement ::
+  Placement
+newPlacement =
+  Placement
+    { accountId = Core.Nothing,
+      activeStatus = Core.Nothing,
+      adBlockingOptOut = Core.Nothing,
+      adServingPlatformId = Core.Nothing,
+      additionalSizes = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      campaignId = Core.Nothing,
+      campaignIdDimensionValue = Core.Nothing,
+      comment = Core.Nothing,
+      compatibility = Core.Nothing,
+      contentCategoryId = Core.Nothing,
+      conversionDomainOverride = Core.Nothing,
+      createInfo = Core.Nothing,
+      directorySiteId = Core.Nothing,
+      directorySiteIdDimensionValue = Core.Nothing,
+      externalId = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      keyName = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      lookbackConfiguration = Core.Nothing,
+      name = Core.Nothing,
+      partnerWrappingData = Core.Nothing,
+      paymentApproved = Core.Nothing,
+      paymentSource = Core.Nothing,
+      placementGroupId = Core.Nothing,
+      placementGroupIdDimensionValue = Core.Nothing,
+      placementStrategyId = Core.Nothing,
+      pricingSchedule = Core.Nothing,
+      primary = Core.Nothing,
+      publisherUpdateInfo = Core.Nothing,
+      siteId = Core.Nothing,
+      siteIdDimensionValue = Core.Nothing,
+      siteServed = Core.Nothing,
+      size = Core.Nothing,
+      sslRequired = Core.Nothing,
+      status = Core.Nothing,
+      subaccountId = Core.Nothing,
+      tagFormats = Core.Nothing,
+      tagSetting = Core.Nothing,
+      videoActiveViewOptOut = Core.Nothing,
+      videoSettings = Core.Nothing,
+      vpaidAdapterChoice = Core.Nothing,
+      wrappingOptOut = Core.Nothing
+    }
+
+instance Core.FromJSON Placement where
+  parseJSON =
+    Core.withObject
+      "Placement"
+      ( \o ->
+          Placement
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "activeStatus")
+            Core.<*> (o Core..:? "adBlockingOptOut")
+            Core.<*> ( o
+                         Core..:? "adServingPlatformId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "additionalSizes")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "campaignId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "campaignIdDimensionValue")
+            Core.<*> (o Core..:? "comment")
+            Core.<*> (o Core..:? "compatibility")
+            Core.<*> (o Core..:? "contentCategoryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "conversionDomainOverride")
+            Core.<*> (o Core..:? "createInfo")
+            Core.<*> (o Core..:? "directorySiteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "directorySiteIdDimensionValue")
+            Core.<*> (o Core..:? "externalId")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "keyName")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "lookbackConfiguration")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "partnerWrappingData")
+            Core.<*> (o Core..:? "paymentApproved")
+            Core.<*> (o Core..:? "paymentSource")
+            Core.<*> (o Core..:? "placementGroupId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "placementGroupIdDimensionValue")
+            Core.<*> ( o
+                         Core..:? "placementStrategyId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "pricingSchedule")
+            Core.<*> (o Core..:? "primary")
+            Core.<*> (o Core..:? "publisherUpdateInfo")
+            Core.<*> (o Core..:? "siteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "siteIdDimensionValue")
+            Core.<*> (o Core..:? "siteServed")
+            Core.<*> (o Core..:? "size")
+            Core.<*> (o Core..:? "sslRequired")
+            Core.<*> (o Core..:? "status")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "tagFormats")
+            Core.<*> (o Core..:? "tagSetting")
+            Core.<*> (o Core..:? "videoActiveViewOptOut")
+            Core.<*> (o Core..:? "videoSettings")
+            Core.<*> (o Core..:? "vpaidAdapterChoice")
+            Core.<*> (o Core..:? "wrappingOptOut")
+      )
+
+instance Core.ToJSON Placement where
+  toJSON Placement {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("activeStatus" Core..=) Core.<$> activeStatus,
+            ("adBlockingOptOut" Core..=) Core.<$> adBlockingOptOut,
+            ("adServingPlatformId" Core..=)
+              Core.. Core.AsText
+              Core.<$> adServingPlatformId,
+            ("additionalSizes" Core..=) Core.<$> additionalSizes,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("campaignId" Core..=) Core.. Core.AsText Core.<$> campaignId,
+            ("campaignIdDimensionValue" Core..=)
+              Core.<$> campaignIdDimensionValue,
+            ("comment" Core..=) Core.<$> comment,
+            ("compatibility" Core..=) Core.<$> compatibility,
+            ("contentCategoryId" Core..=)
+              Core.. Core.AsText
+              Core.<$> contentCategoryId,
+            ("conversionDomainOverride" Core..=)
+              Core.<$> conversionDomainOverride,
+            ("createInfo" Core..=) Core.<$> createInfo,
+            ("directorySiteId" Core..=)
+              Core.. Core.AsText
+              Core.<$> directorySiteId,
+            ("directorySiteIdDimensionValue" Core..=)
+              Core.<$> directorySiteIdDimensionValue,
+            ("externalId" Core..=) Core.<$> externalId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("keyName" Core..=) Core.<$> keyName,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("lookbackConfiguration" Core..=) Core.<$> lookbackConfiguration,
+            ("name" Core..=) Core.<$> name,
+            ("partnerWrappingData" Core..=) Core.<$> partnerWrappingData,
+            ("paymentApproved" Core..=) Core.<$> paymentApproved,
+            ("paymentSource" Core..=) Core.<$> paymentSource,
+            ("placementGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> placementGroupId,
+            ("placementGroupIdDimensionValue" Core..=)
+              Core.<$> placementGroupIdDimensionValue,
+            ("placementStrategyId" Core..=)
+              Core.. Core.AsText
+              Core.<$> placementStrategyId,
+            ("pricingSchedule" Core..=) Core.<$> pricingSchedule,
+            ("primary" Core..=) Core.<$> primary,
+            ("publisherUpdateInfo" Core..=) Core.<$> publisherUpdateInfo,
+            ("siteId" Core..=) Core.. Core.AsText Core.<$> siteId,
+            ("siteIdDimensionValue" Core..=) Core.<$> siteIdDimensionValue,
+            ("siteServed" Core..=) Core.<$> siteServed,
+            ("size" Core..=) Core.<$> size,
+            ("sslRequired" Core..=) Core.<$> sslRequired,
+            ("status" Core..=) Core.<$> status,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("tagFormats" Core..=) Core.<$> tagFormats,
+            ("tagSetting" Core..=) Core.<$> tagSetting,
+            ("videoActiveViewOptOut" Core..=) Core.<$> videoActiveViewOptOut,
+            ("videoSettings" Core..=) Core.<$> videoSettings,
+            ("vpaidAdapterChoice" Core..=) Core.<$> vpaidAdapterChoice,
+            ("wrappingOptOut" Core..=) Core.<$> wrappingOptOut
+          ]
+      )
+
+-- | Placement Assignment.
+--
+-- /See:/ 'newPlacementAssignment' smart constructor.
+data PlacementAssignment = PlacementAssignment
+  { -- | Whether this placement assignment is active. When true, the placement will be included in the ad\'s rotation.
+    active :: (Core.Maybe Core.Bool),
+    -- | ID of the placement to be assigned. This is a required field.
+    placementId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the placement. This is a read-only, auto-generated field.
+    placementIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated.
+    sslRequired :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementAssignment' with the minimum fields required to make a request.
+newPlacementAssignment ::
+  PlacementAssignment
+newPlacementAssignment =
+  PlacementAssignment
+    { active = Core.Nothing,
+      placementId = Core.Nothing,
+      placementIdDimensionValue = Core.Nothing,
+      sslRequired = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementAssignment where
+  parseJSON =
+    Core.withObject
+      "PlacementAssignment"
+      ( \o ->
+          PlacementAssignment
+            Core.<$> (o Core..:? "active")
+            Core.<*> (o Core..:? "placementId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "placementIdDimensionValue")
+            Core.<*> (o Core..:? "sslRequired")
+      )
+
+instance Core.ToJSON PlacementAssignment where
+  toJSON PlacementAssignment {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("active" Core..=) Core.<$> active,
+            ("placementId" Core..=) Core.. Core.AsText Core.<$> placementId,
+            ("placementIdDimensionValue" Core..=)
+              Core.<$> placementIdDimensionValue,
+            ("sslRequired" Core..=) Core.<$> sslRequired
+          ]
+      )
+
+--
+-- /See:/ 'newPlacementConversionDomainOverride' smart constructor.
+newtype PlacementConversionDomainOverride = PlacementConversionDomainOverride
+  { conversionDomains :: (Core.Maybe [PlacementSingleConversionDomain])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementConversionDomainOverride' with the minimum fields required to make a request.
+newPlacementConversionDomainOverride ::
+  PlacementConversionDomainOverride
+newPlacementConversionDomainOverride =
+  PlacementConversionDomainOverride
+    { conversionDomains =
+        Core.Nothing
+    }
+
+instance Core.FromJSON PlacementConversionDomainOverride where
+  parseJSON =
+    Core.withObject
+      "PlacementConversionDomainOverride"
+      ( \o ->
+          PlacementConversionDomainOverride
+            Core.<$> (o Core..:? "conversionDomains")
+      )
+
+instance Core.ToJSON PlacementConversionDomainOverride where
+  toJSON PlacementConversionDomainOverride {..} =
+    Core.object
+      ( Core.catMaybes
+          [("conversionDomains" Core..=) Core.<$> conversionDomains]
+      )
+
+-- | Contains properties of a package or roadblock.
+--
+-- /See:/ 'newPlacementGroup' smart constructor.
+data PlacementGroup = PlacementGroup
+  { -- | Account ID of this placement group. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this placement group is active, inactive, archived or permanently archived.
+    activeStatus :: (Core.Maybe PlacementGroup_ActiveStatus),
+    -- | Advertiser ID of this placement group. This is a required field on insertion.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Campaign ID of this placement group. This field is required on insertion.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the campaign. This is a read-only, auto-generated field.
+    campaignIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.
+    childPlacementIds :: (Core.Maybe [Core.Int64]),
+    -- | Comments for this placement group.
+    comment :: (Core.Maybe Core.Text),
+    -- | ID of the content category assigned to this placement group.
+    contentCategoryId :: (Core.Maybe Core.Int64),
+    -- | Information about the creation of this placement group. This is a read-only field.
+    createInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
+    directorySiteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
+    directorySiteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | External ID for this placement.
+    externalId :: (Core.Maybe Core.Text),
+    -- | ID of this placement group. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this placement group. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this placement group. This is a read-only field.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Name of this placement group. This is a required field and must be less than 256 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.
+    placementGroupType :: (Core.Maybe PlacementGroup_PlacementGroupType),
+    -- | ID of the placement strategy assigned to this placement group.
+    placementStrategyId :: (Core.Maybe Core.Int64),
+    -- | Pricing schedule of this placement group. This field is required on insertion.
+    pricingSchedule :: (Core.Maybe PricingSchedule),
+    -- | ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.
+    primaryPlacementId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the primary placement. This is a read-only, auto-generated field.
+    primaryPlacementIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.
+    siteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the site. This is a read-only, auto-generated field.
+    siteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Subaccount ID of this placement group. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementGroup' with the minimum fields required to make a request.
+newPlacementGroup ::
+  PlacementGroup
+newPlacementGroup =
+  PlacementGroup
+    { accountId = Core.Nothing,
+      activeStatus = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      campaignId = Core.Nothing,
+      campaignIdDimensionValue = Core.Nothing,
+      childPlacementIds = Core.Nothing,
+      comment = Core.Nothing,
+      contentCategoryId = Core.Nothing,
+      createInfo = Core.Nothing,
+      directorySiteId = Core.Nothing,
+      directorySiteIdDimensionValue = Core.Nothing,
+      externalId = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      name = Core.Nothing,
+      placementGroupType = Core.Nothing,
+      placementStrategyId = Core.Nothing,
+      pricingSchedule = Core.Nothing,
+      primaryPlacementId = Core.Nothing,
+      primaryPlacementIdDimensionValue = Core.Nothing,
+      siteId = Core.Nothing,
+      siteIdDimensionValue = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementGroup where
+  parseJSON =
+    Core.withObject
+      "PlacementGroup"
+      ( \o ->
+          PlacementGroup
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "activeStatus")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "campaignId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "campaignIdDimensionValue")
+            Core.<*> ( o
+                         Core..:? "childPlacementIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "comment")
+            Core.<*> (o Core..:? "contentCategoryId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "createInfo")
+            Core.<*> (o Core..:? "directorySiteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "directorySiteIdDimensionValue")
+            Core.<*> (o Core..:? "externalId")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "placementGroupType")
+            Core.<*> ( o
+                         Core..:? "placementStrategyId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "pricingSchedule")
+            Core.<*> ( o
+                         Core..:? "primaryPlacementId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "primaryPlacementIdDimensionValue")
+            Core.<*> (o Core..:? "siteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "siteIdDimensionValue")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON PlacementGroup where
+  toJSON PlacementGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("activeStatus" Core..=) Core.<$> activeStatus,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("campaignId" Core..=) Core.. Core.AsText Core.<$> campaignId,
+            ("campaignIdDimensionValue" Core..=)
+              Core.<$> campaignIdDimensionValue,
+            ("childPlacementIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> childPlacementIds,
+            ("comment" Core..=) Core.<$> comment,
+            ("contentCategoryId" Core..=)
+              Core.. Core.AsText
+              Core.<$> contentCategoryId,
+            ("createInfo" Core..=) Core.<$> createInfo,
+            ("directorySiteId" Core..=)
+              Core.. Core.AsText
+              Core.<$> directorySiteId,
+            ("directorySiteIdDimensionValue" Core..=)
+              Core.<$> directorySiteIdDimensionValue,
+            ("externalId" Core..=) Core.<$> externalId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("name" Core..=) Core.<$> name,
+            ("placementGroupType" Core..=) Core.<$> placementGroupType,
+            ("placementStrategyId" Core..=)
+              Core.. Core.AsText
+              Core.<$> placementStrategyId,
+            ("pricingSchedule" Core..=) Core.<$> pricingSchedule,
+            ("primaryPlacementId" Core..=)
+              Core.. Core.AsText
+              Core.<$> primaryPlacementId,
+            ("primaryPlacementIdDimensionValue" Core..=)
+              Core.<$> primaryPlacementIdDimensionValue,
+            ("siteId" Core..=) Core.. Core.AsText Core.<$> siteId,
+            ("siteIdDimensionValue" Core..=) Core.<$> siteIdDimensionValue,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Placement Group List Response
+--
+-- /See:/ 'newPlacementGroupsListResponse' smart constructor.
+data PlacementGroupsListResponse = PlacementGroupsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Placement group collection.
+    placementGroups :: (Core.Maybe [PlacementGroup])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementGroupsListResponse' with the minimum fields required to make a request.
+newPlacementGroupsListResponse ::
+  PlacementGroupsListResponse
+newPlacementGroupsListResponse =
+  PlacementGroupsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      placementGroups = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "PlacementGroupsListResponse"
+      ( \o ->
+          PlacementGroupsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "placementGroups")
+      )
+
+instance Core.ToJSON PlacementGroupsListResponse where
+  toJSON PlacementGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("placementGroups" Core..=) Core.<$> placementGroups
+          ]
+      )
+
+--
+-- /See:/ 'newPlacementSingleConversionDomain' smart constructor.
+data PlacementSingleConversionDomain = PlacementSingleConversionDomain
+  { conversionDomainId :: (Core.Maybe Core.Int64),
+    conversionDomainValue :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementSingleConversionDomain' with the minimum fields required to make a request.
+newPlacementSingleConversionDomain ::
+  PlacementSingleConversionDomain
+newPlacementSingleConversionDomain =
+  PlacementSingleConversionDomain
+    { conversionDomainId =
+        Core.Nothing,
+      conversionDomainValue = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementSingleConversionDomain where
+  parseJSON =
+    Core.withObject
+      "PlacementSingleConversionDomain"
+      ( \o ->
+          PlacementSingleConversionDomain
+            Core.<$> ( o
+                         Core..:? "conversionDomainId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "conversionDomainValue")
+      )
+
+instance Core.ToJSON PlacementSingleConversionDomain where
+  toJSON PlacementSingleConversionDomain {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("conversionDomainId" Core..=)
+              Core.. Core.AsText
+              Core.<$> conversionDomainId,
+            ("conversionDomainValue" Core..=) Core.<$> conversionDomainValue
+          ]
+      )
+
+-- | Placement Strategy List Response
+--
+-- /See:/ 'newPlacementStrategiesListResponse' smart constructor.
+data PlacementStrategiesListResponse = PlacementStrategiesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Placement strategy collection.
+    placementStrategies :: (Core.Maybe [PlacementStrategy])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementStrategiesListResponse' with the minimum fields required to make a request.
+newPlacementStrategiesListResponse ::
+  PlacementStrategiesListResponse
+newPlacementStrategiesListResponse =
+  PlacementStrategiesListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      placementStrategies = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementStrategiesListResponse where
+  parseJSON =
+    Core.withObject
+      "PlacementStrategiesListResponse"
+      ( \o ->
+          PlacementStrategiesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "placementStrategies")
+      )
+
+instance Core.ToJSON PlacementStrategiesListResponse where
+  toJSON PlacementStrategiesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("placementStrategies" Core..=) Core.<$> placementStrategies
+          ]
+      )
+
+-- | Contains properties of a placement strategy.
+--
+-- /See:/ 'newPlacementStrategy' smart constructor.
+data PlacementStrategy = PlacementStrategy
+  { -- | Account ID of this placement strategy.This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | ID of this placement strategy. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementStrategy' with the minimum fields required to make a request.
+newPlacementStrategy ::
+  PlacementStrategy
+newPlacementStrategy =
+  PlacementStrategy
+    { accountId = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementStrategy where
+  parseJSON =
+    Core.withObject
+      "PlacementStrategy"
+      ( \o ->
+          PlacementStrategy
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON PlacementStrategy where
+  toJSON PlacementStrategy {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Placement Tag
+--
+-- /See:/ 'newPlacementTag' smart constructor.
+data PlacementTag = PlacementTag
+  { -- | Placement ID
+    placementId :: (Core.Maybe Core.Int64),
+    -- | Tags generated for this placement.
+    tagDatas :: (Core.Maybe [TagData])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementTag' with the minimum fields required to make a request.
+newPlacementTag ::
+  PlacementTag
+newPlacementTag =
+  PlacementTag {placementId = Core.Nothing, tagDatas = Core.Nothing}
+
+instance Core.FromJSON PlacementTag where
+  parseJSON =
+    Core.withObject
+      "PlacementTag"
+      ( \o ->
+          PlacementTag
+            Core.<$> (o Core..:? "placementId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "tagDatas")
+      )
+
+instance Core.ToJSON PlacementTag where
+  toJSON PlacementTag {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("placementId" Core..=) Core.. Core.AsText Core.<$> placementId,
+            ("tagDatas" Core..=) Core.<$> tagDatas
+          ]
+      )
+
+-- | Placement GenerateTags Response
+--
+-- /See:/ 'newPlacementsGenerateTagsResponse' smart constructor.
+data PlacementsGenerateTagsResponse = PlacementsGenerateTagsResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Set of generated tags for the specified placements.
+    placementTags :: (Core.Maybe [PlacementTag])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementsGenerateTagsResponse' with the minimum fields required to make a request.
+newPlacementsGenerateTagsResponse ::
+  PlacementsGenerateTagsResponse
+newPlacementsGenerateTagsResponse =
+  PlacementsGenerateTagsResponse
+    { kind = Core.Nothing,
+      placementTags = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementsGenerateTagsResponse where
+  parseJSON =
+    Core.withObject
+      "PlacementsGenerateTagsResponse"
+      ( \o ->
+          PlacementsGenerateTagsResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "placementTags")
+      )
+
+instance Core.ToJSON PlacementsGenerateTagsResponse where
+  toJSON PlacementsGenerateTagsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("placementTags" Core..=) Core.<$> placementTags
+          ]
+      )
+
+-- | Placement List Response
+--
+-- /See:/ 'newPlacementsListResponse' smart constructor.
+data PlacementsListResponse = PlacementsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Placement collection.
+    placements :: (Core.Maybe [Placement])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlacementsListResponse' with the minimum fields required to make a request.
+newPlacementsListResponse ::
+  PlacementsListResponse
+newPlacementsListResponse =
+  PlacementsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      placements = Core.Nothing
+    }
+
+instance Core.FromJSON PlacementsListResponse where
+  parseJSON =
+    Core.withObject
+      "PlacementsListResponse"
+      ( \o ->
+          PlacementsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "placements")
+      )
+
+instance Core.ToJSON PlacementsListResponse where
+  toJSON PlacementsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("placements" Core..=) Core.<$> placements
+          ]
+      )
+
+-- | Contains information about a platform type that can be targeted by ads.
+--
+-- /See:/ 'newPlatformType' smart constructor.
+data PlatformType = PlatformType
+  { -- | ID of this platform type.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this platform type.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlatformType' with the minimum fields required to make a request.
+newPlatformType ::
+  PlatformType
+newPlatformType =
+  PlatformType
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON PlatformType where
+  parseJSON =
+    Core.withObject
+      "PlatformType"
+      ( \o ->
+          PlatformType
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON PlatformType where
+  toJSON PlatformType {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Platform Type List Response
+--
+-- /See:/ 'newPlatformTypesListResponse' smart constructor.
+data PlatformTypesListResponse = PlatformTypesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Platform type collection.
+    platformTypes :: (Core.Maybe [PlatformType])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PlatformTypesListResponse' with the minimum fields required to make a request.
+newPlatformTypesListResponse ::
+  PlatformTypesListResponse
+newPlatformTypesListResponse =
+  PlatformTypesListResponse
+    { kind = Core.Nothing,
+      platformTypes = Core.Nothing
+    }
+
+instance Core.FromJSON PlatformTypesListResponse where
+  parseJSON =
+    Core.withObject
+      "PlatformTypesListResponse"
+      ( \o ->
+          PlatformTypesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "platformTypes")
+      )
+
+instance Core.ToJSON PlatformTypesListResponse where
+  toJSON PlatformTypesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("platformTypes" Core..=) Core.<$> platformTypes
+          ]
+      )
+
+-- | Popup Window Properties.
+--
+-- /See:/ 'newPopupWindowProperties' smart constructor.
+data PopupWindowProperties = PopupWindowProperties
+  { -- | Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID
+    dimension :: (Core.Maybe Size),
+    -- | Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES.
+    offset :: (Core.Maybe OffsetPosition),
+    -- | Popup window position either centered or at specific coordinate.
+    positionType :: (Core.Maybe PopupWindowProperties_PositionType),
+    -- | Whether to display the browser address bar.
+    showAddressBar :: (Core.Maybe Core.Bool),
+    -- | Whether to display the browser menu bar.
+    showMenuBar :: (Core.Maybe Core.Bool),
+    -- | Whether to display the browser scroll bar.
+    showScrollBar :: (Core.Maybe Core.Bool),
+    -- | Whether to display the browser status bar.
+    showStatusBar :: (Core.Maybe Core.Bool),
+    -- | Whether to display the browser tool bar.
+    showToolBar :: (Core.Maybe Core.Bool),
+    -- | Title of popup window.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PopupWindowProperties' with the minimum fields required to make a request.
+newPopupWindowProperties ::
+  PopupWindowProperties
+newPopupWindowProperties =
+  PopupWindowProperties
+    { dimension = Core.Nothing,
+      offset = Core.Nothing,
+      positionType = Core.Nothing,
+      showAddressBar = Core.Nothing,
+      showMenuBar = Core.Nothing,
+      showScrollBar = Core.Nothing,
+      showStatusBar = Core.Nothing,
+      showToolBar = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance Core.FromJSON PopupWindowProperties where
+  parseJSON =
+    Core.withObject
+      "PopupWindowProperties"
+      ( \o ->
+          PopupWindowProperties
+            Core.<$> (o Core..:? "dimension")
+            Core.<*> (o Core..:? "offset")
+            Core.<*> (o Core..:? "positionType")
+            Core.<*> (o Core..:? "showAddressBar")
+            Core.<*> (o Core..:? "showMenuBar")
+            Core.<*> (o Core..:? "showScrollBar")
+            Core.<*> (o Core..:? "showStatusBar")
+            Core.<*> (o Core..:? "showToolBar")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON PopupWindowProperties where
+  toJSON PopupWindowProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimension" Core..=) Core.<$> dimension,
+            ("offset" Core..=) Core.<$> offset,
+            ("positionType" Core..=) Core.<$> positionType,
+            ("showAddressBar" Core..=) Core.<$> showAddressBar,
+            ("showMenuBar" Core..=) Core.<$> showMenuBar,
+            ("showScrollBar" Core..=) Core.<$> showScrollBar,
+            ("showStatusBar" Core..=) Core.<$> showStatusBar,
+            ("showToolBar" Core..=) Core.<$> showToolBar,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Contains information about a postal code that can be targeted by ads.
+--
+-- /See:/ 'newPostalCode' smart constructor.
+data PostalCode = PostalCode
+  { -- | Postal code. This is equivalent to the id field.
+    code :: (Core.Maybe Core.Text),
+    -- | Country code of the country to which this postal code belongs.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the country to which this postal code belongs.
+    countryDartId :: (Core.Maybe Core.Int64),
+    -- | ID of this postal code.
+    id :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PostalCode' with the minimum fields required to make a request.
+newPostalCode ::
+  PostalCode
+newPostalCode =
+  PostalCode
+    { code = Core.Nothing,
+      countryCode = Core.Nothing,
+      countryDartId = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON PostalCode where
+  parseJSON =
+    Core.withObject
+      "PostalCode"
+      ( \o ->
+          PostalCode
+            Core.<$> (o Core..:? "code")
+            Core.<*> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "countryDartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON PostalCode where
+  toJSON PostalCode {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("code" Core..=) Core.<$> code,
+            ("countryCode" Core..=) Core.<$> countryCode,
+            ("countryDartId" Core..=)
+              Core.. Core.AsText
+              Core.<$> countryDartId,
+            ("id" Core..=) Core.<$> id,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Postal Code List Response
+--
+-- /See:/ 'newPostalCodesListResponse' smart constructor.
+data PostalCodesListResponse = PostalCodesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Postal code collection.
+    postalCodes :: (Core.Maybe [PostalCode])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PostalCodesListResponse' with the minimum fields required to make a request.
+newPostalCodesListResponse ::
+  PostalCodesListResponse
+newPostalCodesListResponse =
+  PostalCodesListResponse
+    { kind = Core.Nothing,
+      postalCodes = Core.Nothing
+    }
+
+instance Core.FromJSON PostalCodesListResponse where
+  parseJSON =
+    Core.withObject
+      "PostalCodesListResponse"
+      ( \o ->
+          PostalCodesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "postalCodes")
+      )
+
+instance Core.ToJSON PostalCodesListResponse where
+  toJSON PostalCodesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("postalCodes" Core..=) Core.<$> postalCodes
+          ]
+      )
+
+--
+-- /See:/ 'newPricing' smart constructor.
+data Pricing = Pricing
+  { -- | Cap cost type of this inventory item.
+    capCostType :: (Core.Maybe Pricing_CapCostType),
+    endDate :: (Core.Maybe Core.Date),
+    -- | Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.
+    flights :: (Core.Maybe [Flight]),
+    -- | Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING/PLACEMENT/GROUP/TYPE/PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING/PLACEMENT/GROUP/TYPE/ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.
+    groupType :: (Core.Maybe Pricing_GroupType),
+    -- | Pricing type of this inventory item.
+    pricingType :: (Core.Maybe Pricing_PricingType),
+    startDate :: (Core.Maybe Core.Date)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Pricing' with the minimum fields required to make a request.
+newPricing ::
+  Pricing
+newPricing =
+  Pricing
+    { capCostType = Core.Nothing,
+      endDate = Core.Nothing,
+      flights = Core.Nothing,
+      groupType = Core.Nothing,
+      pricingType = Core.Nothing,
+      startDate = Core.Nothing
+    }
+
+instance Core.FromJSON Pricing where
+  parseJSON =
+    Core.withObject
+      "Pricing"
+      ( \o ->
+          Pricing
+            Core.<$> (o Core..:? "capCostType")
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "flights")
+            Core.<*> (o Core..:? "groupType")
+            Core.<*> (o Core..:? "pricingType")
+            Core.<*> (o Core..:? "startDate")
+      )
+
+instance Core.ToJSON Pricing where
+  toJSON Pricing {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("capCostType" Core..=) Core.<$> capCostType,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("flights" Core..=) Core.<$> flights,
+            ("groupType" Core..=) Core.<$> groupType,
+            ("pricingType" Core..=) Core.<$> pricingType,
+            ("startDate" Core..=) Core.<$> startDate
+          ]
+      )
+
+-- | Pricing Schedule
+--
+-- /See:/ 'newPricingSchedule' smart constructor.
+data PricingSchedule = PricingSchedule
+  { -- | Placement cap cost option.
+    capCostOption :: (Core.Maybe PricingSchedule_CapCostOption),
+    endDate :: (Core.Maybe Core.Date),
+    -- | Whether this placement is flighted. If true, pricing periods will be computed automatically.
+    flighted :: (Core.Maybe Core.Bool),
+    -- | Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING/TYPE/CPA.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | Pricing periods for this placement.
+    pricingPeriods :: (Core.Maybe [PricingSchedulePricingPeriod]),
+    -- | Placement pricing type. This field is required on insertion.
+    pricingType :: (Core.Maybe PricingSchedule_PricingType),
+    startDate :: (Core.Maybe Core.Date),
+    testingStartDate :: (Core.Maybe Core.Date)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PricingSchedule' with the minimum fields required to make a request.
+newPricingSchedule ::
+  PricingSchedule
+newPricingSchedule =
+  PricingSchedule
+    { capCostOption = Core.Nothing,
+      endDate = Core.Nothing,
+      flighted = Core.Nothing,
+      floodlightActivityId = Core.Nothing,
+      pricingPeriods = Core.Nothing,
+      pricingType = Core.Nothing,
+      startDate = Core.Nothing,
+      testingStartDate = Core.Nothing
+    }
+
+instance Core.FromJSON PricingSchedule where
+  parseJSON =
+    Core.withObject
+      "PricingSchedule"
+      ( \o ->
+          PricingSchedule
+            Core.<$> (o Core..:? "capCostOption")
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "flighted")
+            Core.<*> ( o
+                         Core..:? "floodlightActivityId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "pricingPeriods")
+            Core.<*> (o Core..:? "pricingType")
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "testingStartDate")
+      )
+
+instance Core.ToJSON PricingSchedule where
+  toJSON PricingSchedule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("capCostOption" Core..=) Core.<$> capCostOption,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("flighted" Core..=) Core.<$> flighted,
+            ("floodlightActivityId" Core..=)
+              Core.. Core.AsText
+              Core.<$> floodlightActivityId,
+            ("pricingPeriods" Core..=) Core.<$> pricingPeriods,
+            ("pricingType" Core..=) Core.<$> pricingType,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("testingStartDate" Core..=) Core.<$> testingStartDate
+          ]
+      )
+
+-- | Pricing Period
+--
+-- /See:/ 'newPricingSchedulePricingPeriod' smart constructor.
+data PricingSchedulePricingPeriod = PricingSchedulePricingPeriod
+  { endDate :: (Core.Maybe Core.Date),
+    -- | Comments for this pricing period.
+    pricingComment :: (Core.Maybe Core.Text),
+    -- | Rate or cost of this pricing period in nanos (i.e., multiplied by 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.
+    rateOrCostNanos :: (Core.Maybe Core.Int64),
+    startDate :: (Core.Maybe Core.Date),
+    -- | Units of this pricing period. Acceptable values are 0 to 10000000000, inclusive.
+    units :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PricingSchedulePricingPeriod' with the minimum fields required to make a request.
+newPricingSchedulePricingPeriod ::
+  PricingSchedulePricingPeriod
+newPricingSchedulePricingPeriod =
+  PricingSchedulePricingPeriod
+    { endDate = Core.Nothing,
+      pricingComment = Core.Nothing,
+      rateOrCostNanos = Core.Nothing,
+      startDate = Core.Nothing,
+      units = Core.Nothing
+    }
+
+instance Core.FromJSON PricingSchedulePricingPeriod where
+  parseJSON =
+    Core.withObject
+      "PricingSchedulePricingPeriod"
+      ( \o ->
+          PricingSchedulePricingPeriod
+            Core.<$> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "pricingComment")
+            Core.<*> (o Core..:? "rateOrCostNanos" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "units" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON PricingSchedulePricingPeriod where
+  toJSON PricingSchedulePricingPeriod {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endDate" Core..=) Core.<$> endDate,
+            ("pricingComment" Core..=) Core.<$> pricingComment,
+            ("rateOrCostNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> rateOrCostNanos,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("units" Core..=) Core.. Core.AsText Core.<$> units
+          ]
+      )
+
+-- | Contains properties of a Planning project.
+--
+-- /See:/ 'newProject' smart constructor.
+data Project = Project
+  { -- | Account ID of this project.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this project.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Audience age group of this project.
+    audienceAgeGroup :: (Core.Maybe Project_AudienceAgeGroup),
+    -- | Audience gender of this project.
+    audienceGender :: (Core.Maybe Project_AudienceGender),
+    -- | Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.
+    budget :: (Core.Maybe Core.Int64),
+    -- | Client billing code of this project.
+    clientBillingCode :: (Core.Maybe Core.Text),
+    -- | Name of the project client.
+    clientName :: (Core.Maybe Core.Text),
+    endDate :: (Core.Maybe Core.Date),
+    -- | ID of this project. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Information about the most recent modification of this project.
+    lastModifiedInfo :: (Core.Maybe LastModifiedInfo),
+    -- | Name of this project.
+    name :: (Core.Maybe Core.Text),
+    -- | Overview of this project.
+    overview :: (Core.Maybe Core.Text),
+    startDate :: (Core.Maybe Core.Date),
+    -- | Subaccount ID of this project.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Number of clicks that the advertiser is targeting.
+    targetClicks :: (Core.Maybe Core.Int64),
+    -- | Number of conversions that the advertiser is targeting.
+    targetConversions :: (Core.Maybe Core.Int64),
+    -- | CPA that the advertiser is targeting.
+    targetCpaNanos :: (Core.Maybe Core.Int64),
+    -- | CPC that the advertiser is targeting.
+    targetCpcNanos :: (Core.Maybe Core.Int64),
+    -- | vCPM from Active View that the advertiser is targeting.
+    targetCpmActiveViewNanos :: (Core.Maybe Core.Int64),
+    -- | CPM that the advertiser is targeting.
+    targetCpmNanos :: (Core.Maybe Core.Int64),
+    -- | Number of impressions that the advertiser is targeting.
+    targetImpressions :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Project' with the minimum fields required to make a request.
+newProject ::
+  Project
+newProject =
+  Project
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      audienceAgeGroup = Core.Nothing,
+      audienceGender = Core.Nothing,
+      budget = Core.Nothing,
+      clientBillingCode = Core.Nothing,
+      clientName = Core.Nothing,
+      endDate = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedInfo = Core.Nothing,
+      name = Core.Nothing,
+      overview = Core.Nothing,
+      startDate = Core.Nothing,
+      subaccountId = Core.Nothing,
+      targetClicks = Core.Nothing,
+      targetConversions = Core.Nothing,
+      targetCpaNanos = Core.Nothing,
+      targetCpcNanos = Core.Nothing,
+      targetCpmActiveViewNanos = Core.Nothing,
+      targetCpmNanos = Core.Nothing,
+      targetImpressions = Core.Nothing
+    }
+
+instance Core.FromJSON Project where
+  parseJSON =
+    Core.withObject
+      "Project"
+      ( \o ->
+          Project
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "audienceAgeGroup")
+            Core.<*> (o Core..:? "audienceGender")
+            Core.<*> (o Core..:? "budget" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "clientBillingCode")
+            Core.<*> (o Core..:? "clientName")
+            Core.<*> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedInfo")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "overview")
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "targetClicks" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "targetConversions" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "targetCpaNanos" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "targetCpcNanos" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "targetCpmActiveViewNanos"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "targetCpmNanos" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "targetImpressions"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON Project where
+  toJSON Project {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("audienceAgeGroup" Core..=) Core.<$> audienceAgeGroup,
+            ("audienceGender" Core..=) Core.<$> audienceGender,
+            ("budget" Core..=) Core.. Core.AsText Core.<$> budget,
+            ("clientBillingCode" Core..=) Core.<$> clientBillingCode,
+            ("clientName" Core..=) Core.<$> clientName,
+            ("endDate" Core..=) Core.<$> endDate,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedInfo" Core..=) Core.<$> lastModifiedInfo,
+            ("name" Core..=) Core.<$> name,
+            ("overview" Core..=) Core.<$> overview,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("targetClicks" Core..=) Core.. Core.AsText Core.<$> targetClicks,
+            ("targetConversions" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetConversions,
+            ("targetCpaNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetCpaNanos,
+            ("targetCpcNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetCpcNanos,
+            ("targetCpmActiveViewNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetCpmActiveViewNanos,
+            ("targetCpmNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetCpmNanos,
+            ("targetImpressions" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetImpressions
+          ]
+      )
+
+-- | Project List Response
+--
+-- /See:/ 'newProjectsListResponse' smart constructor.
+data ProjectsListResponse = ProjectsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Project collection.
+    projects :: (Core.Maybe [Project])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ProjectsListResponse' with the minimum fields required to make a request.
+newProjectsListResponse ::
+  ProjectsListResponse
+newProjectsListResponse =
+  ProjectsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      projects = Core.Nothing
+    }
+
+instance Core.FromJSON ProjectsListResponse where
+  parseJSON =
+    Core.withObject
+      "ProjectsListResponse"
+      ( \o ->
+          ProjectsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "projects")
+      )
+
+instance Core.ToJSON ProjectsListResponse where
+  toJSON ProjectsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("projects" Core..=) Core.<$> projects
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"REACH\".
+--
+-- /See:/ 'newReachReportCompatibleFields' smart constructor.
+data ReachReportCompatibleFields = ReachReportCompatibleFields
+  { -- | Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.
+    dimensionFilters :: (Core.Maybe [Dimension]),
+    -- | Dimensions which are compatible to be selected in the \"dimensions\" section of the report.
+    dimensions :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric]),
+    -- | Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.
+    pivotedActivityMetrics :: (Core.Maybe [Metric]),
+    -- | Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.
+    reachByFrequencyMetrics :: (Core.Maybe [Metric])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReachReportCompatibleFields' with the minimum fields required to make a request.
+newReachReportCompatibleFields ::
+  ReachReportCompatibleFields
+newReachReportCompatibleFields =
+  ReachReportCompatibleFields
+    { dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing,
+      pivotedActivityMetrics = Core.Nothing,
+      reachByFrequencyMetrics = Core.Nothing
+    }
+
+instance Core.FromJSON ReachReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "ReachReportCompatibleFields"
+      ( \o ->
+          ReachReportCompatibleFields
+            Core.<$> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "pivotedActivityMetrics")
+            Core.<*> (o Core..:? "reachByFrequencyMetrics")
+      )
+
+instance Core.ToJSON ReachReportCompatibleFields where
+  toJSON ReachReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics,
+            ("pivotedActivityMetrics" Core..=) Core.<$> pivotedActivityMetrics,
+            ("reachByFrequencyMetrics" Core..=)
+              Core.<$> reachByFrequencyMetrics
+          ]
+      )
+
+-- | Represents a recipient.
+--
+-- /See:/ 'newRecipient' smart constructor.
+data Recipient = Recipient
+  { -- | The delivery type for the recipient.
+    deliveryType :: (Core.Maybe Recipient_DeliveryType),
+    -- | The email address of the recipient.
+    email :: (Core.Maybe Core.Text),
+    -- | The kind of resource this is, in this case dfareporting#recipient.
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Recipient' with the minimum fields required to make a request.
+newRecipient ::
+  Recipient
+newRecipient =
+  Recipient
+    { deliveryType = Core.Nothing,
+      email = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON Recipient where
+  parseJSON =
+    Core.withObject
+      "Recipient"
+      ( \o ->
+          Recipient
+            Core.<$> (o Core..:? "deliveryType")
+            Core.<*> (o Core..:? "email")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON Recipient where
+  toJSON Recipient {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("deliveryType" Core..=) Core.<$> deliveryType,
+            ("email" Core..=) Core.<$> email,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains information about a region that can be targeted by ads.
+--
+-- /See:/ 'newRegion' smart constructor.
+data Region = Region
+  { -- | Country code of the country to which this region belongs.
+    countryCode :: (Core.Maybe Core.Text),
+    -- | DART ID of the country to which this region belongs.
+    countryDartId :: (Core.Maybe Core.Int64),
+    -- | DART ID of this region.
+    dartId :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this region.
+    name :: (Core.Maybe Core.Text),
+    -- | Region code.
+    regionCode :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Region' with the minimum fields required to make a request.
+newRegion ::
+  Region
+newRegion =
+  Region
+    { countryCode = Core.Nothing,
+      countryDartId = Core.Nothing,
+      dartId = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      regionCode = Core.Nothing
+    }
+
+instance Core.FromJSON Region where
+  parseJSON =
+    Core.withObject
+      "Region"
+      ( \o ->
+          Region
+            Core.<$> (o Core..:? "countryCode")
+            Core.<*> (o Core..:? "countryDartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "dartId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "regionCode")
+      )
+
+instance Core.ToJSON Region where
+  toJSON Region {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("countryCode" Core..=) Core.<$> countryCode,
+            ("countryDartId" Core..=)
+              Core.. Core.AsText
+              Core.<$> countryDartId,
+            ("dartId" Core..=) Core.. Core.AsText Core.<$> dartId,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("regionCode" Core..=) Core.<$> regionCode
+          ]
+      )
+
+-- | Region List Response
+--
+-- /See:/ 'newRegionsListResponse' smart constructor.
+data RegionsListResponse = RegionsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Region collection.
+    regions :: (Core.Maybe [Region])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RegionsListResponse' with the minimum fields required to make a request.
+newRegionsListResponse ::
+  RegionsListResponse
+newRegionsListResponse =
+  RegionsListResponse {kind = Core.Nothing, regions = Core.Nothing}
+
+instance Core.FromJSON RegionsListResponse where
+  parseJSON =
+    Core.withObject
+      "RegionsListResponse"
+      ( \o ->
+          RegionsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "regions")
+      )
+
+instance Core.ToJSON RegionsListResponse where
+  toJSON RegionsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("regions" Core..=) Core.<$> regions
+          ]
+      )
+
+-- | Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.
+--
+-- /See:/ 'newRemarketingList' smart constructor.
+data RemarketingList = RemarketingList
+  { -- | Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this remarketing list is active.
+    active :: (Core.Maybe Core.Bool),
+    -- | Dimension value for the advertiser ID that owns this remarketing list. This is a required field.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Remarketing list description.
+    description :: (Core.Maybe Core.Text),
+    -- | Remarketing list ID. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Number of days that a user should remain in the remarketing list without an impression. Acceptable values are 1 to 540, inclusive.
+    lifeSpan :: (Core.Maybe Core.Int64),
+    -- | Rule used to populate the remarketing list with users.
+    listPopulationRule :: (Core.Maybe ListPopulationRule),
+    -- | Number of users currently in the list. This is a read-only field.
+    listSize :: (Core.Maybe Core.Int64),
+    -- | Product from which this remarketing list was originated.
+    listSource :: (Core.Maybe RemarketingList_ListSource),
+    -- | Name of the remarketing list. This is a required field. Must be no greater than 128 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RemarketingList' with the minimum fields required to make a request.
+newRemarketingList ::
+  RemarketingList
+newRemarketingList =
+  RemarketingList
+    { accountId = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      description = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lifeSpan = Core.Nothing,
+      listPopulationRule = Core.Nothing,
+      listSize = Core.Nothing,
+      listSource = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON RemarketingList where
+  parseJSON =
+    Core.withObject
+      "RemarketingList"
+      ( \o ->
+          RemarketingList
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lifeSpan" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "listPopulationRule")
+            Core.<*> (o Core..:? "listSize" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "listSource")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON RemarketingList where
+  toJSON RemarketingList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("active" Core..=) Core.<$> active,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("description" Core..=) Core.<$> description,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lifeSpan" Core..=) Core.. Core.AsText Core.<$> lifeSpan,
+            ("listPopulationRule" Core..=) Core.<$> listPopulationRule,
+            ("listSize" Core..=) Core.. Core.AsText Core.<$> listSize,
+            ("listSource" Core..=) Core.<$> listSource,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Contains properties of a remarketing list\'s sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.
+--
+-- /See:/ 'newRemarketingListShare' smart constructor.
+data RemarketingListShare = RemarketingListShare
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Remarketing list ID. This is a read-only, auto-generated field.
+    remarketingListId :: (Core.Maybe Core.Int64),
+    -- | Accounts that the remarketing list is shared with.
+    sharedAccountIds :: (Core.Maybe [Core.Int64]),
+    -- | Advertisers that the remarketing list is shared with.
+    sharedAdvertiserIds :: (Core.Maybe [Core.Int64])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RemarketingListShare' with the minimum fields required to make a request.
+newRemarketingListShare ::
+  RemarketingListShare
+newRemarketingListShare =
+  RemarketingListShare
+    { kind = Core.Nothing,
+      remarketingListId = Core.Nothing,
+      sharedAccountIds = Core.Nothing,
+      sharedAdvertiserIds = Core.Nothing
+    }
+
+instance Core.FromJSON RemarketingListShare where
+  parseJSON =
+    Core.withObject
+      "RemarketingListShare"
+      ( \o ->
+          RemarketingListShare
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "remarketingListId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "sharedAccountIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> ( o
+                         Core..:? "sharedAdvertiserIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+      )
+
+instance Core.ToJSON RemarketingListShare where
+  toJSON RemarketingListShare {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("remarketingListId" Core..=)
+              Core.. Core.AsText
+              Core.<$> remarketingListId,
+            ("sharedAccountIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> sharedAccountIds,
+            ("sharedAdvertiserIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> sharedAdvertiserIds
+          ]
+      )
+
+-- | Remarketing list response
+--
+-- /See:/ 'newRemarketingListsListResponse' smart constructor.
+data RemarketingListsListResponse = RemarketingListsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Remarketing list collection.
+    remarketingLists :: (Core.Maybe [RemarketingList])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RemarketingListsListResponse' with the minimum fields required to make a request.
+newRemarketingListsListResponse ::
+  RemarketingListsListResponse
+newRemarketingListsListResponse =
+  RemarketingListsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      remarketingLists = Core.Nothing
+    }
+
+instance Core.FromJSON RemarketingListsListResponse where
+  parseJSON =
+    Core.withObject
+      "RemarketingListsListResponse"
+      ( \o ->
+          RemarketingListsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "remarketingLists")
+      )
+
+instance Core.ToJSON RemarketingListsListResponse where
+  toJSON RemarketingListsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("remarketingLists" Core..=) Core.<$> remarketingLists
+          ]
+      )
+
+-- | Represents a Report resource.
+--
+-- /See:/ 'newReport' smart constructor.
+data Report = Report
+  { -- | The account ID to which this report belongs.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | The report criteria for a report of type \"STANDARD\".
+    criteria :: (Core.Maybe Report_Criteria),
+    -- | The report criteria for a report of type \"CROSS/DIMENSION/REACH\".
+    crossDimensionReachCriteria :: (Core.Maybe Report_CrossDimensionReachCriteria),
+    -- | Optional. The report criteria for a report of type \"CROSS/MEDIA/REACH\".
+    crossMediaReachCriteria :: (Core.Maybe Report_CrossMediaReachCriteria),
+    -- | The report\'s email delivery settings.
+    delivery :: (Core.Maybe Report_Delivery),
+    -- | The eTag of this response for caching purposes.
+    etag :: (Core.Maybe Core.Text),
+    -- | The filename used when generating report files for this report.
+    fileName :: (Core.Maybe Core.Text),
+    -- | The report criteria for a report of type \"FLOODLIGHT\".
+    floodlightCriteria :: (Core.Maybe Report_FloodlightCriteria),
+    -- | The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report\'s size exceeds the format\'s capabilities. \"CSV\" will then be the fallback format.
+    format :: (Core.Maybe Report_Format),
+    -- | The unique ID identifying this report resource.
+    id :: (Core.Maybe Core.Int64),
+    -- | The kind of resource this is, in this case dfareporting#report.
+    kind :: (Core.Maybe Core.Text),
+    -- | The timestamp (in milliseconds since epoch) of when this report was last modified.
+    lastModifiedTime :: (Core.Maybe Core.Word64),
+    -- | The name of the report.
+    name :: (Core.Maybe Core.Text),
+    -- | The user profile id of the owner of this report.
+    ownerProfileId :: (Core.Maybe Core.Int64),
+    -- | The report criteria for a report of type \"PATH/TO/CONVERSION\".
+    pathToConversionCriteria :: (Core.Maybe Report_PathToConversionCriteria),
+    -- | The report criteria for a report of type \"REACH\".
+    reachCriteria :: (Core.Maybe Report_ReachCriteria),
+    -- | The report\'s schedule. Can only be set if the report\'s \'dateRange\' is a relative date range and the relative date range is not \"TODAY\".
+    schedule :: (Core.Maybe Report_Schedule),
+    -- | The subaccount ID to which this report belongs if applicable.
+    subAccountId :: (Core.Maybe Core.Int64),
+    -- | The type of the report.
+    type' :: (Core.Maybe Report_Type)
+  }
+  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
+    { accountId = Core.Nothing,
+      criteria = Core.Nothing,
+      crossDimensionReachCriteria = Core.Nothing,
+      crossMediaReachCriteria = Core.Nothing,
+      delivery = Core.Nothing,
+      etag = Core.Nothing,
+      fileName = Core.Nothing,
+      floodlightCriteria = Core.Nothing,
+      format = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lastModifiedTime = Core.Nothing,
+      name = Core.Nothing,
+      ownerProfileId = Core.Nothing,
+      pathToConversionCriteria = Core.Nothing,
+      reachCriteria = Core.Nothing,
+      schedule = Core.Nothing,
+      subAccountId = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON Report where
+  parseJSON =
+    Core.withObject
+      "Report"
+      ( \o ->
+          Report
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "criteria")
+            Core.<*> (o Core..:? "crossDimensionReachCriteria")
+            Core.<*> (o Core..:? "crossMediaReachCriteria")
+            Core.<*> (o Core..:? "delivery")
+            Core.<*> (o Core..:? "etag")
+            Core.<*> (o Core..:? "fileName")
+            Core.<*> (o Core..:? "floodlightCriteria")
+            Core.<*> (o Core..:? "format")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lastModifiedTime" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "ownerProfileId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "pathToConversionCriteria")
+            Core.<*> (o Core..:? "reachCriteria")
+            Core.<*> (o Core..:? "schedule")
+            Core.<*> (o Core..:? "subAccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON Report where
+  toJSON Report {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("criteria" Core..=) Core.<$> criteria,
+            ("crossDimensionReachCriteria" Core..=)
+              Core.<$> crossDimensionReachCriteria,
+            ("crossMediaReachCriteria" Core..=)
+              Core.<$> crossMediaReachCriteria,
+            ("delivery" Core..=) Core.<$> delivery,
+            ("etag" Core..=) Core.<$> etag,
+            ("fileName" Core..=) Core.<$> fileName,
+            ("floodlightCriteria" Core..=) Core.<$> floodlightCriteria,
+            ("format" Core..=) Core.<$> format,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lastModifiedTime" Core..=)
+              Core.. Core.AsText
+              Core.<$> lastModifiedTime,
+            ("name" Core..=) Core.<$> name,
+            ("ownerProfileId" Core..=)
+              Core.. Core.AsText
+              Core.<$> ownerProfileId,
+            ("pathToConversionCriteria" Core..=)
+              Core.<$> pathToConversionCriteria,
+            ("reachCriteria" Core..=) Core.<$> reachCriteria,
+            ("schedule" Core..=) Core.<$> schedule,
+            ("subAccountId" Core..=) Core.. Core.AsText Core.<$> subAccountId,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | The report criteria for a report of type \"STANDARD\".
+--
+-- /See:/ 'newReport_Criteria' smart constructor.
+data Report_Criteria = Report_Criteria
+  { -- | Activity group.
+    activities :: (Core.Maybe Activities),
+    -- | Custom Rich Media Events group.
+    customRichMediaEvents :: (Core.Maybe CustomRichMediaEvents),
+    -- | The date range for which this report should be run.
+    dateRange :: (Core.Maybe DateRange),
+    -- | The list of filters on which dimensions are filtered. Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+    dimensionFilters :: (Core.Maybe [DimensionValue]),
+    -- | The list of standard dimensions the report should include.
+    dimensions :: (Core.Maybe [SortedDimension]),
+    -- | The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_Criteria' with the minimum fields required to make a request.
+newReport_Criteria ::
+  Report_Criteria
+newReport_Criteria =
+  Report_Criteria
+    { activities = Core.Nothing,
+      customRichMediaEvents = Core.Nothing,
+      dateRange = Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      metricNames = Core.Nothing
+    }
+
+instance Core.FromJSON Report_Criteria where
+  parseJSON =
+    Core.withObject
+      "Report_Criteria"
+      ( \o ->
+          Report_Criteria
+            Core.<$> (o Core..:? "activities")
+            Core.<*> (o Core..:? "customRichMediaEvents")
+            Core.<*> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "metricNames")
+      )
+
+instance Core.ToJSON Report_Criteria where
+  toJSON Report_Criteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("activities" Core..=) Core.<$> activities,
+            ("customRichMediaEvents" Core..=) Core.<$> customRichMediaEvents,
+            ("dateRange" Core..=) Core.<$> dateRange,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("metricNames" Core..=) Core.<$> metricNames
+          ]
+      )
+
+-- | The report criteria for a report of type \"CROSS/DIMENSION/REACH\".
+--
+-- /See:/ 'newReport_CrossDimensionReachCriteria' smart constructor.
+data Report_CrossDimensionReachCriteria = Report_CrossDimensionReachCriteria
+  { -- | The list of dimensions the report should include.
+    breakdown :: (Core.Maybe [SortedDimension]),
+    -- | The date range this report should be run for.
+    dateRange :: (Core.Maybe DateRange),
+    -- | The dimension option.
+    dimension :: (Core.Maybe Report_CrossDimensionReachCriteria_Dimension),
+    -- | The list of filters on which dimensions are filtered.
+    dimensionFilters :: (Core.Maybe [DimensionValue]),
+    -- | The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text]),
+    -- | The list of names of overlap metrics the report should include.
+    overlapMetricNames :: (Core.Maybe [Core.Text]),
+    -- | Whether the report is pivoted or not. Defaults to true.
+    pivoted :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_CrossDimensionReachCriteria' with the minimum fields required to make a request.
+newReport_CrossDimensionReachCriteria ::
+  Report_CrossDimensionReachCriteria
+newReport_CrossDimensionReachCriteria =
+  Report_CrossDimensionReachCriteria
+    { breakdown = Core.Nothing,
+      dateRange = Core.Nothing,
+      dimension = Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      metricNames = Core.Nothing,
+      overlapMetricNames = Core.Nothing,
+      pivoted = Core.Nothing
+    }
+
+instance Core.FromJSON Report_CrossDimensionReachCriteria where
+  parseJSON =
+    Core.withObject
+      "Report_CrossDimensionReachCriteria"
+      ( \o ->
+          Report_CrossDimensionReachCriteria
+            Core.<$> (o Core..:? "breakdown")
+            Core.<*> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "dimension")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "metricNames")
+            Core.<*> (o Core..:? "overlapMetricNames")
+            Core.<*> (o Core..:? "pivoted")
+      )
+
+instance Core.ToJSON Report_CrossDimensionReachCriteria where
+  toJSON Report_CrossDimensionReachCriteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("breakdown" Core..=) Core.<$> breakdown,
+            ("dateRange" Core..=) Core.<$> dateRange,
+            ("dimension" Core..=) Core.<$> dimension,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("metricNames" Core..=) Core.<$> metricNames,
+            ("overlapMetricNames" Core..=) Core.<$> overlapMetricNames,
+            ("pivoted" Core..=) Core.<$> pivoted
+          ]
+      )
+
+-- | Optional. The report criteria for a report of type \"CROSS/MEDIA/REACH\".
+--
+-- /See:/ 'newReport_CrossMediaReachCriteria' smart constructor.
+data Report_CrossMediaReachCriteria = Report_CrossMediaReachCriteria
+  { -- | Required. The date range this report should be run for.
+    dateRange :: (Core.Maybe DateRange),
+    -- | Required. The list of filters on which dimensions are filtered. Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+    dimensionFilters :: (Core.Maybe [DimensionValue]),
+    -- | Required. The list of dimensions the report should include.
+    dimensions :: (Core.Maybe [SortedDimension]),
+    -- | Required. The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_CrossMediaReachCriteria' with the minimum fields required to make a request.
+newReport_CrossMediaReachCriteria ::
+  Report_CrossMediaReachCriteria
+newReport_CrossMediaReachCriteria =
+  Report_CrossMediaReachCriteria
+    { dateRange = Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      metricNames = Core.Nothing
+    }
+
+instance Core.FromJSON Report_CrossMediaReachCriteria where
+  parseJSON =
+    Core.withObject
+      "Report_CrossMediaReachCriteria"
+      ( \o ->
+          Report_CrossMediaReachCriteria
+            Core.<$> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "metricNames")
+      )
+
+instance Core.ToJSON Report_CrossMediaReachCriteria where
+  toJSON Report_CrossMediaReachCriteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dateRange" Core..=) Core.<$> dateRange,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("metricNames" Core..=) Core.<$> metricNames
+          ]
+      )
+
+-- | The report\'s email delivery settings.
+--
+-- /See:/ 'newReport_Delivery' smart constructor.
+data Report_Delivery = Report_Delivery
+  { -- | Whether the report should be emailed to the report owner.
+    emailOwner :: (Core.Maybe Core.Bool),
+    -- | The type of delivery for the owner to receive, if enabled.
+    emailOwnerDeliveryType :: (Core.Maybe Report_Delivery_EmailOwnerDeliveryType),
+    -- | The message to be sent with each email.
+    message :: (Core.Maybe Core.Text),
+    -- | The list of recipients to which to email the report.
+    recipients :: (Core.Maybe [Recipient])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_Delivery' with the minimum fields required to make a request.
+newReport_Delivery ::
+  Report_Delivery
+newReport_Delivery =
+  Report_Delivery
+    { emailOwner = Core.Nothing,
+      emailOwnerDeliveryType = Core.Nothing,
+      message = Core.Nothing,
+      recipients = Core.Nothing
+    }
+
+instance Core.FromJSON Report_Delivery where
+  parseJSON =
+    Core.withObject
+      "Report_Delivery"
+      ( \o ->
+          Report_Delivery
+            Core.<$> (o Core..:? "emailOwner")
+            Core.<*> (o Core..:? "emailOwnerDeliveryType")
+            Core.<*> (o Core..:? "message")
+            Core.<*> (o Core..:? "recipients")
+      )
+
+instance Core.ToJSON Report_Delivery where
+  toJSON Report_Delivery {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("emailOwner" Core..=) Core.<$> emailOwner,
+            ("emailOwnerDeliveryType" Core..=) Core.<$> emailOwnerDeliveryType,
+            ("message" Core..=) Core.<$> message,
+            ("recipients" Core..=) Core.<$> recipients
+          ]
+      )
+
+-- | The report criteria for a report of type \"FLOODLIGHT\".
+--
+-- /See:/ 'newReport_FloodlightCriteria' smart constructor.
+data Report_FloodlightCriteria = Report_FloodlightCriteria
+  { -- | The list of custom rich media events to include.
+    customRichMediaEvents :: (Core.Maybe [DimensionValue]),
+    -- | The date range this report should be run for.
+    dateRange :: (Core.Maybe DateRange),
+    -- | The list of filters on which dimensions are filtered. Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+    dimensionFilters :: (Core.Maybe [DimensionValue]),
+    -- | The list of dimensions the report should include.
+    dimensions :: (Core.Maybe [SortedDimension]),
+    -- | The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be \'dfa:floodlightConfigId\'.
+    floodlightConfigId :: (Core.Maybe DimensionValue),
+    -- | The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text]),
+    -- | The properties of the report.
+    reportProperties :: (Core.Maybe Report_FloodlightCriteria_ReportProperties)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_FloodlightCriteria' with the minimum fields required to make a request.
+newReport_FloodlightCriteria ::
+  Report_FloodlightCriteria
+newReport_FloodlightCriteria =
+  Report_FloodlightCriteria
+    { customRichMediaEvents = Core.Nothing,
+      dateRange = Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      floodlightConfigId = Core.Nothing,
+      metricNames = Core.Nothing,
+      reportProperties = Core.Nothing
+    }
+
+instance Core.FromJSON Report_FloodlightCriteria where
+  parseJSON =
+    Core.withObject
+      "Report_FloodlightCriteria"
+      ( \o ->
+          Report_FloodlightCriteria
+            Core.<$> (o Core..:? "customRichMediaEvents")
+            Core.<*> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "floodlightConfigId")
+            Core.<*> (o Core..:? "metricNames")
+            Core.<*> (o Core..:? "reportProperties")
+      )
+
+instance Core.ToJSON Report_FloodlightCriteria where
+  toJSON Report_FloodlightCriteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("customRichMediaEvents" Core..=) Core.<$> customRichMediaEvents,
+            ("dateRange" Core..=) Core.<$> dateRange,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("floodlightConfigId" Core..=) Core.<$> floodlightConfigId,
+            ("metricNames" Core..=) Core.<$> metricNames,
+            ("reportProperties" Core..=) Core.<$> reportProperties
+          ]
+      )
+
+-- | The properties of the report.
+--
+-- /See:/ 'newReport_FloodlightCriteria_ReportProperties' smart constructor.
+data Report_FloodlightCriteria_ReportProperties = Report_FloodlightCriteria_ReportProperties
+  { -- | Include conversions that have no cookie, but do have an exposure path.
+    includeAttributedIPConversions :: (Core.Maybe Core.Bool),
+    -- | Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+    includeUnattributedCookieConversions :: (Core.Maybe Core.Bool),
+    -- | Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+    includeUnattributedIPConversions :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_FloodlightCriteria_ReportProperties' with the minimum fields required to make a request.
+newReport_FloodlightCriteria_ReportProperties ::
+  Report_FloodlightCriteria_ReportProperties
+newReport_FloodlightCriteria_ReportProperties =
+  Report_FloodlightCriteria_ReportProperties
+    { includeAttributedIPConversions =
+        Core.Nothing,
+      includeUnattributedCookieConversions = Core.Nothing,
+      includeUnattributedIPConversions = Core.Nothing
+    }
+
+instance Core.FromJSON Report_FloodlightCriteria_ReportProperties where
+  parseJSON =
+    Core.withObject
+      "Report_FloodlightCriteria_ReportProperties"
+      ( \o ->
+          Report_FloodlightCriteria_ReportProperties
+            Core.<$> (o Core..:? "includeAttributedIPConversions")
+            Core.<*> (o Core..:? "includeUnattributedCookieConversions")
+            Core.<*> (o Core..:? "includeUnattributedIPConversions")
+      )
+
+instance Core.ToJSON Report_FloodlightCriteria_ReportProperties where
+  toJSON Report_FloodlightCriteria_ReportProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("includeAttributedIPConversions" Core..=)
+              Core.<$> includeAttributedIPConversions,
+            ("includeUnattributedCookieConversions" Core..=)
+              Core.<$> includeUnattributedCookieConversions,
+            ("includeUnattributedIPConversions" Core..=)
+              Core.<$> includeUnattributedIPConversions
+          ]
+      )
+
+-- | The report criteria for a report of type \"PATH/TO/CONVERSION\".
+--
+-- /See:/ 'newReport_PathToConversionCriteria' smart constructor.
+data Report_PathToConversionCriteria = Report_PathToConversionCriteria
+  { -- | The list of \'dfa:activity\' values to filter on.
+    activityFilters :: (Core.Maybe [DimensionValue]),
+    -- | The list of conversion dimensions the report should include.
+    conversionDimensions :: (Core.Maybe [SortedDimension]),
+    -- | The list of custom floodlight variables the report should include.
+    customFloodlightVariables :: (Core.Maybe [SortedDimension]),
+    -- | The list of custom rich media events to include.
+    customRichMediaEvents :: (Core.Maybe [DimensionValue]),
+    -- | The date range this report should be run for.
+    dateRange :: (Core.Maybe DateRange),
+    -- | The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be \'dfa:floodlightConfigId\'.
+    floodlightConfigId :: (Core.Maybe DimensionValue),
+    -- | The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text]),
+    -- | The list of per interaction dimensions the report should include.
+    perInteractionDimensions :: (Core.Maybe [SortedDimension]),
+    -- | The properties of the report.
+    reportProperties :: (Core.Maybe Report_PathToConversionCriteria_ReportProperties)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_PathToConversionCriteria' with the minimum fields required to make a request.
+newReport_PathToConversionCriteria ::
+  Report_PathToConversionCriteria
+newReport_PathToConversionCriteria =
+  Report_PathToConversionCriteria
+    { activityFilters = Core.Nothing,
+      conversionDimensions = Core.Nothing,
+      customFloodlightVariables = Core.Nothing,
+      customRichMediaEvents = Core.Nothing,
+      dateRange = Core.Nothing,
+      floodlightConfigId = Core.Nothing,
+      metricNames = Core.Nothing,
+      perInteractionDimensions = Core.Nothing,
+      reportProperties = Core.Nothing
+    }
+
+instance Core.FromJSON Report_PathToConversionCriteria where
+  parseJSON =
+    Core.withObject
+      "Report_PathToConversionCriteria"
+      ( \o ->
+          Report_PathToConversionCriteria
+            Core.<$> (o Core..:? "activityFilters")
+            Core.<*> (o Core..:? "conversionDimensions")
+            Core.<*> (o Core..:? "customFloodlightVariables")
+            Core.<*> (o Core..:? "customRichMediaEvents")
+            Core.<*> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "floodlightConfigId")
+            Core.<*> (o Core..:? "metricNames")
+            Core.<*> (o Core..:? "perInteractionDimensions")
+            Core.<*> (o Core..:? "reportProperties")
+      )
+
+instance Core.ToJSON Report_PathToConversionCriteria where
+  toJSON Report_PathToConversionCriteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("activityFilters" Core..=) Core.<$> activityFilters,
+            ("conversionDimensions" Core..=) Core.<$> conversionDimensions,
+            ("customFloodlightVariables" Core..=)
+              Core.<$> customFloodlightVariables,
+            ("customRichMediaEvents" Core..=) Core.<$> customRichMediaEvents,
+            ("dateRange" Core..=) Core.<$> dateRange,
+            ("floodlightConfigId" Core..=) Core.<$> floodlightConfigId,
+            ("metricNames" Core..=) Core.<$> metricNames,
+            ("perInteractionDimensions" Core..=)
+              Core.<$> perInteractionDimensions,
+            ("reportProperties" Core..=) Core.<$> reportProperties
+          ]
+      )
+
+-- | The properties of the report.
+--
+-- /See:/ 'newReport_PathToConversionCriteria_ReportProperties' smart constructor.
+data Report_PathToConversionCriteria_ReportProperties = Report_PathToConversionCriteria_ReportProperties
+  { -- | CM360 checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+    clicksLookbackWindow :: (Core.Maybe Core.Int32),
+    -- | CM360 checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+    impressionsLookbackWindow :: (Core.Maybe Core.Int32),
+    -- | Deprecated: has no effect.
+    includeAttributedIPConversions :: (Core.Maybe Core.Bool),
+    -- | Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+    includeUnattributedCookieConversions :: (Core.Maybe Core.Bool),
+    -- | Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+    includeUnattributedIPConversions :: (Core.Maybe Core.Bool),
+    -- | The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+    maximumClickInteractions :: (Core.Maybe Core.Int32),
+    -- | The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+    maximumImpressionInteractions :: (Core.Maybe Core.Int32),
+    -- | The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+    maximumInteractionGap :: (Core.Maybe Core.Int32),
+    -- | Enable pivoting on interaction path.
+    pivotOnInteractionPath :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_PathToConversionCriteria_ReportProperties' with the minimum fields required to make a request.
+newReport_PathToConversionCriteria_ReportProperties ::
+  Report_PathToConversionCriteria_ReportProperties
+newReport_PathToConversionCriteria_ReportProperties =
+  Report_PathToConversionCriteria_ReportProperties
+    { clicksLookbackWindow =
+        Core.Nothing,
+      impressionsLookbackWindow = Core.Nothing,
+      includeAttributedIPConversions = Core.Nothing,
+      includeUnattributedCookieConversions =
+        Core.Nothing,
+      includeUnattributedIPConversions =
+        Core.Nothing,
+      maximumClickInteractions = Core.Nothing,
+      maximumImpressionInteractions = Core.Nothing,
+      maximumInteractionGap = Core.Nothing,
+      pivotOnInteractionPath = Core.Nothing
+    }
+
+instance
+  Core.FromJSON
+    Report_PathToConversionCriteria_ReportProperties
+  where
+  parseJSON =
+    Core.withObject
+      "Report_PathToConversionCriteria_ReportProperties"
+      ( \o ->
+          Report_PathToConversionCriteria_ReportProperties
+            Core.<$> (o Core..:? "clicksLookbackWindow")
+            Core.<*> (o Core..:? "impressionsLookbackWindow")
+            Core.<*> (o Core..:? "includeAttributedIPConversions")
+            Core.<*> (o Core..:? "includeUnattributedCookieConversions")
+            Core.<*> (o Core..:? "includeUnattributedIPConversions")
+            Core.<*> (o Core..:? "maximumClickInteractions")
+            Core.<*> (o Core..:? "maximumImpressionInteractions")
+            Core.<*> (o Core..:? "maximumInteractionGap")
+            Core.<*> (o Core..:? "pivotOnInteractionPath")
+      )
+
+instance
+  Core.ToJSON
+    Report_PathToConversionCriteria_ReportProperties
+  where
+  toJSON Report_PathToConversionCriteria_ReportProperties {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clicksLookbackWindow" Core..=) Core.<$> clicksLookbackWindow,
+            ("impressionsLookbackWindow" Core..=)
+              Core.<$> impressionsLookbackWindow,
+            ("includeAttributedIPConversions" Core..=)
+              Core.<$> includeAttributedIPConversions,
+            ("includeUnattributedCookieConversions" Core..=)
+              Core.<$> includeUnattributedCookieConversions,
+            ("includeUnattributedIPConversions" Core..=)
+              Core.<$> includeUnattributedIPConversions,
+            ("maximumClickInteractions" Core..=)
+              Core.<$> maximumClickInteractions,
+            ("maximumImpressionInteractions" Core..=)
+              Core.<$> maximumImpressionInteractions,
+            ("maximumInteractionGap" Core..=) Core.<$> maximumInteractionGap,
+            ("pivotOnInteractionPath" Core..=)
+              Core.<$> pivotOnInteractionPath
+          ]
+      )
+
+-- | The report criteria for a report of type \"REACH\".
+--
+-- /See:/ 'newReport_ReachCriteria' smart constructor.
+data Report_ReachCriteria = Report_ReachCriteria
+  { -- | Activity group.
+    activities :: (Core.Maybe Activities),
+    -- | Custom Rich Media Events group.
+    customRichMediaEvents :: (Core.Maybe CustomRichMediaEvents),
+    -- | The date range this report should be run for.
+    dateRange :: (Core.Maybe DateRange),
+    -- | The list of filters on which dimensions are filtered. Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+    dimensionFilters :: (Core.Maybe [DimensionValue]),
+    -- | The list of dimensions the report should include.
+    dimensions :: (Core.Maybe [SortedDimension]),
+    -- | Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last 42 days.
+    enableAllDimensionCombinations :: (Core.Maybe Core.Bool),
+    -- | The list of names of metrics the report should include.
+    metricNames :: (Core.Maybe [Core.Text]),
+    -- | The list of names of Reach By Frequency metrics the report should include.
+    reachByFrequencyMetricNames :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_ReachCriteria' with the minimum fields required to make a request.
+newReport_ReachCriteria ::
+  Report_ReachCriteria
+newReport_ReachCriteria =
+  Report_ReachCriteria
+    { activities = Core.Nothing,
+      customRichMediaEvents = Core.Nothing,
+      dateRange = Core.Nothing,
+      dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      enableAllDimensionCombinations = Core.Nothing,
+      metricNames = Core.Nothing,
+      reachByFrequencyMetricNames = Core.Nothing
+    }
+
+instance Core.FromJSON Report_ReachCriteria where
+  parseJSON =
+    Core.withObject
+      "Report_ReachCriteria"
+      ( \o ->
+          Report_ReachCriteria
+            Core.<$> (o Core..:? "activities")
+            Core.<*> (o Core..:? "customRichMediaEvents")
+            Core.<*> (o Core..:? "dateRange")
+            Core.<*> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "enableAllDimensionCombinations")
+            Core.<*> (o Core..:? "metricNames")
+            Core.<*> (o Core..:? "reachByFrequencyMetricNames")
+      )
+
+instance Core.ToJSON Report_ReachCriteria where
+  toJSON Report_ReachCriteria {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("activities" Core..=) Core.<$> activities,
+            ("customRichMediaEvents" Core..=) Core.<$> customRichMediaEvents,
+            ("dateRange" Core..=) Core.<$> dateRange,
+            ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("enableAllDimensionCombinations" Core..=)
+              Core.<$> enableAllDimensionCombinations,
+            ("metricNames" Core..=) Core.<$> metricNames,
+            ("reachByFrequencyMetricNames" Core..=)
+              Core.<$> reachByFrequencyMetricNames
+          ]
+      )
+
+-- | The report\'s schedule. Can only be set if the report\'s \'dateRange\' is a relative date range and the relative date range is not \"TODAY\".
+--
+-- /See:/ 'newReport_Schedule' smart constructor.
+data Report_Schedule = Report_Schedule
+  { -- | Whether the schedule is active or not. Must be set to either true or false.
+    active :: (Core.Maybe Core.Bool),
+    -- | Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".
+    every :: (Core.Maybe Core.Int32),
+    expirationDate :: (Core.Maybe Core.Date),
+    -- | The interval for which the report is repeated. Note: - \"DAILY\" also requires field \"every\" to be set. - \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. - \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.
+    repeats :: (Core.Maybe Core.Text),
+    -- | List of week days \"WEEKLY\" on which scheduled reports should run.
+    repeatsOnWeekDays :: (Core.Maybe [Report_Schedule_RepeatsOnWeekDaysItem]),
+    -- | Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month. Example: If \'startDate\' is Monday, April 2nd 2012 (2012-04-02), \"DAY/OF/MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK/OF/MONTH\" would run subsequent reports on the first Monday of the month.
+    runsOnDayOfMonth :: (Core.Maybe Report_Schedule_RunsOnDayOfMonth),
+    startDate :: (Core.Maybe Core.Date),
+    -- | The timezone when the report will run.
+    timezone :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Report_Schedule' with the minimum fields required to make a request.
+newReport_Schedule ::
+  Report_Schedule
+newReport_Schedule =
+  Report_Schedule
+    { active = Core.Nothing,
+      every = Core.Nothing,
+      expirationDate = Core.Nothing,
+      repeats = Core.Nothing,
+      repeatsOnWeekDays = Core.Nothing,
+      runsOnDayOfMonth = Core.Nothing,
+      startDate = Core.Nothing,
+      timezone = Core.Nothing
+    }
+
+instance Core.FromJSON Report_Schedule where
+  parseJSON =
+    Core.withObject
+      "Report_Schedule"
+      ( \o ->
+          Report_Schedule
+            Core.<$> (o Core..:? "active")
+            Core.<*> (o Core..:? "every")
+            Core.<*> (o Core..:? "expirationDate")
+            Core.<*> (o Core..:? "repeats")
+            Core.<*> (o Core..:? "repeatsOnWeekDays")
+            Core.<*> (o Core..:? "runsOnDayOfMonth")
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "timezone")
+      )
+
+instance Core.ToJSON Report_Schedule where
+  toJSON Report_Schedule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("active" Core..=) Core.<$> active,
+            ("every" Core..=) Core.<$> every,
+            ("expirationDate" Core..=) Core.<$> expirationDate,
+            ("repeats" Core..=) Core.<$> repeats,
+            ("repeatsOnWeekDays" Core..=) Core.<$> repeatsOnWeekDays,
+            ("runsOnDayOfMonth" Core..=) Core.<$> runsOnDayOfMonth,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("timezone" Core..=) Core.<$> timezone
+          ]
+      )
+
+-- | Represents fields that are compatible to be selected for a report of type \"STANDARD\".
+--
+-- /See:/ 'newReportCompatibleFields' smart constructor.
+data ReportCompatibleFields = ReportCompatibleFields
+  { -- | Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.
+    dimensionFilters :: (Core.Maybe [Dimension]),
+    -- | Dimensions which are compatible to be selected in the \"dimensions\" section of the report.
+    dimensions :: (Core.Maybe [Dimension]),
+    -- | The kind of resource this is, in this case dfareporting#reportCompatibleFields.
+    kind :: (Core.Maybe Core.Text),
+    -- | Metrics which are compatible to be selected in the \"metricNames\" section of the report.
+    metrics :: (Core.Maybe [Metric]),
+    -- | Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.
+    pivotedActivityMetrics :: (Core.Maybe [Metric])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportCompatibleFields' with the minimum fields required to make a request.
+newReportCompatibleFields ::
+  ReportCompatibleFields
+newReportCompatibleFields =
+  ReportCompatibleFields
+    { dimensionFilters = Core.Nothing,
+      dimensions = Core.Nothing,
+      kind = Core.Nothing,
+      metrics = Core.Nothing,
+      pivotedActivityMetrics = Core.Nothing
+    }
+
+instance Core.FromJSON ReportCompatibleFields where
+  parseJSON =
+    Core.withObject
+      "ReportCompatibleFields"
+      ( \o ->
+          ReportCompatibleFields
+            Core.<$> (o Core..:? "dimensionFilters")
+            Core.<*> (o Core..:? "dimensions")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "metrics")
+            Core.<*> (o Core..:? "pivotedActivityMetrics")
+      )
+
+instance Core.ToJSON ReportCompatibleFields where
+  toJSON ReportCompatibleFields {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dimensionFilters" Core..=) Core.<$> dimensionFilters,
+            ("dimensions" Core..=) Core.<$> dimensions,
+            ("kind" Core..=) Core.<$> kind,
+            ("metrics" Core..=) Core.<$> metrics,
+            ("pivotedActivityMetrics" Core..=)
+              Core.<$> pivotedActivityMetrics
+          ]
+      )
+
+-- | Represents the list of reports.
+--
+-- /See:/ 'newReportList' smart constructor.
+data ReportList = ReportList
+  { -- | The eTag of this response for caching purposes.
+    etag :: (Core.Maybe Core.Text),
+    -- | The reports returned in this response.
+    items :: (Core.Maybe [Report]),
+    -- | The kind of list this is, in this case dfareporting#reportList.
+    kind :: (Core.Maybe Core.Text),
+    -- | Continuation token used to page through reports. To retrieve the next page of results, set the next request\'s \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
+    nextPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportList' with the minimum fields required to make a request.
+newReportList ::
+  ReportList
+newReportList =
+  ReportList
+    { etag = Core.Nothing,
+      items = Core.Nothing,
+      kind = Core.Nothing,
+      nextPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON ReportList where
+  parseJSON =
+    Core.withObject
+      "ReportList"
+      ( \o ->
+          ReportList
+            Core.<$> (o Core..:? "etag")
+            Core.<*> (o Core..:? "items")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+      )
+
+instance Core.ToJSON ReportList where
+  toJSON ReportList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("etag" Core..=) Core.<$> etag,
+            ("items" Core..=) Core.<$> items,
+            ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken
+          ]
+      )
+
+-- | Reporting Configuration
+--
+-- /See:/ 'newReportsConfiguration' smart constructor.
+data ReportsConfiguration = ReportsConfiguration
+  { -- | Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting.
+    exposureToConversionEnabled :: (Core.Maybe Core.Bool),
+    -- | Default lookback windows for new advertisers in this account.
+    lookbackConfiguration :: (Core.Maybe LookbackConfiguration),
+    -- | Report generation time zone ID of this account. This is a required field that cannot be changed on update. Acceptable values are: - \"1\" for \"America\/New/York\" - \"2\" for \"Europe\/London\" - \"3\" for \"Europe\/Paris\" - \"4\" for \"Africa\/Johannesburg\" - \"5\" for \"Asia\/Jerusalem\" - \"6\" for \"Asia\/Shanghai\" - \"7\" for \"Asia\/Hong/Kong\" - \"8\" for \"Asia\/Tokyo\" - \"9\" for \"Australia\/Sydney\" - \"10\" for \"Asia\/Dubai\" - \"11\" for \"America\/Los/Angeles\" - \"12\" for \"Pacific\/Auckland\" - \"13\" for \"America\/Sao/Paulo\" - \"16\" for \"America\/Asuncion\" - \"17\" for \"America\/Chicago\" - \"18\" for \"America\/Denver\" - \"19\" for \"America\/St/Johns\" - \"20\" for \"Asia\/Dhaka\" - \"21\" for \"Asia\/Jakarta\" - \"22\" for \"Asia\/Kabul\" - \"23\" for \"Asia\/Karachi\" - \"24\" for \"Asia\/Calcutta\" - \"25\" for \"Asia\/Pyongyang\" - \"26\" for \"Asia\/Rangoon\" - \"27\" for \"Atlantic\/Cape/Verde\" - \"28\" for \"Atlantic\/South/Georgia\" - \"29\" for
+    -- \"Australia\/Adelaide\" - \"30\" for \"Australia\/Lord/Howe\" - \"31\" for \"Europe\/Moscow\" - \"32\" for \"Pacific\/Kiritimati\" - \"35\" for \"Pacific\/Norfolk\" - \"36\" for \"Pacific\/Tongatapu\"
+    reportGenerationTimeZoneId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportsConfiguration' with the minimum fields required to make a request.
+newReportsConfiguration ::
+  ReportsConfiguration
+newReportsConfiguration =
+  ReportsConfiguration
+    { exposureToConversionEnabled = Core.Nothing,
+      lookbackConfiguration = Core.Nothing,
+      reportGenerationTimeZoneId = Core.Nothing
+    }
+
+instance Core.FromJSON ReportsConfiguration where
+  parseJSON =
+    Core.withObject
+      "ReportsConfiguration"
+      ( \o ->
+          ReportsConfiguration
+            Core.<$> (o Core..:? "exposureToConversionEnabled")
+            Core.<*> (o Core..:? "lookbackConfiguration")
+            Core.<*> ( o
+                         Core..:? "reportGenerationTimeZoneId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON ReportsConfiguration where
+  toJSON ReportsConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("exposureToConversionEnabled" Core..=)
+              Core.<$> exposureToConversionEnabled,
+            ("lookbackConfiguration" Core..=) Core.<$> lookbackConfiguration,
+            ("reportGenerationTimeZoneId" Core..=)
+              Core.. Core.AsText
+              Core.<$> reportGenerationTimeZoneId
+          ]
+      )
+
+-- | Rich Media Exit Override.
+--
+-- /See:/ 'newRichMediaExitOverride' smart constructor.
+data RichMediaExitOverride = RichMediaExitOverride
+  { -- | Click-through URL of this rich media exit override. Applicable if the enabled field is set to true.
+    clickThroughUrl :: (Core.Maybe ClickThroughUrl),
+    -- | Whether to use the clickThroughUrl. If false, the creative-level exit will be used.
+    enabled :: (Core.Maybe Core.Bool),
+    -- | ID for the override to refer to a specific exit in the creative.
+    exitId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'RichMediaExitOverride' with the minimum fields required to make a request.
+newRichMediaExitOverride ::
+  RichMediaExitOverride
+newRichMediaExitOverride =
+  RichMediaExitOverride
+    { clickThroughUrl = Core.Nothing,
+      enabled = Core.Nothing,
+      exitId = Core.Nothing
+    }
+
+instance Core.FromJSON RichMediaExitOverride where
+  parseJSON =
+    Core.withObject
+      "RichMediaExitOverride"
+      ( \o ->
+          RichMediaExitOverride
+            Core.<$> (o Core..:? "clickThroughUrl")
+            Core.<*> (o Core..:? "enabled")
+            Core.<*> (o Core..:? "exitId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON RichMediaExitOverride where
+  toJSON RichMediaExitOverride {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("clickThroughUrl" Core..=) Core.<$> clickThroughUrl,
+            ("enabled" Core..=) Core.<$> enabled,
+            ("exitId" Core..=) Core.. Core.AsText Core.<$> exitId
+          ]
+      )
+
+-- | A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.
+--
+-- /See:/ 'newRule' smart constructor.
+data Rule = Rule
+  { -- | A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.
+    assetId :: (Core.Maybe Core.Int64),
+    -- | A user-friendly name for this rule. This is a required field.
+    name :: (Core.Maybe Core.Text),
+    -- | A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.
+    targetingTemplateId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Rule' with the minimum fields required to make a request.
+newRule ::
+  Rule
+newRule =
+  Rule
+    { assetId = Core.Nothing,
+      name = Core.Nothing,
+      targetingTemplateId = Core.Nothing
+    }
+
+instance Core.FromJSON Rule where
+  parseJSON =
+    Core.withObject
+      "Rule"
+      ( \o ->
+          Rule
+            Core.<$> (o Core..:? "assetId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "targetingTemplateId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON Rule where
+  toJSON Rule {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("assetId" Core..=) Core.. Core.AsText Core.<$> assetId,
+            ("name" Core..=) Core.<$> name,
+            ("targetingTemplateId" Core..=)
+              Core.. Core.AsText
+              Core.<$> targetingTemplateId
+          ]
+      )
+
+-- | Contains properties of a site.
+--
+-- /See:/ 'newSite' smart constructor.
+data Site = Site
+  { -- | Account ID of this site. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Optional. Ad serving platform ID to identify the ad serving platform used by the site. Measurement partners can use this field to add ad-server specific macros. If set, this value acts as the default during placement creation. Possible values are: * @1@, Adelphic * @2@, Adform * @3@, Adobe * @4@, Amobee * @5@, Basis (Centro) * @6@, Beeswax * @7@, Amazon * @8@, DV360 (DBM) * @9@, Innovid * @10@, MediaMath * @11@, Roku OneView DSP * @12@, TabMo Hawk * @13@, The Trade Desk * @14@, Xandr Invest DSP * @15@, Yahoo DSP * @16@, Zeta Global * @17@, Scaleout * @18@, Bidtellect * @19@, Unicorn * @20@, Teads * @21@, Quantcast * @22@, Cognitiv
+    adServingPlatformId :: (Core.Maybe Core.Int64),
+    -- | Whether this site is approved.
+    approved :: (Core.Maybe Core.Bool),
+    -- | Directory site associated with this site. This is a required field that is read-only after insertion.
+    directorySiteId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the directory site. This is a read-only, auto-generated field.
+    directorySiteIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | ID of this site. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of this site. This is a read-only, auto-generated field.
+    idDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Key name of this site. This is a read-only, auto-generated field.
+    keyName :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account.
+    name :: (Core.Maybe Core.Text),
+    -- | Site contacts.
+    siteContacts :: (Core.Maybe [SiteContact]),
+    -- | Site-wide settings.
+    siteSettings :: (Core.Maybe SiteSettings),
+    -- | Subaccount ID of this site. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Default video settings for new placements created under this site. This value will be used to populate the placements.videoSettings field, when no value is specified for the new placement.
+    videoSettings :: (Core.Maybe SiteVideoSettings)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Site' with the minimum fields required to make a request.
+newSite ::
+  Site
+newSite =
+  Site
+    { accountId = Core.Nothing,
+      adServingPlatformId = Core.Nothing,
+      approved = Core.Nothing,
+      directorySiteId = Core.Nothing,
+      directorySiteIdDimensionValue = Core.Nothing,
+      id = Core.Nothing,
+      idDimensionValue = Core.Nothing,
+      keyName = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      siteContacts = Core.Nothing,
+      siteSettings = Core.Nothing,
+      subaccountId = Core.Nothing,
+      videoSettings = Core.Nothing
+    }
+
+instance Core.FromJSON Site where
+  parseJSON =
+    Core.withObject
+      "Site"
+      ( \o ->
+          Site
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "adServingPlatformId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "approved")
+            Core.<*> (o Core..:? "directorySiteId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "directorySiteIdDimensionValue")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "idDimensionValue")
+            Core.<*> (o Core..:? "keyName")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "siteContacts")
+            Core.<*> (o Core..:? "siteSettings")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "videoSettings")
+      )
+
+instance Core.ToJSON Site where
+  toJSON Site {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("adServingPlatformId" Core..=)
+              Core.. Core.AsText
+              Core.<$> adServingPlatformId,
+            ("approved" Core..=) Core.<$> approved,
+            ("directorySiteId" Core..=)
+              Core.. Core.AsText
+              Core.<$> directorySiteId,
+            ("directorySiteIdDimensionValue" Core..=)
+              Core.<$> directorySiteIdDimensionValue,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("idDimensionValue" Core..=) Core.<$> idDimensionValue,
+            ("keyName" Core..=) Core.<$> keyName,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("siteContacts" Core..=) Core.<$> siteContacts,
+            ("siteSettings" Core..=) Core.<$> siteSettings,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("videoSettings" Core..=) Core.<$> videoSettings
+          ]
+      )
+
+-- | Companion Settings
+--
+-- /See:/ 'newSiteCompanionSetting' smart constructor.
+data SiteCompanionSetting = SiteCompanionSetting
+  { -- | Whether companions are disabled for this site template.
+    companionsDisabled :: (Core.Maybe Core.Bool),
+    -- | Allowlist of companion sizes to be served via this site template. Set this list to null or empty to serve all companion sizes.
+    enabledSizes :: (Core.Maybe [Size]),
+    -- | Whether to serve only static images as companions.
+    imageOnly :: (Core.Maybe Core.Bool),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#siteCompanionSetting\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteCompanionSetting' with the minimum fields required to make a request.
+newSiteCompanionSetting ::
+  SiteCompanionSetting
+newSiteCompanionSetting =
+  SiteCompanionSetting
+    { companionsDisabled = Core.Nothing,
+      enabledSizes = Core.Nothing,
+      imageOnly = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON SiteCompanionSetting where
+  parseJSON =
+    Core.withObject
+      "SiteCompanionSetting"
+      ( \o ->
+          SiteCompanionSetting
+            Core.<$> (o Core..:? "companionsDisabled")
+            Core.<*> (o Core..:? "enabledSizes")
+            Core.<*> (o Core..:? "imageOnly")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON SiteCompanionSetting where
+  toJSON SiteCompanionSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("companionsDisabled" Core..=) Core.<$> companionsDisabled,
+            ("enabledSizes" Core..=) Core.<$> enabledSizes,
+            ("imageOnly" Core..=) Core.<$> imageOnly,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Site Contact
+--
+-- /See:/ 'newSiteContact' smart constructor.
+data SiteContact = SiteContact
+  { -- | Address of this site contact.
+    address :: (Core.Maybe Core.Text),
+    -- | Site contact type.
+    contactType :: (Core.Maybe SiteContact_ContactType),
+    -- | Email address of this site contact. This is a required field.
+    email :: (Core.Maybe Core.Text),
+    -- | First name of this site contact.
+    firstName :: (Core.Maybe Core.Text),
+    -- | ID of this site contact. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Last name of this site contact.
+    lastName :: (Core.Maybe Core.Text),
+    -- | Primary phone number of this site contact.
+    phone :: (Core.Maybe Core.Text),
+    -- | Title or designation of this site contact.
+    title :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteContact' with the minimum fields required to make a request.
+newSiteContact ::
+  SiteContact
+newSiteContact =
+  SiteContact
+    { address = Core.Nothing,
+      contactType = Core.Nothing,
+      email = Core.Nothing,
+      firstName = Core.Nothing,
+      id = Core.Nothing,
+      lastName = Core.Nothing,
+      phone = Core.Nothing,
+      title = Core.Nothing
+    }
+
+instance Core.FromJSON SiteContact where
+  parseJSON =
+    Core.withObject
+      "SiteContact"
+      ( \o ->
+          SiteContact
+            Core.<$> (o Core..:? "address")
+            Core.<*> (o Core..:? "contactType")
+            Core.<*> (o Core..:? "email")
+            Core.<*> (o Core..:? "firstName")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "lastName")
+            Core.<*> (o Core..:? "phone")
+            Core.<*> (o Core..:? "title")
+      )
+
+instance Core.ToJSON SiteContact where
+  toJSON SiteContact {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("address" Core..=) Core.<$> address,
+            ("contactType" Core..=) Core.<$> contactType,
+            ("email" Core..=) Core.<$> email,
+            ("firstName" Core..=) Core.<$> firstName,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("lastName" Core..=) Core.<$> lastName,
+            ("phone" Core..=) Core.<$> phone,
+            ("title" Core..=) Core.<$> title
+          ]
+      )
+
+-- | Site Settings
+--
+-- /See:/ 'newSiteSettings' smart constructor.
+data SiteSettings = SiteSettings
+  { -- | Whether active view creatives are disabled for this site.
+    activeViewOptOut :: (Core.Maybe Core.Bool),
+    -- | Whether this site opts out of ad blocking. When true, ad blocking is disabled for all placements under the site, regardless of the individual placement settings. When false, the campaign and placement settings take effect.
+    adBlockingOptOut :: (Core.Maybe Core.Bool),
+    -- | Whether new cookies are disabled for this site.
+    disableNewCookie :: (Core.Maybe Core.Bool),
+    -- | Configuration settings for dynamic and image floodlight tags.
+    tagSetting :: (Core.Maybe TagSetting),
+    -- | Whether Verification and ActiveView for in-stream video creatives are disabled by default for new placements created under this site. This value will be used to populate the placement.videoActiveViewOptOut field, when no value is specified for the new placement.
+    videoActiveViewOptOutTemplate :: (Core.Maybe Core.Bool),
+    -- | Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher\'s specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter). /Note:/ Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.
+    vpaidAdapterChoiceTemplate :: (Core.Maybe SiteSettings_VpaidAdapterChoiceTemplate)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteSettings' with the minimum fields required to make a request.
+newSiteSettings ::
+  SiteSettings
+newSiteSettings =
+  SiteSettings
+    { activeViewOptOut = Core.Nothing,
+      adBlockingOptOut = Core.Nothing,
+      disableNewCookie = Core.Nothing,
+      tagSetting = Core.Nothing,
+      videoActiveViewOptOutTemplate = Core.Nothing,
+      vpaidAdapterChoiceTemplate = Core.Nothing
+    }
+
+instance Core.FromJSON SiteSettings where
+  parseJSON =
+    Core.withObject
+      "SiteSettings"
+      ( \o ->
+          SiteSettings
+            Core.<$> (o Core..:? "activeViewOptOut")
+            Core.<*> (o Core..:? "adBlockingOptOut")
+            Core.<*> (o Core..:? "disableNewCookie")
+            Core.<*> (o Core..:? "tagSetting")
+            Core.<*> (o Core..:? "videoActiveViewOptOutTemplate")
+            Core.<*> (o Core..:? "vpaidAdapterChoiceTemplate")
+      )
+
+instance Core.ToJSON SiteSettings where
+  toJSON SiteSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("activeViewOptOut" Core..=) Core.<$> activeViewOptOut,
+            ("adBlockingOptOut" Core..=) Core.<$> adBlockingOptOut,
+            ("disableNewCookie" Core..=) Core.<$> disableNewCookie,
+            ("tagSetting" Core..=) Core.<$> tagSetting,
+            ("videoActiveViewOptOutTemplate" Core..=)
+              Core.<$> videoActiveViewOptOutTemplate,
+            ("vpaidAdapterChoiceTemplate" Core..=)
+              Core.<$> vpaidAdapterChoiceTemplate
+          ]
+      )
+
+-- | Skippable Settings
+--
+-- /See:/ 'newSiteSkippableSetting' smart constructor.
+data SiteSkippableSetting = SiteSkippableSetting
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#siteSkippableSetting\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Amount of time to play videos served to this site template before counting a view. Applicable when skippable is true.
+    progressOffset :: (Core.Maybe VideoOffset),
+    -- | Amount of time to play videos served to this site before the skip button should appear. Applicable when skippable is true.
+    skipOffset :: (Core.Maybe VideoOffset),
+    -- | Whether the user can skip creatives served to this site. This will act as default for new placements created under this site.
+    skippable :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteSkippableSetting' with the minimum fields required to make a request.
+newSiteSkippableSetting ::
+  SiteSkippableSetting
+newSiteSkippableSetting =
+  SiteSkippableSetting
+    { kind = Core.Nothing,
+      progressOffset = Core.Nothing,
+      skipOffset = Core.Nothing,
+      skippable = Core.Nothing
+    }
+
+instance Core.FromJSON SiteSkippableSetting where
+  parseJSON =
+    Core.withObject
+      "SiteSkippableSetting"
+      ( \o ->
+          SiteSkippableSetting
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "progressOffset")
+            Core.<*> (o Core..:? "skipOffset")
+            Core.<*> (o Core..:? "skippable")
+      )
+
+instance Core.ToJSON SiteSkippableSetting where
+  toJSON SiteSkippableSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("progressOffset" Core..=) Core.<$> progressOffset,
+            ("skipOffset" Core..=) Core.<$> skipOffset,
+            ("skippable" Core..=) Core.<$> skippable
+          ]
+      )
+
+-- | Transcode Settings
+--
+-- /See:/ 'newSiteTranscodeSetting' smart constructor.
+data SiteTranscodeSetting = SiteTranscodeSetting
+  { -- | Allowlist of video formats to be served to this site template. Set this list to null or empty to serve all video formats.
+    enabledVideoFormats :: (Core.Maybe [Core.Int32]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#siteTranscodeSetting\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteTranscodeSetting' with the minimum fields required to make a request.
+newSiteTranscodeSetting ::
+  SiteTranscodeSetting
+newSiteTranscodeSetting =
+  SiteTranscodeSetting
+    { enabledVideoFormats = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON SiteTranscodeSetting where
+  parseJSON =
+    Core.withObject
+      "SiteTranscodeSetting"
+      ( \o ->
+          SiteTranscodeSetting
+            Core.<$> (o Core..:? "enabledVideoFormats")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON SiteTranscodeSetting where
+  toJSON SiteTranscodeSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enabledVideoFormats" Core..=) Core.<$> enabledVideoFormats,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Video Settings
+--
+-- /See:/ 'newSiteVideoSettings' smart constructor.
+data SiteVideoSettings = SiteVideoSettings
+  { -- | Settings for the companion creatives of video creatives served to this site.
+    companionSettings :: (Core.Maybe SiteCompanionSetting),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#siteVideoSettings\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Whether OBA icons are enabled for this placement.
+    obaEnabled :: (Core.Maybe Core.Bool),
+    -- | Settings for the OBA icon of video creatives served to this site. This will act as default for new placements created under this site.
+    obaSettings :: (Core.Maybe ObaIcon),
+    -- | Orientation of a site template used for video. This will act as default for new placements created under this site.
+    orientation :: (Core.Maybe SiteVideoSettings_Orientation),
+    -- | Publisher specification ID used to identify site-associated publisher requirements and automatically populate transcode settings. If publisher specification ID is specified, it will take precedence over transcode settings. Possible values are: * @1@, Hulu * @2@, NBC * @3@, CBS * @4@, CBS Desktop * @5@, Discovery * @6@, VEVO HD * @7@, VEVO Vertical * @8@, Fox * @9@, CW Network * @10@, Disney * @11@, IGN * @12@, NFL.com * @13@, Turner Broadcasting * @14@, Tubi on Fox * @15@, Hearst Corporation * @16@, Twitch Desktop * @17@, ABC * @18@, Univision * @19@, MLB.com * @20@, MLB.com Mobile * @21@, MLB.com OTT * @22@, Polsat * @23@, TVN * @24@, Mediaset * @25@, Antena 3 * @26@, Mediamond * @27@, Sky Italia * @28@, Tubi on CBS * @29@, Spotify * @30@, Paramount * @31@, Max
+    publisherSpecificationId :: (Core.Maybe Core.Int64),
+    -- | Settings for the skippability of video creatives served to this site. This will act as default for new placements created under this site.
+    skippableSettings :: (Core.Maybe SiteSkippableSetting),
+    -- | Settings for the transcodes of video creatives served to this site. This will act as default for new placements created under this site.
+    transcodeSettings :: (Core.Maybe SiteTranscodeSetting)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SiteVideoSettings' with the minimum fields required to make a request.
+newSiteVideoSettings ::
+  SiteVideoSettings
+newSiteVideoSettings =
+  SiteVideoSettings
+    { companionSettings = Core.Nothing,
+      kind = Core.Nothing,
+      obaEnabled = Core.Nothing,
+      obaSettings = Core.Nothing,
+      orientation = Core.Nothing,
+      publisherSpecificationId = Core.Nothing,
+      skippableSettings = Core.Nothing,
+      transcodeSettings = Core.Nothing
+    }
+
+instance Core.FromJSON SiteVideoSettings where
+  parseJSON =
+    Core.withObject
+      "SiteVideoSettings"
+      ( \o ->
+          SiteVideoSettings
+            Core.<$> (o Core..:? "companionSettings")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "obaEnabled")
+            Core.<*> (o Core..:? "obaSettings")
+            Core.<*> (o Core..:? "orientation")
+            Core.<*> ( o
+                         Core..:? "publisherSpecificationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "skippableSettings")
+            Core.<*> (o Core..:? "transcodeSettings")
+      )
+
+instance Core.ToJSON SiteVideoSettings where
+  toJSON SiteVideoSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("companionSettings" Core..=) Core.<$> companionSettings,
+            ("kind" Core..=) Core.<$> kind,
+            ("obaEnabled" Core..=) Core.<$> obaEnabled,
+            ("obaSettings" Core..=) Core.<$> obaSettings,
+            ("orientation" Core..=) Core.<$> orientation,
+            ("publisherSpecificationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> publisherSpecificationId,
+            ("skippableSettings" Core..=) Core.<$> skippableSettings,
+            ("transcodeSettings" Core..=) Core.<$> transcodeSettings
+          ]
+      )
+
+-- | Site List Response
+--
+-- /See:/ 'newSitesListResponse' smart constructor.
+data SitesListResponse = SitesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Site collection.
+    sites :: (Core.Maybe [Site])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SitesListResponse' with the minimum fields required to make a request.
+newSitesListResponse ::
+  SitesListResponse
+newSitesListResponse =
+  SitesListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      sites = Core.Nothing
+    }
+
+instance Core.FromJSON SitesListResponse where
+  parseJSON =
+    Core.withObject
+      "SitesListResponse"
+      ( \o ->
+          SitesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "sites")
+      )
+
+instance Core.ToJSON SitesListResponse where
+  toJSON SitesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("sites" Core..=) Core.<$> sites
+          ]
+      )
+
+-- | Represents the dimensions of ads, placements, creatives, or creative assets.
+--
+-- /See:/ 'newSize' smart constructor.
+data Size = Size
+  { -- | Height of this size. Acceptable values are 0 to 32767, inclusive.
+    height :: (Core.Maybe Core.Int32),
+    -- | IAB standard size. This is a read-only, auto-generated field.
+    iab :: (Core.Maybe Core.Bool),
+    -- | ID of this size. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Width of this size. Acceptable values are 0 to 32767, inclusive.
+    width :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Size' with the minimum fields required to make a request.
+newSize ::
+  Size
+newSize =
+  Size
+    { height = Core.Nothing,
+      iab = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      width = Core.Nothing
+    }
+
+instance Core.FromJSON Size where
+  parseJSON =
+    Core.withObject
+      "Size"
+      ( \o ->
+          Size
+            Core.<$> (o Core..:? "height")
+            Core.<*> (o Core..:? "iab")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "width")
+      )
+
+instance Core.ToJSON Size where
+  toJSON Size {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("height" Core..=) Core.<$> height,
+            ("iab" Core..=) Core.<$> iab,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("width" Core..=) Core.<$> width
+          ]
+      )
+
+-- | Size List Response
+--
+-- /See:/ 'newSizesListResponse' smart constructor.
+data SizesListResponse = SizesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Size collection.
+    sizes :: (Core.Maybe [Size])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SizesListResponse' with the minimum fields required to make a request.
+newSizesListResponse ::
+  SizesListResponse
+newSizesListResponse =
+  SizesListResponse {kind = Core.Nothing, sizes = Core.Nothing}
+
+instance Core.FromJSON SizesListResponse where
+  parseJSON =
+    Core.withObject
+      "SizesListResponse"
+      ( \o ->
+          SizesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "sizes")
+      )
+
+instance Core.ToJSON SizesListResponse where
+  toJSON SizesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [("kind" Core..=) Core.<$> kind, ("sizes" Core..=) Core.<$> sizes]
+      )
+
+-- | Skippable Settings
+--
+-- /See:/ 'newSkippableSetting' smart constructor.
+data SkippableSetting = SkippableSetting
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#skippableSetting\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Amount of time to play videos served to this placement before counting a view. Applicable when skippable is true.
+    progressOffset :: (Core.Maybe VideoOffset),
+    -- | Amount of time to play videos served to this placement before the skip button should appear. Applicable when skippable is true.
+    skipOffset :: (Core.Maybe VideoOffset),
+    -- | Whether the user can skip creatives served to this placement.
+    skippable :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SkippableSetting' with the minimum fields required to make a request.
+newSkippableSetting ::
+  SkippableSetting
+newSkippableSetting =
+  SkippableSetting
+    { kind = Core.Nothing,
+      progressOffset = Core.Nothing,
+      skipOffset = Core.Nothing,
+      skippable = Core.Nothing
+    }
+
+instance Core.FromJSON SkippableSetting where
+  parseJSON =
+    Core.withObject
+      "SkippableSetting"
+      ( \o ->
+          SkippableSetting
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "progressOffset")
+            Core.<*> (o Core..:? "skipOffset")
+            Core.<*> (o Core..:? "skippable")
+      )
+
+instance Core.ToJSON SkippableSetting where
+  toJSON SkippableSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("progressOffset" Core..=) Core.<$> progressOffset,
+            ("skipOffset" Core..=) Core.<$> skipOffset,
+            ("skippable" Core..=) Core.<$> skippable
+          ]
+      )
+
+-- | Represents a sorted dimension.
+--
+-- /See:/ 'newSortedDimension' smart constructor.
+data SortedDimension = SortedDimension
+  { -- | The kind of resource this is, in this case dfareporting#sortedDimension.
+    kind :: (Core.Maybe Core.Text),
+    -- | The name of the dimension.
+    name :: (Core.Maybe Core.Text),
+    -- | An optional sort order for the dimension column.
+    sortOrder :: (Core.Maybe SortedDimension_SortOrder)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SortedDimension' with the minimum fields required to make a request.
+newSortedDimension ::
+  SortedDimension
+newSortedDimension =
+  SortedDimension
+    { kind = Core.Nothing,
+      name = Core.Nothing,
+      sortOrder = Core.Nothing
+    }
+
+instance Core.FromJSON SortedDimension where
+  parseJSON =
+    Core.withObject
+      "SortedDimension"
+      ( \o ->
+          SortedDimension
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "sortOrder")
+      )
+
+instance Core.ToJSON SortedDimension where
+  toJSON SortedDimension {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("sortOrder" Core..=) Core.<$> sortOrder
+          ]
+      )
+
+-- | Contains properties of a Campaign Manager subaccount.
+--
+-- /See:/ 'newSubaccount' smart constructor.
+data Subaccount = Subaccount
+  { -- | ID of the account that contains this subaccount. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | IDs of the available user role permissions for this subaccount.
+    availablePermissionIds :: (Core.Maybe [Core.Int64]),
+    -- | ID of this subaccount. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Subaccount' with the minimum fields required to make a request.
+newSubaccount ::
+  Subaccount
+newSubaccount =
+  Subaccount
+    { accountId = Core.Nothing,
+      availablePermissionIds = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON Subaccount where
+  parseJSON =
+    Core.withObject
+      "Subaccount"
+      ( \o ->
+          Subaccount
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> ( o
+                         Core..:? "availablePermissionIds"
+                         Core.<&> Core.fmap (Core.fmap Core.fromAsText)
+                     )
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON Subaccount where
+  toJSON Subaccount {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("availablePermissionIds" Core..=)
+              Core.. Core.fmap Core.AsText
+              Core.<$> availablePermissionIds,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | Subaccount List Response
+--
+-- /See:/ 'newSubaccountsListResponse' smart constructor.
+data SubaccountsListResponse = SubaccountsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Subaccount collection.
+    subaccounts :: (Core.Maybe [Subaccount])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SubaccountsListResponse' with the minimum fields required to make a request.
+newSubaccountsListResponse ::
+  SubaccountsListResponse
+newSubaccountsListResponse =
+  SubaccountsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      subaccounts = Core.Nothing
+    }
+
+instance Core.FromJSON SubaccountsListResponse where
+  parseJSON =
+    Core.withObject
+      "SubaccountsListResponse"
+      ( \o ->
+          SubaccountsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "subaccounts")
+      )
+
+instance Core.ToJSON SubaccountsListResponse where
+  toJSON SubaccountsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("subaccounts" Core..=) Core.<$> subaccounts
+          ]
+      )
+
+-- | Placement Tag Data
+--
+-- /See:/ 'newTagData' smart constructor.
+data TagData = TagData
+  { -- | Ad associated with this placement tag. Applicable only when format is PLACEMENT/TAG/TRACKING.
+    adId :: (Core.Maybe Core.Int64),
+    -- | Tag string to record a click.
+    clickTag :: (Core.Maybe Core.Text),
+    -- | Creative associated with this placement tag. Applicable only when format is PLACEMENT/TAG/TRACKING.
+    creativeId :: (Core.Maybe Core.Int64),
+    -- | TagData tag format of this tag.
+    format :: (Core.Maybe TagData_Format),
+    -- | Tag string for serving an ad.
+    impressionTag :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TagData' with the minimum fields required to make a request.
+newTagData ::
+  TagData
+newTagData =
+  TagData
+    { adId = Core.Nothing,
+      clickTag = Core.Nothing,
+      creativeId = Core.Nothing,
+      format = Core.Nothing,
+      impressionTag = Core.Nothing
+    }
+
+instance Core.FromJSON TagData where
+  parseJSON =
+    Core.withObject
+      "TagData"
+      ( \o ->
+          TagData
+            Core.<$> (o Core..:? "adId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "clickTag")
+            Core.<*> (o Core..:? "creativeId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "format")
+            Core.<*> (o Core..:? "impressionTag")
+      )
+
+instance Core.ToJSON TagData where
+  toJSON TagData {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("adId" Core..=) Core.. Core.AsText Core.<$> adId,
+            ("clickTag" Core..=) Core.<$> clickTag,
+            ("creativeId" Core..=) Core.. Core.AsText Core.<$> creativeId,
+            ("format" Core..=) Core.<$> format,
+            ("impressionTag" Core..=) Core.<$> impressionTag
+          ]
+      )
+
+-- | Tag Settings
+--
+-- /See:/ 'newTagSetting' smart constructor.
+data TagSetting = TagSetting
+  { -- | Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field.
+    additionalKeyValues :: (Core.Maybe Core.Text),
+    -- | Whether static landing page URLs should be included in the tags. New placements will default to the value set on their site.
+    includeClickThroughUrls :: (Core.Maybe Core.Bool),
+    -- | Whether click-tracking string should be included in the tags.
+    includeClickTracking :: (Core.Maybe Core.Bool),
+    -- | Optional. Indicates that the unescapedlpurl macro should be included in the tag for the static landing page. New placements will default to the value set on their site.
+    includeUnescapedlpurlMacro :: (Core.Maybe Core.Bool),
+    -- | Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.
+    keywordOption :: (Core.Maybe TagSetting_KeywordOption)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TagSetting' with the minimum fields required to make a request.
+newTagSetting ::
+  TagSetting
+newTagSetting =
+  TagSetting
+    { additionalKeyValues = Core.Nothing,
+      includeClickThroughUrls = Core.Nothing,
+      includeClickTracking = Core.Nothing,
+      includeUnescapedlpurlMacro = Core.Nothing,
+      keywordOption = Core.Nothing
+    }
+
+instance Core.FromJSON TagSetting where
+  parseJSON =
+    Core.withObject
+      "TagSetting"
+      ( \o ->
+          TagSetting
+            Core.<$> (o Core..:? "additionalKeyValues")
+            Core.<*> (o Core..:? "includeClickThroughUrls")
+            Core.<*> (o Core..:? "includeClickTracking")
+            Core.<*> (o Core..:? "includeUnescapedlpurlMacro")
+            Core.<*> (o Core..:? "keywordOption")
+      )
+
+instance Core.ToJSON TagSetting where
+  toJSON TagSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("additionalKeyValues" Core..=) Core.<$> additionalKeyValues,
+            ("includeClickThroughUrls" Core..=)
+              Core.<$> includeClickThroughUrls,
+            ("includeClickTracking" Core..=) Core.<$> includeClickTracking,
+            ("includeUnescapedlpurlMacro" Core..=)
+              Core.<$> includeUnescapedlpurlMacro,
+            ("keywordOption" Core..=) Core.<$> keywordOption
+          ]
+      )
+
+-- | Dynamic and Image Tag Settings.
+--
+-- /See:/ 'newTagSettings' smart constructor.
+data TagSettings = TagSettings
+  { -- | Whether dynamic floodlight tags are enabled.
+    dynamicTagEnabled :: (Core.Maybe Core.Bool),
+    -- | Whether image tags are enabled.
+    imageTagEnabled :: (Core.Maybe Core.Bool)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TagSettings' with the minimum fields required to make a request.
+newTagSettings ::
+  TagSettings
+newTagSettings =
+  TagSettings
+    { dynamicTagEnabled = Core.Nothing,
+      imageTagEnabled = Core.Nothing
+    }
+
+instance Core.FromJSON TagSettings where
+  parseJSON =
+    Core.withObject
+      "TagSettings"
+      ( \o ->
+          TagSettings
+            Core.<$> (o Core..:? "dynamicTagEnabled")
+            Core.<*> (o Core..:? "imageTagEnabled")
+      )
+
+instance Core.ToJSON TagSettings where
+  toJSON TagSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dynamicTagEnabled" Core..=) Core.<$> dynamicTagEnabled,
+            ("imageTagEnabled" Core..=) Core.<$> imageTagEnabled
+          ]
+      )
+
+-- | Target Window.
+--
+-- /See:/ 'newTargetWindow' smart constructor.
+data TargetWindow = TargetWindow
+  { -- | User-entered value.
+    customHtml :: (Core.Maybe Core.Text),
+    -- | Type of browser window for which the backup image of the flash creative can be displayed.
+    targetWindowOption :: (Core.Maybe TargetWindow_TargetWindowOption)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TargetWindow' with the minimum fields required to make a request.
+newTargetWindow ::
+  TargetWindow
+newTargetWindow =
+  TargetWindow
+    { customHtml = Core.Nothing,
+      targetWindowOption = Core.Nothing
+    }
+
+instance Core.FromJSON TargetWindow where
+  parseJSON =
+    Core.withObject
+      "TargetWindow"
+      ( \o ->
+          TargetWindow
+            Core.<$> (o Core..:? "customHtml")
+            Core.<*> (o Core..:? "targetWindowOption")
+      )
+
+instance Core.ToJSON TargetWindow where
+  toJSON TargetWindow {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("customHtml" Core..=) Core.<$> customHtml,
+            ("targetWindowOption" Core..=) Core.<$> targetWindowOption
+          ]
+      )
+
+-- | Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to facilitate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.
+--
+-- /See:/ 'newTargetableRemarketingList' smart constructor.
+data TargetableRemarketingList = TargetableRemarketingList
+  { -- | Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this targetable remarketing list is active.
+    active :: (Core.Maybe Core.Bool),
+    -- | Dimension value for the advertiser ID that owns this targetable remarketing list.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Targetable remarketing list description.
+    description :: (Core.Maybe Core.Text),
+    -- | Targetable remarketing list ID.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Number of days that a user should remain in the targetable remarketing list without an impression.
+    lifeSpan :: (Core.Maybe Core.Int64),
+    -- | Number of users currently in the list. This is a read-only field.
+    listSize :: (Core.Maybe Core.Int64),
+    -- | Product from which this targetable remarketing list was originated.
+    listSource :: (Core.Maybe TargetableRemarketingList_ListSource),
+    -- | Name of the targetable remarketing list. Is no greater than 128 characters long.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TargetableRemarketingList' with the minimum fields required to make a request.
+newTargetableRemarketingList ::
+  TargetableRemarketingList
+newTargetableRemarketingList =
+  TargetableRemarketingList
+    { accountId = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      description = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      lifeSpan = Core.Nothing,
+      listSize = Core.Nothing,
+      listSource = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON TargetableRemarketingList where
+  parseJSON =
+    Core.withObject
+      "TargetableRemarketingList"
+      ( \o ->
+          TargetableRemarketingList
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "active")
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "lifeSpan" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "listSize" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "listSource")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON TargetableRemarketingList where
+  toJSON TargetableRemarketingList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("active" Core..=) Core.<$> active,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("description" Core..=) Core.<$> description,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("lifeSpan" Core..=) Core.. Core.AsText Core.<$> lifeSpan,
+            ("listSize" Core..=) Core.. Core.AsText Core.<$> listSize,
+            ("listSource" Core..=) Core.<$> listSource,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Targetable remarketing list response
+--
+-- /See:/ 'newTargetableRemarketingListsListResponse' smart constructor.
+data TargetableRemarketingListsListResponse = TargetableRemarketingListsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Targetable remarketing list collection.
+    targetableRemarketingLists :: (Core.Maybe [TargetableRemarketingList])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TargetableRemarketingListsListResponse' with the minimum fields required to make a request.
+newTargetableRemarketingListsListResponse ::
+  TargetableRemarketingListsListResponse
+newTargetableRemarketingListsListResponse =
+  TargetableRemarketingListsListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      targetableRemarketingLists = Core.Nothing
+    }
+
+instance Core.FromJSON TargetableRemarketingListsListResponse where
+  parseJSON =
+    Core.withObject
+      "TargetableRemarketingListsListResponse"
+      ( \o ->
+          TargetableRemarketingListsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "targetableRemarketingLists")
+      )
+
+instance Core.ToJSON TargetableRemarketingListsListResponse where
+  toJSON TargetableRemarketingListsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("targetableRemarketingLists" Core..=)
+              Core.<$> targetableRemarketingLists
+          ]
+      )
+
+-- | Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.
+--
+-- /See:/ 'newTargetingTemplate' smart constructor.
+data TargetingTemplate = TargetingTemplate
+  { -- | Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | Dimension value for the ID of the advertiser. This is a read-only, auto-generated field.
+    advertiserIdDimensionValue :: (Core.Maybe DimensionValue),
+    -- | Time and day targeting criteria.
+    dayPartTargeting :: (Core.Maybe DayPartTargeting),
+    -- | Geographical targeting criteria.
+    geoTargeting :: (Core.Maybe GeoTargeting),
+    -- | ID of this targeting template. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Key-value targeting criteria.
+    keyValueTargetingExpression :: (Core.Maybe KeyValueTargetingExpression),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Language targeting criteria.
+    languageTargeting :: (Core.Maybe LanguageTargeting),
+    -- | Remarketing list targeting criteria.
+    listTargetingExpression :: (Core.Maybe ListTargetingExpression),
+    -- | Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser.
+    name :: (Core.Maybe Core.Text),
+    -- | Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Technology platform targeting criteria.
+    technologyTargeting :: (Core.Maybe TechnologyTargeting)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TargetingTemplate' with the minimum fields required to make a request.
+newTargetingTemplate ::
+  TargetingTemplate
+newTargetingTemplate =
+  TargetingTemplate
+    { accountId = Core.Nothing,
+      advertiserId = Core.Nothing,
+      advertiserIdDimensionValue = Core.Nothing,
+      dayPartTargeting = Core.Nothing,
+      geoTargeting = Core.Nothing,
+      id = Core.Nothing,
+      keyValueTargetingExpression = Core.Nothing,
+      kind = Core.Nothing,
+      languageTargeting = Core.Nothing,
+      listTargetingExpression = Core.Nothing,
+      name = Core.Nothing,
+      subaccountId = Core.Nothing,
+      technologyTargeting = Core.Nothing
+    }
+
+instance Core.FromJSON TargetingTemplate where
+  parseJSON =
+    Core.withObject
+      "TargetingTemplate"
+      ( \o ->
+          TargetingTemplate
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "advertiserIdDimensionValue")
+            Core.<*> (o Core..:? "dayPartTargeting")
+            Core.<*> (o Core..:? "geoTargeting")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "keyValueTargetingExpression")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "languageTargeting")
+            Core.<*> (o Core..:? "listTargetingExpression")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "technologyTargeting")
+      )
+
+instance Core.ToJSON TargetingTemplate where
+  toJSON TargetingTemplate {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("advertiserId" Core..=) Core.. Core.AsText Core.<$> advertiserId,
+            ("advertiserIdDimensionValue" Core..=)
+              Core.<$> advertiserIdDimensionValue,
+            ("dayPartTargeting" Core..=) Core.<$> dayPartTargeting,
+            ("geoTargeting" Core..=) Core.<$> geoTargeting,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("keyValueTargetingExpression" Core..=)
+              Core.<$> keyValueTargetingExpression,
+            ("kind" Core..=) Core.<$> kind,
+            ("languageTargeting" Core..=) Core.<$> languageTargeting,
+            ("listTargetingExpression" Core..=)
+              Core.<$> listTargetingExpression,
+            ("name" Core..=) Core.<$> name,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId,
+            ("technologyTargeting" Core..=) Core.<$> technologyTargeting
+          ]
+      )
+
+-- | Targeting Template List Response
+--
+-- /See:/ 'newTargetingTemplatesListResponse' smart constructor.
+data TargetingTemplatesListResponse = TargetingTemplatesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | Targeting template collection.
+    targetingTemplates :: (Core.Maybe [TargetingTemplate])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TargetingTemplatesListResponse' with the minimum fields required to make a request.
+newTargetingTemplatesListResponse ::
+  TargetingTemplatesListResponse
+newTargetingTemplatesListResponse =
+  TargetingTemplatesListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      targetingTemplates = Core.Nothing
+    }
+
+instance Core.FromJSON TargetingTemplatesListResponse where
+  parseJSON =
+    Core.withObject
+      "TargetingTemplatesListResponse"
+      ( \o ->
+          TargetingTemplatesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "targetingTemplates")
+      )
+
+instance Core.ToJSON TargetingTemplatesListResponse where
+  toJSON TargetingTemplatesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("targetingTemplates" Core..=) Core.<$> targetingTemplates
+          ]
+      )
+
+-- | Technology Targeting.
+--
+-- /See:/ 'newTechnologyTargeting' smart constructor.
+data TechnologyTargeting = TechnologyTargeting
+  { -- | Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.
+    browsers :: (Core.Maybe [Browser]),
+    -- | Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.
+    connectionTypes :: (Core.Maybe [ConnectionType]),
+    -- | Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.
+    mobileCarriers :: (Core.Maybe [MobileCarrier]),
+    -- | Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.
+    operatingSystemVersions :: (Core.Maybe [OperatingSystemVersion]),
+    -- | Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.
+    operatingSystems :: (Core.Maybe [OperatingSystem]),
+    -- | Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.
+    platformTypes :: (Core.Maybe [PlatformType])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TechnologyTargeting' with the minimum fields required to make a request.
+newTechnologyTargeting ::
+  TechnologyTargeting
+newTechnologyTargeting =
+  TechnologyTargeting
+    { browsers = Core.Nothing,
+      connectionTypes = Core.Nothing,
+      mobileCarriers = Core.Nothing,
+      operatingSystemVersions = Core.Nothing,
+      operatingSystems = Core.Nothing,
+      platformTypes = Core.Nothing
+    }
+
+instance Core.FromJSON TechnologyTargeting where
+  parseJSON =
+    Core.withObject
+      "TechnologyTargeting"
+      ( \o ->
+          TechnologyTargeting
+            Core.<$> (o Core..:? "browsers")
+            Core.<*> (o Core..:? "connectionTypes")
+            Core.<*> (o Core..:? "mobileCarriers")
+            Core.<*> (o Core..:? "operatingSystemVersions")
+            Core.<*> (o Core..:? "operatingSystems")
+            Core.<*> (o Core..:? "platformTypes")
+      )
+
+instance Core.ToJSON TechnologyTargeting where
+  toJSON TechnologyTargeting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("browsers" Core..=) Core.<$> browsers,
+            ("connectionTypes" Core..=) Core.<$> connectionTypes,
+            ("mobileCarriers" Core..=) Core.<$> mobileCarriers,
+            ("operatingSystemVersions" Core..=)
+              Core.<$> operatingSystemVersions,
+            ("operatingSystems" Core..=) Core.<$> operatingSystems,
+            ("platformTypes" Core..=) Core.<$> platformTypes
+          ]
+      )
+
+-- | Third Party Authentication Token
+--
+-- /See:/ 'newThirdPartyAuthenticationToken' smart constructor.
+data ThirdPartyAuthenticationToken = ThirdPartyAuthenticationToken
+  { -- | Name of the third-party authentication token.
+    name :: (Core.Maybe Core.Text),
+    -- | Value of the third-party authentication token. This is a read-only, auto-generated field.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ThirdPartyAuthenticationToken' with the minimum fields required to make a request.
+newThirdPartyAuthenticationToken ::
+  ThirdPartyAuthenticationToken
+newThirdPartyAuthenticationToken =
+  ThirdPartyAuthenticationToken
+    { name = Core.Nothing,
+      value = Core.Nothing
+    }
+
+instance Core.FromJSON ThirdPartyAuthenticationToken where
+  parseJSON =
+    Core.withObject
+      "ThirdPartyAuthenticationToken"
+      ( \o ->
+          ThirdPartyAuthenticationToken
+            Core.<$> (o Core..:? "name")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON ThirdPartyAuthenticationToken where
+  toJSON ThirdPartyAuthenticationToken {..} =
+    Core.object
+      ( Core.catMaybes
+          [("name" Core..=) Core.<$> name, ("value" Core..=) Core.<$> value]
+      )
+
+-- | Third-party Tracking URL.
+--
+-- /See:/ 'newThirdPartyTrackingUrl' smart constructor.
+data ThirdPartyTrackingUrl = ThirdPartyTrackingUrl
+  { -- | Third-party URL type for in-stream video and in-stream audio creatives.
+    thirdPartyUrlType :: (Core.Maybe ThirdPartyTrackingUrl_ThirdPartyUrlType),
+    -- | URL for the specified third-party URL type.
+    url :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ThirdPartyTrackingUrl' with the minimum fields required to make a request.
+newThirdPartyTrackingUrl ::
+  ThirdPartyTrackingUrl
+newThirdPartyTrackingUrl =
+  ThirdPartyTrackingUrl
+    { thirdPartyUrlType = Core.Nothing,
+      url = Core.Nothing
+    }
+
+instance Core.FromJSON ThirdPartyTrackingUrl where
+  parseJSON =
+    Core.withObject
+      "ThirdPartyTrackingUrl"
+      ( \o ->
+          ThirdPartyTrackingUrl
+            Core.<$> (o Core..:? "thirdPartyUrlType")
+            Core.<*> (o Core..:? "url")
+      )
+
+instance Core.ToJSON ThirdPartyTrackingUrl where
+  toJSON ThirdPartyTrackingUrl {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("thirdPartyUrlType" Core..=) Core.<$> thirdPartyUrlType,
+            ("url" Core..=) Core.<$> url
+          ]
+      )
+
+-- | Transcode Settings
+--
+-- /See:/ 'newTranscodeSetting' smart constructor.
+data TranscodeSetting = TranscodeSetting
+  { -- | Allowlist of video formats to be served to this placement. Set this list to null or empty to serve all video formats.
+    enabledVideoFormats :: (Core.Maybe [Core.Int32]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#transcodeSetting\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TranscodeSetting' with the minimum fields required to make a request.
+newTranscodeSetting ::
+  TranscodeSetting
+newTranscodeSetting =
+  TranscodeSetting
+    { enabledVideoFormats = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON TranscodeSetting where
+  parseJSON =
+    Core.withObject
+      "TranscodeSetting"
+      ( \o ->
+          TranscodeSetting
+            Core.<$> (o Core..:? "enabledVideoFormats")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON TranscodeSetting where
+  toJSON TranscodeSetting {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("enabledVideoFormats" Core..=) Core.<$> enabledVideoFormats,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | TvCampaignDetail contains data from a TV campaign for specific start dates and date windows.
+--
+-- /See:/ 'newTvCampaignDetail' smart constructor.
+data TvCampaignDetail = TvCampaignDetail
+  { -- | ID of this TV campaign.
+    id :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#tvCampaignSummary\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The timepoints of the TV campaign.
+    timepoints :: (Core.Maybe [TvCampaignTimepoint])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TvCampaignDetail' with the minimum fields required to make a request.
+newTvCampaignDetail ::
+  TvCampaignDetail
+newTvCampaignDetail =
+  TvCampaignDetail
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      timepoints = Core.Nothing
+    }
+
+instance Core.FromJSON TvCampaignDetail where
+  parseJSON =
+    Core.withObject
+      "TvCampaignDetail"
+      ( \o ->
+          TvCampaignDetail
+            Core.<$> (o Core..:? "id")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "timepoints")
+      )
+
+instance Core.ToJSON TvCampaignDetail where
+  toJSON TvCampaignDetail {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("timepoints" Core..=) Core.<$> timepoints
+          ]
+      )
+
+-- | Response message for TvCampaignSummariesService.List.
+--
+-- /See:/ 'newTvCampaignSummariesListResponse' smart constructor.
+data TvCampaignSummariesListResponse = TvCampaignSummariesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#tvCampaignSummariesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | List of TV campaign summaries.
+    tvCampaignSummaries :: (Core.Maybe [TvCampaignSummary])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TvCampaignSummariesListResponse' with the minimum fields required to make a request.
+newTvCampaignSummariesListResponse ::
+  TvCampaignSummariesListResponse
+newTvCampaignSummariesListResponse =
+  TvCampaignSummariesListResponse
+    { kind = Core.Nothing,
+      tvCampaignSummaries = Core.Nothing
+    }
+
+instance Core.FromJSON TvCampaignSummariesListResponse where
+  parseJSON =
+    Core.withObject
+      "TvCampaignSummariesListResponse"
+      ( \o ->
+          TvCampaignSummariesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "tvCampaignSummaries")
+      )
+
+instance Core.ToJSON TvCampaignSummariesListResponse where
+  toJSON TvCampaignSummariesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("tvCampaignSummaries" Core..=) Core.<$> tvCampaignSummaries
+          ]
+      )
+
+-- | TvCampaignSummary contains aggregate data from a TV campaign.
+--
+-- /See:/ 'newTvCampaignSummary' smart constructor.
+data TvCampaignSummary = TvCampaignSummary
+  { -- | The end date of the TV campaign, inclusive. A string of the format: \"yyyy-MM-dd\".
+    endDate :: (Core.Maybe Core.Text),
+    -- | GRP of this TV campaign.
+    grp :: (Core.Maybe Core.Int64),
+    -- | ID of this TV campaign.
+    id :: (Core.Maybe Core.Text),
+    -- | Impressions across the entire TV campaign.
+    impressions :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#tvCampaignSummary\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Identifier. Name of this TV campaign.
+    name :: (Core.Maybe Core.Text),
+    -- | Spend across the entire TV campaign.
+    spend :: (Core.Maybe Core.Double),
+    -- | The start date of the TV campaign, inclusive. A string of the format: \"yyyy-MM-dd\".
+    startDate :: (Core.Maybe Core.Text),
+    -- | \"CampaignComponentType\" of this TV campaign.
+    type' :: (Core.Maybe TvCampaignSummary_Type)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TvCampaignSummary' with the minimum fields required to make a request.
+newTvCampaignSummary ::
+  TvCampaignSummary
+newTvCampaignSummary =
+  TvCampaignSummary
+    { endDate = Core.Nothing,
+      grp = Core.Nothing,
+      id = Core.Nothing,
+      impressions = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      spend = Core.Nothing,
+      startDate = Core.Nothing,
+      type' = Core.Nothing
+    }
+
+instance Core.FromJSON TvCampaignSummary where
+  parseJSON =
+    Core.withObject
+      "TvCampaignSummary"
+      ( \o ->
+          TvCampaignSummary
+            Core.<$> (o Core..:? "endDate")
+            Core.<*> (o Core..:? "grp" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "impressions" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "spend")
+            Core.<*> (o Core..:? "startDate")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON TvCampaignSummary where
+  toJSON TvCampaignSummary {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("endDate" Core..=) Core.<$> endDate,
+            ("grp" Core..=) Core.. Core.AsText Core.<$> grp,
+            ("id" Core..=) Core.<$> id,
+            ("impressions" Core..=) Core.. Core.AsText Core.<$> impressions,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("spend" Core..=) Core.<$> spend,
+            ("startDate" Core..=) Core.<$> startDate,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+-- | A single data point for TvCampaignDetail, which holds information about the TV campaign for a specific start date and date window.
+--
+-- /See:/ 'newTvCampaignTimepoint' smart constructor.
+data TvCampaignTimepoint = TvCampaignTimepoint
+  { -- | The date window of the timepoint.
+    dateWindow :: (Core.Maybe TvCampaignTimepoint_DateWindow),
+    -- | The spend within the time range of the timepoint.
+    spend :: (Core.Maybe Core.Double),
+    -- | The start date of the timepoint. A string in the format of \"yyyy-MM-dd\".
+    startDate :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TvCampaignTimepoint' with the minimum fields required to make a request.
+newTvCampaignTimepoint ::
+  TvCampaignTimepoint
+newTvCampaignTimepoint =
+  TvCampaignTimepoint
+    { dateWindow = Core.Nothing,
+      spend = Core.Nothing,
+      startDate = Core.Nothing
+    }
+
+instance Core.FromJSON TvCampaignTimepoint where
+  parseJSON =
+    Core.withObject
+      "TvCampaignTimepoint"
+      ( \o ->
+          TvCampaignTimepoint
+            Core.<$> (o Core..:? "dateWindow")
+            Core.<*> (o Core..:? "spend")
+            Core.<*> (o Core..:? "startDate")
+      )
+
+instance Core.ToJSON TvCampaignTimepoint where
+  toJSON TvCampaignTimepoint {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dateWindow" Core..=) Core.<$> dateWindow,
+            ("spend" Core..=) Core.<$> spend,
+            ("startDate" Core..=) Core.<$> startDate
+          ]
+      )
+
+-- | A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following creative types: INSTREAM/AUDIO, INSTREAM/VIDEO and VPAID.
+--
+-- /See:/ 'newUniversalAdId' smart constructor.
+data UniversalAdId = UniversalAdId
+  { -- | Registry used for the Ad ID value.
+    registry :: (Core.Maybe UniversalAdId_Registry),
+    -- | ID value for this creative. Only alphanumeric characters and the following symbols are valid: \"_\/-\". Maximum length is 64 characters. Read only when registry is DCM.
+    value :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UniversalAdId' with the minimum fields required to make a request.
+newUniversalAdId ::
+  UniversalAdId
+newUniversalAdId =
+  UniversalAdId {registry = Core.Nothing, value = Core.Nothing}
+
+instance Core.FromJSON UniversalAdId where
+  parseJSON =
+    Core.withObject
+      "UniversalAdId"
+      ( \o ->
+          UniversalAdId
+            Core.<$> (o Core..:? "registry")
+            Core.<*> (o Core..:? "value")
+      )
+
+instance Core.ToJSON UniversalAdId where
+  toJSON UniversalAdId {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("registry" Core..=) Core.<$> registry,
+            ("value" Core..=) Core.<$> value
+          ]
+      )
+
+-- | User Defined Variable configuration.
+--
+-- /See:/ 'newUserDefinedVariableConfiguration' smart constructor.
+data UserDefinedVariableConfiguration = UserDefinedVariableConfiguration
+  { -- | Data type for the variable. This is a required field.
+    dataType :: (Core.Maybe UserDefinedVariableConfiguration_DataType),
+    -- | User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\<>\".
+    reportName :: (Core.Maybe Core.Text),
+    -- | Variable name in the tag. This is a required field.
+    variableType :: (Core.Maybe UserDefinedVariableConfiguration_VariableType)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserDefinedVariableConfiguration' with the minimum fields required to make a request.
+newUserDefinedVariableConfiguration ::
+  UserDefinedVariableConfiguration
+newUserDefinedVariableConfiguration =
+  UserDefinedVariableConfiguration
+    { dataType = Core.Nothing,
+      reportName = Core.Nothing,
+      variableType = Core.Nothing
+    }
+
+instance Core.FromJSON UserDefinedVariableConfiguration where
+  parseJSON =
+    Core.withObject
+      "UserDefinedVariableConfiguration"
+      ( \o ->
+          UserDefinedVariableConfiguration
+            Core.<$> (o Core..:? "dataType")
+            Core.<*> (o Core..:? "reportName")
+            Core.<*> (o Core..:? "variableType")
+      )
+
+instance Core.ToJSON UserDefinedVariableConfiguration where
+  toJSON UserDefinedVariableConfiguration {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("dataType" Core..=) Core.<$> dataType,
+            ("reportName" Core..=) Core.<$> reportName,
+            ("variableType" Core..=) Core.<$> variableType
+          ]
+      )
+
+-- | User identifying information. Exactly one type of identifier must be specified.
+--
+-- /See:/ 'newUserIdentifier' smart constructor.
+data UserIdentifier = UserIdentifier
+  { -- | Address information.
+    addressInfo :: (Core.Maybe OfflineUserAddressInfo),
+    -- | Hashed email address using SHA-256 hash function after normalization.
+    hashedEmail :: (Core.Maybe Core.Text),
+    -- | Hashed phone number using SHA-256 hash function after normalization (E164 standard).
+    hashedPhoneNumber :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserIdentifier' with the minimum fields required to make a request.
+newUserIdentifier ::
+  UserIdentifier
+newUserIdentifier =
+  UserIdentifier
+    { addressInfo = Core.Nothing,
+      hashedEmail = Core.Nothing,
+      hashedPhoneNumber = Core.Nothing
+    }
+
+instance Core.FromJSON UserIdentifier where
+  parseJSON =
+    Core.withObject
+      "UserIdentifier"
+      ( \o ->
+          UserIdentifier
+            Core.<$> (o Core..:? "addressInfo")
+            Core.<*> (o Core..:? "hashedEmail")
+            Core.<*> (o Core..:? "hashedPhoneNumber")
+      )
+
+instance Core.ToJSON UserIdentifier where
+  toJSON UserIdentifier {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("addressInfo" Core..=) Core.<$> addressInfo,
+            ("hashedEmail" Core..=) Core.<$> hashedEmail,
+            ("hashedPhoneNumber" Core..=) Core.<$> hashedPhoneNumber
+          ]
+      )
+
+-- | A UserProfile resource lets you list all DFA user profiles that are associated with a Google user account. The profile_id needs to be specified in other API requests.
+--
+-- /See:/ 'newUserProfile' smart constructor.
+data UserProfile = UserProfile
+  { -- | The account ID to which this profile belongs.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | The account name this profile belongs to.
+    accountName :: (Core.Maybe Core.Text),
+    -- | Etag of this resource.
+    etag :: (Core.Maybe Core.Text),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userProfile\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The unique ID of the user profile.
+    profileId :: (Core.Maybe Core.Int64),
+    -- | The sub account ID this profile belongs to if applicable.
+    subAccountId :: (Core.Maybe Core.Int64),
+    -- | The sub account name this profile belongs to if applicable.
+    subAccountName :: (Core.Maybe Core.Text),
+    -- | The user name.
+    userName :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserProfile' with the minimum fields required to make a request.
+newUserProfile ::
+  UserProfile
+newUserProfile =
+  UserProfile
+    { accountId = Core.Nothing,
+      accountName = Core.Nothing,
+      etag = Core.Nothing,
+      kind = Core.Nothing,
+      profileId = Core.Nothing,
+      subAccountId = Core.Nothing,
+      subAccountName = Core.Nothing,
+      userName = Core.Nothing
+    }
+
+instance Core.FromJSON UserProfile where
+  parseJSON =
+    Core.withObject
+      "UserProfile"
+      ( \o ->
+          UserProfile
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "accountName")
+            Core.<*> (o Core..:? "etag")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "profileId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "subAccountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "subAccountName")
+            Core.<*> (o Core..:? "userName")
+      )
+
+instance Core.ToJSON UserProfile where
+  toJSON UserProfile {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("accountName" Core..=) Core.<$> accountName,
+            ("etag" Core..=) Core.<$> etag,
+            ("kind" Core..=) Core.<$> kind,
+            ("profileId" Core..=) Core.. Core.AsText Core.<$> profileId,
+            ("subAccountId" Core..=) Core.. Core.AsText Core.<$> subAccountId,
+            ("subAccountName" Core..=) Core.<$> subAccountName,
+            ("userName" Core..=) Core.<$> userName
+          ]
+      )
+
+-- | Represents the list of user profiles.
+--
+-- /See:/ 'newUserProfileList' smart constructor.
+data UserProfileList = UserProfileList
+  { -- | Etag of this resource.
+    etag :: (Core.Maybe Core.Text),
+    -- | The user profiles returned in this response.
+    items :: (Core.Maybe [UserProfile]),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userProfileList\".
+    kind :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserProfileList' with the minimum fields required to make a request.
+newUserProfileList ::
+  UserProfileList
+newUserProfileList =
+  UserProfileList
+    { etag = Core.Nothing,
+      items = Core.Nothing,
+      kind = Core.Nothing
+    }
+
+instance Core.FromJSON UserProfileList where
+  parseJSON =
+    Core.withObject
+      "UserProfileList"
+      ( \o ->
+          UserProfileList
+            Core.<$> (o Core..:? "etag")
+            Core.<*> (o Core..:? "items")
+            Core.<*> (o Core..:? "kind")
+      )
+
+instance Core.ToJSON UserProfileList where
+  toJSON UserProfileList {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("etag" Core..=) Core.<$> etag,
+            ("items" Core..=) Core.<$> items,
+            ("kind" Core..=) Core.<$> kind
+          ]
+      )
+
+-- | Contains properties of auser role, which is used to manage user access.
+--
+-- /See:/ 'newUserRole' smart constructor.
+data UserRole = UserRole
+  { -- | Account ID of this user role. This is a read-only field that can be left blank.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | Whether this is a default user role. Default user roles are created by the system for the account\/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
+    defaultUserRole :: (Core.Maybe Core.Bool),
+    -- | ID of this user role. This is a read-only, auto-generated field.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
+    name :: (Core.Maybe Core.Text),
+    -- | ID of the user role that this user role is based on or copied from. This is a required field.
+    parentUserRoleId :: (Core.Maybe Core.Int64),
+    -- | List of permissions associated with this user role.
+    permissions :: (Core.Maybe [UserRolePermission]),
+    -- | Subaccount ID of this user role. This is a read-only field that can be left blank.
+    subaccountId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRole' with the minimum fields required to make a request.
+newUserRole ::
+  UserRole
+newUserRole =
+  UserRole
+    { accountId = Core.Nothing,
+      defaultUserRole = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      parentUserRoleId = Core.Nothing,
+      permissions = Core.Nothing,
+      subaccountId = Core.Nothing
+    }
+
+instance Core.FromJSON UserRole where
+  parseJSON =
+    Core.withObject
+      "UserRole"
+      ( \o ->
+          UserRole
+            Core.<$> (o Core..:? "accountId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "defaultUserRole")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "parentUserRoleId" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "permissions")
+            Core.<*> (o Core..:? "subaccountId" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON UserRole where
+  toJSON UserRole {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("accountId" Core..=) Core.. Core.AsText Core.<$> accountId,
+            ("defaultUserRole" Core..=) Core.<$> defaultUserRole,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("parentUserRoleId" Core..=)
+              Core.. Core.AsText
+              Core.<$> parentUserRoleId,
+            ("permissions" Core..=) Core.<$> permissions,
+            ("subaccountId" Core..=) Core.. Core.AsText Core.<$> subaccountId
+          ]
+      )
+
+-- | Contains properties of a user role permission.
+--
+-- /See:/ 'newUserRolePermission' smart constructor.
+data UserRolePermission = UserRolePermission
+  { -- | Levels of availability for a user role permission.
+    availability :: (Core.Maybe UserRolePermission_Availability),
+    -- | ID of this user role permission.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this user role permission.
+    name :: (Core.Maybe Core.Text),
+    -- | ID of the permission group that this user role permission belongs to.
+    permissionGroupId :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRolePermission' with the minimum fields required to make a request.
+newUserRolePermission ::
+  UserRolePermission
+newUserRolePermission =
+  UserRolePermission
+    { availability = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing,
+      permissionGroupId = Core.Nothing
+    }
+
+instance Core.FromJSON UserRolePermission where
+  parseJSON =
+    Core.withObject
+      "UserRolePermission"
+      ( \o ->
+          UserRolePermission
+            Core.<$> (o Core..:? "availability")
+            Core.<*> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+            Core.<*> ( o
+                         Core..:? "permissionGroupId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON UserRolePermission where
+  toJSON UserRolePermission {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("availability" Core..=) Core.<$> availability,
+            ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name,
+            ("permissionGroupId" Core..=)
+              Core.. Core.AsText
+              Core.<$> permissionGroupId
+          ]
+      )
+
+-- | Represents a grouping of related user role permissions.
+--
+-- /See:/ 'newUserRolePermissionGroup' smart constructor.
+data UserRolePermissionGroup = UserRolePermissionGroup
+  { -- | ID of this user role permission.
+    id :: (Core.Maybe Core.Int64),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Name of this user role permission group.
+    name :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRolePermissionGroup' with the minimum fields required to make a request.
+newUserRolePermissionGroup ::
+  UserRolePermissionGroup
+newUserRolePermissionGroup =
+  UserRolePermissionGroup
+    { id = Core.Nothing,
+      kind = Core.Nothing,
+      name = Core.Nothing
+    }
+
+instance Core.FromJSON UserRolePermissionGroup where
+  parseJSON =
+    Core.withObject
+      "UserRolePermissionGroup"
+      ( \o ->
+          UserRolePermissionGroup
+            Core.<$> (o Core..:? "id" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "name")
+      )
+
+instance Core.ToJSON UserRolePermissionGroup where
+  toJSON UserRolePermissionGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("id" Core..=) Core.. Core.AsText Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("name" Core..=) Core.<$> name
+          ]
+      )
+
+-- | User Role Permission Group List Response
+--
+-- /See:/ 'newUserRolePermissionGroupsListResponse' smart constructor.
+data UserRolePermissionGroupsListResponse = UserRolePermissionGroupsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | User role permission group collection.
+    userRolePermissionGroups :: (Core.Maybe [UserRolePermissionGroup])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRolePermissionGroupsListResponse' with the minimum fields required to make a request.
+newUserRolePermissionGroupsListResponse ::
+  UserRolePermissionGroupsListResponse
+newUserRolePermissionGroupsListResponse =
+  UserRolePermissionGroupsListResponse
+    { kind = Core.Nothing,
+      userRolePermissionGroups = Core.Nothing
+    }
+
+instance Core.FromJSON UserRolePermissionGroupsListResponse where
+  parseJSON =
+    Core.withObject
+      "UserRolePermissionGroupsListResponse"
+      ( \o ->
+          UserRolePermissionGroupsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "userRolePermissionGroups")
+      )
+
+instance Core.ToJSON UserRolePermissionGroupsListResponse where
+  toJSON UserRolePermissionGroupsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("userRolePermissionGroups" Core..=)
+              Core.<$> userRolePermissionGroups
+          ]
+      )
+
+-- | User Role Permission List Response
+--
+-- /See:/ 'newUserRolePermissionsListResponse' smart constructor.
+data UserRolePermissionsListResponse = UserRolePermissionsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | User role permission collection.
+    userRolePermissions :: (Core.Maybe [UserRolePermission])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRolePermissionsListResponse' with the minimum fields required to make a request.
+newUserRolePermissionsListResponse ::
+  UserRolePermissionsListResponse
+newUserRolePermissionsListResponse =
+  UserRolePermissionsListResponse
+    { kind = Core.Nothing,
+      userRolePermissions = Core.Nothing
+    }
+
+instance Core.FromJSON UserRolePermissionsListResponse where
+  parseJSON =
+    Core.withObject
+      "UserRolePermissionsListResponse"
+      ( \o ->
+          UserRolePermissionsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "userRolePermissions")
+      )
+
+instance Core.ToJSON UserRolePermissionsListResponse where
+  toJSON UserRolePermissionsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("userRolePermissions" Core..=) Core.<$> userRolePermissions
+          ]
+      )
+
+-- | User Role List Response
+--
+-- /See:/ 'newUserRolesListResponse' smart constructor.
+data UserRolesListResponse = UserRolesListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Pagination token to be used for the next list operation.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | User role collection.
+    userRoles :: (Core.Maybe [UserRole])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'UserRolesListResponse' with the minimum fields required to make a request.
+newUserRolesListResponse ::
+  UserRolesListResponse
+newUserRolesListResponse =
+  UserRolesListResponse
+    { kind = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      userRoles = Core.Nothing
+    }
+
+instance Core.FromJSON UserRolesListResponse where
+  parseJSON =
+    Core.withObject
+      "UserRolesListResponse"
+      ( \o ->
+          UserRolesListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "userRoles")
+      )
+
+instance Core.ToJSON UserRolesListResponse where
+  toJSON UserRolesListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("userRoles" Core..=) Core.<$> userRoles
+          ]
+      )
+
+-- | Contains information about supported video formats.
+--
+-- /See:/ 'newVideoFormat' smart constructor.
+data VideoFormat = VideoFormat
+  { -- | File type of the video format.
+    fileType :: (Core.Maybe VideoFormat_FileType),
+    -- | ID of the video format.
+    id :: (Core.Maybe Core.Int32),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormat\".
+    kind :: (Core.Maybe Core.Text),
+    -- | The resolution of this video format.
+    resolution :: (Core.Maybe Size),
+    -- | The target bit rate of this video format.
+    targetBitRate :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'VideoFormat' with the minimum fields required to make a request.
+newVideoFormat ::
+  VideoFormat
+newVideoFormat =
+  VideoFormat
+    { fileType = Core.Nothing,
+      id = Core.Nothing,
+      kind = Core.Nothing,
+      resolution = Core.Nothing,
+      targetBitRate = Core.Nothing
+    }
+
+instance Core.FromJSON VideoFormat where
+  parseJSON =
+    Core.withObject
+      "VideoFormat"
+      ( \o ->
+          VideoFormat
+            Core.<$> (o Core..:? "fileType")
+            Core.<*> (o Core..:? "id")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "resolution")
+            Core.<*> (o Core..:? "targetBitRate")
+      )
+
+instance Core.ToJSON VideoFormat where
+  toJSON VideoFormat {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("fileType" Core..=) Core.<$> fileType,
+            ("id" Core..=) Core.<$> id,
+            ("kind" Core..=) Core.<$> kind,
+            ("resolution" Core..=) Core.<$> resolution,
+            ("targetBitRate" Core..=) Core.<$> targetBitRate
+          ]
+      )
+
+-- | Video Format List Response
+--
+-- /See:/ 'newVideoFormatsListResponse' smart constructor.
+data VideoFormatsListResponse = VideoFormatsListResponse
+  { -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoFormatsListResponse\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Video format collection.
+    videoFormats :: (Core.Maybe [VideoFormat])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'VideoFormatsListResponse' with the minimum fields required to make a request.
+newVideoFormatsListResponse ::
+  VideoFormatsListResponse
+newVideoFormatsListResponse =
+  VideoFormatsListResponse
+    { kind = Core.Nothing,
+      videoFormats = Core.Nothing
+    }
+
+instance Core.FromJSON VideoFormatsListResponse where
+  parseJSON =
+    Core.withObject
+      "VideoFormatsListResponse"
+      ( \o ->
+          VideoFormatsListResponse
+            Core.<$> (o Core..:? "kind")
+            Core.<*> (o Core..:? "videoFormats")
+      )
+
+instance Core.ToJSON VideoFormatsListResponse where
+  toJSON VideoFormatsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("kind" Core..=) Core.<$> kind,
+            ("videoFormats" Core..=) Core.<$> videoFormats
+          ]
+      )
+
+-- | Video Offset
+--
+-- /See:/ 'newVideoOffset' smart constructor.
+data VideoOffset = VideoOffset
+  { -- | Duration, as a percentage of video duration. Do not set when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.
+    offsetPercentage :: (Core.Maybe Core.Int32),
+    -- | Duration, in seconds. Do not set when offsetPercentage is set. Acceptable values are 0 to 86399, inclusive.
+    offsetSeconds :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'VideoOffset' with the minimum fields required to make a request.
+newVideoOffset ::
+  VideoOffset
+newVideoOffset =
+  VideoOffset
+    { offsetPercentage = Core.Nothing,
+      offsetSeconds = Core.Nothing
+    }
+
+instance Core.FromJSON VideoOffset where
+  parseJSON =
+    Core.withObject
+      "VideoOffset"
+      ( \o ->
+          VideoOffset
+            Core.<$> (o Core..:? "offsetPercentage")
+            Core.<*> (o Core..:? "offsetSeconds")
+      )
+
+instance Core.ToJSON VideoOffset where
+  toJSON VideoOffset {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("offsetPercentage" Core..=) Core.<$> offsetPercentage,
+            ("offsetSeconds" Core..=) Core.<$> offsetSeconds
+          ]
+      )
+
+-- | Video Settings
+--
+-- /See:/ 'newVideoSettings' smart constructor.
+data VideoSettings = VideoSettings
+  { -- | Settings for the companion creatives of video creatives served to this placement.
+    companionSettings :: (Core.Maybe CompanionSetting),
+    -- | Duration of a video placement in seconds.
+    durationSeconds :: (Core.Maybe Core.Int32),
+    -- | Identifies what kind of resource this is. Value: the fixed string \"dfareporting#videoSettings\".
+    kind :: (Core.Maybe Core.Text),
+    -- | Whether OBA icons are enabled for this placement.
+    obaEnabled :: (Core.Maybe Core.Bool),
+    -- | Settings for the OBA icon of video creatives served to this placement. If this object is provided, the creative-level OBA settings will be overridden.
+    obaSettings :: (Core.Maybe ObaIcon),
+    -- | Orientation of a video placement. If this value is set, placement will return assets matching the specified orientation.
+    orientation :: (Core.Maybe VideoSettings_Orientation),
+    -- | Publisher specification ID of a video placement. Possible values are: * @1@, Hulu * @2@, NBC * @3@, CBS * @4@, CBS Desktop * @5@, Discovery * @6@, VEVO HD * @7@, VEVO Vertical * @8@, Fox * @9@, CW Network * @10@, Disney * @11@, IGN * @12@, NFL.com * @13@, Turner Broadcasting * @14@, Tubi on Fox * @15@, Hearst Corporation * @16@, Twitch Desktop * @17@, ABC * @18@, Univision * @19@, MLB.com * @20@, MLB.com Mobile * @21@, MLB.com OTT * @22@, Polsat * @23@, TVN * @24@, Mediaset * @25@, Antena 3 * @26@, Mediamond * @27@, Sky Italia * @28@, Tubi on CBS * @29@, Spotify * @30@, Paramount * @31@, Max
+    publisherSpecificationId :: (Core.Maybe Core.Int64),
+    -- | Settings for the skippability of video creatives served to this placement. If this object is provided, the creative-level skippable settings will be overridden.
+    skippableSettings :: (Core.Maybe SkippableSetting),
+    -- | Settings for the transcodes of video creatives served to this placement. If this object is provided, the creative-level transcode settings will be overridden.
+    transcodeSettings :: (Core.Maybe TranscodeSetting)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'VideoSettings' with the minimum fields required to make a request.
+newVideoSettings ::
+  VideoSettings
+newVideoSettings =
+  VideoSettings
+    { companionSettings = Core.Nothing,
+      durationSeconds = Core.Nothing,
+      kind = Core.Nothing,
+      obaEnabled = Core.Nothing,
+      obaSettings = Core.Nothing,
+      orientation = Core.Nothing,
+      publisherSpecificationId = Core.Nothing,
+      skippableSettings = Core.Nothing,
+      transcodeSettings = Core.Nothing
+    }
+
+instance Core.FromJSON VideoSettings where
+  parseJSON =
+    Core.withObject
+      "VideoSettings"
+      ( \o ->
+          VideoSettings
+            Core.<$> (o Core..:? "companionSettings")
+            Core.<*> (o Core..:? "durationSeconds")
+            Core.<*> (o Core..:? "kind")
+            Core.<*> (o Core..:? "obaEnabled")
+            Core.<*> (o Core..:? "obaSettings")
+            Core.<*> (o Core..:? "orientation")
+            Core.<*> ( o
+                         Core..:? "publisherSpecificationId"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "skippableSettings")
+            Core.<*> (o Core..:? "transcodeSettings")
+      )
+
+instance Core.ToJSON VideoSettings where
+  toJSON VideoSettings {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("companionSettings" Core..=) Core.<$> companionSettings,
+            ("durationSeconds" Core..=) Core.<$> durationSeconds,
+            ("kind" Core..=) Core.<$> kind,
+            ("obaEnabled" Core..=) Core.<$> obaEnabled,
+            ("obaSettings" Core..=) Core.<$> obaSettings,
+            ("orientation" Core..=) Core.<$> orientation,
+            ("publisherSpecificationId" Core..=)
+              Core.. Core.AsText
+              Core.<$> publisherSpecificationId,
+            ("skippableSettings" Core..=) Core.<$> skippableSettings,
+            ("transcodeSettings" Core..=) Core.<$> transcodeSettings
+          ]
+      )
diff --git a/gen/Gogol/DFAReporting/Internal/Sum.hs b/gen/Gogol/DFAReporting/Internal/Sum.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Internal/Sum.hs
@@ -0,0 +1,12462 @@
+{-# 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.DFAReporting.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.DFAReporting.Internal.Sum
+  ( -- * Xgafv
+    Xgafv
+      ( Xgafv_1,
+        Xgafv_2,
+        ..
+      ),
+
+    -- * Account_AccountProfile
+    Account_AccountProfile
+      ( Account_AccountProfile_ACCOUNTPROFILEBASIC,
+        Account_AccountProfile_ACCOUNTPROFILESTANDARD,
+        ..
+      ),
+
+    -- * Account_ActiveAdsLimitTier
+    Account_ActiveAdsLimitTier
+      ( Account_ActiveAdsLimitTier_ACTIVEADSTIER40K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER75K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER100K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER200K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER300K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER500K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER750K,
+        Account_ActiveAdsLimitTier_ACTIVEADSTIER1M,
+        ..
+      ),
+
+    -- * AccountActiveAdSummary_ActiveAdsLimitTier
+    AccountActiveAdSummary_ActiveAdsLimitTier
+      ( AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER40K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER75K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER100K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER200K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER300K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER500K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER750K,
+        AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER1M,
+        ..
+      ),
+
+    -- * AccountPermission_AccountProfilesItem
+    AccountPermission_AccountProfilesItem
+      ( AccountPermission_AccountProfilesItem_ACCOUNTPROFILEBASIC,
+        AccountPermission_AccountProfilesItem_ACCOUNTPROFILESTANDARD,
+        ..
+      ),
+
+    -- * AccountPermission_Level
+    AccountPermission_Level
+      ( AccountPermission_Level_User,
+        AccountPermission_Level_Administrator,
+        ..
+      ),
+
+    -- * AccountUserProfile_TraffickerType
+    AccountUserProfile_TraffickerType
+      ( AccountUserProfile_TraffickerType_INTERNALNONTRAFFICKER,
+        AccountUserProfile_TraffickerType_INTERNALTRAFFICKER,
+        AccountUserProfile_TraffickerType_EXTERNALTRAFFICKER,
+        ..
+      ),
+
+    -- * AccountUserProfile_UserAccessType
+    AccountUserProfile_UserAccessType
+      ( AccountUserProfile_UserAccessType_NORMALUSER,
+        AccountUserProfile_UserAccessType_SUPERUSER,
+        AccountUserProfile_UserAccessType_INTERNALADMINISTRATOR,
+        AccountUserProfile_UserAccessType_READONLYSUPERUSER,
+        ..
+      ),
+
+    -- * Ad_Compatibility
+    Ad_Compatibility
+      ( Ad_Compatibility_Display,
+        Ad_Compatibility_DISPLAYINTERSTITIAL,
+        Ad_Compatibility_App,
+        Ad_Compatibility_APPINTERSTITIAL,
+        Ad_Compatibility_INSTREAMVIDEO,
+        Ad_Compatibility_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * Ad_Type
+    Ad_Type
+      ( Ad_Type_ADSERVINGSTANDARDAD,
+        Ad_Type_ADSERVINGDEFAULTAD,
+        Ad_Type_ADSERVINGCLICKTRACKER,
+        Ad_Type_ADSERVINGTRACKING,
+        Ad_Type_ADSERVINGBRANDSAFEAD,
+        ..
+      ),
+
+    -- * AdSlot_Compatibility
+    AdSlot_Compatibility
+      ( AdSlot_Compatibility_Display,
+        AdSlot_Compatibility_DISPLAYINTERSTITIAL,
+        AdSlot_Compatibility_App,
+        AdSlot_Compatibility_APPINTERSTITIAL,
+        AdSlot_Compatibility_INSTREAMVIDEO,
+        AdSlot_Compatibility_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * AdSlot_PaymentSourceType
+    AdSlot_PaymentSourceType
+      ( AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEAGENCYPAID,
+        AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEPUBLISHERPAID,
+        ..
+      ),
+
+    -- * Advertiser_Status
+    Advertiser_Status
+      ( Advertiser_Status_Approved,
+        Advertiser_Status_ONHOLD,
+        ..
+      ),
+
+    -- * BillingProfile_InvoiceLevel
+    BillingProfile_InvoiceLevel
+      ( BillingProfile_InvoiceLevel_ACCOUNTLEVEL,
+        BillingProfile_InvoiceLevel_ADVERTISERLEVEL,
+        BillingProfile_InvoiceLevel_CAMPAIGNLEVEL,
+        ..
+      ),
+
+    -- * BillingProfile_Status
+    BillingProfile_Status
+      ( BillingProfile_Status_UNDERREVIEW,
+        BillingProfile_Status_Active,
+        BillingProfile_Status_Archived,
+        ..
+      ),
+
+    -- * BillingRate_Type
+    BillingRate_Type
+      ( BillingRate_Type_ADSERVING,
+        BillingRate_Type_Clicks,
+        BillingRate_Type_MINIMUMSERVICE,
+        BillingRate_Type_PATHTOCONVERSION,
+        BillingRate_Type_RICHMEDIAINPAGE,
+        BillingRate_Type_RICHMEDIAEXPANDING,
+        BillingRate_Type_RICHMEDIAFLOATING,
+        BillingRate_Type_RICHMEDIAVIDEO,
+        BillingRate_Type_RICHMEDIATEASER,
+        BillingRate_Type_RICHMEDIAVPAID,
+        BillingRate_Type_INSTREAMVIDEO,
+        BillingRate_Type_Pixel,
+        BillingRate_Type_Tracking,
+        BillingRate_Type_TRAFFICKINGFEATURE,
+        BillingRate_Type_CUSTOMREPORTS,
+        BillingRate_Type_EXPOSURETOCONVERSION,
+        BillingRate_Type_DATATRANSFER,
+        BillingRate_Type_DATATRANSFERSETUP,
+        BillingRate_Type_Startup,
+        BillingRate_Type_STATEMENTOFWORK,
+        BillingRate_Type_PROVIDEDLIST,
+        BillingRate_Type_PROVIDEDLISTSETUP,
+        BillingRate_Type_ENHANCEDFORMATS,
+        BillingRate_Type_TRACKINGADIMPRESSIONS,
+        BillingRate_Type_TRACKINGADCLICKS,
+        BillingRate_Type_NIELSENDIGITALADRATINGSFEE,
+        BillingRate_Type_INSTREAMVIDEOREDIRECT,
+        BillingRate_Type_INSTREAMVIDEOVPAID,
+        BillingRate_Type_DISPLAYADSERVING,
+        BillingRate_Type_VIDEOADSERVING,
+        BillingRate_Type_AUDIOADSERVING,
+        BillingRate_Type_ADVANCEDDISPLAYADSERVING,
+        ..
+      ),
+
+    -- * BillingRate_UnitOfMeasure
+    BillingRate_UnitOfMeasure
+      ( BillingRate_UnitOfMeasure_Cpm,
+        BillingRate_UnitOfMeasure_Cpc,
+        BillingRate_UnitOfMeasure_EA,
+        BillingRate_UnitOfMeasure_P2C,
+        ..
+      ),
+
+    -- * Conversion_AdUserDataConsent
+    Conversion_AdUserDataConsent
+      ( Conversion_AdUserDataConsent_Granted,
+        Conversion_AdUserDataConsent_Denied,
+        ..
+      ),
+
+    -- * ConversionError_Code
+    ConversionError_Code
+      ( ConversionError_Code_INVALIDARGUMENT,
+        ConversionError_Code_Internal,
+        ConversionError_Code_PERMISSIONDENIED,
+        ConversionError_Code_NOTFOUND,
+        ..
+      ),
+
+    -- * Creative_ArtworkType
+    Creative_ArtworkType
+      ( Creative_ArtworkType_ARTWORKTYPEFLASH,
+        Creative_ArtworkType_ARTWORK_TYPE_HTML5,
+        Creative_ArtworkType_ARTWORKTYPEMIXED,
+        Creative_ArtworkType_ARTWORKTYPEIMAGE,
+        ..
+      ),
+
+    -- * Creative_AuthoringSource
+    Creative_AuthoringSource
+      ( Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDCM,
+        Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDBM,
+        Creative_AuthoringSource_CREATIVEAUTHORINGSOURCESTUDIO,
+        Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEGWD,
+        Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEACS,
+        ..
+      ),
+
+    -- * Creative_AuthoringTool
+    Creative_AuthoringTool
+      ( Creative_AuthoringTool_Ninja,
+        Creative_AuthoringTool_Swiffy,
+        ..
+      ),
+
+    -- * Creative_BackupImageFeaturesItem
+    Creative_BackupImageFeaturesItem
+      ( Creative_BackupImageFeaturesItem_CSSFONTFACE,
+        Creative_BackupImageFeaturesItem_CSSBACKGROUNDSIZE,
+        Creative_BackupImageFeaturesItem_CSSBORDERIMAGE,
+        Creative_BackupImageFeaturesItem_CSSBORDERRADIUS,
+        Creative_BackupImageFeaturesItem_CSSBOXSHADOW,
+        Creative_BackupImageFeaturesItem_CSSFLEXBOX,
+        Creative_BackupImageFeaturesItem_CSSHSLA,
+        Creative_BackupImageFeaturesItem_CSSMULTIPLEBGS,
+        Creative_BackupImageFeaturesItem_CSSOPACITY,
+        Creative_BackupImageFeaturesItem_CSSRGBA,
+        Creative_BackupImageFeaturesItem_CSSTEXTSHADOW,
+        Creative_BackupImageFeaturesItem_CSSANIMATIONS,
+        Creative_BackupImageFeaturesItem_CSSCOLUMNS,
+        Creative_BackupImageFeaturesItem_CSSGENERATEDCONTENT,
+        Creative_BackupImageFeaturesItem_CSSGRADIENTS,
+        Creative_BackupImageFeaturesItem_CSSREFLECTIONS,
+        Creative_BackupImageFeaturesItem_CSSTRANSFORMS,
+        Creative_BackupImageFeaturesItem_CSSTRANSFORMS3D,
+        Creative_BackupImageFeaturesItem_CSSTRANSITIONS,
+        Creative_BackupImageFeaturesItem_APPLICATIONCACHE,
+        Creative_BackupImageFeaturesItem_Canvas,
+        Creative_BackupImageFeaturesItem_CANVASTEXT,
+        Creative_BackupImageFeaturesItem_DRAGANDDROP,
+        Creative_BackupImageFeaturesItem_HASHCHANGE,
+        Creative_BackupImageFeaturesItem_History,
+        Creative_BackupImageFeaturesItem_Audio,
+        Creative_BackupImageFeaturesItem_Video,
+        Creative_BackupImageFeaturesItem_INDEXEDDB,
+        Creative_BackupImageFeaturesItem_INPUTATTRAUTOCOMPLETE,
+        Creative_BackupImageFeaturesItem_INPUTATTRAUTOFOCUS,
+        Creative_BackupImageFeaturesItem_INPUTATTRLIST,
+        Creative_BackupImageFeaturesItem_INPUTATTRPLACEHOLDER,
+        Creative_BackupImageFeaturesItem_INPUTATTRMAX,
+        Creative_BackupImageFeaturesItem_INPUTATTRMIN,
+        Creative_BackupImageFeaturesItem_INPUTATTRMULTIPLE,
+        Creative_BackupImageFeaturesItem_INPUTATTRPATTERN,
+        Creative_BackupImageFeaturesItem_INPUTATTRREQUIRED,
+        Creative_BackupImageFeaturesItem_INPUTATTRSTEP,
+        Creative_BackupImageFeaturesItem_INPUTTYPESEARCH,
+        Creative_BackupImageFeaturesItem_INPUTTYPETEL,
+        Creative_BackupImageFeaturesItem_INPUTTYPEURL,
+        Creative_BackupImageFeaturesItem_INPUTTYPEEMAIL,
+        Creative_BackupImageFeaturesItem_INPUTTYPEDATETIME,
+        Creative_BackupImageFeaturesItem_INPUTTYPEDATE,
+        Creative_BackupImageFeaturesItem_INPUTTYPEMONTH,
+        Creative_BackupImageFeaturesItem_INPUTTYPEWEEK,
+        Creative_BackupImageFeaturesItem_INPUTTYPETIME,
+        Creative_BackupImageFeaturesItem_INPUTTYPEDATETIMELOCAL,
+        Creative_BackupImageFeaturesItem_INPUTTYPENUMBER,
+        Creative_BackupImageFeaturesItem_INPUTTYPERANGE,
+        Creative_BackupImageFeaturesItem_INPUTTYPECOLOR,
+        Creative_BackupImageFeaturesItem_LOCALSTORAGE,
+        Creative_BackupImageFeaturesItem_POSTMESSAGE,
+        Creative_BackupImageFeaturesItem_SESSIONSTORAGE,
+        Creative_BackupImageFeaturesItem_WEBSOCKETS,
+        Creative_BackupImageFeaturesItem_WEBSQLDATABASE,
+        Creative_BackupImageFeaturesItem_WEBWORKERS,
+        Creative_BackupImageFeaturesItem_GEOLOCATION,
+        Creative_BackupImageFeaturesItem_INLINESVG,
+        Creative_BackupImageFeaturesItem_Smil,
+        Creative_BackupImageFeaturesItem_SVGHREF,
+        Creative_BackupImageFeaturesItem_SVGCLIPPATHS,
+        Creative_BackupImageFeaturesItem_Touch,
+        Creative_BackupImageFeaturesItem_Webgl,
+        Creative_BackupImageFeaturesItem_SVGFILTERS,
+        Creative_BackupImageFeaturesItem_SVGFEIMAGE,
+        ..
+      ),
+
+    -- * Creative_CompatibilityItem
+    Creative_CompatibilityItem
+      ( Creative_CompatibilityItem_Display,
+        Creative_CompatibilityItem_DISPLAYINTERSTITIAL,
+        Creative_CompatibilityItem_App,
+        Creative_CompatibilityItem_APPINTERSTITIAL,
+        Creative_CompatibilityItem_INSTREAMVIDEO,
+        Creative_CompatibilityItem_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * Creative_Type
+    Creative_Type
+      ( Creative_Type_Image,
+        Creative_Type_DISPLAYREDIRECT,
+        Creative_Type_CUSTOMDISPLAY,
+        Creative_Type_INTERNALREDIRECT,
+        Creative_Type_CUSTOMDISPLAYINTERSTITIAL,
+        Creative_Type_INTERSTITIALINTERNALREDIRECT,
+        Creative_Type_TRACKINGTEXT,
+        Creative_Type_RICHMEDIADISPLAYBANNER,
+        Creative_Type_RICHMEDIAINPAGEFLOATING,
+        Creative_Type_RICHMEDIAIMEXPAND,
+        Creative_Type_RICHMEDIADISPLAYEXPANDING,
+        Creative_Type_RICHMEDIADISPLAYINTERSTITIAL,
+        Creative_Type_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL,
+        Creative_Type_RICHMEDIAMOBILEINAPP,
+        Creative_Type_FLASHINPAGE,
+        Creative_Type_INSTREAMVIDEO,
+        Creative_Type_VPAIDLINEARVIDEO,
+        Creative_Type_VPAIDNONLINEARVIDEO,
+        Creative_Type_INSTREAMVIDEOREDIRECT,
+        Creative_Type_RICHMEDIAPEELDOWN,
+        Creative_Type_HTML5BANNER,
+        Creative_Type_Display,
+        Creative_Type_DISPLAYIMAGEGALLERY,
+        Creative_Type_BRANDSAFEDEFAULTINSTREAMVIDEO,
+        Creative_Type_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * CreativeAsset_Alignment
+    CreativeAsset_Alignment
+      ( CreativeAsset_Alignment_ALIGNMENTTOP,
+        CreativeAsset_Alignment_ALIGNMENTRIGHT,
+        CreativeAsset_Alignment_ALIGNMENTBOTTOM,
+        CreativeAsset_Alignment_ALIGNMENTLEFT,
+        ..
+      ),
+
+    -- * CreativeAsset_ArtworkType
+    CreativeAsset_ArtworkType
+      ( CreativeAsset_ArtworkType_ARTWORKTYPEFLASH,
+        CreativeAsset_ArtworkType_ARTWORK_TYPE_HTML5,
+        CreativeAsset_ArtworkType_ARTWORKTYPEMIXED,
+        CreativeAsset_ArtworkType_ARTWORKTYPEIMAGE,
+        ..
+      ),
+
+    -- * CreativeAsset_ChildAssetType
+    CreativeAsset_ChildAssetType
+      ( CreativeAsset_ChildAssetType_CHILDASSETTYPEFLASH,
+        CreativeAsset_ChildAssetType_CHILDASSETTYPEVIDEO,
+        CreativeAsset_ChildAssetType_CHILDASSETTYPEIMAGE,
+        CreativeAsset_ChildAssetType_CHILDASSETTYPEDATA,
+        ..
+      ),
+
+    -- * CreativeAsset_DetectedFeaturesItem
+    CreativeAsset_DetectedFeaturesItem
+      ( CreativeAsset_DetectedFeaturesItem_CSSFONTFACE,
+        CreativeAsset_DetectedFeaturesItem_CSSBACKGROUNDSIZE,
+        CreativeAsset_DetectedFeaturesItem_CSSBORDERIMAGE,
+        CreativeAsset_DetectedFeaturesItem_CSSBORDERRADIUS,
+        CreativeAsset_DetectedFeaturesItem_CSSBOXSHADOW,
+        CreativeAsset_DetectedFeaturesItem_CSSFLEXBOX,
+        CreativeAsset_DetectedFeaturesItem_CSSHSLA,
+        CreativeAsset_DetectedFeaturesItem_CSSMULTIPLEBGS,
+        CreativeAsset_DetectedFeaturesItem_CSSOPACITY,
+        CreativeAsset_DetectedFeaturesItem_CSSRGBA,
+        CreativeAsset_DetectedFeaturesItem_CSSTEXTSHADOW,
+        CreativeAsset_DetectedFeaturesItem_CSSANIMATIONS,
+        CreativeAsset_DetectedFeaturesItem_CSSCOLUMNS,
+        CreativeAsset_DetectedFeaturesItem_CSSGENERATEDCONTENT,
+        CreativeAsset_DetectedFeaturesItem_CSSGRADIENTS,
+        CreativeAsset_DetectedFeaturesItem_CSSREFLECTIONS,
+        CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS,
+        CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS3D,
+        CreativeAsset_DetectedFeaturesItem_CSSTRANSITIONS,
+        CreativeAsset_DetectedFeaturesItem_APPLICATIONCACHE,
+        CreativeAsset_DetectedFeaturesItem_Canvas,
+        CreativeAsset_DetectedFeaturesItem_CANVASTEXT,
+        CreativeAsset_DetectedFeaturesItem_DRAGANDDROP,
+        CreativeAsset_DetectedFeaturesItem_HASHCHANGE,
+        CreativeAsset_DetectedFeaturesItem_History,
+        CreativeAsset_DetectedFeaturesItem_Audio,
+        CreativeAsset_DetectedFeaturesItem_Video,
+        CreativeAsset_DetectedFeaturesItem_INDEXEDDB,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOFOCUS,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRLIST,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRPLACEHOLDER,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRMAX,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRMIN,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRMULTIPLE,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRPATTERN,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRREQUIRED,
+        CreativeAsset_DetectedFeaturesItem_INPUTATTRSTEP,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPESEARCH,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPETEL,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEURL,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEEMAIL,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIME,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATE,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEMONTH,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEWEEK,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPETIME,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPENUMBER,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPERANGE,
+        CreativeAsset_DetectedFeaturesItem_INPUTTYPECOLOR,
+        CreativeAsset_DetectedFeaturesItem_LOCALSTORAGE,
+        CreativeAsset_DetectedFeaturesItem_POSTMESSAGE,
+        CreativeAsset_DetectedFeaturesItem_SESSIONSTORAGE,
+        CreativeAsset_DetectedFeaturesItem_WEBSOCKETS,
+        CreativeAsset_DetectedFeaturesItem_WEBSQLDATABASE,
+        CreativeAsset_DetectedFeaturesItem_WEBWORKERS,
+        CreativeAsset_DetectedFeaturesItem_GEOLOCATION,
+        CreativeAsset_DetectedFeaturesItem_INLINESVG,
+        CreativeAsset_DetectedFeaturesItem_Smil,
+        CreativeAsset_DetectedFeaturesItem_SVGHREF,
+        CreativeAsset_DetectedFeaturesItem_SVGCLIPPATHS,
+        CreativeAsset_DetectedFeaturesItem_Touch,
+        CreativeAsset_DetectedFeaturesItem_Webgl,
+        CreativeAsset_DetectedFeaturesItem_SVGFILTERS,
+        CreativeAsset_DetectedFeaturesItem_SVGFEIMAGE,
+        ..
+      ),
+
+    -- * CreativeAsset_DisplayType
+    CreativeAsset_DisplayType
+      ( CreativeAsset_DisplayType_ASSETDISPLAYTYPEINPAGE,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLOATING,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEOVERLAY,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEEXPANDING,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASH,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASHEXPANDING,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEPEELDOWN,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDLINEAR,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDNONLINEAR,
+        CreativeAsset_DisplayType_ASSETDISPLAYTYPEBACKDROP,
+        ..
+      ),
+
+    -- * CreativeAsset_DurationType
+    CreativeAsset_DurationType
+      ( CreativeAsset_DurationType_ASSETDURATIONTYPEAUTO,
+        CreativeAsset_DurationType_ASSETDURATIONTYPENONE,
+        CreativeAsset_DurationType_ASSETDURATIONTYPECUSTOM,
+        ..
+      ),
+
+    -- * CreativeAsset_Orientation
+    CreativeAsset_Orientation
+      ( CreativeAsset_Orientation_Landscape,
+        CreativeAsset_Orientation_Portrait,
+        CreativeAsset_Orientation_Square,
+        ..
+      ),
+
+    -- * CreativeAsset_PositionLeftUnit
+    CreativeAsset_PositionLeftUnit
+      ( CreativeAsset_PositionLeftUnit_OFFSETUNITPIXEL,
+        CreativeAsset_PositionLeftUnit_OFFSETUNITPERCENT,
+        CreativeAsset_PositionLeftUnit_OFFSETUNITPIXELFROMCENTER,
+        ..
+      ),
+
+    -- * CreativeAsset_PositionTopUnit
+    CreativeAsset_PositionTopUnit
+      ( CreativeAsset_PositionTopUnit_OFFSETUNITPIXEL,
+        CreativeAsset_PositionTopUnit_OFFSETUNITPERCENT,
+        CreativeAsset_PositionTopUnit_OFFSETUNITPIXELFROMCENTER,
+        ..
+      ),
+
+    -- * CreativeAsset_Role
+    CreativeAsset_Role
+      ( CreativeAsset_Role_Primary,
+        CreativeAsset_Role_BACKUPIMAGE,
+        CreativeAsset_Role_ADDITIONALIMAGE,
+        CreativeAsset_Role_ADDITIONALFLASH,
+        CreativeAsset_Role_PARENTVIDEO,
+        CreativeAsset_Role_TRANSCODEDVIDEO,
+        CreativeAsset_Role_Other,
+        CreativeAsset_Role_ALTERNATEVIDEO,
+        CreativeAsset_Role_PARENTAUDIO,
+        CreativeAsset_Role_TRANSCODEDAUDIO,
+        ..
+      ),
+
+    -- * CreativeAsset_StartTimeType
+    CreativeAsset_StartTimeType
+      ( CreativeAsset_StartTimeType_ASSETSTARTTIMETYPENONE,
+        CreativeAsset_StartTimeType_ASSETSTARTTIMETYPECUSTOM,
+        ..
+      ),
+
+    -- * CreativeAsset_WindowMode
+    CreativeAsset_WindowMode
+      ( CreativeAsset_WindowMode_Opaque,
+        CreativeAsset_WindowMode_Window,
+        CreativeAsset_WindowMode_Transparent,
+        ..
+      ),
+
+    -- * CreativeAssetId_Type
+    CreativeAssetId_Type
+      ( CreativeAssetId_Type_Image,
+        CreativeAssetId_Type_Flash,
+        CreativeAssetId_Type_Video,
+        CreativeAssetId_Type_Html,
+        CreativeAssetId_Type_HTMLIMAGE,
+        CreativeAssetId_Type_Audio,
+        ..
+      ),
+
+    -- * CreativeAssetMetadata_DetectedFeaturesItem
+    CreativeAssetMetadata_DetectedFeaturesItem
+      ( CreativeAssetMetadata_DetectedFeaturesItem_CSSFONTFACE,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSBACKGROUNDSIZE,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERIMAGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERRADIUS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSBOXSHADOW,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSFLEXBOX,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSHSLA,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSMULTIPLEBGS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSOPACITY,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSRGBA,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSTEXTSHADOW,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSANIMATIONS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSCOLUMNS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSGENERATEDCONTENT,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSGRADIENTS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSREFLECTIONS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS3D,
+        CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSITIONS,
+        CreativeAssetMetadata_DetectedFeaturesItem_APPLICATIONCACHE,
+        CreativeAssetMetadata_DetectedFeaturesItem_Canvas,
+        CreativeAssetMetadata_DetectedFeaturesItem_CANVASTEXT,
+        CreativeAssetMetadata_DetectedFeaturesItem_DRAGANDDROP,
+        CreativeAssetMetadata_DetectedFeaturesItem_HASHCHANGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_History,
+        CreativeAssetMetadata_DetectedFeaturesItem_Audio,
+        CreativeAssetMetadata_DetectedFeaturesItem_Video,
+        CreativeAssetMetadata_DetectedFeaturesItem_INDEXEDDB,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOFOCUS,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRLIST,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPLACEHOLDER,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMAX,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMIN,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMULTIPLE,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPATTERN,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRREQUIRED,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRSTEP,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPESEARCH,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETEL,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEURL,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEEMAIL,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIME,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATE,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEMONTH,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEWEEK,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETIME,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPENUMBER,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPERANGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPECOLOR,
+        CreativeAssetMetadata_DetectedFeaturesItem_LOCALSTORAGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_POSTMESSAGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_SESSIONSTORAGE,
+        CreativeAssetMetadata_DetectedFeaturesItem_WEBSOCKETS,
+        CreativeAssetMetadata_DetectedFeaturesItem_WEBSQLDATABASE,
+        CreativeAssetMetadata_DetectedFeaturesItem_WEBWORKERS,
+        CreativeAssetMetadata_DetectedFeaturesItem_GEOLOCATION,
+        CreativeAssetMetadata_DetectedFeaturesItem_INLINESVG,
+        CreativeAssetMetadata_DetectedFeaturesItem_Smil,
+        CreativeAssetMetadata_DetectedFeaturesItem_SVGHREF,
+        CreativeAssetMetadata_DetectedFeaturesItem_SVGCLIPPATHS,
+        CreativeAssetMetadata_DetectedFeaturesItem_Touch,
+        CreativeAssetMetadata_DetectedFeaturesItem_Webgl,
+        CreativeAssetMetadata_DetectedFeaturesItem_SVGFILTERS,
+        CreativeAssetMetadata_DetectedFeaturesItem_SVGFEIMAGE,
+        ..
+      ),
+
+    -- * CreativeAssetMetadata_WarnedValidationRulesItem
+    CreativeAssetMetadata_WarnedValidationRulesItem
+      ( CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGNONTOPLEVEL,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMISSING,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMORETHANONE,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ORPHANEDASSET,
+        CreativeAssetMetadata_WarnedValidationRulesItem_PRIMARYHTMLMISSING,
+        CreativeAssetMetadata_WarnedValidationRulesItem_EXTERNALFILEREFERENCED,
+        CreativeAssetMetadata_WarnedValidationRulesItem_MRAIDREFERENCED,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ADMOBREFERENCED,
+        CreativeAssetMetadata_WarnedValidationRulesItem_FILETYPEINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ZIPINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_LINKEDFILENOTFOUND,
+        CreativeAssetMetadata_WarnedValidationRulesItem_MAX_FLASH_VERSION_11,
+        CreativeAssetMetadata_WarnedValidationRulesItem_NOTSSLCOMPLIANT,
+        CreativeAssetMetadata_WarnedValidationRulesItem_FILEDETAILEMPTY,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ASSETINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_GWDPROPERTIESINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ENABLERUNSUPPORTEDMETHODDCM,
+        CreativeAssetMetadata_WarnedValidationRulesItem_ASSETFORMATUNSUPPORTEDDCM,
+        CreativeAssetMetadata_WarnedValidationRulesItem_COMPONENTUNSUPPORTEDDCM,
+        CreativeAssetMetadata_WarnedValidationRulesItem_HTML5FEATUREUNSUPPORTED,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINGWD,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGHARDCODED,
+        CreativeAssetMetadata_WarnedValidationRulesItem_SVGINVALID,
+        CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINRICHMEDIA,
+        CreativeAssetMetadata_WarnedValidationRulesItem_MISSINGENABLERREFERENCE,
+        ..
+      ),
+
+    -- * CreativeCustomEvent_AdvertiserCustomEventType
+    CreativeCustomEvent_AdvertiserCustomEventType
+      ( CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTTIMER,
+        CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTEXIT,
+        CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTCOUNTER,
+        ..
+      ),
+
+    -- * CreativeCustomEvent_ArtworkType
+    CreativeCustomEvent_ArtworkType
+      ( CreativeCustomEvent_ArtworkType_ARTWORKTYPEFLASH,
+        CreativeCustomEvent_ArtworkType_ARTWORK_TYPE_HTML5,
+        CreativeCustomEvent_ArtworkType_ARTWORKTYPEMIXED,
+        CreativeCustomEvent_ArtworkType_ARTWORKTYPEIMAGE,
+        ..
+      ),
+
+    -- * CreativeCustomEvent_TargetType
+    CreativeCustomEvent_TargetType
+      ( CreativeCustomEvent_TargetType_TARGETBLANK,
+        CreativeCustomEvent_TargetType_TARGETTOP,
+        CreativeCustomEvent_TargetType_TARGETSELF,
+        CreativeCustomEvent_TargetType_TARGETPARENT,
+        CreativeCustomEvent_TargetType_TARGETPOPUP,
+        ..
+      ),
+
+    -- * CreativeGroupAssignment_CreativeGroupNumber
+    CreativeGroupAssignment_CreativeGroupNumber
+      ( CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPONE,
+        CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPTWO,
+        ..
+      ),
+
+    -- * CreativeOptimizationConfiguration_OptimizationModel
+    CreativeOptimizationConfiguration_OptimizationModel
+      ( CreativeOptimizationConfiguration_OptimizationModel_Click,
+        CreativeOptimizationConfiguration_OptimizationModel_POSTCLICK,
+        CreativeOptimizationConfiguration_OptimizationModel_POSTIMPRESSION,
+        CreativeOptimizationConfiguration_OptimizationModel_POSTCLICKANDIMPRESSION,
+        CreativeOptimizationConfiguration_OptimizationModel_VIDEOCOMPLETION,
+        ..
+      ),
+
+    -- * CreativeRotation_Type
+    CreativeRotation_Type
+      ( CreativeRotation_Type_CREATIVEROTATIONTYPESEQUENTIAL,
+        CreativeRotation_Type_CREATIVEROTATIONTYPERANDOM,
+        ..
+      ),
+
+    -- * CreativeRotation_WeightCalculationStrategy
+    CreativeRotation_WeightCalculationStrategy
+      ( CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYEQUAL,
+        CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYCUSTOM,
+        CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYHIGHESTCTR,
+        CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYOPTIMIZED,
+        ..
+      ),
+
+    -- * CustomFloodlightVariable_Type
+    CustomFloodlightVariable_Type
+      ( CustomFloodlightVariable_Type_U1,
+        CustomFloodlightVariable_Type_U2,
+        CustomFloodlightVariable_Type_U3,
+        CustomFloodlightVariable_Type_U4,
+        CustomFloodlightVariable_Type_U5,
+        CustomFloodlightVariable_Type_U6,
+        CustomFloodlightVariable_Type_U7,
+        CustomFloodlightVariable_Type_U8,
+        CustomFloodlightVariable_Type_U9,
+        CustomFloodlightVariable_Type_U10,
+        CustomFloodlightVariable_Type_U11,
+        CustomFloodlightVariable_Type_U12,
+        CustomFloodlightVariable_Type_U13,
+        CustomFloodlightVariable_Type_U14,
+        CustomFloodlightVariable_Type_U15,
+        CustomFloodlightVariable_Type_U16,
+        CustomFloodlightVariable_Type_U17,
+        CustomFloodlightVariable_Type_U18,
+        CustomFloodlightVariable_Type_U19,
+        CustomFloodlightVariable_Type_U20,
+        CustomFloodlightVariable_Type_U21,
+        CustomFloodlightVariable_Type_U22,
+        CustomFloodlightVariable_Type_U23,
+        CustomFloodlightVariable_Type_U24,
+        CustomFloodlightVariable_Type_U25,
+        CustomFloodlightVariable_Type_U26,
+        CustomFloodlightVariable_Type_U27,
+        CustomFloodlightVariable_Type_U28,
+        CustomFloodlightVariable_Type_U29,
+        CustomFloodlightVariable_Type_U30,
+        CustomFloodlightVariable_Type_U31,
+        CustomFloodlightVariable_Type_U32,
+        CustomFloodlightVariable_Type_U33,
+        CustomFloodlightVariable_Type_U34,
+        CustomFloodlightVariable_Type_U35,
+        CustomFloodlightVariable_Type_U36,
+        CustomFloodlightVariable_Type_U37,
+        CustomFloodlightVariable_Type_U38,
+        CustomFloodlightVariable_Type_U39,
+        CustomFloodlightVariable_Type_U40,
+        CustomFloodlightVariable_Type_U41,
+        CustomFloodlightVariable_Type_U42,
+        CustomFloodlightVariable_Type_U43,
+        CustomFloodlightVariable_Type_U44,
+        CustomFloodlightVariable_Type_U45,
+        CustomFloodlightVariable_Type_U46,
+        CustomFloodlightVariable_Type_U47,
+        CustomFloodlightVariable_Type_U48,
+        CustomFloodlightVariable_Type_U49,
+        CustomFloodlightVariable_Type_U50,
+        CustomFloodlightVariable_Type_U51,
+        CustomFloodlightVariable_Type_U52,
+        CustomFloodlightVariable_Type_U53,
+        CustomFloodlightVariable_Type_U54,
+        CustomFloodlightVariable_Type_U55,
+        CustomFloodlightVariable_Type_U56,
+        CustomFloodlightVariable_Type_U57,
+        CustomFloodlightVariable_Type_U58,
+        CustomFloodlightVariable_Type_U59,
+        CustomFloodlightVariable_Type_U60,
+        CustomFloodlightVariable_Type_U61,
+        CustomFloodlightVariable_Type_U62,
+        CustomFloodlightVariable_Type_U63,
+        CustomFloodlightVariable_Type_U64,
+        CustomFloodlightVariable_Type_U65,
+        CustomFloodlightVariable_Type_U66,
+        CustomFloodlightVariable_Type_U67,
+        CustomFloodlightVariable_Type_U68,
+        CustomFloodlightVariable_Type_U69,
+        CustomFloodlightVariable_Type_U70,
+        CustomFloodlightVariable_Type_U71,
+        CustomFloodlightVariable_Type_U72,
+        CustomFloodlightVariable_Type_U73,
+        CustomFloodlightVariable_Type_U74,
+        CustomFloodlightVariable_Type_U75,
+        CustomFloodlightVariable_Type_U76,
+        CustomFloodlightVariable_Type_U77,
+        CustomFloodlightVariable_Type_U78,
+        CustomFloodlightVariable_Type_U79,
+        CustomFloodlightVariable_Type_U80,
+        CustomFloodlightVariable_Type_U81,
+        CustomFloodlightVariable_Type_U82,
+        CustomFloodlightVariable_Type_U83,
+        CustomFloodlightVariable_Type_U84,
+        CustomFloodlightVariable_Type_U85,
+        CustomFloodlightVariable_Type_U86,
+        CustomFloodlightVariable_Type_U87,
+        CustomFloodlightVariable_Type_U88,
+        CustomFloodlightVariable_Type_U89,
+        CustomFloodlightVariable_Type_U90,
+        CustomFloodlightVariable_Type_U91,
+        CustomFloodlightVariable_Type_U92,
+        CustomFloodlightVariable_Type_U93,
+        CustomFloodlightVariable_Type_U94,
+        CustomFloodlightVariable_Type_U95,
+        CustomFloodlightVariable_Type_U96,
+        CustomFloodlightVariable_Type_U97,
+        CustomFloodlightVariable_Type_U98,
+        CustomFloodlightVariable_Type_U99,
+        CustomFloodlightVariable_Type_U100,
+        ..
+      ),
+
+    -- * DateRange_RelativeDateRange
+    DateRange_RelativeDateRange
+      ( DateRange_RelativeDateRange_Today,
+        DateRange_RelativeDateRange_Yesterday,
+        DateRange_RelativeDateRange_WEEKTODATE,
+        DateRange_RelativeDateRange_MONTHTODATE,
+        DateRange_RelativeDateRange_QUARTERTODATE,
+        DateRange_RelativeDateRange_YEARTODATE,
+        DateRange_RelativeDateRange_PREVIOUSWEEK,
+        DateRange_RelativeDateRange_PREVIOUSMONTH,
+        DateRange_RelativeDateRange_PREVIOUSQUARTER,
+        DateRange_RelativeDateRange_PREVIOUSYEAR,
+        DateRange_RelativeDateRange_LAST7DAYS,
+        DateRange_RelativeDateRange_LAST30DAYS,
+        DateRange_RelativeDateRange_LAST90DAYS,
+        DateRange_RelativeDateRange_LAST365DAYS,
+        DateRange_RelativeDateRange_LAST24MONTHS,
+        DateRange_RelativeDateRange_LAST14DAYS,
+        DateRange_RelativeDateRange_LAST60DAYS,
+        ..
+      ),
+
+    -- * DayPartTargeting_DaysOfWeekItem
+    DayPartTargeting_DaysOfWeekItem
+      ( DayPartTargeting_DaysOfWeekItem_Sunday,
+        DayPartTargeting_DaysOfWeekItem_Monday,
+        DayPartTargeting_DaysOfWeekItem_Tuesday,
+        DayPartTargeting_DaysOfWeekItem_Wednesday,
+        DayPartTargeting_DaysOfWeekItem_Thursday,
+        DayPartTargeting_DaysOfWeekItem_Friday,
+        DayPartTargeting_DaysOfWeekItem_Saturday,
+        ..
+      ),
+
+    -- * DeliverySchedule_Priority
+    DeliverySchedule_Priority
+      ( DeliverySchedule_Priority_AD_PRIORITY_01,
+        DeliverySchedule_Priority_AD_PRIORITY_02,
+        DeliverySchedule_Priority_AD_PRIORITY_03,
+        DeliverySchedule_Priority_AD_PRIORITY_04,
+        DeliverySchedule_Priority_AD_PRIORITY_05,
+        DeliverySchedule_Priority_AD_PRIORITY_06,
+        DeliverySchedule_Priority_AD_PRIORITY_07,
+        DeliverySchedule_Priority_AD_PRIORITY_08,
+        DeliverySchedule_Priority_AD_PRIORITY_09,
+        DeliverySchedule_Priority_AD_PRIORITY_10,
+        DeliverySchedule_Priority_AD_PRIORITY_11,
+        DeliverySchedule_Priority_AD_PRIORITY_12,
+        DeliverySchedule_Priority_AD_PRIORITY_13,
+        DeliverySchedule_Priority_AD_PRIORITY_14,
+        DeliverySchedule_Priority_AD_PRIORITY_15,
+        DeliverySchedule_Priority_AD_PRIORITY_16,
+        ..
+      ),
+
+    -- * DimensionValue_MatchType
+    DimensionValue_MatchType
+      ( DimensionValue_MatchType_Exact,
+        DimensionValue_MatchType_BEGINSWITH,
+        DimensionValue_MatchType_Contains,
+        DimensionValue_MatchType_WILDCARDEXPRESSION,
+        ..
+      ),
+
+    -- * DirectorySite_InpageTagFormatsItem
+    DirectorySite_InpageTagFormatsItem
+      ( DirectorySite_InpageTagFormatsItem_Standard,
+        DirectorySite_InpageTagFormatsItem_IFRAMEJAVASCRIPTINPAGE,
+        DirectorySite_InpageTagFormatsItem_INTERNALREDIRECTINPAGE,
+        DirectorySite_InpageTagFormatsItem_JAVASCRIPTINPAGE,
+        ..
+      ),
+
+    -- * DirectorySite_InterstitialTagFormatsItem
+    DirectorySite_InterstitialTagFormatsItem
+      ( DirectorySite_InterstitialTagFormatsItem_IFRAMEJAVASCRIPTINTERSTITIAL,
+        DirectorySite_InterstitialTagFormatsItem_INTERNALREDIRECTINTERSTITIAL,
+        DirectorySite_InterstitialTagFormatsItem_JAVASCRIPTINTERSTITIAL,
+        ..
+      ),
+
+    -- * DynamicTargetingKey_ObjectType
+    DynamicTargetingKey_ObjectType
+      ( DynamicTargetingKey_ObjectType_OBJECTADVERTISER,
+        DynamicTargetingKey_ObjectType_OBJECTAD,
+        DynamicTargetingKey_ObjectType_OBJECTCREATIVE,
+        DynamicTargetingKey_ObjectType_OBJECTPLACEMENT,
+        ..
+      ),
+
+    -- * EncryptionInfo_EncryptionEntityType
+    EncryptionInfo_EncryptionEntityType
+      ( EncryptionInfo_EncryptionEntityType_ENCRYPTIONENTITYTYPEUNKNOWN,
+        EncryptionInfo_EncryptionEntityType_DCMACCOUNT,
+        EncryptionInfo_EncryptionEntityType_DCMADVERTISER,
+        EncryptionInfo_EncryptionEntityType_DBMPARTNER,
+        EncryptionInfo_EncryptionEntityType_DBMADVERTISER,
+        EncryptionInfo_EncryptionEntityType_ADWORDSCUSTOMER,
+        EncryptionInfo_EncryptionEntityType_DFPNETWORKCODE,
+        ..
+      ),
+
+    -- * EncryptionInfo_EncryptionSource
+    EncryptionInfo_EncryptionSource
+      ( EncryptionInfo_EncryptionSource_ENCRYPTIONSCOPEUNKNOWN,
+        EncryptionInfo_EncryptionSource_ADSERVING,
+        EncryptionInfo_EncryptionSource_DATATRANSFER,
+        ..
+      ),
+
+    -- * EventTag_SiteFilterType
+    EventTag_SiteFilterType
+      ( EventTag_SiteFilterType_Allowlist,
+        EventTag_SiteFilterType_Blocklist,
+        ..
+      ),
+
+    -- * EventTag_Status
+    EventTag_Status
+      ( EventTag_Status_Enabled,
+        EventTag_Status_Disabled,
+        ..
+      ),
+
+    -- * EventTag_Type
+    EventTag_Type
+      ( EventTag_Type_IMPRESSIONIMAGEEVENTTAG,
+        EventTag_Type_IMPRESSIONJAVASCRIPTEVENTTAG,
+        EventTag_Type_CLICKTHROUGHEVENTTAG,
+        ..
+      ),
+
+    -- * File_Format
+    File_Format
+      ( File_Format_Csv,
+        File_Format_Excel,
+        ..
+      ),
+
+    -- * File_Status
+    File_Status
+      ( File_Status_Processing,
+        File_Status_REPORTAVAILABLE,
+        File_Status_Failed,
+        File_Status_Cancelled,
+        File_Status_Queued,
+        ..
+      ),
+
+    -- * FloodlightActivity_CacheBustingType
+    FloodlightActivity_CacheBustingType
+      ( FloodlightActivity_CacheBustingType_Javascript,
+        FloodlightActivity_CacheBustingType_ACTIVESERVERPAGE,
+        FloodlightActivity_CacheBustingType_Jsp,
+        FloodlightActivity_CacheBustingType_Php,
+        FloodlightActivity_CacheBustingType_COLDFUSION,
+        ..
+      ),
+
+    -- * FloodlightActivity_CountingMethod
+    FloodlightActivity_CountingMethod
+      ( FloodlightActivity_CountingMethod_STANDARDCOUNTING,
+        FloodlightActivity_CountingMethod_UNIQUECOUNTING,
+        FloodlightActivity_CountingMethod_SESSIONCOUNTING,
+        FloodlightActivity_CountingMethod_TRANSACTIONSCOUNTING,
+        FloodlightActivity_CountingMethod_ITEMSSOLDCOUNTING,
+        ..
+      ),
+
+    -- * FloodlightActivity_FloodlightActivityGroupType
+    FloodlightActivity_FloodlightActivityGroupType
+      ( FloodlightActivity_FloodlightActivityGroupType_Counter,
+        FloodlightActivity_FloodlightActivityGroupType_Sale,
+        ..
+      ),
+
+    -- * FloodlightActivity_FloodlightTagType
+    FloodlightActivity_FloodlightTagType
+      ( FloodlightActivity_FloodlightTagType_Iframe,
+        FloodlightActivity_FloodlightTagType_Image,
+        FloodlightActivity_FloodlightTagType_GLOBALSITETAG,
+        ..
+      ),
+
+    -- * FloodlightActivity_Status
+    FloodlightActivity_Status
+      ( FloodlightActivity_Status_Active,
+        FloodlightActivity_Status_ARCHIVEDANDDISABLED,
+        FloodlightActivity_Status_Archived,
+        FloodlightActivity_Status_DISABLEDPOLICY,
+        ..
+      ),
+
+    -- * FloodlightActivity_TagFormat
+    FloodlightActivity_TagFormat
+      ( FloodlightActivity_TagFormat_Html,
+        FloodlightActivity_TagFormat_Xhtml,
+        ..
+      ),
+
+    -- * FloodlightActivity_UserDefinedVariableTypesItem
+    FloodlightActivity_UserDefinedVariableTypesItem
+      ( FloodlightActivity_UserDefinedVariableTypesItem_U1,
+        FloodlightActivity_UserDefinedVariableTypesItem_U2,
+        FloodlightActivity_UserDefinedVariableTypesItem_U3,
+        FloodlightActivity_UserDefinedVariableTypesItem_U4,
+        FloodlightActivity_UserDefinedVariableTypesItem_U5,
+        FloodlightActivity_UserDefinedVariableTypesItem_U6,
+        FloodlightActivity_UserDefinedVariableTypesItem_U7,
+        FloodlightActivity_UserDefinedVariableTypesItem_U8,
+        FloodlightActivity_UserDefinedVariableTypesItem_U9,
+        FloodlightActivity_UserDefinedVariableTypesItem_U10,
+        FloodlightActivity_UserDefinedVariableTypesItem_U11,
+        FloodlightActivity_UserDefinedVariableTypesItem_U12,
+        FloodlightActivity_UserDefinedVariableTypesItem_U13,
+        FloodlightActivity_UserDefinedVariableTypesItem_U14,
+        FloodlightActivity_UserDefinedVariableTypesItem_U15,
+        FloodlightActivity_UserDefinedVariableTypesItem_U16,
+        FloodlightActivity_UserDefinedVariableTypesItem_U17,
+        FloodlightActivity_UserDefinedVariableTypesItem_U18,
+        FloodlightActivity_UserDefinedVariableTypesItem_U19,
+        FloodlightActivity_UserDefinedVariableTypesItem_U20,
+        FloodlightActivity_UserDefinedVariableTypesItem_U21,
+        FloodlightActivity_UserDefinedVariableTypesItem_U22,
+        FloodlightActivity_UserDefinedVariableTypesItem_U23,
+        FloodlightActivity_UserDefinedVariableTypesItem_U24,
+        FloodlightActivity_UserDefinedVariableTypesItem_U25,
+        FloodlightActivity_UserDefinedVariableTypesItem_U26,
+        FloodlightActivity_UserDefinedVariableTypesItem_U27,
+        FloodlightActivity_UserDefinedVariableTypesItem_U28,
+        FloodlightActivity_UserDefinedVariableTypesItem_U29,
+        FloodlightActivity_UserDefinedVariableTypesItem_U30,
+        FloodlightActivity_UserDefinedVariableTypesItem_U31,
+        FloodlightActivity_UserDefinedVariableTypesItem_U32,
+        FloodlightActivity_UserDefinedVariableTypesItem_U33,
+        FloodlightActivity_UserDefinedVariableTypesItem_U34,
+        FloodlightActivity_UserDefinedVariableTypesItem_U35,
+        FloodlightActivity_UserDefinedVariableTypesItem_U36,
+        FloodlightActivity_UserDefinedVariableTypesItem_U37,
+        FloodlightActivity_UserDefinedVariableTypesItem_U38,
+        FloodlightActivity_UserDefinedVariableTypesItem_U39,
+        FloodlightActivity_UserDefinedVariableTypesItem_U40,
+        FloodlightActivity_UserDefinedVariableTypesItem_U41,
+        FloodlightActivity_UserDefinedVariableTypesItem_U42,
+        FloodlightActivity_UserDefinedVariableTypesItem_U43,
+        FloodlightActivity_UserDefinedVariableTypesItem_U44,
+        FloodlightActivity_UserDefinedVariableTypesItem_U45,
+        FloodlightActivity_UserDefinedVariableTypesItem_U46,
+        FloodlightActivity_UserDefinedVariableTypesItem_U47,
+        FloodlightActivity_UserDefinedVariableTypesItem_U48,
+        FloodlightActivity_UserDefinedVariableTypesItem_U49,
+        FloodlightActivity_UserDefinedVariableTypesItem_U50,
+        FloodlightActivity_UserDefinedVariableTypesItem_U51,
+        FloodlightActivity_UserDefinedVariableTypesItem_U52,
+        FloodlightActivity_UserDefinedVariableTypesItem_U53,
+        FloodlightActivity_UserDefinedVariableTypesItem_U54,
+        FloodlightActivity_UserDefinedVariableTypesItem_U55,
+        FloodlightActivity_UserDefinedVariableTypesItem_U56,
+        FloodlightActivity_UserDefinedVariableTypesItem_U57,
+        FloodlightActivity_UserDefinedVariableTypesItem_U58,
+        FloodlightActivity_UserDefinedVariableTypesItem_U59,
+        FloodlightActivity_UserDefinedVariableTypesItem_U60,
+        FloodlightActivity_UserDefinedVariableTypesItem_U61,
+        FloodlightActivity_UserDefinedVariableTypesItem_U62,
+        FloodlightActivity_UserDefinedVariableTypesItem_U63,
+        FloodlightActivity_UserDefinedVariableTypesItem_U64,
+        FloodlightActivity_UserDefinedVariableTypesItem_U65,
+        FloodlightActivity_UserDefinedVariableTypesItem_U66,
+        FloodlightActivity_UserDefinedVariableTypesItem_U67,
+        FloodlightActivity_UserDefinedVariableTypesItem_U68,
+        FloodlightActivity_UserDefinedVariableTypesItem_U69,
+        FloodlightActivity_UserDefinedVariableTypesItem_U70,
+        FloodlightActivity_UserDefinedVariableTypesItem_U71,
+        FloodlightActivity_UserDefinedVariableTypesItem_U72,
+        FloodlightActivity_UserDefinedVariableTypesItem_U73,
+        FloodlightActivity_UserDefinedVariableTypesItem_U74,
+        FloodlightActivity_UserDefinedVariableTypesItem_U75,
+        FloodlightActivity_UserDefinedVariableTypesItem_U76,
+        FloodlightActivity_UserDefinedVariableTypesItem_U77,
+        FloodlightActivity_UserDefinedVariableTypesItem_U78,
+        FloodlightActivity_UserDefinedVariableTypesItem_U79,
+        FloodlightActivity_UserDefinedVariableTypesItem_U80,
+        FloodlightActivity_UserDefinedVariableTypesItem_U81,
+        FloodlightActivity_UserDefinedVariableTypesItem_U82,
+        FloodlightActivity_UserDefinedVariableTypesItem_U83,
+        FloodlightActivity_UserDefinedVariableTypesItem_U84,
+        FloodlightActivity_UserDefinedVariableTypesItem_U85,
+        FloodlightActivity_UserDefinedVariableTypesItem_U86,
+        FloodlightActivity_UserDefinedVariableTypesItem_U87,
+        FloodlightActivity_UserDefinedVariableTypesItem_U88,
+        FloodlightActivity_UserDefinedVariableTypesItem_U89,
+        FloodlightActivity_UserDefinedVariableTypesItem_U90,
+        FloodlightActivity_UserDefinedVariableTypesItem_U91,
+        FloodlightActivity_UserDefinedVariableTypesItem_U92,
+        FloodlightActivity_UserDefinedVariableTypesItem_U93,
+        FloodlightActivity_UserDefinedVariableTypesItem_U94,
+        FloodlightActivity_UserDefinedVariableTypesItem_U95,
+        FloodlightActivity_UserDefinedVariableTypesItem_U96,
+        FloodlightActivity_UserDefinedVariableTypesItem_U97,
+        FloodlightActivity_UserDefinedVariableTypesItem_U98,
+        FloodlightActivity_UserDefinedVariableTypesItem_U99,
+        FloodlightActivity_UserDefinedVariableTypesItem_U100,
+        ..
+      ),
+
+    -- * FloodlightActivityGroup_Type
+    FloodlightActivityGroup_Type
+      ( FloodlightActivityGroup_Type_Counter,
+        FloodlightActivityGroup_Type_Sale,
+        ..
+      ),
+
+    -- * FloodlightConfiguration_FirstDayOfWeek
+    FloodlightConfiguration_FirstDayOfWeek
+      ( FloodlightConfiguration_FirstDayOfWeek_Sunday,
+        FloodlightConfiguration_FirstDayOfWeek_Monday,
+        ..
+      ),
+
+    -- * FloodlightConfiguration_NaturalSearchConversionAttributionOption
+    FloodlightConfiguration_NaturalSearchConversionAttributionOption
+      ( FloodlightConfiguration_NaturalSearchConversionAttributionOption_EXCLUDENATURALSEARCHCONVERSIONATTRIBUTION,
+        FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHCONVERSIONATTRIBUTION,
+        FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHTIEREDCONVERSIONATTRIBUTION,
+        ..
+      ),
+
+    -- * FsCommand_PositionOption
+    FsCommand_PositionOption
+      ( FsCommand_PositionOption_Centered,
+        FsCommand_PositionOption_DISTANCEFROMTOPLEFTCORNER,
+        ..
+      ),
+
+    -- * InventoryItem_Type
+    InventoryItem_Type
+      ( InventoryItem_Type_PLANNINGPLACEMENTTYPEREGULAR,
+        InventoryItem_Type_PLANNINGPLACEMENTTYPECREDIT,
+        ..
+      ),
+
+    -- * Invoice_InvoiceType
+    Invoice_InvoiceType
+      ( Invoice_InvoiceType_INVOICETYPEUNSPECIFIED,
+        Invoice_InvoiceType_INVOICETYPECREDIT,
+        Invoice_InvoiceType_INVOICETYPEINVOICE,
+        ..
+      ),
+
+    -- * ListPopulationTerm_Operator
+    ListPopulationTerm_Operator
+      ( ListPopulationTerm_Operator_NUMEQUALS,
+        ListPopulationTerm_Operator_NUMLESSTHAN,
+        ListPopulationTerm_Operator_NUMLESSTHANEQUAL,
+        ListPopulationTerm_Operator_NUMGREATERTHAN,
+        ListPopulationTerm_Operator_NUMGREATERTHANEQUAL,
+        ListPopulationTerm_Operator_STRINGEQUALS,
+        ListPopulationTerm_Operator_STRINGCONTAINS,
+        ..
+      ),
+
+    -- * ListPopulationTerm_Type
+    ListPopulationTerm_Type
+      ( ListPopulationTerm_Type_CUSTOMVARIABLETERM,
+        ListPopulationTerm_Type_LISTMEMBERSHIPTERM,
+        ListPopulationTerm_Type_REFERRERTERM,
+        ..
+      ),
+
+    -- * MeasurementPartnerAdvertiserLink_LinkStatus
+    MeasurementPartnerAdvertiserLink_LinkStatus
+      ( MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKED,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+        MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+        ..
+      ),
+
+    -- * MeasurementPartnerAdvertiserLink_MeasurementPartner
+    MeasurementPartnerAdvertiserLink_MeasurementPartner
+      ( MeasurementPartnerAdvertiserLink_MeasurementPartner_None,
+        MeasurementPartnerAdvertiserLink_MeasurementPartner_INTEGRALADSCIENCE,
+        MeasurementPartnerAdvertiserLink_MeasurementPartner_DOUBLEVERIFY,
+        ..
+      ),
+
+    -- * MeasurementPartnerCampaignLink_LinkStatus
+    MeasurementPartnerCampaignLink_LinkStatus
+      ( MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKED,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+        MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+        ..
+      ),
+
+    -- * MeasurementPartnerCampaignLink_MeasurementPartner
+    MeasurementPartnerCampaignLink_MeasurementPartner
+      ( MeasurementPartnerCampaignLink_MeasurementPartner_None,
+        MeasurementPartnerCampaignLink_MeasurementPartner_INTEGRALADSCIENCE,
+        MeasurementPartnerCampaignLink_MeasurementPartner_DOUBLEVERIFY,
+        ..
+      ),
+
+    -- * MeasurementPartnerWrappingData_LinkStatus
+    MeasurementPartnerWrappingData_LinkStatus
+      ( MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKED,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+        MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+        ..
+      ),
+
+    -- * MeasurementPartnerWrappingData_MeasurementPartner
+    MeasurementPartnerWrappingData_MeasurementPartner
+      ( MeasurementPartnerWrappingData_MeasurementPartner_None,
+        MeasurementPartnerWrappingData_MeasurementPartner_INTEGRALADSCIENCE,
+        MeasurementPartnerWrappingData_MeasurementPartner_DOUBLEVERIFY,
+        ..
+      ),
+
+    -- * MeasurementPartnerWrappingData_TagWrappingMode
+    MeasurementPartnerWrappingData_TagWrappingMode
+      ( MeasurementPartnerWrappingData_TagWrappingMode_None,
+        MeasurementPartnerWrappingData_TagWrappingMode_Blocking,
+        MeasurementPartnerWrappingData_TagWrappingMode_Monitoring,
+        MeasurementPartnerWrappingData_TagWrappingMode_MONITORINGREADONLY,
+        MeasurementPartnerWrappingData_TagWrappingMode_VIDEOPIXELMONITORING,
+        MeasurementPartnerWrappingData_TagWrappingMode_Tracking,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDMONITORING,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDBLOCKING,
+        MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDMONITORING,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYMONITORING,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYBLOCKING,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYFILTERING,
+        MeasurementPartnerWrappingData_TagWrappingMode_VPAIDFILTERING,
+        MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDFILTERING,
+        ..
+      ),
+
+    -- * MobileApp_Directory
+    MobileApp_Directory
+      ( MobileApp_Directory_Unknown,
+        MobileApp_Directory_APPLEAPPSTORE,
+        MobileApp_Directory_GOOGLEPLAYSTORE,
+        MobileApp_Directory_ROKUAPPSTORE,
+        MobileApp_Directory_AMAZONFIRETVAPPSTORE,
+        MobileApp_Directory_PLAYSTATIONAPPSTORE,
+        MobileApp_Directory_APPLETVAPPSTORE,
+        MobileApp_Directory_XBOXAPPSTORE,
+        MobileApp_Directory_SAMSUNGTVAPPSTORE,
+        MobileApp_Directory_ANDROIDTVAPPSTORE,
+        MobileApp_Directory_GENERICCTVAPPSTORE,
+        ..
+      ),
+
+    -- * ObjectFilter_Status
+    ObjectFilter_Status
+      ( ObjectFilter_Status_None,
+        ObjectFilter_Status_Assigned,
+        ObjectFilter_Status_All,
+        ..
+      ),
+
+    -- * OrderContact_ContactType
+    OrderContact_ContactType
+      ( OrderContact_ContactType_PLANNINGORDERCONTACTBUYERCONTACT,
+        OrderContact_ContactType_PLANNINGORDERCONTACTBUYERBILLINGCONTACT,
+        OrderContact_ContactType_PLANNINGORDERCONTACTSELLERCONTACT,
+        ..
+      ),
+
+    -- * Placement_ActiveStatus
+    Placement_ActiveStatus
+      ( Placement_ActiveStatus_PLACEMENTSTATUSUNKNOWN,
+        Placement_ActiveStatus_PLACEMENTSTATUSACTIVE,
+        Placement_ActiveStatus_PLACEMENTSTATUSINACTIVE,
+        Placement_ActiveStatus_PLACEMENTSTATUSARCHIVED,
+        Placement_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+        ..
+      ),
+
+    -- * Placement_Compatibility
+    Placement_Compatibility
+      ( Placement_Compatibility_Display,
+        Placement_Compatibility_DISPLAYINTERSTITIAL,
+        Placement_Compatibility_App,
+        Placement_Compatibility_APPINTERSTITIAL,
+        Placement_Compatibility_INSTREAMVIDEO,
+        Placement_Compatibility_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * Placement_PaymentSource
+    Placement_PaymentSource
+      ( Placement_PaymentSource_PLACEMENTAGENCYPAID,
+        Placement_PaymentSource_PLACEMENTPUBLISHERPAID,
+        ..
+      ),
+
+    -- * Placement_Status
+    Placement_Status
+      ( Placement_Status_PENDINGREVIEW,
+        Placement_Status_PAYMENTACCEPTED,
+        Placement_Status_PAYMENTREJECTED,
+        Placement_Status_ACKNOWLEDGEREJECTION,
+        Placement_Status_ACKNOWLEDGEACCEPTANCE,
+        Placement_Status_Draft,
+        ..
+      ),
+
+    -- * Placement_TagFormatsItem
+    Placement_TagFormatsItem
+      ( Placement_TagFormatsItem_PLACEMENTTAGSTANDARD,
+        Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPT,
+        Placement_TagFormatsItem_PLACEMENTTAGIFRAMEILAYER,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERNALREDIRECT,
+        Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPT,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+        Placement_TagFormatsItem_PLACEMENTTAGCLICKCOMMANDS,
+        Placement_TagFormatsItem_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+        Placement_TagFormatsItem_PLACEMENTTAGTRACKING,
+        Placement_TagFormatsItem_PLACEMENTTAGTRACKINGIFRAME,
+        Placement_TagFormatsItem_PLACEMENTTAGTRACKINGJAVASCRIPT,
+        Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+        Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+        Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPTLEGACY,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+        Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+        Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+        Placement_TagFormatsItem_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+        ..
+      ),
+
+    -- * Placement_VpaidAdapterChoice
+    Placement_VpaidAdapterChoice
+      ( Placement_VpaidAdapterChoice_Default,
+        Placement_VpaidAdapterChoice_Flash,
+        Placement_VpaidAdapterChoice_HTML5,
+        Placement_VpaidAdapterChoice_Both,
+        ..
+      ),
+
+    -- * PlacementGroup_ActiveStatus
+    PlacementGroup_ActiveStatus
+      ( PlacementGroup_ActiveStatus_PLACEMENTSTATUSUNKNOWN,
+        PlacementGroup_ActiveStatus_PLACEMENTSTATUSACTIVE,
+        PlacementGroup_ActiveStatus_PLACEMENTSTATUSINACTIVE,
+        PlacementGroup_ActiveStatus_PLACEMENTSTATUSARCHIVED,
+        PlacementGroup_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+        ..
+      ),
+
+    -- * PlacementGroup_PlacementGroupType
+    PlacementGroup_PlacementGroupType
+      ( PlacementGroup_PlacementGroupType_PLACEMENTPACKAGE,
+        PlacementGroup_PlacementGroupType_PLACEMENTROADBLOCK,
+        ..
+      ),
+
+    -- * PopupWindowProperties_PositionType
+    PopupWindowProperties_PositionType
+      ( PopupWindowProperties_PositionType_Center,
+        PopupWindowProperties_PositionType_Coordinates,
+        ..
+      ),
+
+    -- * Pricing_CapCostType
+    Pricing_CapCostType
+      ( Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPENONE,
+        Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPEMONTHLY,
+        Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPECUMULATIVE,
+        ..
+      ),
+
+    -- * Pricing_GroupType
+    Pricing_GroupType
+      ( Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEPACKAGE,
+        Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEROADBLOCK,
+        ..
+      ),
+
+    -- * Pricing_PricingType
+    Pricing_PricingType
+      ( Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEIMPRESSIONS,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPM,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECLICKS,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPC,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPA,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATEIMPRESSIONS,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATECLICKS,
+        Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPMACTIVEVIEW,
+        ..
+      ),
+
+    -- * PricingSchedule_CapCostOption
+    PricingSchedule_CapCostOption
+      ( PricingSchedule_CapCostOption_CAPCOSTNONE,
+        PricingSchedule_CapCostOption_CAPCOSTMONTHLY,
+        PricingSchedule_CapCostOption_CAPCOSTCUMULATIVE,
+        ..
+      ),
+
+    -- * PricingSchedule_PricingType
+    PricingSchedule_PricingType
+      ( PricingSchedule_PricingType_PRICINGTYPECPM,
+        PricingSchedule_PricingType_PRICINGTYPECPC,
+        PricingSchedule_PricingType_PRICINGTYPECPA,
+        PricingSchedule_PricingType_PRICINGTYPEFLATRATEIMPRESSIONS,
+        PricingSchedule_PricingType_PRICINGTYPEFLATRATECLICKS,
+        PricingSchedule_PricingType_PRICINGTYPECPMACTIVEVIEW,
+        ..
+      ),
+
+    -- * Project_AudienceAgeGroup
+    Project_AudienceAgeGroup
+      ( Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_18_24,
+        Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_25_34,
+        Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_35_44,
+        Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_45_54,
+        Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_55_64,
+        Project_AudienceAgeGroup_PLANNINGAUDIENCEAGE65ORMORE,
+        Project_AudienceAgeGroup_PLANNINGAUDIENCEAGEUNKNOWN,
+        ..
+      ),
+
+    -- * Project_AudienceGender
+    Project_AudienceGender
+      ( Project_AudienceGender_PLANNINGAUDIENCEGENDERMALE,
+        Project_AudienceGender_PLANNINGAUDIENCEGENDERFEMALE,
+        ..
+      ),
+
+    -- * Recipient_DeliveryType
+    Recipient_DeliveryType
+      ( Recipient_DeliveryType_Link,
+        Recipient_DeliveryType_Attachment,
+        ..
+      ),
+
+    -- * RemarketingList_ListSource
+    RemarketingList_ListSource
+      ( RemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEADX,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEDFP,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEXFP,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEDFA,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEGA,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEDBM,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEDMP,
+        RemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE,
+        ..
+      ),
+
+    -- * Report_CrossDimensionReachCriteria_Dimension
+    Report_CrossDimensionReachCriteria_Dimension
+      ( Report_CrossDimensionReachCriteria_Dimension_Advertiser,
+        Report_CrossDimensionReachCriteria_Dimension_Campaign,
+        Report_CrossDimensionReachCriteria_Dimension_SITEBYADVERTISER,
+        Report_CrossDimensionReachCriteria_Dimension_SITEBYCAMPAIGN,
+        ..
+      ),
+
+    -- * Report_Delivery_EmailOwnerDeliveryType
+    Report_Delivery_EmailOwnerDeliveryType
+      ( Report_Delivery_EmailOwnerDeliveryType_Link,
+        Report_Delivery_EmailOwnerDeliveryType_Attachment,
+        ..
+      ),
+
+    -- * Report_Format
+    Report_Format
+      ( Report_Format_Csv,
+        Report_Format_Excel,
+        ..
+      ),
+
+    -- * Report_Schedule_RepeatsOnWeekDaysItem
+    Report_Schedule_RepeatsOnWeekDaysItem
+      ( Report_Schedule_RepeatsOnWeekDaysItem_Sunday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Monday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Tuesday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Wednesday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Thursday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Friday,
+        Report_Schedule_RepeatsOnWeekDaysItem_Saturday,
+        ..
+      ),
+
+    -- * Report_Schedule_RunsOnDayOfMonth
+    Report_Schedule_RunsOnDayOfMonth
+      ( Report_Schedule_RunsOnDayOfMonth_DAYOFMONTH,
+        Report_Schedule_RunsOnDayOfMonth_WEEKOFMONTH,
+        ..
+      ),
+
+    -- * Report_Type
+    Report_Type
+      ( Report_Type_Standard,
+        Report_Type_Reach,
+        Report_Type_PATHTOCONVERSION,
+        Report_Type_CROSSDIMENSIONREACH,
+        Report_Type_Floodlight,
+        Report_Type_CROSSMEDIAREACH,
+        ..
+      ),
+
+    -- * SiteContact_ContactType
+    SiteContact_ContactType
+      ( SiteContact_ContactType_SALESPERSON,
+        SiteContact_ContactType_Trafficker,
+        ..
+      ),
+
+    -- * SiteSettings_VpaidAdapterChoiceTemplate
+    SiteSettings_VpaidAdapterChoiceTemplate
+      ( SiteSettings_VpaidAdapterChoiceTemplate_Default,
+        SiteSettings_VpaidAdapterChoiceTemplate_Flash,
+        SiteSettings_VpaidAdapterChoiceTemplate_HTML5,
+        SiteSettings_VpaidAdapterChoiceTemplate_Both,
+        ..
+      ),
+
+    -- * SiteVideoSettings_Orientation
+    SiteVideoSettings_Orientation
+      ( SiteVideoSettings_Orientation_Any,
+        SiteVideoSettings_Orientation_Landscape,
+        SiteVideoSettings_Orientation_Portrait,
+        ..
+      ),
+
+    -- * SortedDimension_SortOrder
+    SortedDimension_SortOrder
+      ( SortedDimension_SortOrder_Ascending,
+        SortedDimension_SortOrder_Descending,
+        ..
+      ),
+
+    -- * TagData_Format
+    TagData_Format
+      ( TagData_Format_PLACEMENTTAGSTANDARD,
+        TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPT,
+        TagData_Format_PLACEMENTTAGIFRAMEILAYER,
+        TagData_Format_PLACEMENTTAGINTERNALREDIRECT,
+        TagData_Format_PLACEMENTTAGJAVASCRIPT,
+        TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+        TagData_Format_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+        TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+        TagData_Format_PLACEMENTTAGCLICKCOMMANDS,
+        TagData_Format_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+        TagData_Format_PLACEMENTTAGTRACKING,
+        TagData_Format_PLACEMENTTAGTRACKINGIFRAME,
+        TagData_Format_PLACEMENTTAGTRACKINGJAVASCRIPT,
+        TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+        TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+        TagData_Format_PLACEMENTTAGJAVASCRIPTLEGACY,
+        TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+        TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+        TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+        TagData_Format_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+        ..
+      ),
+
+    -- * TagSetting_KeywordOption
+    TagSetting_KeywordOption
+      ( TagSetting_KeywordOption_PLACEHOLDERWITHLISTOFKEYWORDS,
+        TagSetting_KeywordOption_Ignore,
+        TagSetting_KeywordOption_GENERATESEPARATETAGFOREACHKEYWORD,
+        ..
+      ),
+
+    -- * TargetWindow_TargetWindowOption
+    TargetWindow_TargetWindowOption
+      ( TargetWindow_TargetWindowOption_NEWWINDOW,
+        TargetWindow_TargetWindowOption_CURRENTWINDOW,
+        TargetWindow_TargetWindowOption_Custom,
+        ..
+      ),
+
+    -- * TargetableRemarketingList_ListSource
+    TargetableRemarketingList_ListSource
+      ( TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEADX,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFP,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEXFP,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFA,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGA,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDBM,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDMP,
+        TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE,
+        ..
+      ),
+
+    -- * ThirdPartyTrackingUrl_ThirdPartyUrlType
+    ThirdPartyTrackingUrl_ThirdPartyUrlType
+      ( ThirdPartyTrackingUrl_ThirdPartyUrlType_Impression,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_CLICKTRACKING,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTART,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFIRSTQUARTILE,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMIDPOINT,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOTHIRDQUARTILE,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCOMPLETE,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMUTE,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPAUSE,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOREWIND,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFULLSCREEN,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTOP,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCUSTOM,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_Survey,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIAIMPRESSION,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIARMIMPRESSION,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIABACKUPIMPRESSION,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSKIP,
+        ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPROGRESS,
+        ..
+      ),
+
+    -- * TvCampaignSummary_Type
+    TvCampaignSummary_Type
+      ( TvCampaignSummary_Type_CAMPAIGNCOMPONENTTYPEUNSPECIFIED,
+        TvCampaignSummary_Type_Company,
+        TvCampaignSummary_Type_Brand,
+        TvCampaignSummary_Type_Product,
+        TvCampaignSummary_Type_Campaign,
+        ..
+      ),
+
+    -- * TvCampaignTimepoint_DateWindow
+    TvCampaignTimepoint_DateWindow
+      ( TvCampaignTimepoint_DateWindow_WEEKSUNSPECIFIED,
+        TvCampaignTimepoint_DateWindow_WEEKSONE,
+        TvCampaignTimepoint_DateWindow_WEEKSFOUR,
+        TvCampaignTimepoint_DateWindow_WEEKSEIGHT,
+        TvCampaignTimepoint_DateWindow_WEEKSTWELVE,
+        ..
+      ),
+
+    -- * UniversalAdId_Registry
+    UniversalAdId_Registry
+      ( UniversalAdId_Registry_Other,
+        UniversalAdId_Registry_ADIDOFFICIAL,
+        UniversalAdId_Registry_Clearcast,
+        UniversalAdId_Registry_Dcm,
+        UniversalAdId_Registry_Arpp,
+        ..
+      ),
+
+    -- * UserDefinedVariableConfiguration_DataType
+    UserDefinedVariableConfiguration_DataType
+      ( UserDefinedVariableConfiguration_DataType_String,
+        UserDefinedVariableConfiguration_DataType_Number,
+        ..
+      ),
+
+    -- * UserDefinedVariableConfiguration_VariableType
+    UserDefinedVariableConfiguration_VariableType
+      ( UserDefinedVariableConfiguration_VariableType_U1,
+        UserDefinedVariableConfiguration_VariableType_U2,
+        UserDefinedVariableConfiguration_VariableType_U3,
+        UserDefinedVariableConfiguration_VariableType_U4,
+        UserDefinedVariableConfiguration_VariableType_U5,
+        UserDefinedVariableConfiguration_VariableType_U6,
+        UserDefinedVariableConfiguration_VariableType_U7,
+        UserDefinedVariableConfiguration_VariableType_U8,
+        UserDefinedVariableConfiguration_VariableType_U9,
+        UserDefinedVariableConfiguration_VariableType_U10,
+        UserDefinedVariableConfiguration_VariableType_U11,
+        UserDefinedVariableConfiguration_VariableType_U12,
+        UserDefinedVariableConfiguration_VariableType_U13,
+        UserDefinedVariableConfiguration_VariableType_U14,
+        UserDefinedVariableConfiguration_VariableType_U15,
+        UserDefinedVariableConfiguration_VariableType_U16,
+        UserDefinedVariableConfiguration_VariableType_U17,
+        UserDefinedVariableConfiguration_VariableType_U18,
+        UserDefinedVariableConfiguration_VariableType_U19,
+        UserDefinedVariableConfiguration_VariableType_U20,
+        UserDefinedVariableConfiguration_VariableType_U21,
+        UserDefinedVariableConfiguration_VariableType_U22,
+        UserDefinedVariableConfiguration_VariableType_U23,
+        UserDefinedVariableConfiguration_VariableType_U24,
+        UserDefinedVariableConfiguration_VariableType_U25,
+        UserDefinedVariableConfiguration_VariableType_U26,
+        UserDefinedVariableConfiguration_VariableType_U27,
+        UserDefinedVariableConfiguration_VariableType_U28,
+        UserDefinedVariableConfiguration_VariableType_U29,
+        UserDefinedVariableConfiguration_VariableType_U30,
+        UserDefinedVariableConfiguration_VariableType_U31,
+        UserDefinedVariableConfiguration_VariableType_U32,
+        UserDefinedVariableConfiguration_VariableType_U33,
+        UserDefinedVariableConfiguration_VariableType_U34,
+        UserDefinedVariableConfiguration_VariableType_U35,
+        UserDefinedVariableConfiguration_VariableType_U36,
+        UserDefinedVariableConfiguration_VariableType_U37,
+        UserDefinedVariableConfiguration_VariableType_U38,
+        UserDefinedVariableConfiguration_VariableType_U39,
+        UserDefinedVariableConfiguration_VariableType_U40,
+        UserDefinedVariableConfiguration_VariableType_U41,
+        UserDefinedVariableConfiguration_VariableType_U42,
+        UserDefinedVariableConfiguration_VariableType_U43,
+        UserDefinedVariableConfiguration_VariableType_U44,
+        UserDefinedVariableConfiguration_VariableType_U45,
+        UserDefinedVariableConfiguration_VariableType_U46,
+        UserDefinedVariableConfiguration_VariableType_U47,
+        UserDefinedVariableConfiguration_VariableType_U48,
+        UserDefinedVariableConfiguration_VariableType_U49,
+        UserDefinedVariableConfiguration_VariableType_U50,
+        UserDefinedVariableConfiguration_VariableType_U51,
+        UserDefinedVariableConfiguration_VariableType_U52,
+        UserDefinedVariableConfiguration_VariableType_U53,
+        UserDefinedVariableConfiguration_VariableType_U54,
+        UserDefinedVariableConfiguration_VariableType_U55,
+        UserDefinedVariableConfiguration_VariableType_U56,
+        UserDefinedVariableConfiguration_VariableType_U57,
+        UserDefinedVariableConfiguration_VariableType_U58,
+        UserDefinedVariableConfiguration_VariableType_U59,
+        UserDefinedVariableConfiguration_VariableType_U60,
+        UserDefinedVariableConfiguration_VariableType_U61,
+        UserDefinedVariableConfiguration_VariableType_U62,
+        UserDefinedVariableConfiguration_VariableType_U63,
+        UserDefinedVariableConfiguration_VariableType_U64,
+        UserDefinedVariableConfiguration_VariableType_U65,
+        UserDefinedVariableConfiguration_VariableType_U66,
+        UserDefinedVariableConfiguration_VariableType_U67,
+        UserDefinedVariableConfiguration_VariableType_U68,
+        UserDefinedVariableConfiguration_VariableType_U69,
+        UserDefinedVariableConfiguration_VariableType_U70,
+        UserDefinedVariableConfiguration_VariableType_U71,
+        UserDefinedVariableConfiguration_VariableType_U72,
+        UserDefinedVariableConfiguration_VariableType_U73,
+        UserDefinedVariableConfiguration_VariableType_U74,
+        UserDefinedVariableConfiguration_VariableType_U75,
+        UserDefinedVariableConfiguration_VariableType_U76,
+        UserDefinedVariableConfiguration_VariableType_U77,
+        UserDefinedVariableConfiguration_VariableType_U78,
+        UserDefinedVariableConfiguration_VariableType_U79,
+        UserDefinedVariableConfiguration_VariableType_U80,
+        UserDefinedVariableConfiguration_VariableType_U81,
+        UserDefinedVariableConfiguration_VariableType_U82,
+        UserDefinedVariableConfiguration_VariableType_U83,
+        UserDefinedVariableConfiguration_VariableType_U84,
+        UserDefinedVariableConfiguration_VariableType_U85,
+        UserDefinedVariableConfiguration_VariableType_U86,
+        UserDefinedVariableConfiguration_VariableType_U87,
+        UserDefinedVariableConfiguration_VariableType_U88,
+        UserDefinedVariableConfiguration_VariableType_U89,
+        UserDefinedVariableConfiguration_VariableType_U90,
+        UserDefinedVariableConfiguration_VariableType_U91,
+        UserDefinedVariableConfiguration_VariableType_U92,
+        UserDefinedVariableConfiguration_VariableType_U93,
+        UserDefinedVariableConfiguration_VariableType_U94,
+        UserDefinedVariableConfiguration_VariableType_U95,
+        UserDefinedVariableConfiguration_VariableType_U96,
+        UserDefinedVariableConfiguration_VariableType_U97,
+        UserDefinedVariableConfiguration_VariableType_U98,
+        UserDefinedVariableConfiguration_VariableType_U99,
+        UserDefinedVariableConfiguration_VariableType_U100,
+        ..
+      ),
+
+    -- * UserRolePermission_Availability
+    UserRolePermission_Availability
+      ( UserRolePermission_Availability_NOTAVAILABLEBYDEFAULT,
+        UserRolePermission_Availability_ACCOUNTBYDEFAULT,
+        UserRolePermission_Availability_SUBACCOUNTANDACCOUNTBYDEFAULT,
+        UserRolePermission_Availability_ACCOUNTALWAYS,
+        UserRolePermission_Availability_SUBACCOUNTANDACCOUNTALWAYS,
+        UserRolePermission_Availability_USERPROFILEONLY,
+        ..
+      ),
+
+    -- * VideoFormat_FileType
+    VideoFormat_FileType
+      ( VideoFormat_FileType_Flv,
+        VideoFormat_FileType_Threegpp,
+        VideoFormat_FileType_MP4,
+        VideoFormat_FileType_Webm,
+        VideoFormat_FileType_M3U8,
+        ..
+      ),
+
+    -- * VideoSettings_Orientation
+    VideoSettings_Orientation
+      ( VideoSettings_Orientation_Any,
+        VideoSettings_Orientation_Landscape,
+        VideoSettings_Orientation_Portrait,
+        ..
+      ),
+
+    -- * AccountUserProfilesListSortField
+    AccountUserProfilesListSortField
+      ( AccountUserProfilesListSortField_ID,
+        AccountUserProfilesListSortField_Name,
+        ..
+      ),
+
+    -- * AccountUserProfilesListSortOrder
+    AccountUserProfilesListSortOrder
+      ( AccountUserProfilesListSortOrder_Ascending,
+        AccountUserProfilesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AccountsListSortField
+    AccountsListSortField
+      ( AccountsListSortField_ID,
+        AccountsListSortField_Name,
+        ..
+      ),
+
+    -- * AccountsListSortOrder
+    AccountsListSortOrder
+      ( AccountsListSortOrder_Ascending,
+        AccountsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AdsListCompatibility
+    AdsListCompatibility
+      ( AdsListCompatibility_Display,
+        AdsListCompatibility_DISPLAYINTERSTITIAL,
+        AdsListCompatibility_App,
+        AdsListCompatibility_APPINTERSTITIAL,
+        AdsListCompatibility_INSTREAMVIDEO,
+        AdsListCompatibility_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * AdsListSortField
+    AdsListSortField
+      ( AdsListSortField_ID,
+        AdsListSortField_Name,
+        ..
+      ),
+
+    -- * AdsListSortOrder
+    AdsListSortOrder
+      ( AdsListSortOrder_Ascending,
+        AdsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AdsListType
+    AdsListType
+      ( AdsListType_ADSERVINGSTANDARDAD,
+        AdsListType_ADSERVINGDEFAULTAD,
+        AdsListType_ADSERVINGCLICKTRACKER,
+        AdsListType_ADSERVINGTRACKING,
+        AdsListType_ADSERVINGBRANDSAFEAD,
+        ..
+      ),
+
+    -- * AdvertiserGroupsListSortField
+    AdvertiserGroupsListSortField
+      ( AdvertiserGroupsListSortField_ID,
+        AdvertiserGroupsListSortField_Name,
+        ..
+      ),
+
+    -- * AdvertiserGroupsListSortOrder
+    AdvertiserGroupsListSortOrder
+      ( AdvertiserGroupsListSortOrder_Ascending,
+        AdvertiserGroupsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AdvertiserLandingPagesListSortField
+    AdvertiserLandingPagesListSortField
+      ( AdvertiserLandingPagesListSortField_ID,
+        AdvertiserLandingPagesListSortField_Name,
+        ..
+      ),
+
+    -- * AdvertiserLandingPagesListSortOrder
+    AdvertiserLandingPagesListSortOrder
+      ( AdvertiserLandingPagesListSortOrder_Ascending,
+        AdvertiserLandingPagesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AdvertisersListSortField
+    AdvertisersListSortField
+      ( AdvertisersListSortField_ID,
+        AdvertisersListSortField_Name,
+        ..
+      ),
+
+    -- * AdvertisersListSortOrder
+    AdvertisersListSortOrder
+      ( AdvertisersListSortOrder_Ascending,
+        AdvertisersListSortOrder_Descending,
+        ..
+      ),
+
+    -- * AdvertisersListStatus
+    AdvertisersListStatus
+      ( AdvertisersListStatus_Approved,
+        AdvertisersListStatus_ONHOLD,
+        ..
+      ),
+
+    -- * BillingProfilesListSortField
+    BillingProfilesListSortField
+      ( BillingProfilesListSortField_ID,
+        BillingProfilesListSortField_Name,
+        ..
+      ),
+
+    -- * BillingProfilesListSortOrder
+    BillingProfilesListSortOrder
+      ( BillingProfilesListSortOrder_Ascending,
+        BillingProfilesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * BillingProfilesListStatus
+    BillingProfilesListStatus
+      ( BillingProfilesListStatus_UNDERREVIEW,
+        BillingProfilesListStatus_Active,
+        BillingProfilesListStatus_Archived,
+        ..
+      ),
+
+    -- * CampaignCreativeAssociationsListSortOrder
+    CampaignCreativeAssociationsListSortOrder
+      ( CampaignCreativeAssociationsListSortOrder_Ascending,
+        CampaignCreativeAssociationsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CampaignsListSortField
+    CampaignsListSortField
+      ( CampaignsListSortField_ID,
+        CampaignsListSortField_Name,
+        ..
+      ),
+
+    -- * CampaignsListSortOrder
+    CampaignsListSortOrder
+      ( CampaignsListSortOrder_Ascending,
+        CampaignsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * ChangeLogsListAction
+    ChangeLogsListAction
+      ( ChangeLogsListAction_ACTIONCREATE,
+        ChangeLogsListAction_ACTIONUPDATE,
+        ChangeLogsListAction_ACTIONDELETE,
+        ChangeLogsListAction_ACTIONENABLE,
+        ChangeLogsListAction_ACTIONDISABLE,
+        ChangeLogsListAction_ACTIONADD,
+        ChangeLogsListAction_ACTIONREMOVE,
+        ChangeLogsListAction_ACTIONMARKASDEFAULT,
+        ChangeLogsListAction_ACTIONASSOCIATE,
+        ChangeLogsListAction_ACTIONASSIGN,
+        ChangeLogsListAction_ACTIONUNASSIGN,
+        ChangeLogsListAction_ACTIONSEND,
+        ChangeLogsListAction_ACTIONLINK,
+        ChangeLogsListAction_ACTIONUNLINK,
+        ChangeLogsListAction_ACTIONPUSH,
+        ChangeLogsListAction_ACTIONEMAILTAGS,
+        ChangeLogsListAction_ACTIONSHARE,
+        ..
+      ),
+
+    -- * ChangeLogsListObjectType
+    ChangeLogsListObjectType
+      ( ChangeLogsListObjectType_OBJECTADVERTISER,
+        ChangeLogsListObjectType_OBJECTFLOODLIGHTCONFIGURATION,
+        ChangeLogsListObjectType_OBJECTAD,
+        ChangeLogsListObjectType_OBJECTFLOODLIGHTACTVITY,
+        ChangeLogsListObjectType_OBJECTCAMPAIGN,
+        ChangeLogsListObjectType_OBJECTFLOODLIGHTACTIVITYGROUP,
+        ChangeLogsListObjectType_OBJECTCREATIVE,
+        ChangeLogsListObjectType_OBJECTPLACEMENT,
+        ChangeLogsListObjectType_OBJECTDFASITE,
+        ChangeLogsListObjectType_OBJECTUSERROLE,
+        ChangeLogsListObjectType_OBJECTUSERPROFILE,
+        ChangeLogsListObjectType_OBJECTADVERTISERGROUP,
+        ChangeLogsListObjectType_OBJECTACCOUNT,
+        ChangeLogsListObjectType_OBJECTSUBACCOUNT,
+        ChangeLogsListObjectType_OBJECTRICHMEDIACREATIVE,
+        ChangeLogsListObjectType_OBJECTINSTREAMCREATIVE,
+        ChangeLogsListObjectType_OBJECTMEDIAORDER,
+        ChangeLogsListObjectType_OBJECTCONTENTCATEGORY,
+        ChangeLogsListObjectType_OBJECTPLACEMENTSTRATEGY,
+        ChangeLogsListObjectType_OBJECTSDSITE,
+        ChangeLogsListObjectType_OBJECTSIZE,
+        ChangeLogsListObjectType_OBJECTCREATIVEGROUP,
+        ChangeLogsListObjectType_OBJECTCREATIVEASSET,
+        ChangeLogsListObjectType_OBJECTUSERPROFILEFILTER,
+        ChangeLogsListObjectType_OBJECTLANDINGPAGE,
+        ChangeLogsListObjectType_OBJECTCREATIVEFIELD,
+        ChangeLogsListObjectType_OBJECTREMARKETINGLIST,
+        ChangeLogsListObjectType_OBJECTPROVIDEDLISTCLIENT,
+        ChangeLogsListObjectType_OBJECTEVENTTAG,
+        ChangeLogsListObjectType_OBJECTCREATIVEBUNDLE,
+        ChangeLogsListObjectType_OBJECTBILLINGACCOUNTGROUP,
+        ChangeLogsListObjectType_OBJECTBILLINGFEATURE,
+        ChangeLogsListObjectType_OBJECTRATECARD,
+        ChangeLogsListObjectType_OBJECTACCOUNTBILLINGFEATURE,
+        ChangeLogsListObjectType_OBJECTBILLINGMINIMUMFEE,
+        ChangeLogsListObjectType_OBJECTBILLINGPROFILE,
+        ChangeLogsListObjectType_OBJECTPLAYSTORELINK,
+        ChangeLogsListObjectType_OBJECTTARGETINGTEMPLATE,
+        ChangeLogsListObjectType_OBJECTSEARCHLIFTSTUDY,
+        ChangeLogsListObjectType_OBJECTFLOODLIGHTDV360LINK,
+        ChangeLogsListObjectType_OBJECTADVERTISERCUSTOMERLINK,
+        ChangeLogsListObjectType_OBJECTCONVERSIONDOMAIN,
+        ChangeLogsListObjectType_OBJECTACCOUNTCONVERSIONDOMAIN,
+        ..
+      ),
+
+    -- * ContentCategoriesListSortField
+    ContentCategoriesListSortField
+      ( ContentCategoriesListSortField_ID,
+        ContentCategoriesListSortField_Name,
+        ..
+      ),
+
+    -- * ContentCategoriesListSortOrder
+    ContentCategoriesListSortOrder
+      ( ContentCategoriesListSortOrder_Ascending,
+        ContentCategoriesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CreativeFieldValuesListSortField
+    CreativeFieldValuesListSortField
+      ( CreativeFieldValuesListSortField_ID,
+        CreativeFieldValuesListSortField_Value,
+        ..
+      ),
+
+    -- * CreativeFieldValuesListSortOrder
+    CreativeFieldValuesListSortOrder
+      ( CreativeFieldValuesListSortOrder_Ascending,
+        CreativeFieldValuesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CreativeFieldsListSortField
+    CreativeFieldsListSortField
+      ( CreativeFieldsListSortField_ID,
+        CreativeFieldsListSortField_Name,
+        ..
+      ),
+
+    -- * CreativeFieldsListSortOrder
+    CreativeFieldsListSortOrder
+      ( CreativeFieldsListSortOrder_Ascending,
+        CreativeFieldsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CreativeGroupsListSortField
+    CreativeGroupsListSortField
+      ( CreativeGroupsListSortField_ID,
+        CreativeGroupsListSortField_Name,
+        ..
+      ),
+
+    -- * CreativeGroupsListSortOrder
+    CreativeGroupsListSortOrder
+      ( CreativeGroupsListSortOrder_Ascending,
+        CreativeGroupsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CreativesListSortField
+    CreativesListSortField
+      ( CreativesListSortField_ID,
+        CreativesListSortField_Name,
+        ..
+      ),
+
+    -- * CreativesListSortOrder
+    CreativesListSortOrder
+      ( CreativesListSortOrder_Ascending,
+        CreativesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * CreativesListTypes
+    CreativesListTypes
+      ( CreativesListTypes_Image,
+        CreativesListTypes_DISPLAYREDIRECT,
+        CreativesListTypes_CUSTOMDISPLAY,
+        CreativesListTypes_INTERNALREDIRECT,
+        CreativesListTypes_CUSTOMDISPLAYINTERSTITIAL,
+        CreativesListTypes_INTERSTITIALINTERNALREDIRECT,
+        CreativesListTypes_TRACKINGTEXT,
+        CreativesListTypes_RICHMEDIADISPLAYBANNER,
+        CreativesListTypes_RICHMEDIAINPAGEFLOATING,
+        CreativesListTypes_RICHMEDIAIMEXPAND,
+        CreativesListTypes_RICHMEDIADISPLAYEXPANDING,
+        CreativesListTypes_RICHMEDIADISPLAYINTERSTITIAL,
+        CreativesListTypes_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL,
+        CreativesListTypes_RICHMEDIAMOBILEINAPP,
+        CreativesListTypes_FLASHINPAGE,
+        CreativesListTypes_INSTREAMVIDEO,
+        CreativesListTypes_VPAIDLINEARVIDEO,
+        CreativesListTypes_VPAIDNONLINEARVIDEO,
+        CreativesListTypes_INSTREAMVIDEOREDIRECT,
+        CreativesListTypes_RICHMEDIAPEELDOWN,
+        CreativesListTypes_HTML5BANNER,
+        CreativesListTypes_Display,
+        CreativesListTypes_DISPLAYIMAGEGALLERY,
+        CreativesListTypes_BRANDSAFEDEFAULTINSTREAMVIDEO,
+        CreativesListTypes_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * DirectorySitesListSortField
+    DirectorySitesListSortField
+      ( DirectorySitesListSortField_ID,
+        DirectorySitesListSortField_Name,
+        ..
+      ),
+
+    -- * DirectorySitesListSortOrder
+    DirectorySitesListSortOrder
+      ( DirectorySitesListSortOrder_Ascending,
+        DirectorySitesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * DynamicTargetingKeysDeleteObjectType
+    DynamicTargetingKeysDeleteObjectType
+      ( DynamicTargetingKeysDeleteObjectType_OBJECTADVERTISER,
+        DynamicTargetingKeysDeleteObjectType_OBJECTAD,
+        DynamicTargetingKeysDeleteObjectType_OBJECTCREATIVE,
+        DynamicTargetingKeysDeleteObjectType_OBJECTPLACEMENT,
+        ..
+      ),
+
+    -- * DynamicTargetingKeysListObjectType
+    DynamicTargetingKeysListObjectType
+      ( DynamicTargetingKeysListObjectType_OBJECTADVERTISER,
+        DynamicTargetingKeysListObjectType_OBJECTAD,
+        DynamicTargetingKeysListObjectType_OBJECTCREATIVE,
+        DynamicTargetingKeysListObjectType_OBJECTPLACEMENT,
+        ..
+      ),
+
+    -- * EventTagsListEventTagTypes
+    EventTagsListEventTagTypes
+      ( EventTagsListEventTagTypes_IMPRESSIONIMAGEEVENTTAG,
+        EventTagsListEventTagTypes_IMPRESSIONJAVASCRIPTEVENTTAG,
+        EventTagsListEventTagTypes_CLICKTHROUGHEVENTTAG,
+        ..
+      ),
+
+    -- * EventTagsListSortField
+    EventTagsListSortField
+      ( EventTagsListSortField_ID,
+        EventTagsListSortField_Name,
+        ..
+      ),
+
+    -- * EventTagsListSortOrder
+    EventTagsListSortOrder
+      ( EventTagsListSortOrder_Ascending,
+        EventTagsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * FilesListScope
+    FilesListScope
+      ( FilesListScope_All,
+        FilesListScope_Mine,
+        FilesListScope_SHAREDWITHME,
+        ..
+      ),
+
+    -- * FilesListSortField
+    FilesListSortField
+      ( FilesListSortField_ID,
+        FilesListSortField_LASTMODIFIEDTIME,
+        ..
+      ),
+
+    -- * FilesListSortOrder
+    FilesListSortOrder
+      ( FilesListSortOrder_Ascending,
+        FilesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * FloodlightActivitiesListFloodlightActivityGroupType
+    FloodlightActivitiesListFloodlightActivityGroupType
+      ( FloodlightActivitiesListFloodlightActivityGroupType_Counter,
+        FloodlightActivitiesListFloodlightActivityGroupType_Sale,
+        ..
+      ),
+
+    -- * FloodlightActivitiesListSortField
+    FloodlightActivitiesListSortField
+      ( FloodlightActivitiesListSortField_ID,
+        FloodlightActivitiesListSortField_Name,
+        ..
+      ),
+
+    -- * FloodlightActivitiesListSortOrder
+    FloodlightActivitiesListSortOrder
+      ( FloodlightActivitiesListSortOrder_Ascending,
+        FloodlightActivitiesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * FloodlightActivityGroupsListSortField
+    FloodlightActivityGroupsListSortField
+      ( FloodlightActivityGroupsListSortField_ID,
+        FloodlightActivityGroupsListSortField_Name,
+        ..
+      ),
+
+    -- * FloodlightActivityGroupsListSortOrder
+    FloodlightActivityGroupsListSortOrder
+      ( FloodlightActivityGroupsListSortOrder_Ascending,
+        FloodlightActivityGroupsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * FloodlightActivityGroupsListType
+    FloodlightActivityGroupsListType
+      ( FloodlightActivityGroupsListType_Counter,
+        FloodlightActivityGroupsListType_Sale,
+        ..
+      ),
+
+    -- * InventoryItemsListSortField
+    InventoryItemsListSortField
+      ( InventoryItemsListSortField_ID,
+        InventoryItemsListSortField_Name,
+        ..
+      ),
+
+    -- * InventoryItemsListSortOrder
+    InventoryItemsListSortOrder
+      ( InventoryItemsListSortOrder_Ascending,
+        InventoryItemsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * InventoryItemsListType
+    InventoryItemsListType
+      ( InventoryItemsListType_PLANNINGPLACEMENTTYPEREGULAR,
+        InventoryItemsListType_PLANNINGPLACEMENTTYPECREDIT,
+        ..
+      ),
+
+    -- * MobileAppsListDirectories
+    MobileAppsListDirectories
+      ( MobileAppsListDirectories_Unknown,
+        MobileAppsListDirectories_APPLEAPPSTORE,
+        MobileAppsListDirectories_GOOGLEPLAYSTORE,
+        MobileAppsListDirectories_ROKUAPPSTORE,
+        MobileAppsListDirectories_AMAZONFIRETVAPPSTORE,
+        MobileAppsListDirectories_PLAYSTATIONAPPSTORE,
+        MobileAppsListDirectories_APPLETVAPPSTORE,
+        MobileAppsListDirectories_XBOXAPPSTORE,
+        MobileAppsListDirectories_SAMSUNGTVAPPSTORE,
+        MobileAppsListDirectories_ANDROIDTVAPPSTORE,
+        MobileAppsListDirectories_GENERICCTVAPPSTORE,
+        ..
+      ),
+
+    -- * OrdersListSortField
+    OrdersListSortField
+      ( OrdersListSortField_ID,
+        OrdersListSortField_Name,
+        ..
+      ),
+
+    -- * OrdersListSortOrder
+    OrdersListSortOrder
+      ( OrdersListSortOrder_Ascending,
+        OrdersListSortOrder_Descending,
+        ..
+      ),
+
+    -- * PlacementGroupsListActiveStatus
+    PlacementGroupsListActiveStatus
+      ( PlacementGroupsListActiveStatus_PLACEMENTSTATUSUNKNOWN,
+        PlacementGroupsListActiveStatus_PLACEMENTSTATUSACTIVE,
+        PlacementGroupsListActiveStatus_PLACEMENTSTATUSINACTIVE,
+        PlacementGroupsListActiveStatus_PLACEMENTSTATUSARCHIVED,
+        PlacementGroupsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+        ..
+      ),
+
+    -- * PlacementGroupsListPlacementGroupType
+    PlacementGroupsListPlacementGroupType
+      ( PlacementGroupsListPlacementGroupType_PLACEMENTPACKAGE,
+        PlacementGroupsListPlacementGroupType_PLACEMENTROADBLOCK,
+        ..
+      ),
+
+    -- * PlacementGroupsListPricingTypes
+    PlacementGroupsListPricingTypes
+      ( PlacementGroupsListPricingTypes_PRICINGTYPECPM,
+        PlacementGroupsListPricingTypes_PRICINGTYPECPC,
+        PlacementGroupsListPricingTypes_PRICINGTYPECPA,
+        PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS,
+        PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATECLICKS,
+        PlacementGroupsListPricingTypes_PRICINGTYPECPMACTIVEVIEW,
+        ..
+      ),
+
+    -- * PlacementGroupsListSortField
+    PlacementGroupsListSortField
+      ( PlacementGroupsListSortField_ID,
+        PlacementGroupsListSortField_Name,
+        ..
+      ),
+
+    -- * PlacementGroupsListSortOrder
+    PlacementGroupsListSortOrder
+      ( PlacementGroupsListSortOrder_Ascending,
+        PlacementGroupsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * PlacementStrategiesListSortField
+    PlacementStrategiesListSortField
+      ( PlacementStrategiesListSortField_ID,
+        PlacementStrategiesListSortField_Name,
+        ..
+      ),
+
+    -- * PlacementStrategiesListSortOrder
+    PlacementStrategiesListSortOrder
+      ( PlacementStrategiesListSortOrder_Ascending,
+        PlacementStrategiesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * PlacementsGeneratetagsTagFormats
+    PlacementsGeneratetagsTagFormats
+      ( PlacementsGeneratetagsTagFormats_PLACEMENTTAGSTANDARD,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEILAYER,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERNALREDIRECT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGCLICKCOMMANDS,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKING,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGIFRAME,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGJAVASCRIPT,
+        PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPTLEGACY,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+        PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+        PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+        ..
+      ),
+
+    -- * PlacementsListActiveStatus
+    PlacementsListActiveStatus
+      ( PlacementsListActiveStatus_PLACEMENTSTATUSUNKNOWN,
+        PlacementsListActiveStatus_PLACEMENTSTATUSACTIVE,
+        PlacementsListActiveStatus_PLACEMENTSTATUSINACTIVE,
+        PlacementsListActiveStatus_PLACEMENTSTATUSARCHIVED,
+        PlacementsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+        ..
+      ),
+
+    -- * PlacementsListCompatibilities
+    PlacementsListCompatibilities
+      ( PlacementsListCompatibilities_Display,
+        PlacementsListCompatibilities_DISPLAYINTERSTITIAL,
+        PlacementsListCompatibilities_App,
+        PlacementsListCompatibilities_APPINTERSTITIAL,
+        PlacementsListCompatibilities_INSTREAMVIDEO,
+        PlacementsListCompatibilities_INSTREAMAUDIO,
+        ..
+      ),
+
+    -- * PlacementsListPaymentSource
+    PlacementsListPaymentSource
+      ( PlacementsListPaymentSource_PLACEMENTAGENCYPAID,
+        PlacementsListPaymentSource_PLACEMENTPUBLISHERPAID,
+        ..
+      ),
+
+    -- * PlacementsListPricingTypes
+    PlacementsListPricingTypes
+      ( PlacementsListPricingTypes_PRICINGTYPECPM,
+        PlacementsListPricingTypes_PRICINGTYPECPC,
+        PlacementsListPricingTypes_PRICINGTYPECPA,
+        PlacementsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS,
+        PlacementsListPricingTypes_PRICINGTYPEFLATRATECLICKS,
+        PlacementsListPricingTypes_PRICINGTYPECPMACTIVEVIEW,
+        ..
+      ),
+
+    -- * PlacementsListSortField
+    PlacementsListSortField
+      ( PlacementsListSortField_ID,
+        PlacementsListSortField_Name,
+        ..
+      ),
+
+    -- * PlacementsListSortOrder
+    PlacementsListSortOrder
+      ( PlacementsListSortOrder_Ascending,
+        PlacementsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * ProjectsListSortField
+    ProjectsListSortField
+      ( ProjectsListSortField_ID,
+        ProjectsListSortField_Name,
+        ..
+      ),
+
+    -- * ProjectsListSortOrder
+    ProjectsListSortOrder
+      ( ProjectsListSortOrder_Ascending,
+        ProjectsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * RemarketingListsListSortField
+    RemarketingListsListSortField
+      ( RemarketingListsListSortField_ID,
+        RemarketingListsListSortField_Name,
+        ..
+      ),
+
+    -- * RemarketingListsListSortOrder
+    RemarketingListsListSortOrder
+      ( RemarketingListsListSortOrder_Ascending,
+        RemarketingListsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * ReportsFilesListSortField
+    ReportsFilesListSortField
+      ( ReportsFilesListSortField_ID,
+        ReportsFilesListSortField_LASTMODIFIEDTIME,
+        ..
+      ),
+
+    -- * ReportsFilesListSortOrder
+    ReportsFilesListSortOrder
+      ( ReportsFilesListSortOrder_Ascending,
+        ReportsFilesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * ReportsListScope
+    ReportsListScope
+      ( ReportsListScope_All,
+        ReportsListScope_Mine,
+        ..
+      ),
+
+    -- * ReportsListSortField
+    ReportsListSortField
+      ( ReportsListSortField_ID,
+        ReportsListSortField_LASTMODIFIEDTIME,
+        ReportsListSortField_Name,
+        ..
+      ),
+
+    -- * ReportsListSortOrder
+    ReportsListSortOrder
+      ( ReportsListSortOrder_Ascending,
+        ReportsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * SitesListSortField
+    SitesListSortField
+      ( SitesListSortField_ID,
+        SitesListSortField_Name,
+        ..
+      ),
+
+    -- * SitesListSortOrder
+    SitesListSortOrder
+      ( SitesListSortOrder_Ascending,
+        SitesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * SubaccountsListSortField
+    SubaccountsListSortField
+      ( SubaccountsListSortField_ID,
+        SubaccountsListSortField_Name,
+        ..
+      ),
+
+    -- * SubaccountsListSortOrder
+    SubaccountsListSortOrder
+      ( SubaccountsListSortOrder_Ascending,
+        SubaccountsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * TargetableRemarketingListsListSortField
+    TargetableRemarketingListsListSortField
+      ( TargetableRemarketingListsListSortField_ID,
+        TargetableRemarketingListsListSortField_Name,
+        ..
+      ),
+
+    -- * TargetableRemarketingListsListSortOrder
+    TargetableRemarketingListsListSortOrder
+      ( TargetableRemarketingListsListSortOrder_Ascending,
+        TargetableRemarketingListsListSortOrder_Descending,
+        ..
+      ),
+
+    -- * TargetingTemplatesListSortField
+    TargetingTemplatesListSortField
+      ( TargetingTemplatesListSortField_ID,
+        TargetingTemplatesListSortField_Name,
+        ..
+      ),
+
+    -- * TargetingTemplatesListSortOrder
+    TargetingTemplatesListSortOrder
+      ( TargetingTemplatesListSortOrder_Ascending,
+        TargetingTemplatesListSortOrder_Descending,
+        ..
+      ),
+
+    -- * UserRolesListSortField
+    UserRolesListSortField
+      ( UserRolesListSortField_ID,
+        UserRolesListSortField_Name,
+        ..
+      ),
+
+    -- * UserRolesListSortOrder
+    UserRolesListSortOrder
+      ( UserRolesListSortOrder_Ascending,
+        UserRolesListSortOrder_Descending,
+        ..
+      ),
+  )
+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
+  #-}
+
+-- | Profile for this account. This is a read-only field that can be left blank.
+newtype Account_AccountProfile = Account_AccountProfile {fromAccount_AccountProfile :: 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
+    )
+
+-- | Basic profile has fewer features and lower CPM.
+pattern Account_AccountProfile_ACCOUNTPROFILEBASIC :: Account_AccountProfile
+pattern Account_AccountProfile_ACCOUNTPROFILEBASIC = Account_AccountProfile "ACCOUNT_PROFILE_BASIC"
+
+-- | Standard profile as a higher CPM and all the features.
+pattern Account_AccountProfile_ACCOUNTPROFILESTANDARD :: Account_AccountProfile
+pattern Account_AccountProfile_ACCOUNTPROFILESTANDARD = Account_AccountProfile "ACCOUNT_PROFILE_STANDARD"
+
+{-# COMPLETE
+  Account_AccountProfile_ACCOUNTPROFILEBASIC,
+  Account_AccountProfile_ACCOUNTPROFILESTANDARD,
+  Account_AccountProfile
+  #-}
+
+-- | Maximum number of active ads allowed for this account.
+newtype Account_ActiveAdsLimitTier = Account_ActiveAdsLimitTier {fromAccount_ActiveAdsLimitTier :: 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
+    )
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER40K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER40K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_40K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER75K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER75K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_75K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER100K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER100K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_100K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER200K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER200K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_200K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER300K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER300K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_300K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER500K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER500K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_500K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER750K :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER750K = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_750K"
+
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER1M :: Account_ActiveAdsLimitTier
+pattern Account_ActiveAdsLimitTier_ACTIVEADSTIER1M = Account_ActiveAdsLimitTier "ACTIVE_ADS_TIER_1M"
+
+{-# COMPLETE
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER40K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER75K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER100K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER200K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER300K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER500K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER750K,
+  Account_ActiveAdsLimitTier_ACTIVEADSTIER1M,
+  Account_ActiveAdsLimitTier
+  #-}
+
+-- | Maximum number of active ads allowed for the account.
+newtype AccountActiveAdSummary_ActiveAdsLimitTier = AccountActiveAdSummary_ActiveAdsLimitTier {fromAccountActiveAdSummary_ActiveAdsLimitTier :: 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
+    )
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER40K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER40K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_40K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER75K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER75K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_75K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER100K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER100K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_100K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER200K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER200K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_200K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER300K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER300K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_300K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER500K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER500K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_500K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER750K :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER750K = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_750K"
+
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER1M :: AccountActiveAdSummary_ActiveAdsLimitTier
+pattern AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER1M = AccountActiveAdSummary_ActiveAdsLimitTier "ACTIVE_ADS_TIER_1M"
+
+{-# COMPLETE
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER40K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER75K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER100K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER200K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER300K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER500K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER750K,
+  AccountActiveAdSummary_ActiveAdsLimitTier_ACTIVEADSTIER1M,
+  AccountActiveAdSummary_ActiveAdsLimitTier
+  #-}
+
+newtype AccountPermission_AccountProfilesItem = AccountPermission_AccountProfilesItem {fromAccountPermission_AccountProfilesItem :: 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
+    )
+
+-- | Basic profile has fewer features and lower CPM.
+pattern AccountPermission_AccountProfilesItem_ACCOUNTPROFILEBASIC :: AccountPermission_AccountProfilesItem
+pattern AccountPermission_AccountProfilesItem_ACCOUNTPROFILEBASIC = AccountPermission_AccountProfilesItem "ACCOUNT_PROFILE_BASIC"
+
+-- | Standard profile as a higher CPM and all the features.
+pattern AccountPermission_AccountProfilesItem_ACCOUNTPROFILESTANDARD :: AccountPermission_AccountProfilesItem
+pattern AccountPermission_AccountProfilesItem_ACCOUNTPROFILESTANDARD = AccountPermission_AccountProfilesItem "ACCOUNT_PROFILE_STANDARD"
+
+{-# COMPLETE
+  AccountPermission_AccountProfilesItem_ACCOUNTPROFILEBASIC,
+  AccountPermission_AccountProfilesItem_ACCOUNTPROFILESTANDARD,
+  AccountPermission_AccountProfilesItem
+  #-}
+
+-- | Administrative level required to enable this account permission.
+newtype AccountPermission_Level = AccountPermission_Level {fromAccountPermission_Level :: 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
+    )
+
+pattern AccountPermission_Level_User :: AccountPermission_Level
+pattern AccountPermission_Level_User = AccountPermission_Level "USER"
+
+pattern AccountPermission_Level_Administrator :: AccountPermission_Level
+pattern AccountPermission_Level_Administrator = AccountPermission_Level "ADMINISTRATOR"
+
+{-# COMPLETE
+  AccountPermission_Level_User,
+  AccountPermission_Level_Administrator,
+  AccountPermission_Level
+  #-}
+
+-- | Trafficker type of this user profile. This is a read-only field.
+newtype AccountUserProfile_TraffickerType = AccountUserProfile_TraffickerType {fromAccountUserProfile_TraffickerType :: 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
+    )
+
+-- | Internal profile, but is not a trafficker.
+pattern AccountUserProfile_TraffickerType_INTERNALNONTRAFFICKER :: AccountUserProfile_TraffickerType
+pattern AccountUserProfile_TraffickerType_INTERNALNONTRAFFICKER = AccountUserProfile_TraffickerType "INTERNAL_NON_TRAFFICKER"
+
+-- | Internal profile who is a trafficker.
+pattern AccountUserProfile_TraffickerType_INTERNALTRAFFICKER :: AccountUserProfile_TraffickerType
+pattern AccountUserProfile_TraffickerType_INTERNALTRAFFICKER = AccountUserProfile_TraffickerType "INTERNAL_TRAFFICKER"
+
+-- | External profile who is a trafficker.
+pattern AccountUserProfile_TraffickerType_EXTERNALTRAFFICKER :: AccountUserProfile_TraffickerType
+pattern AccountUserProfile_TraffickerType_EXTERNALTRAFFICKER = AccountUserProfile_TraffickerType "EXTERNAL_TRAFFICKER"
+
+{-# COMPLETE
+  AccountUserProfile_TraffickerType_INTERNALNONTRAFFICKER,
+  AccountUserProfile_TraffickerType_INTERNALTRAFFICKER,
+  AccountUserProfile_TraffickerType_EXTERNALTRAFFICKER,
+  AccountUserProfile_TraffickerType
+  #-}
+
+-- | User type of the user profile. This is a read-only field that can be left blank.
+newtype AccountUserProfile_UserAccessType = AccountUserProfile_UserAccessType {fromAccountUserProfile_UserAccessType :: 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
+    )
+
+-- | Normal user managed by the customer.
+pattern AccountUserProfile_UserAccessType_NORMALUSER :: AccountUserProfile_UserAccessType
+pattern AccountUserProfile_UserAccessType_NORMALUSER = AccountUserProfile_UserAccessType "NORMAL_USER"
+
+-- | Super user managed by internal support teams.
+pattern AccountUserProfile_UserAccessType_SUPERUSER :: AccountUserProfile_UserAccessType
+pattern AccountUserProfile_UserAccessType_SUPERUSER = AccountUserProfile_UserAccessType "SUPER_USER"
+
+-- | Internal administrator having super user access to only a specific set of networks.
+pattern AccountUserProfile_UserAccessType_INTERNALADMINISTRATOR :: AccountUserProfile_UserAccessType
+pattern AccountUserProfile_UserAccessType_INTERNALADMINISTRATOR = AccountUserProfile_UserAccessType "INTERNAL_ADMINISTRATOR"
+
+-- | A super-user without permission to mutate any data.
+pattern AccountUserProfile_UserAccessType_READONLYSUPERUSER :: AccountUserProfile_UserAccessType
+pattern AccountUserProfile_UserAccessType_READONLYSUPERUSER = AccountUserProfile_UserAccessType "READ_ONLY_SUPER_USER"
+
+{-# COMPLETE
+  AccountUserProfile_UserAccessType_NORMALUSER,
+  AccountUserProfile_UserAccessType_SUPERUSER,
+  AccountUserProfile_UserAccessType_INTERNALADMINISTRATOR,
+  AccountUserProfile_UserAccessType_READONLYSUPERUSER,
+  AccountUserProfile_UserAccessType
+  #-}
+
+-- | Compatibility of this ad. Applicable when type is AD/SERVING/DEFAULT/AD. DISPLAY and DISPLAY/INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP/INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY/INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN/STREAM/VIDEO refers to rendering in-stream video ads developed with the VAST standard.
+newtype Ad_Compatibility = Ad_Compatibility {fromAd_Compatibility :: 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
+    )
+
+pattern Ad_Compatibility_Display :: Ad_Compatibility
+pattern Ad_Compatibility_Display = Ad_Compatibility "DISPLAY"
+
+pattern Ad_Compatibility_DISPLAYINTERSTITIAL :: Ad_Compatibility
+pattern Ad_Compatibility_DISPLAYINTERSTITIAL = Ad_Compatibility "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern Ad_Compatibility_App :: Ad_Compatibility
+pattern Ad_Compatibility_App = Ad_Compatibility "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern Ad_Compatibility_APPINTERSTITIAL :: Ad_Compatibility
+pattern Ad_Compatibility_APPINTERSTITIAL = Ad_Compatibility "APP_INTERSTITIAL"
+
+pattern Ad_Compatibility_INSTREAMVIDEO :: Ad_Compatibility
+pattern Ad_Compatibility_INSTREAMVIDEO = Ad_Compatibility "IN_STREAM_VIDEO"
+
+pattern Ad_Compatibility_INSTREAMAUDIO :: Ad_Compatibility
+pattern Ad_Compatibility_INSTREAMAUDIO = Ad_Compatibility "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  Ad_Compatibility_Display,
+  Ad_Compatibility_DISPLAYINTERSTITIAL,
+  Ad_Compatibility_App,
+  Ad_Compatibility_APPINTERSTITIAL,
+  Ad_Compatibility_INSTREAMVIDEO,
+  Ad_Compatibility_INSTREAMAUDIO,
+  Ad_Compatibility
+  #-}
+
+-- | Type of ad. This is a required field on insertion. Note that default ads ( AD/SERVING/DEFAULT_AD) cannot be created directly (see Creative resource).
+newtype Ad_Type = Ad_Type {fromAd_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
+    )
+
+pattern Ad_Type_ADSERVINGSTANDARDAD :: Ad_Type
+pattern Ad_Type_ADSERVINGSTANDARDAD = Ad_Type "AD_SERVING_STANDARD_AD"
+
+pattern Ad_Type_ADSERVINGDEFAULTAD :: Ad_Type
+pattern Ad_Type_ADSERVINGDEFAULTAD = Ad_Type "AD_SERVING_DEFAULT_AD"
+
+pattern Ad_Type_ADSERVINGCLICKTRACKER :: Ad_Type
+pattern Ad_Type_ADSERVINGCLICKTRACKER = Ad_Type "AD_SERVING_CLICK_TRACKER"
+
+pattern Ad_Type_ADSERVINGTRACKING :: Ad_Type
+pattern Ad_Type_ADSERVINGTRACKING = Ad_Type "AD_SERVING_TRACKING"
+
+pattern Ad_Type_ADSERVINGBRANDSAFEAD :: Ad_Type
+pattern Ad_Type_ADSERVINGBRANDSAFEAD = Ad_Type "AD_SERVING_BRAND_SAFE_AD"
+
+{-# COMPLETE
+  Ad_Type_ADSERVINGSTANDARDAD,
+  Ad_Type_ADSERVINGDEFAULTAD,
+  Ad_Type_ADSERVINGCLICKTRACKER,
+  Ad_Type_ADSERVINGTRACKING,
+  Ad_Type_ADSERVINGBRANDSAFEAD,
+  Ad_Type
+  #-}
+
+-- | Ad slot compatibility. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM/VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
+newtype AdSlot_Compatibility = AdSlot_Compatibility {fromAdSlot_Compatibility :: 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
+    )
+
+pattern AdSlot_Compatibility_Display :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_Display = AdSlot_Compatibility "DISPLAY"
+
+pattern AdSlot_Compatibility_DISPLAYINTERSTITIAL :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_DISPLAYINTERSTITIAL = AdSlot_Compatibility "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern AdSlot_Compatibility_App :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_App = AdSlot_Compatibility "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern AdSlot_Compatibility_APPINTERSTITIAL :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_APPINTERSTITIAL = AdSlot_Compatibility "APP_INTERSTITIAL"
+
+pattern AdSlot_Compatibility_INSTREAMVIDEO :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_INSTREAMVIDEO = AdSlot_Compatibility "IN_STREAM_VIDEO"
+
+pattern AdSlot_Compatibility_INSTREAMAUDIO :: AdSlot_Compatibility
+pattern AdSlot_Compatibility_INSTREAMAUDIO = AdSlot_Compatibility "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  AdSlot_Compatibility_Display,
+  AdSlot_Compatibility_DISPLAYINTERSTITIAL,
+  AdSlot_Compatibility_App,
+  AdSlot_Compatibility_APPINTERSTITIAL,
+  AdSlot_Compatibility_INSTREAMVIDEO,
+  AdSlot_Compatibility_INSTREAMAUDIO,
+  AdSlot_Compatibility
+  #-}
+
+-- | Payment source type of this ad slot.
+newtype AdSlot_PaymentSourceType = AdSlot_PaymentSourceType {fromAdSlot_PaymentSourceType :: 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
+    )
+
+pattern AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEAGENCYPAID :: AdSlot_PaymentSourceType
+pattern AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEAGENCYPAID = AdSlot_PaymentSourceType "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID"
+
+pattern AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEPUBLISHERPAID :: AdSlot_PaymentSourceType
+pattern AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEPUBLISHERPAID = AdSlot_PaymentSourceType "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID"
+
+{-# COMPLETE
+  AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEAGENCYPAID,
+  AdSlot_PaymentSourceType_PLANNINGPAYMENTSOURCETYPEPUBLISHERPAID,
+  AdSlot_PaymentSourceType
+  #-}
+
+-- | Status of this advertiser.
+newtype Advertiser_Status = Advertiser_Status {fromAdvertiser_Status :: 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
+    )
+
+-- | Approved (ads can deliver)
+pattern Advertiser_Status_Approved :: Advertiser_Status
+pattern Advertiser_Status_Approved = Advertiser_Status "APPROVED"
+
+-- | On-hold (all ads are stopped)
+pattern Advertiser_Status_ONHOLD :: Advertiser_Status
+pattern Advertiser_Status_ONHOLD = Advertiser_Status "ON_HOLD"
+
+{-# COMPLETE
+  Advertiser_Status_Approved,
+  Advertiser_Status_ONHOLD,
+  Advertiser_Status
+  #-}
+
+-- | Invoice level for this billing profile. Used to group fees into separate invoices by account, advertiser, or campaign.
+newtype BillingProfile_InvoiceLevel = BillingProfile_InvoiceLevel {fromBillingProfile_InvoiceLevel :: 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
+    )
+
+pattern BillingProfile_InvoiceLevel_ACCOUNTLEVEL :: BillingProfile_InvoiceLevel
+pattern BillingProfile_InvoiceLevel_ACCOUNTLEVEL = BillingProfile_InvoiceLevel "ACCOUNT_LEVEL"
+
+pattern BillingProfile_InvoiceLevel_ADVERTISERLEVEL :: BillingProfile_InvoiceLevel
+pattern BillingProfile_InvoiceLevel_ADVERTISERLEVEL = BillingProfile_InvoiceLevel "ADVERTISER_LEVEL"
+
+pattern BillingProfile_InvoiceLevel_CAMPAIGNLEVEL :: BillingProfile_InvoiceLevel
+pattern BillingProfile_InvoiceLevel_CAMPAIGNLEVEL = BillingProfile_InvoiceLevel "CAMPAIGN_LEVEL"
+
+{-# COMPLETE
+  BillingProfile_InvoiceLevel_ACCOUNTLEVEL,
+  BillingProfile_InvoiceLevel_ADVERTISERLEVEL,
+  BillingProfile_InvoiceLevel_CAMPAIGNLEVEL,
+  BillingProfile_InvoiceLevel
+  #-}
+
+-- | Status of this billing profile.This is a read-only field.
+newtype BillingProfile_Status = BillingProfile_Status {fromBillingProfile_Status :: 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
+    )
+
+pattern BillingProfile_Status_UNDERREVIEW :: BillingProfile_Status
+pattern BillingProfile_Status_UNDERREVIEW = BillingProfile_Status "UNDER_REVIEW"
+
+pattern BillingProfile_Status_Active :: BillingProfile_Status
+pattern BillingProfile_Status_Active = BillingProfile_Status "ACTIVE"
+
+pattern BillingProfile_Status_Archived :: BillingProfile_Status
+pattern BillingProfile_Status_Archived = BillingProfile_Status "ARCHIVED"
+
+{-# COMPLETE
+  BillingProfile_Status_UNDERREVIEW,
+  BillingProfile_Status_Active,
+  BillingProfile_Status_Archived,
+  BillingProfile_Status
+  #-}
+
+-- | Type of this billing rate.
+newtype BillingRate_Type = BillingRate_Type {fromBillingRate_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
+    )
+
+pattern BillingRate_Type_ADSERVING :: BillingRate_Type
+pattern BillingRate_Type_ADSERVING = BillingRate_Type "AD_SERVING"
+
+pattern BillingRate_Type_Clicks :: BillingRate_Type
+pattern BillingRate_Type_Clicks = BillingRate_Type "CLICKS"
+
+pattern BillingRate_Type_MINIMUMSERVICE :: BillingRate_Type
+pattern BillingRate_Type_MINIMUMSERVICE = BillingRate_Type "MINIMUM_SERVICE"
+
+pattern BillingRate_Type_PATHTOCONVERSION :: BillingRate_Type
+pattern BillingRate_Type_PATHTOCONVERSION = BillingRate_Type "PATH_TO_CONVERSION"
+
+pattern BillingRate_Type_RICHMEDIAINPAGE :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIAINPAGE = BillingRate_Type "RICH_MEDIA_INPAGE"
+
+pattern BillingRate_Type_RICHMEDIAEXPANDING :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIAEXPANDING = BillingRate_Type "RICH_MEDIA_EXPANDING"
+
+pattern BillingRate_Type_RICHMEDIAFLOATING :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIAFLOATING = BillingRate_Type "RICH_MEDIA_FLOATING"
+
+pattern BillingRate_Type_RICHMEDIAVIDEO :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIAVIDEO = BillingRate_Type "RICH_MEDIA_VIDEO"
+
+pattern BillingRate_Type_RICHMEDIATEASER :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIATEASER = BillingRate_Type "RICH_MEDIA_TEASER"
+
+pattern BillingRate_Type_RICHMEDIAVPAID :: BillingRate_Type
+pattern BillingRate_Type_RICHMEDIAVPAID = BillingRate_Type "RICH_MEDIA_VPAID"
+
+pattern BillingRate_Type_INSTREAMVIDEO :: BillingRate_Type
+pattern BillingRate_Type_INSTREAMVIDEO = BillingRate_Type "INSTREAM_VIDEO"
+
+pattern BillingRate_Type_Pixel :: BillingRate_Type
+pattern BillingRate_Type_Pixel = BillingRate_Type "PIXEL"
+
+pattern BillingRate_Type_Tracking :: BillingRate_Type
+pattern BillingRate_Type_Tracking = BillingRate_Type "TRACKING"
+
+pattern BillingRate_Type_TRAFFICKINGFEATURE :: BillingRate_Type
+pattern BillingRate_Type_TRAFFICKINGFEATURE = BillingRate_Type "TRAFFICKING_FEATURE"
+
+pattern BillingRate_Type_CUSTOMREPORTS :: BillingRate_Type
+pattern BillingRate_Type_CUSTOMREPORTS = BillingRate_Type "CUSTOM_REPORTS"
+
+pattern BillingRate_Type_EXPOSURETOCONVERSION :: BillingRate_Type
+pattern BillingRate_Type_EXPOSURETOCONVERSION = BillingRate_Type "EXPOSURE_TO_CONVERSION"
+
+pattern BillingRate_Type_DATATRANSFER :: BillingRate_Type
+pattern BillingRate_Type_DATATRANSFER = BillingRate_Type "DATA_TRANSFER"
+
+pattern BillingRate_Type_DATATRANSFERSETUP :: BillingRate_Type
+pattern BillingRate_Type_DATATRANSFERSETUP = BillingRate_Type "DATA_TRANSFER_SETUP"
+
+pattern BillingRate_Type_Startup :: BillingRate_Type
+pattern BillingRate_Type_Startup = BillingRate_Type "STARTUP"
+
+pattern BillingRate_Type_STATEMENTOFWORK :: BillingRate_Type
+pattern BillingRate_Type_STATEMENTOFWORK = BillingRate_Type "STATEMENT_OF_WORK"
+
+pattern BillingRate_Type_PROVIDEDLIST :: BillingRate_Type
+pattern BillingRate_Type_PROVIDEDLIST = BillingRate_Type "PROVIDED_LIST"
+
+pattern BillingRate_Type_PROVIDEDLISTSETUP :: BillingRate_Type
+pattern BillingRate_Type_PROVIDEDLISTSETUP = BillingRate_Type "PROVIDED_LIST_SETUP"
+
+pattern BillingRate_Type_ENHANCEDFORMATS :: BillingRate_Type
+pattern BillingRate_Type_ENHANCEDFORMATS = BillingRate_Type "ENHANCED_FORMATS"
+
+pattern BillingRate_Type_TRACKINGADIMPRESSIONS :: BillingRate_Type
+pattern BillingRate_Type_TRACKINGADIMPRESSIONS = BillingRate_Type "TRACKING_AD_IMPRESSIONS"
+
+pattern BillingRate_Type_TRACKINGADCLICKS :: BillingRate_Type
+pattern BillingRate_Type_TRACKINGADCLICKS = BillingRate_Type "TRACKING_AD_CLICKS"
+
+pattern BillingRate_Type_NIELSENDIGITALADRATINGSFEE :: BillingRate_Type
+pattern BillingRate_Type_NIELSENDIGITALADRATINGSFEE = BillingRate_Type "NIELSEN_DIGITAL_AD_RATINGS_FEE"
+
+pattern BillingRate_Type_INSTREAMVIDEOREDIRECT :: BillingRate_Type
+pattern BillingRate_Type_INSTREAMVIDEOREDIRECT = BillingRate_Type "INSTREAM_VIDEO_REDIRECT"
+
+pattern BillingRate_Type_INSTREAMVIDEOVPAID :: BillingRate_Type
+pattern BillingRate_Type_INSTREAMVIDEOVPAID = BillingRate_Type "INSTREAM_VIDEO_VPAID"
+
+pattern BillingRate_Type_DISPLAYADSERVING :: BillingRate_Type
+pattern BillingRate_Type_DISPLAYADSERVING = BillingRate_Type "DISPLAY_AD_SERVING"
+
+pattern BillingRate_Type_VIDEOADSERVING :: BillingRate_Type
+pattern BillingRate_Type_VIDEOADSERVING = BillingRate_Type "VIDEO_AD_SERVING"
+
+pattern BillingRate_Type_AUDIOADSERVING :: BillingRate_Type
+pattern BillingRate_Type_AUDIOADSERVING = BillingRate_Type "AUDIO_AD_SERVING"
+
+pattern BillingRate_Type_ADVANCEDDISPLAYADSERVING :: BillingRate_Type
+pattern BillingRate_Type_ADVANCEDDISPLAYADSERVING = BillingRate_Type "ADVANCED_DISPLAY_AD_SERVING"
+
+{-# COMPLETE
+  BillingRate_Type_ADSERVING,
+  BillingRate_Type_Clicks,
+  BillingRate_Type_MINIMUMSERVICE,
+  BillingRate_Type_PATHTOCONVERSION,
+  BillingRate_Type_RICHMEDIAINPAGE,
+  BillingRate_Type_RICHMEDIAEXPANDING,
+  BillingRate_Type_RICHMEDIAFLOATING,
+  BillingRate_Type_RICHMEDIAVIDEO,
+  BillingRate_Type_RICHMEDIATEASER,
+  BillingRate_Type_RICHMEDIAVPAID,
+  BillingRate_Type_INSTREAMVIDEO,
+  BillingRate_Type_Pixel,
+  BillingRate_Type_Tracking,
+  BillingRate_Type_TRAFFICKINGFEATURE,
+  BillingRate_Type_CUSTOMREPORTS,
+  BillingRate_Type_EXPOSURETOCONVERSION,
+  BillingRate_Type_DATATRANSFER,
+  BillingRate_Type_DATATRANSFERSETUP,
+  BillingRate_Type_Startup,
+  BillingRate_Type_STATEMENTOFWORK,
+  BillingRate_Type_PROVIDEDLIST,
+  BillingRate_Type_PROVIDEDLISTSETUP,
+  BillingRate_Type_ENHANCEDFORMATS,
+  BillingRate_Type_TRACKINGADIMPRESSIONS,
+  BillingRate_Type_TRACKINGADCLICKS,
+  BillingRate_Type_NIELSENDIGITALADRATINGSFEE,
+  BillingRate_Type_INSTREAMVIDEOREDIRECT,
+  BillingRate_Type_INSTREAMVIDEOVPAID,
+  BillingRate_Type_DISPLAYADSERVING,
+  BillingRate_Type_VIDEOADSERVING,
+  BillingRate_Type_AUDIOADSERVING,
+  BillingRate_Type_ADVANCEDDISPLAYADSERVING,
+  BillingRate_Type
+  #-}
+
+-- | Unit of measure for this billing rate.
+newtype BillingRate_UnitOfMeasure = BillingRate_UnitOfMeasure {fromBillingRate_UnitOfMeasure :: 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
+    )
+
+pattern BillingRate_UnitOfMeasure_Cpm :: BillingRate_UnitOfMeasure
+pattern BillingRate_UnitOfMeasure_Cpm = BillingRate_UnitOfMeasure "CPM"
+
+pattern BillingRate_UnitOfMeasure_Cpc :: BillingRate_UnitOfMeasure
+pattern BillingRate_UnitOfMeasure_Cpc = BillingRate_UnitOfMeasure "CPC"
+
+pattern BillingRate_UnitOfMeasure_EA :: BillingRate_UnitOfMeasure
+pattern BillingRate_UnitOfMeasure_EA = BillingRate_UnitOfMeasure "EA"
+
+pattern BillingRate_UnitOfMeasure_P2C :: BillingRate_UnitOfMeasure
+pattern BillingRate_UnitOfMeasure_P2C = BillingRate_UnitOfMeasure "P2C"
+
+{-# COMPLETE
+  BillingRate_UnitOfMeasure_Cpm,
+  BillingRate_UnitOfMeasure_Cpc,
+  BillingRate_UnitOfMeasure_EA,
+  BillingRate_UnitOfMeasure_P2C,
+  BillingRate_UnitOfMeasure
+  #-}
+
+-- | This represents consent for ad user data.
+newtype Conversion_AdUserDataConsent = Conversion_AdUserDataConsent {fromConversion_AdUserDataConsent :: 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
+    )
+
+-- | Granted.
+pattern Conversion_AdUserDataConsent_Granted :: Conversion_AdUserDataConsent
+pattern Conversion_AdUserDataConsent_Granted = Conversion_AdUserDataConsent "GRANTED"
+
+-- | Denied.
+pattern Conversion_AdUserDataConsent_Denied :: Conversion_AdUserDataConsent
+pattern Conversion_AdUserDataConsent_Denied = Conversion_AdUserDataConsent "DENIED"
+
+{-# COMPLETE
+  Conversion_AdUserDataConsent_Granted,
+  Conversion_AdUserDataConsent_Denied,
+  Conversion_AdUserDataConsent
+  #-}
+
+-- | The error code.
+newtype ConversionError_Code = ConversionError_Code {fromConversionError_Code :: 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
+    )
+
+pattern ConversionError_Code_INVALIDARGUMENT :: ConversionError_Code
+pattern ConversionError_Code_INVALIDARGUMENT = ConversionError_Code "INVALID_ARGUMENT"
+
+pattern ConversionError_Code_Internal :: ConversionError_Code
+pattern ConversionError_Code_Internal = ConversionError_Code "INTERNAL"
+
+pattern ConversionError_Code_PERMISSIONDENIED :: ConversionError_Code
+pattern ConversionError_Code_PERMISSIONDENIED = ConversionError_Code "PERMISSION_DENIED"
+
+pattern ConversionError_Code_NOTFOUND :: ConversionError_Code
+pattern ConversionError_Code_NOTFOUND = ConversionError_Code "NOT_FOUND"
+
+{-# COMPLETE
+  ConversionError_Code_INVALIDARGUMENT,
+  ConversionError_Code_Internal,
+  ConversionError_Code_PERMISSIONDENIED,
+  ConversionError_Code_NOTFOUND,
+  ConversionError_Code
+  #-}
+
+-- | Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
+newtype Creative_ArtworkType = Creative_ArtworkType {fromCreative_ArtworkType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The creative is a Flash creative.
+pattern Creative_ArtworkType_ARTWORKTYPEFLASH :: Creative_ArtworkType
+pattern Creative_ArtworkType_ARTWORKTYPEFLASH = Creative_ArtworkType "ARTWORK_TYPE_FLASH"
+
+-- | The creative is HTML5.
+pattern Creative_ArtworkType_ARTWORK_TYPE_HTML5 :: Creative_ArtworkType
+pattern Creative_ArtworkType_ARTWORK_TYPE_HTML5 = Creative_ArtworkType "ARTWORK_TYPE_HTML5"
+
+-- | The creative is HTML5 if available, Flash otherwise.
+pattern Creative_ArtworkType_ARTWORKTYPEMIXED :: Creative_ArtworkType
+pattern Creative_ArtworkType_ARTWORKTYPEMIXED = Creative_ArtworkType "ARTWORK_TYPE_MIXED"
+
+-- | The creative is Image.
+pattern Creative_ArtworkType_ARTWORKTYPEIMAGE :: Creative_ArtworkType
+pattern Creative_ArtworkType_ARTWORKTYPEIMAGE = Creative_ArtworkType "ARTWORK_TYPE_IMAGE"
+
+{-# COMPLETE
+  Creative_ArtworkType_ARTWORKTYPEFLASH,
+  Creative_ArtworkType_ARTWORK_TYPE_HTML5,
+  Creative_ArtworkType_ARTWORKTYPEMIXED,
+  Creative_ArtworkType_ARTWORKTYPEIMAGE,
+  Creative_ArtworkType
+  #-}
+
+-- | Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.
+newtype Creative_AuthoringSource = Creative_AuthoringSource {fromCreative_AuthoringSource :: 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
+    )
+
+-- | DCM-UI or external API used to author the creative.
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDCM :: Creative_AuthoringSource
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDCM = Creative_AuthoringSource "CREATIVE_AUTHORING_SOURCE_DCM"
+
+-- | DBM-UI used to author the creative.
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDBM :: Creative_AuthoringSource
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDBM = Creative_AuthoringSource "CREATIVE_AUTHORING_SOURCE_DBM"
+
+-- | Studio-UI used to author the creative.
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCESTUDIO :: Creative_AuthoringSource
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCESTUDIO = Creative_AuthoringSource "CREATIVE_AUTHORING_SOURCE_STUDIO"
+
+-- | Google Web Designer used to author the creative.
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEGWD :: Creative_AuthoringSource
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEGWD = Creative_AuthoringSource "CREATIVE_AUTHORING_SOURCE_GWD"
+
+-- | ACS-UI used to author the creative.
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEACS :: Creative_AuthoringSource
+pattern Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEACS = Creative_AuthoringSource "CREATIVE_AUTHORING_SOURCE_ACS"
+
+{-# COMPLETE
+  Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDCM,
+  Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEDBM,
+  Creative_AuthoringSource_CREATIVEAUTHORINGSOURCESTUDIO,
+  Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEGWD,
+  Creative_AuthoringSource_CREATIVEAUTHORINGSOURCEACS,
+  Creative_AuthoringSource
+  #-}
+
+-- | Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.
+newtype Creative_AuthoringTool = Creative_AuthoringTool {fromCreative_AuthoringTool :: 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
+    )
+
+pattern Creative_AuthoringTool_Ninja :: Creative_AuthoringTool
+pattern Creative_AuthoringTool_Ninja = Creative_AuthoringTool "NINJA"
+
+pattern Creative_AuthoringTool_Swiffy :: Creative_AuthoringTool
+pattern Creative_AuthoringTool_Swiffy = Creative_AuthoringTool "SWIFFY"
+
+{-# COMPLETE
+  Creative_AuthoringTool_Ninja,
+  Creative_AuthoringTool_Swiffy,
+  Creative_AuthoringTool
+  #-}
+
+newtype Creative_BackupImageFeaturesItem = Creative_BackupImageFeaturesItem {fromCreative_BackupImageFeaturesItem :: 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
+    )
+
+pattern Creative_BackupImageFeaturesItem_CSSFONTFACE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSFONTFACE = Creative_BackupImageFeaturesItem "CSS_FONT_FACE"
+
+pattern Creative_BackupImageFeaturesItem_CSSBACKGROUNDSIZE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSBACKGROUNDSIZE = Creative_BackupImageFeaturesItem "CSS_BACKGROUND_SIZE"
+
+pattern Creative_BackupImageFeaturesItem_CSSBORDERIMAGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSBORDERIMAGE = Creative_BackupImageFeaturesItem "CSS_BORDER_IMAGE"
+
+pattern Creative_BackupImageFeaturesItem_CSSBORDERRADIUS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSBORDERRADIUS = Creative_BackupImageFeaturesItem "CSS_BORDER_RADIUS"
+
+pattern Creative_BackupImageFeaturesItem_CSSBOXSHADOW :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSBOXSHADOW = Creative_BackupImageFeaturesItem "CSS_BOX_SHADOW"
+
+pattern Creative_BackupImageFeaturesItem_CSSFLEXBOX :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSFLEXBOX = Creative_BackupImageFeaturesItem "CSS_FLEX_BOX"
+
+pattern Creative_BackupImageFeaturesItem_CSSHSLA :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSHSLA = Creative_BackupImageFeaturesItem "CSS_HSLA"
+
+pattern Creative_BackupImageFeaturesItem_CSSMULTIPLEBGS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSMULTIPLEBGS = Creative_BackupImageFeaturesItem "CSS_MULTIPLE_BGS"
+
+pattern Creative_BackupImageFeaturesItem_CSSOPACITY :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSOPACITY = Creative_BackupImageFeaturesItem "CSS_OPACITY"
+
+pattern Creative_BackupImageFeaturesItem_CSSRGBA :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSRGBA = Creative_BackupImageFeaturesItem "CSS_RGBA"
+
+pattern Creative_BackupImageFeaturesItem_CSSTEXTSHADOW :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSTEXTSHADOW = Creative_BackupImageFeaturesItem "CSS_TEXT_SHADOW"
+
+pattern Creative_BackupImageFeaturesItem_CSSANIMATIONS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSANIMATIONS = Creative_BackupImageFeaturesItem "CSS_ANIMATIONS"
+
+pattern Creative_BackupImageFeaturesItem_CSSCOLUMNS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSCOLUMNS = Creative_BackupImageFeaturesItem "CSS_COLUMNS"
+
+pattern Creative_BackupImageFeaturesItem_CSSGENERATEDCONTENT :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSGENERATEDCONTENT = Creative_BackupImageFeaturesItem "CSS_GENERATED_CONTENT"
+
+pattern Creative_BackupImageFeaturesItem_CSSGRADIENTS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSGRADIENTS = Creative_BackupImageFeaturesItem "CSS_GRADIENTS"
+
+pattern Creative_BackupImageFeaturesItem_CSSREFLECTIONS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSREFLECTIONS = Creative_BackupImageFeaturesItem "CSS_REFLECTIONS"
+
+pattern Creative_BackupImageFeaturesItem_CSSTRANSFORMS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSTRANSFORMS = Creative_BackupImageFeaturesItem "CSS_TRANSFORMS"
+
+pattern Creative_BackupImageFeaturesItem_CSSTRANSFORMS3D :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSTRANSFORMS3D = Creative_BackupImageFeaturesItem "CSS_TRANSFORMS3D"
+
+pattern Creative_BackupImageFeaturesItem_CSSTRANSITIONS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CSSTRANSITIONS = Creative_BackupImageFeaturesItem "CSS_TRANSITIONS"
+
+pattern Creative_BackupImageFeaturesItem_APPLICATIONCACHE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_APPLICATIONCACHE = Creative_BackupImageFeaturesItem "APPLICATION_CACHE"
+
+pattern Creative_BackupImageFeaturesItem_Canvas :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Canvas = Creative_BackupImageFeaturesItem "CANVAS"
+
+pattern Creative_BackupImageFeaturesItem_CANVASTEXT :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_CANVASTEXT = Creative_BackupImageFeaturesItem "CANVAS_TEXT"
+
+pattern Creative_BackupImageFeaturesItem_DRAGANDDROP :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_DRAGANDDROP = Creative_BackupImageFeaturesItem "DRAG_AND_DROP"
+
+pattern Creative_BackupImageFeaturesItem_HASHCHANGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_HASHCHANGE = Creative_BackupImageFeaturesItem "HASH_CHANGE"
+
+pattern Creative_BackupImageFeaturesItem_History :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_History = Creative_BackupImageFeaturesItem "HISTORY"
+
+pattern Creative_BackupImageFeaturesItem_Audio :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Audio = Creative_BackupImageFeaturesItem "AUDIO"
+
+pattern Creative_BackupImageFeaturesItem_Video :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Video = Creative_BackupImageFeaturesItem "VIDEO"
+
+pattern Creative_BackupImageFeaturesItem_INDEXEDDB :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INDEXEDDB = Creative_BackupImageFeaturesItem "INDEXED_DB"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRAUTOCOMPLETE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRAUTOCOMPLETE = Creative_BackupImageFeaturesItem "INPUT_ATTR_AUTOCOMPLETE"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRAUTOFOCUS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRAUTOFOCUS = Creative_BackupImageFeaturesItem "INPUT_ATTR_AUTOFOCUS"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRLIST :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRLIST = Creative_BackupImageFeaturesItem "INPUT_ATTR_LIST"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRPLACEHOLDER :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRPLACEHOLDER = Creative_BackupImageFeaturesItem "INPUT_ATTR_PLACEHOLDER"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMAX :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMAX = Creative_BackupImageFeaturesItem "INPUT_ATTR_MAX"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMIN :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMIN = Creative_BackupImageFeaturesItem "INPUT_ATTR_MIN"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMULTIPLE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRMULTIPLE = Creative_BackupImageFeaturesItem "INPUT_ATTR_MULTIPLE"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRPATTERN :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRPATTERN = Creative_BackupImageFeaturesItem "INPUT_ATTR_PATTERN"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRREQUIRED :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRREQUIRED = Creative_BackupImageFeaturesItem "INPUT_ATTR_REQUIRED"
+
+pattern Creative_BackupImageFeaturesItem_INPUTATTRSTEP :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTATTRSTEP = Creative_BackupImageFeaturesItem "INPUT_ATTR_STEP"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPESEARCH :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPESEARCH = Creative_BackupImageFeaturesItem "INPUT_TYPE_SEARCH"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPETEL :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPETEL = Creative_BackupImageFeaturesItem "INPUT_TYPE_TEL"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEURL :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEURL = Creative_BackupImageFeaturesItem "INPUT_TYPE_URL"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEEMAIL :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEEMAIL = Creative_BackupImageFeaturesItem "INPUT_TYPE_EMAIL"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATETIME :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATETIME = Creative_BackupImageFeaturesItem "INPUT_TYPE_DATETIME"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATE = Creative_BackupImageFeaturesItem "INPUT_TYPE_DATE"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEMONTH :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEMONTH = Creative_BackupImageFeaturesItem "INPUT_TYPE_MONTH"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEWEEK :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEWEEK = Creative_BackupImageFeaturesItem "INPUT_TYPE_WEEK"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPETIME :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPETIME = Creative_BackupImageFeaturesItem "INPUT_TYPE_TIME"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATETIMELOCAL :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPEDATETIMELOCAL = Creative_BackupImageFeaturesItem "INPUT_TYPE_DATETIME_LOCAL"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPENUMBER :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPENUMBER = Creative_BackupImageFeaturesItem "INPUT_TYPE_NUMBER"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPERANGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPERANGE = Creative_BackupImageFeaturesItem "INPUT_TYPE_RANGE"
+
+pattern Creative_BackupImageFeaturesItem_INPUTTYPECOLOR :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INPUTTYPECOLOR = Creative_BackupImageFeaturesItem "INPUT_TYPE_COLOR"
+
+pattern Creative_BackupImageFeaturesItem_LOCALSTORAGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_LOCALSTORAGE = Creative_BackupImageFeaturesItem "LOCAL_STORAGE"
+
+-- | POST_MESSAGE always required due to html5 implementation.
+pattern Creative_BackupImageFeaturesItem_POSTMESSAGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_POSTMESSAGE = Creative_BackupImageFeaturesItem "POST_MESSAGE"
+
+pattern Creative_BackupImageFeaturesItem_SESSIONSTORAGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_SESSIONSTORAGE = Creative_BackupImageFeaturesItem "SESSION_STORAGE"
+
+pattern Creative_BackupImageFeaturesItem_WEBSOCKETS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_WEBSOCKETS = Creative_BackupImageFeaturesItem "WEB_SOCKETS"
+
+pattern Creative_BackupImageFeaturesItem_WEBSQLDATABASE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_WEBSQLDATABASE = Creative_BackupImageFeaturesItem "WEB_SQL_DATABASE"
+
+pattern Creative_BackupImageFeaturesItem_WEBWORKERS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_WEBWORKERS = Creative_BackupImageFeaturesItem "WEB_WORKERS"
+
+pattern Creative_BackupImageFeaturesItem_GEOLOCATION :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_GEOLOCATION = Creative_BackupImageFeaturesItem "GEO_LOCATION"
+
+pattern Creative_BackupImageFeaturesItem_INLINESVG :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_INLINESVG = Creative_BackupImageFeaturesItem "INLINE_SVG"
+
+pattern Creative_BackupImageFeaturesItem_Smil :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Smil = Creative_BackupImageFeaturesItem "SMIL"
+
+pattern Creative_BackupImageFeaturesItem_SVGHREF :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_SVGHREF = Creative_BackupImageFeaturesItem "SVG_HREF"
+
+pattern Creative_BackupImageFeaturesItem_SVGCLIPPATHS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_SVGCLIPPATHS = Creative_BackupImageFeaturesItem "SVG_CLIP_PATHS"
+
+pattern Creative_BackupImageFeaturesItem_Touch :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Touch = Creative_BackupImageFeaturesItem "TOUCH"
+
+pattern Creative_BackupImageFeaturesItem_Webgl :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_Webgl = Creative_BackupImageFeaturesItem "WEBGL"
+
+pattern Creative_BackupImageFeaturesItem_SVGFILTERS :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_SVGFILTERS = Creative_BackupImageFeaturesItem "SVG_FILTERS"
+
+pattern Creative_BackupImageFeaturesItem_SVGFEIMAGE :: Creative_BackupImageFeaturesItem
+pattern Creative_BackupImageFeaturesItem_SVGFEIMAGE = Creative_BackupImageFeaturesItem "SVG_FE_IMAGE"
+
+{-# COMPLETE
+  Creative_BackupImageFeaturesItem_CSSFONTFACE,
+  Creative_BackupImageFeaturesItem_CSSBACKGROUNDSIZE,
+  Creative_BackupImageFeaturesItem_CSSBORDERIMAGE,
+  Creative_BackupImageFeaturesItem_CSSBORDERRADIUS,
+  Creative_BackupImageFeaturesItem_CSSBOXSHADOW,
+  Creative_BackupImageFeaturesItem_CSSFLEXBOX,
+  Creative_BackupImageFeaturesItem_CSSHSLA,
+  Creative_BackupImageFeaturesItem_CSSMULTIPLEBGS,
+  Creative_BackupImageFeaturesItem_CSSOPACITY,
+  Creative_BackupImageFeaturesItem_CSSRGBA,
+  Creative_BackupImageFeaturesItem_CSSTEXTSHADOW,
+  Creative_BackupImageFeaturesItem_CSSANIMATIONS,
+  Creative_BackupImageFeaturesItem_CSSCOLUMNS,
+  Creative_BackupImageFeaturesItem_CSSGENERATEDCONTENT,
+  Creative_BackupImageFeaturesItem_CSSGRADIENTS,
+  Creative_BackupImageFeaturesItem_CSSREFLECTIONS,
+  Creative_BackupImageFeaturesItem_CSSTRANSFORMS,
+  Creative_BackupImageFeaturesItem_CSSTRANSFORMS3D,
+  Creative_BackupImageFeaturesItem_CSSTRANSITIONS,
+  Creative_BackupImageFeaturesItem_APPLICATIONCACHE,
+  Creative_BackupImageFeaturesItem_Canvas,
+  Creative_BackupImageFeaturesItem_CANVASTEXT,
+  Creative_BackupImageFeaturesItem_DRAGANDDROP,
+  Creative_BackupImageFeaturesItem_HASHCHANGE,
+  Creative_BackupImageFeaturesItem_History,
+  Creative_BackupImageFeaturesItem_Audio,
+  Creative_BackupImageFeaturesItem_Video,
+  Creative_BackupImageFeaturesItem_INDEXEDDB,
+  Creative_BackupImageFeaturesItem_INPUTATTRAUTOCOMPLETE,
+  Creative_BackupImageFeaturesItem_INPUTATTRAUTOFOCUS,
+  Creative_BackupImageFeaturesItem_INPUTATTRLIST,
+  Creative_BackupImageFeaturesItem_INPUTATTRPLACEHOLDER,
+  Creative_BackupImageFeaturesItem_INPUTATTRMAX,
+  Creative_BackupImageFeaturesItem_INPUTATTRMIN,
+  Creative_BackupImageFeaturesItem_INPUTATTRMULTIPLE,
+  Creative_BackupImageFeaturesItem_INPUTATTRPATTERN,
+  Creative_BackupImageFeaturesItem_INPUTATTRREQUIRED,
+  Creative_BackupImageFeaturesItem_INPUTATTRSTEP,
+  Creative_BackupImageFeaturesItem_INPUTTYPESEARCH,
+  Creative_BackupImageFeaturesItem_INPUTTYPETEL,
+  Creative_BackupImageFeaturesItem_INPUTTYPEURL,
+  Creative_BackupImageFeaturesItem_INPUTTYPEEMAIL,
+  Creative_BackupImageFeaturesItem_INPUTTYPEDATETIME,
+  Creative_BackupImageFeaturesItem_INPUTTYPEDATE,
+  Creative_BackupImageFeaturesItem_INPUTTYPEMONTH,
+  Creative_BackupImageFeaturesItem_INPUTTYPEWEEK,
+  Creative_BackupImageFeaturesItem_INPUTTYPETIME,
+  Creative_BackupImageFeaturesItem_INPUTTYPEDATETIMELOCAL,
+  Creative_BackupImageFeaturesItem_INPUTTYPENUMBER,
+  Creative_BackupImageFeaturesItem_INPUTTYPERANGE,
+  Creative_BackupImageFeaturesItem_INPUTTYPECOLOR,
+  Creative_BackupImageFeaturesItem_LOCALSTORAGE,
+  Creative_BackupImageFeaturesItem_POSTMESSAGE,
+  Creative_BackupImageFeaturesItem_SESSIONSTORAGE,
+  Creative_BackupImageFeaturesItem_WEBSOCKETS,
+  Creative_BackupImageFeaturesItem_WEBSQLDATABASE,
+  Creative_BackupImageFeaturesItem_WEBWORKERS,
+  Creative_BackupImageFeaturesItem_GEOLOCATION,
+  Creative_BackupImageFeaturesItem_INLINESVG,
+  Creative_BackupImageFeaturesItem_Smil,
+  Creative_BackupImageFeaturesItem_SVGHREF,
+  Creative_BackupImageFeaturesItem_SVGCLIPPATHS,
+  Creative_BackupImageFeaturesItem_Touch,
+  Creative_BackupImageFeaturesItem_Webgl,
+  Creative_BackupImageFeaturesItem_SVGFILTERS,
+  Creative_BackupImageFeaturesItem_SVGFEIMAGE,
+  Creative_BackupImageFeaturesItem
+  #-}
+
+newtype Creative_CompatibilityItem = Creative_CompatibilityItem {fromCreative_CompatibilityItem :: 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
+    )
+
+pattern Creative_CompatibilityItem_Display :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_Display = Creative_CompatibilityItem "DISPLAY"
+
+pattern Creative_CompatibilityItem_DISPLAYINTERSTITIAL :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_DISPLAYINTERSTITIAL = Creative_CompatibilityItem "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern Creative_CompatibilityItem_App :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_App = Creative_CompatibilityItem "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern Creative_CompatibilityItem_APPINTERSTITIAL :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_APPINTERSTITIAL = Creative_CompatibilityItem "APP_INTERSTITIAL"
+
+pattern Creative_CompatibilityItem_INSTREAMVIDEO :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_INSTREAMVIDEO = Creative_CompatibilityItem "IN_STREAM_VIDEO"
+
+pattern Creative_CompatibilityItem_INSTREAMAUDIO :: Creative_CompatibilityItem
+pattern Creative_CompatibilityItem_INSTREAMAUDIO = Creative_CompatibilityItem "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  Creative_CompatibilityItem_Display,
+  Creative_CompatibilityItem_DISPLAYINTERSTITIAL,
+  Creative_CompatibilityItem_App,
+  Creative_CompatibilityItem_APPINTERSTITIAL,
+  Creative_CompatibilityItem_INSTREAMVIDEO,
+  Creative_CompatibilityItem_INSTREAMAUDIO,
+  Creative_CompatibilityItem
+  #-}
+
+-- | Required. Type of this creative. Applicable to all creative types. /Note:/ FLASH/INPAGE, HTML5/BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.
+newtype Creative_Type = Creative_Type {fromCreative_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
+    )
+
+pattern Creative_Type_Image :: Creative_Type
+pattern Creative_Type_Image = Creative_Type "IMAGE"
+
+pattern Creative_Type_DISPLAYREDIRECT :: Creative_Type
+pattern Creative_Type_DISPLAYREDIRECT = Creative_Type "DISPLAY_REDIRECT"
+
+pattern Creative_Type_CUSTOMDISPLAY :: Creative_Type
+pattern Creative_Type_CUSTOMDISPLAY = Creative_Type "CUSTOM_DISPLAY"
+
+pattern Creative_Type_INTERNALREDIRECT :: Creative_Type
+pattern Creative_Type_INTERNALREDIRECT = Creative_Type "INTERNAL_REDIRECT"
+
+pattern Creative_Type_CUSTOMDISPLAYINTERSTITIAL :: Creative_Type
+pattern Creative_Type_CUSTOMDISPLAYINTERSTITIAL = Creative_Type "CUSTOM_DISPLAY_INTERSTITIAL"
+
+pattern Creative_Type_INTERSTITIALINTERNALREDIRECT :: Creative_Type
+pattern Creative_Type_INTERSTITIALINTERNALREDIRECT = Creative_Type "INTERSTITIAL_INTERNAL_REDIRECT"
+
+pattern Creative_Type_TRACKINGTEXT :: Creative_Type
+pattern Creative_Type_TRACKINGTEXT = Creative_Type "TRACKING_TEXT"
+
+pattern Creative_Type_RICHMEDIADISPLAYBANNER :: Creative_Type
+pattern Creative_Type_RICHMEDIADISPLAYBANNER = Creative_Type "RICH_MEDIA_DISPLAY_BANNER"
+
+pattern Creative_Type_RICHMEDIAINPAGEFLOATING :: Creative_Type
+pattern Creative_Type_RICHMEDIAINPAGEFLOATING = Creative_Type "RICH_MEDIA_INPAGE_FLOATING"
+
+pattern Creative_Type_RICHMEDIAIMEXPAND :: Creative_Type
+pattern Creative_Type_RICHMEDIAIMEXPAND = Creative_Type "RICH_MEDIA_IM_EXPAND"
+
+pattern Creative_Type_RICHMEDIADISPLAYEXPANDING :: Creative_Type
+pattern Creative_Type_RICHMEDIADISPLAYEXPANDING = Creative_Type "RICH_MEDIA_DISPLAY_EXPANDING"
+
+pattern Creative_Type_RICHMEDIADISPLAYINTERSTITIAL :: Creative_Type
+pattern Creative_Type_RICHMEDIADISPLAYINTERSTITIAL = Creative_Type "RICH_MEDIA_DISPLAY_INTERSTITIAL"
+
+pattern Creative_Type_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL :: Creative_Type
+pattern Creative_Type_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL = Creative_Type "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
+
+pattern Creative_Type_RICHMEDIAMOBILEINAPP :: Creative_Type
+pattern Creative_Type_RICHMEDIAMOBILEINAPP = Creative_Type "RICH_MEDIA_MOBILE_IN_APP"
+
+pattern Creative_Type_FLASHINPAGE :: Creative_Type
+pattern Creative_Type_FLASHINPAGE = Creative_Type "FLASH_INPAGE"
+
+pattern Creative_Type_INSTREAMVIDEO :: Creative_Type
+pattern Creative_Type_INSTREAMVIDEO = Creative_Type "INSTREAM_VIDEO"
+
+pattern Creative_Type_VPAIDLINEARVIDEO :: Creative_Type
+pattern Creative_Type_VPAIDLINEARVIDEO = Creative_Type "VPAID_LINEAR_VIDEO"
+
+pattern Creative_Type_VPAIDNONLINEARVIDEO :: Creative_Type
+pattern Creative_Type_VPAIDNONLINEARVIDEO = Creative_Type "VPAID_NON_LINEAR_VIDEO"
+
+pattern Creative_Type_INSTREAMVIDEOREDIRECT :: Creative_Type
+pattern Creative_Type_INSTREAMVIDEOREDIRECT = Creative_Type "INSTREAM_VIDEO_REDIRECT"
+
+pattern Creative_Type_RICHMEDIAPEELDOWN :: Creative_Type
+pattern Creative_Type_RICHMEDIAPEELDOWN = Creative_Type "RICH_MEDIA_PEEL_DOWN"
+
+pattern Creative_Type_HTML5BANNER :: Creative_Type
+pattern Creative_Type_HTML5BANNER = Creative_Type "HTML5_BANNER"
+
+pattern Creative_Type_Display :: Creative_Type
+pattern Creative_Type_Display = Creative_Type "DISPLAY"
+
+pattern Creative_Type_DISPLAYIMAGEGALLERY :: Creative_Type
+pattern Creative_Type_DISPLAYIMAGEGALLERY = Creative_Type "DISPLAY_IMAGE_GALLERY"
+
+pattern Creative_Type_BRANDSAFEDEFAULTINSTREAMVIDEO :: Creative_Type
+pattern Creative_Type_BRANDSAFEDEFAULTINSTREAMVIDEO = Creative_Type "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
+
+pattern Creative_Type_INSTREAMAUDIO :: Creative_Type
+pattern Creative_Type_INSTREAMAUDIO = Creative_Type "INSTREAM_AUDIO"
+
+{-# COMPLETE
+  Creative_Type_Image,
+  Creative_Type_DISPLAYREDIRECT,
+  Creative_Type_CUSTOMDISPLAY,
+  Creative_Type_INTERNALREDIRECT,
+  Creative_Type_CUSTOMDISPLAYINTERSTITIAL,
+  Creative_Type_INTERSTITIALINTERNALREDIRECT,
+  Creative_Type_TRACKINGTEXT,
+  Creative_Type_RICHMEDIADISPLAYBANNER,
+  Creative_Type_RICHMEDIAINPAGEFLOATING,
+  Creative_Type_RICHMEDIAIMEXPAND,
+  Creative_Type_RICHMEDIADISPLAYEXPANDING,
+  Creative_Type_RICHMEDIADISPLAYINTERSTITIAL,
+  Creative_Type_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL,
+  Creative_Type_RICHMEDIAMOBILEINAPP,
+  Creative_Type_FLASHINPAGE,
+  Creative_Type_INSTREAMVIDEO,
+  Creative_Type_VPAIDLINEARVIDEO,
+  Creative_Type_VPAIDNONLINEARVIDEO,
+  Creative_Type_INSTREAMVIDEOREDIRECT,
+  Creative_Type_RICHMEDIAPEELDOWN,
+  Creative_Type_HTML5BANNER,
+  Creative_Type_Display,
+  Creative_Type_DISPLAYIMAGEGALLERY,
+  Creative_Type_BRANDSAFEDEFAULTINSTREAMVIDEO,
+  Creative_Type_INSTREAMAUDIO,
+  Creative_Type
+  #-}
+
+-- | Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH/MEDIA/DISPLAY/MULTI/FLOATING_INTERSTITIAL .
+newtype CreativeAsset_Alignment = CreativeAsset_Alignment {fromCreativeAsset_Alignment :: 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
+    )
+
+pattern CreativeAsset_Alignment_ALIGNMENTTOP :: CreativeAsset_Alignment
+pattern CreativeAsset_Alignment_ALIGNMENTTOP = CreativeAsset_Alignment "ALIGNMENT_TOP"
+
+pattern CreativeAsset_Alignment_ALIGNMENTRIGHT :: CreativeAsset_Alignment
+pattern CreativeAsset_Alignment_ALIGNMENTRIGHT = CreativeAsset_Alignment "ALIGNMENT_RIGHT"
+
+pattern CreativeAsset_Alignment_ALIGNMENTBOTTOM :: CreativeAsset_Alignment
+pattern CreativeAsset_Alignment_ALIGNMENTBOTTOM = CreativeAsset_Alignment "ALIGNMENT_BOTTOM"
+
+pattern CreativeAsset_Alignment_ALIGNMENTLEFT :: CreativeAsset_Alignment
+pattern CreativeAsset_Alignment_ALIGNMENTLEFT = CreativeAsset_Alignment "ALIGNMENT_LEFT"
+
+{-# COMPLETE
+  CreativeAsset_Alignment_ALIGNMENTTOP,
+  CreativeAsset_Alignment_ALIGNMENTRIGHT,
+  CreativeAsset_Alignment_ALIGNMENTBOTTOM,
+  CreativeAsset_Alignment_ALIGNMENTLEFT,
+  CreativeAsset_Alignment
+  #-}
+
+-- | Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+newtype CreativeAsset_ArtworkType = CreativeAsset_ArtworkType {fromCreativeAsset_ArtworkType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The creative is a Flash creative.
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEFLASH :: CreativeAsset_ArtworkType
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEFLASH = CreativeAsset_ArtworkType "ARTWORK_TYPE_FLASH"
+
+-- | The creative is HTML5.
+pattern CreativeAsset_ArtworkType_ARTWORK_TYPE_HTML5 :: CreativeAsset_ArtworkType
+pattern CreativeAsset_ArtworkType_ARTWORK_TYPE_HTML5 = CreativeAsset_ArtworkType "ARTWORK_TYPE_HTML5"
+
+-- | The creative is HTML5 if available, Flash otherwise.
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEMIXED :: CreativeAsset_ArtworkType
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEMIXED = CreativeAsset_ArtworkType "ARTWORK_TYPE_MIXED"
+
+-- | The creative is Image.
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEIMAGE :: CreativeAsset_ArtworkType
+pattern CreativeAsset_ArtworkType_ARTWORKTYPEIMAGE = CreativeAsset_ArtworkType "ARTWORK_TYPE_IMAGE"
+
+{-# COMPLETE
+  CreativeAsset_ArtworkType_ARTWORKTYPEFLASH,
+  CreativeAsset_ArtworkType_ARTWORK_TYPE_HTML5,
+  CreativeAsset_ArtworkType_ARTWORKTYPEMIXED,
+  CreativeAsset_ArtworkType_ARTWORKTYPEIMAGE,
+  CreativeAsset_ArtworkType
+  #-}
+
+-- | Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.
+newtype CreativeAsset_ChildAssetType = CreativeAsset_ChildAssetType {fromCreativeAsset_ChildAssetType :: 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
+    )
+
+-- | swf files
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEFLASH :: CreativeAsset_ChildAssetType
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEFLASH = CreativeAsset_ChildAssetType "CHILD_ASSET_TYPE_FLASH"
+
+-- | flv and any other video files types
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEVIDEO :: CreativeAsset_ChildAssetType
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEVIDEO = CreativeAsset_ChildAssetType "CHILD_ASSET_TYPE_VIDEO"
+
+-- | image files
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEIMAGE :: CreativeAsset_ChildAssetType
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEIMAGE = CreativeAsset_ChildAssetType "CHILD_ASSET_TYPE_IMAGE"
+
+-- | rest of the supported file types .txt, .xml etc.
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEDATA :: CreativeAsset_ChildAssetType
+pattern CreativeAsset_ChildAssetType_CHILDASSETTYPEDATA = CreativeAsset_ChildAssetType "CHILD_ASSET_TYPE_DATA"
+
+{-# COMPLETE
+  CreativeAsset_ChildAssetType_CHILDASSETTYPEFLASH,
+  CreativeAsset_ChildAssetType_CHILDASSETTYPEVIDEO,
+  CreativeAsset_ChildAssetType_CHILDASSETTYPEIMAGE,
+  CreativeAsset_ChildAssetType_CHILDASSETTYPEDATA,
+  CreativeAsset_ChildAssetType
+  #-}
+
+newtype CreativeAsset_DetectedFeaturesItem = CreativeAsset_DetectedFeaturesItem {fromCreativeAsset_DetectedFeaturesItem :: 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
+    )
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSFONTFACE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSFONTFACE = CreativeAsset_DetectedFeaturesItem "CSS_FONT_FACE"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSBACKGROUNDSIZE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSBACKGROUNDSIZE = CreativeAsset_DetectedFeaturesItem "CSS_BACKGROUND_SIZE"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSBORDERIMAGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSBORDERIMAGE = CreativeAsset_DetectedFeaturesItem "CSS_BORDER_IMAGE"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSBORDERRADIUS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSBORDERRADIUS = CreativeAsset_DetectedFeaturesItem "CSS_BORDER_RADIUS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSBOXSHADOW :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSBOXSHADOW = CreativeAsset_DetectedFeaturesItem "CSS_BOX_SHADOW"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSFLEXBOX :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSFLEXBOX = CreativeAsset_DetectedFeaturesItem "CSS_FLEX_BOX"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSHSLA :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSHSLA = CreativeAsset_DetectedFeaturesItem "CSS_HSLA"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSMULTIPLEBGS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSMULTIPLEBGS = CreativeAsset_DetectedFeaturesItem "CSS_MULTIPLE_BGS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSOPACITY :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSOPACITY = CreativeAsset_DetectedFeaturesItem "CSS_OPACITY"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSRGBA :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSRGBA = CreativeAsset_DetectedFeaturesItem "CSS_RGBA"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSTEXTSHADOW :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSTEXTSHADOW = CreativeAsset_DetectedFeaturesItem "CSS_TEXT_SHADOW"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSANIMATIONS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSANIMATIONS = CreativeAsset_DetectedFeaturesItem "CSS_ANIMATIONS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSCOLUMNS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSCOLUMNS = CreativeAsset_DetectedFeaturesItem "CSS_COLUMNS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSGENERATEDCONTENT :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSGENERATEDCONTENT = CreativeAsset_DetectedFeaturesItem "CSS_GENERATED_CONTENT"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSGRADIENTS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSGRADIENTS = CreativeAsset_DetectedFeaturesItem "CSS_GRADIENTS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSREFLECTIONS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSREFLECTIONS = CreativeAsset_DetectedFeaturesItem "CSS_REFLECTIONS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS = CreativeAsset_DetectedFeaturesItem "CSS_TRANSFORMS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS3D :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS3D = CreativeAsset_DetectedFeaturesItem "CSS_TRANSFORMS3D"
+
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSITIONS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CSSTRANSITIONS = CreativeAsset_DetectedFeaturesItem "CSS_TRANSITIONS"
+
+pattern CreativeAsset_DetectedFeaturesItem_APPLICATIONCACHE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_APPLICATIONCACHE = CreativeAsset_DetectedFeaturesItem "APPLICATION_CACHE"
+
+pattern CreativeAsset_DetectedFeaturesItem_Canvas :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Canvas = CreativeAsset_DetectedFeaturesItem "CANVAS"
+
+pattern CreativeAsset_DetectedFeaturesItem_CANVASTEXT :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_CANVASTEXT = CreativeAsset_DetectedFeaturesItem "CANVAS_TEXT"
+
+pattern CreativeAsset_DetectedFeaturesItem_DRAGANDDROP :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_DRAGANDDROP = CreativeAsset_DetectedFeaturesItem "DRAG_AND_DROP"
+
+pattern CreativeAsset_DetectedFeaturesItem_HASHCHANGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_HASHCHANGE = CreativeAsset_DetectedFeaturesItem "HASH_CHANGE"
+
+pattern CreativeAsset_DetectedFeaturesItem_History :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_History = CreativeAsset_DetectedFeaturesItem "HISTORY"
+
+pattern CreativeAsset_DetectedFeaturesItem_Audio :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Audio = CreativeAsset_DetectedFeaturesItem "AUDIO"
+
+pattern CreativeAsset_DetectedFeaturesItem_Video :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Video = CreativeAsset_DetectedFeaturesItem "VIDEO"
+
+pattern CreativeAsset_DetectedFeaturesItem_INDEXEDDB :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INDEXEDDB = CreativeAsset_DetectedFeaturesItem "INDEXED_DB"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_AUTOCOMPLETE"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOFOCUS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOFOCUS = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_AUTOFOCUS"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRLIST :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRLIST = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_LIST"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRPLACEHOLDER :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRPLACEHOLDER = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_PLACEHOLDER"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMAX :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMAX = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_MAX"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMIN :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMIN = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_MIN"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMULTIPLE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRMULTIPLE = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_MULTIPLE"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRPATTERN :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRPATTERN = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_PATTERN"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRREQUIRED :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRREQUIRED = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_REQUIRED"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRSTEP :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTATTRSTEP = CreativeAsset_DetectedFeaturesItem "INPUT_ATTR_STEP"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPESEARCH :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPESEARCH = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_SEARCH"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPETEL :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPETEL = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_TEL"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEURL :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEURL = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_URL"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEEMAIL :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEEMAIL = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_EMAIL"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIME :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIME = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_DATETIME"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATE = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_DATE"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEMONTH :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEMONTH = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_MONTH"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEWEEK :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEWEEK = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_WEEK"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPETIME :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPETIME = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_TIME"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_DATETIME_LOCAL"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPENUMBER :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPENUMBER = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_NUMBER"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPERANGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPERANGE = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_RANGE"
+
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPECOLOR :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INPUTTYPECOLOR = CreativeAsset_DetectedFeaturesItem "INPUT_TYPE_COLOR"
+
+pattern CreativeAsset_DetectedFeaturesItem_LOCALSTORAGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_LOCALSTORAGE = CreativeAsset_DetectedFeaturesItem "LOCAL_STORAGE"
+
+-- | POST_MESSAGE always required due to html5 implementation.
+pattern CreativeAsset_DetectedFeaturesItem_POSTMESSAGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_POSTMESSAGE = CreativeAsset_DetectedFeaturesItem "POST_MESSAGE"
+
+pattern CreativeAsset_DetectedFeaturesItem_SESSIONSTORAGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_SESSIONSTORAGE = CreativeAsset_DetectedFeaturesItem "SESSION_STORAGE"
+
+pattern CreativeAsset_DetectedFeaturesItem_WEBSOCKETS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_WEBSOCKETS = CreativeAsset_DetectedFeaturesItem "WEB_SOCKETS"
+
+pattern CreativeAsset_DetectedFeaturesItem_WEBSQLDATABASE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_WEBSQLDATABASE = CreativeAsset_DetectedFeaturesItem "WEB_SQL_DATABASE"
+
+pattern CreativeAsset_DetectedFeaturesItem_WEBWORKERS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_WEBWORKERS = CreativeAsset_DetectedFeaturesItem "WEB_WORKERS"
+
+pattern CreativeAsset_DetectedFeaturesItem_GEOLOCATION :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_GEOLOCATION = CreativeAsset_DetectedFeaturesItem "GEO_LOCATION"
+
+pattern CreativeAsset_DetectedFeaturesItem_INLINESVG :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_INLINESVG = CreativeAsset_DetectedFeaturesItem "INLINE_SVG"
+
+pattern CreativeAsset_DetectedFeaturesItem_Smil :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Smil = CreativeAsset_DetectedFeaturesItem "SMIL"
+
+pattern CreativeAsset_DetectedFeaturesItem_SVGHREF :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_SVGHREF = CreativeAsset_DetectedFeaturesItem "SVG_HREF"
+
+pattern CreativeAsset_DetectedFeaturesItem_SVGCLIPPATHS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_SVGCLIPPATHS = CreativeAsset_DetectedFeaturesItem "SVG_CLIP_PATHS"
+
+pattern CreativeAsset_DetectedFeaturesItem_Touch :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Touch = CreativeAsset_DetectedFeaturesItem "TOUCH"
+
+pattern CreativeAsset_DetectedFeaturesItem_Webgl :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_Webgl = CreativeAsset_DetectedFeaturesItem "WEBGL"
+
+pattern CreativeAsset_DetectedFeaturesItem_SVGFILTERS :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_SVGFILTERS = CreativeAsset_DetectedFeaturesItem "SVG_FILTERS"
+
+pattern CreativeAsset_DetectedFeaturesItem_SVGFEIMAGE :: CreativeAsset_DetectedFeaturesItem
+pattern CreativeAsset_DetectedFeaturesItem_SVGFEIMAGE = CreativeAsset_DetectedFeaturesItem "SVG_FE_IMAGE"
+
+{-# COMPLETE
+  CreativeAsset_DetectedFeaturesItem_CSSFONTFACE,
+  CreativeAsset_DetectedFeaturesItem_CSSBACKGROUNDSIZE,
+  CreativeAsset_DetectedFeaturesItem_CSSBORDERIMAGE,
+  CreativeAsset_DetectedFeaturesItem_CSSBORDERRADIUS,
+  CreativeAsset_DetectedFeaturesItem_CSSBOXSHADOW,
+  CreativeAsset_DetectedFeaturesItem_CSSFLEXBOX,
+  CreativeAsset_DetectedFeaturesItem_CSSHSLA,
+  CreativeAsset_DetectedFeaturesItem_CSSMULTIPLEBGS,
+  CreativeAsset_DetectedFeaturesItem_CSSOPACITY,
+  CreativeAsset_DetectedFeaturesItem_CSSRGBA,
+  CreativeAsset_DetectedFeaturesItem_CSSTEXTSHADOW,
+  CreativeAsset_DetectedFeaturesItem_CSSANIMATIONS,
+  CreativeAsset_DetectedFeaturesItem_CSSCOLUMNS,
+  CreativeAsset_DetectedFeaturesItem_CSSGENERATEDCONTENT,
+  CreativeAsset_DetectedFeaturesItem_CSSGRADIENTS,
+  CreativeAsset_DetectedFeaturesItem_CSSREFLECTIONS,
+  CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS,
+  CreativeAsset_DetectedFeaturesItem_CSSTRANSFORMS3D,
+  CreativeAsset_DetectedFeaturesItem_CSSTRANSITIONS,
+  CreativeAsset_DetectedFeaturesItem_APPLICATIONCACHE,
+  CreativeAsset_DetectedFeaturesItem_Canvas,
+  CreativeAsset_DetectedFeaturesItem_CANVASTEXT,
+  CreativeAsset_DetectedFeaturesItem_DRAGANDDROP,
+  CreativeAsset_DetectedFeaturesItem_HASHCHANGE,
+  CreativeAsset_DetectedFeaturesItem_History,
+  CreativeAsset_DetectedFeaturesItem_Audio,
+  CreativeAsset_DetectedFeaturesItem_Video,
+  CreativeAsset_DetectedFeaturesItem_INDEXEDDB,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRAUTOFOCUS,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRLIST,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRPLACEHOLDER,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRMAX,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRMIN,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRMULTIPLE,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRPATTERN,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRREQUIRED,
+  CreativeAsset_DetectedFeaturesItem_INPUTATTRSTEP,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPESEARCH,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPETEL,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEURL,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEEMAIL,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIME,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATE,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEMONTH,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEWEEK,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPETIME,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPENUMBER,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPERANGE,
+  CreativeAsset_DetectedFeaturesItem_INPUTTYPECOLOR,
+  CreativeAsset_DetectedFeaturesItem_LOCALSTORAGE,
+  CreativeAsset_DetectedFeaturesItem_POSTMESSAGE,
+  CreativeAsset_DetectedFeaturesItem_SESSIONSTORAGE,
+  CreativeAsset_DetectedFeaturesItem_WEBSOCKETS,
+  CreativeAsset_DetectedFeaturesItem_WEBSQLDATABASE,
+  CreativeAsset_DetectedFeaturesItem_WEBWORKERS,
+  CreativeAsset_DetectedFeaturesItem_GEOLOCATION,
+  CreativeAsset_DetectedFeaturesItem_INLINESVG,
+  CreativeAsset_DetectedFeaturesItem_Smil,
+  CreativeAsset_DetectedFeaturesItem_SVGHREF,
+  CreativeAsset_DetectedFeaturesItem_SVGCLIPPATHS,
+  CreativeAsset_DetectedFeaturesItem_Touch,
+  CreativeAsset_DetectedFeaturesItem_Webgl,
+  CreativeAsset_DetectedFeaturesItem_SVGFILTERS,
+  CreativeAsset_DetectedFeaturesItem_SVGFEIMAGE,
+  CreativeAsset_DetectedFeaturesItem
+  #-}
+
+-- | Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+newtype CreativeAsset_DisplayType = CreativeAsset_DisplayType {fromCreativeAsset_DisplayType :: 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
+    )
+
+-- | Asset exists in a box and stays within the box.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEINPAGE :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEINPAGE = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_INPAGE"
+
+-- | Asset exists at a self described location on the page.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLOATING :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLOATING = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_FLOATING"
+
+-- | Special display type for IM clients.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEOVERLAY :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEOVERLAY = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_OVERLAY"
+
+-- | Asset changes size.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEEXPANDING :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEEXPANDING = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_EXPANDING"
+
+-- | Not applicable for HTML5.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASH :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASH = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH"
+
+-- | Not applicable for HTML5.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASHEXPANDING :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASHEXPANDING = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING"
+
+-- | Asset sits on the top right and expands.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEPEELDOWN :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEPEELDOWN = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_PEEL_DOWN"
+
+-- | VPAID linear asset.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDLINEAR :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDLINEAR = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_VPAID_LINEAR"
+
+-- | VPAID non linear asset.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDNONLINEAR :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDNONLINEAR = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR"
+
+-- | Backdrop (skin) asset.
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEBACKDROP :: CreativeAsset_DisplayType
+pattern CreativeAsset_DisplayType_ASSETDISPLAYTYPEBACKDROP = CreativeAsset_DisplayType "ASSET_DISPLAY_TYPE_BACKDROP"
+
+{-# COMPLETE
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEINPAGE,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLOATING,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEOVERLAY,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEEXPANDING,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASH,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEFLASHINFLASHEXPANDING,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEPEELDOWN,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDLINEAR,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEVPAIDNONLINEAR,
+  CreativeAsset_DisplayType_ASSETDISPLAYTYPEBACKDROP,
+  CreativeAsset_DisplayType
+  #-}
+
+-- | Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.
+newtype CreativeAsset_DurationType = CreativeAsset_DurationType {fromCreativeAsset_DurationType :: 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
+    )
+
+-- | Asset is displayed for the single run of the time line.
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPEAUTO :: CreativeAsset_DurationType
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPEAUTO = CreativeAsset_DurationType "ASSET_DURATION_TYPE_AUTO"
+
+-- | Asset is displayed indefinitely and it loops on the timeline.
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPENONE :: CreativeAsset_DurationType
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPENONE = CreativeAsset_DurationType "ASSET_DURATION_TYPE_NONE"
+
+-- | User entered duration value in seconds.
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPECUSTOM :: CreativeAsset_DurationType
+pattern CreativeAsset_DurationType_ASSETDURATIONTYPECUSTOM = CreativeAsset_DurationType "ASSET_DURATION_TYPE_CUSTOM"
+
+{-# COMPLETE
+  CreativeAsset_DurationType_ASSETDURATIONTYPEAUTO,
+  CreativeAsset_DurationType_ASSETDURATIONTYPENONE,
+  CreativeAsset_DurationType_ASSETDURATIONTYPECUSTOM,
+  CreativeAsset_DurationType
+  #-}
+
+-- | Orientation of video asset. This is a read-only, auto-generated field.
+newtype CreativeAsset_Orientation = CreativeAsset_Orientation {fromCreativeAsset_Orientation :: 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
+    )
+
+pattern CreativeAsset_Orientation_Landscape :: CreativeAsset_Orientation
+pattern CreativeAsset_Orientation_Landscape = CreativeAsset_Orientation "LANDSCAPE"
+
+pattern CreativeAsset_Orientation_Portrait :: CreativeAsset_Orientation
+pattern CreativeAsset_Orientation_Portrait = CreativeAsset_Orientation "PORTRAIT"
+
+pattern CreativeAsset_Orientation_Square :: CreativeAsset_Orientation
+pattern CreativeAsset_Orientation_Square = CreativeAsset_Orientation "SQUARE"
+
+{-# COMPLETE
+  CreativeAsset_Orientation_Landscape,
+  CreativeAsset_Orientation_Portrait,
+  CreativeAsset_Orientation_Square,
+  CreativeAsset_Orientation
+  #-}
+
+-- | Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.
+newtype CreativeAsset_PositionLeftUnit = CreativeAsset_PositionLeftUnit {fromCreativeAsset_PositionLeftUnit :: 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
+    )
+
+-- | Pixels on a screen.
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPIXEL :: CreativeAsset_PositionLeftUnit
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPIXEL = CreativeAsset_PositionLeftUnit "OFFSET_UNIT_PIXEL"
+
+-- | Percent offset for center asset (rather than top and left).
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPERCENT :: CreativeAsset_PositionLeftUnit
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPERCENT = CreativeAsset_PositionLeftUnit "OFFSET_UNIT_PERCENT"
+
+-- | Pixel offset for center of asset from center of browser window.
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPIXELFROMCENTER :: CreativeAsset_PositionLeftUnit
+pattern CreativeAsset_PositionLeftUnit_OFFSETUNITPIXELFROMCENTER = CreativeAsset_PositionLeftUnit "OFFSET_UNIT_PIXEL_FROM_CENTER"
+
+{-# COMPLETE
+  CreativeAsset_PositionLeftUnit_OFFSETUNITPIXEL,
+  CreativeAsset_PositionLeftUnit_OFFSETUNITPERCENT,
+  CreativeAsset_PositionLeftUnit_OFFSETUNITPIXELFROMCENTER,
+  CreativeAsset_PositionLeftUnit
+  #-}
+
+-- | Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET/DISPLAY/TYPE/OVERLAY. Applicable to the following creative types: all RICH/MEDIA.
+newtype CreativeAsset_PositionTopUnit = CreativeAsset_PositionTopUnit {fromCreativeAsset_PositionTopUnit :: 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
+    )
+
+-- | Pixels on a screen.
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPIXEL :: CreativeAsset_PositionTopUnit
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPIXEL = CreativeAsset_PositionTopUnit "OFFSET_UNIT_PIXEL"
+
+-- | Percent offset for center asset (rather than top and left).
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPERCENT :: CreativeAsset_PositionTopUnit
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPERCENT = CreativeAsset_PositionTopUnit "OFFSET_UNIT_PERCENT"
+
+-- | Pixel offset for center of asset from center of browser window.
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPIXELFROMCENTER :: CreativeAsset_PositionTopUnit
+pattern CreativeAsset_PositionTopUnit_OFFSETUNITPIXELFROMCENTER = CreativeAsset_PositionTopUnit "OFFSET_UNIT_PIXEL_FROM_CENTER"
+
+{-# COMPLETE
+  CreativeAsset_PositionTopUnit_OFFSETUNITPIXEL,
+  CreativeAsset_PositionTopUnit_OFFSETUNITPERCENT,
+  CreativeAsset_PositionTopUnit_OFFSETUNITPIXELFROMCENTER,
+  CreativeAsset_PositionTopUnit
+  #-}
+
+-- | Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING/TEXT. This is a required field. PRIMARY applies to DISPLAY, FLASH/INPAGE, HTML5/BANNER, IMAGE, DISPLAY/IMAGE/GALLERY, all RICH/MEDIA (which may contain multiple primary assets), and all VPAID creatives. BACKUP/IMAGE applies to FLASH/INPAGE, HTML5/BANNER, all RICH/MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML/IMAGE. ADDITIONAL/IMAGE and ADDITIONAL/FLASH apply to FLASH/INPAGE creatives. OTHER refers to assets from sources other than Campaign Manager, such as Studio uploaded assets, applicable to all RICH/MEDIA and all VPAID creatives. PARENT/VIDEO refers to videos uploaded by the user in Campaign Manager and is applicable to INSTREAM/VIDEO and VPAID/LINEAR/VIDEO creatives. TRANSCODED/VIDEO refers to videos transcoded by Campaign Manager from PARENT/VIDEO assets and is applicable to INSTREAM/VIDEO and VPAID/LINEAR/VIDEO creatives. ALTERNATE/VIDEO
+-- refers to the Campaign Manager representation of child asset videos from Studio, and is applicable to VPAID/LINEAR/VIDEO creatives. These cannot be added or removed within Campaign Manager. For VPAID/LINEAR/VIDEO creatives, PARENT/VIDEO, TRANSCODED/VIDEO and ALTERNATE/VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT/VIDEO assets can be added or removed for an INSTREAM/VIDEO or VPAID/LINEAR/VIDEO creative. PARENT/AUDIO refers to audios uploaded by the user in Campaign Manager and is applicable to INSTREAM/AUDIO creatives. TRANSCODED/AUDIO refers to audios transcoded by Campaign Manager from PARENT/AUDIO assets and is applicable to INSTREAM_AUDIO creatives.
+newtype CreativeAsset_Role = CreativeAsset_Role {fromCreativeAsset_Role :: 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
+    )
+
+pattern CreativeAsset_Role_Primary :: CreativeAsset_Role
+pattern CreativeAsset_Role_Primary = CreativeAsset_Role "PRIMARY"
+
+pattern CreativeAsset_Role_BACKUPIMAGE :: CreativeAsset_Role
+pattern CreativeAsset_Role_BACKUPIMAGE = CreativeAsset_Role "BACKUP_IMAGE"
+
+pattern CreativeAsset_Role_ADDITIONALIMAGE :: CreativeAsset_Role
+pattern CreativeAsset_Role_ADDITIONALIMAGE = CreativeAsset_Role "ADDITIONAL_IMAGE"
+
+pattern CreativeAsset_Role_ADDITIONALFLASH :: CreativeAsset_Role
+pattern CreativeAsset_Role_ADDITIONALFLASH = CreativeAsset_Role "ADDITIONAL_FLASH"
+
+pattern CreativeAsset_Role_PARENTVIDEO :: CreativeAsset_Role
+pattern CreativeAsset_Role_PARENTVIDEO = CreativeAsset_Role "PARENT_VIDEO"
+
+pattern CreativeAsset_Role_TRANSCODEDVIDEO :: CreativeAsset_Role
+pattern CreativeAsset_Role_TRANSCODEDVIDEO = CreativeAsset_Role "TRANSCODED_VIDEO"
+
+pattern CreativeAsset_Role_Other :: CreativeAsset_Role
+pattern CreativeAsset_Role_Other = CreativeAsset_Role "OTHER"
+
+pattern CreativeAsset_Role_ALTERNATEVIDEO :: CreativeAsset_Role
+pattern CreativeAsset_Role_ALTERNATEVIDEO = CreativeAsset_Role "ALTERNATE_VIDEO"
+
+pattern CreativeAsset_Role_PARENTAUDIO :: CreativeAsset_Role
+pattern CreativeAsset_Role_PARENTAUDIO = CreativeAsset_Role "PARENT_AUDIO"
+
+pattern CreativeAsset_Role_TRANSCODEDAUDIO :: CreativeAsset_Role
+pattern CreativeAsset_Role_TRANSCODEDAUDIO = CreativeAsset_Role "TRANSCODED_AUDIO"
+
+{-# COMPLETE
+  CreativeAsset_Role_Primary,
+  CreativeAsset_Role_BACKUPIMAGE,
+  CreativeAsset_Role_ADDITIONALIMAGE,
+  CreativeAsset_Role_ADDITIONALFLASH,
+  CreativeAsset_Role_PARENTVIDEO,
+  CreativeAsset_Role_TRANSCODEDVIDEO,
+  CreativeAsset_Role_Other,
+  CreativeAsset_Role_ALTERNATEVIDEO,
+  CreativeAsset_Role_PARENTAUDIO,
+  CreativeAsset_Role_TRANSCODEDAUDIO,
+  CreativeAsset_Role
+  #-}
+
+-- | Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.
+newtype CreativeAsset_StartTimeType = CreativeAsset_StartTimeType {fromCreativeAsset_StartTimeType :: 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
+    )
+
+-- | Asset is not automatically displayed.
+pattern CreativeAsset_StartTimeType_ASSETSTARTTIMETYPENONE :: CreativeAsset_StartTimeType
+pattern CreativeAsset_StartTimeType_ASSETSTARTTIMETYPENONE = CreativeAsset_StartTimeType "ASSET_START_TIME_TYPE_NONE"
+
+-- | Asset is automatically displayed after a fixed period of time.
+pattern CreativeAsset_StartTimeType_ASSETSTARTTIMETYPECUSTOM :: CreativeAsset_StartTimeType
+pattern CreativeAsset_StartTimeType_ASSETSTARTTIMETYPECUSTOM = CreativeAsset_StartTimeType "ASSET_START_TIME_TYPE_CUSTOM"
+
+{-# COMPLETE
+  CreativeAsset_StartTimeType_ASSETSTARTTIMETYPENONE,
+  CreativeAsset_StartTimeType_ASSETSTARTTIMETYPECUSTOM,
+  CreativeAsset_StartTimeType
+  #-}
+
+-- | Window mode options for flash assets. Applicable to the following creative types: FLASH/INPAGE, RICH/MEDIA/DISPLAY/EXPANDING, RICH/MEDIA/IM/EXPAND, RICH/MEDIA/DISPLAY/BANNER, and RICH/MEDIA/INPAGE_FLOATING.
+newtype CreativeAsset_WindowMode = CreativeAsset_WindowMode {fromCreativeAsset_WindowMode :: 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
+    )
+
+-- | Allows overlapping of Html and SWF content.
+pattern CreativeAsset_WindowMode_Opaque :: CreativeAsset_WindowMode
+pattern CreativeAsset_WindowMode_Opaque = CreativeAsset_WindowMode "OPAQUE"
+
+-- | Default
+pattern CreativeAsset_WindowMode_Window :: CreativeAsset_WindowMode
+pattern CreativeAsset_WindowMode_Window = CreativeAsset_WindowMode "WINDOW"
+
+-- | Used for non-square borders. Allows overlapping of Html and SWF content.
+pattern CreativeAsset_WindowMode_Transparent :: CreativeAsset_WindowMode
+pattern CreativeAsset_WindowMode_Transparent = CreativeAsset_WindowMode "TRANSPARENT"
+
+{-# COMPLETE
+  CreativeAsset_WindowMode_Opaque,
+  CreativeAsset_WindowMode_Window,
+  CreativeAsset_WindowMode_Transparent,
+  CreativeAsset_WindowMode
+  #-}
+
+-- | Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.
+newtype CreativeAssetId_Type = CreativeAssetId_Type {fromCreativeAssetId_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
+    )
+
+pattern CreativeAssetId_Type_Image :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_Image = CreativeAssetId_Type "IMAGE"
+
+pattern CreativeAssetId_Type_Flash :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_Flash = CreativeAssetId_Type "FLASH"
+
+pattern CreativeAssetId_Type_Video :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_Video = CreativeAssetId_Type "VIDEO"
+
+pattern CreativeAssetId_Type_Html :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_Html = CreativeAssetId_Type "HTML"
+
+pattern CreativeAssetId_Type_HTMLIMAGE :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_HTMLIMAGE = CreativeAssetId_Type "HTML_IMAGE"
+
+pattern CreativeAssetId_Type_Audio :: CreativeAssetId_Type
+pattern CreativeAssetId_Type_Audio = CreativeAssetId_Type "AUDIO"
+
+{-# COMPLETE
+  CreativeAssetId_Type_Image,
+  CreativeAssetId_Type_Flash,
+  CreativeAssetId_Type_Video,
+  CreativeAssetId_Type_Html,
+  CreativeAssetId_Type_HTMLIMAGE,
+  CreativeAssetId_Type_Audio,
+  CreativeAssetId_Type
+  #-}
+
+newtype CreativeAssetMetadata_DetectedFeaturesItem = CreativeAssetMetadata_DetectedFeaturesItem {fromCreativeAssetMetadata_DetectedFeaturesItem :: 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
+    )
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSFONTFACE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSFONTFACE = CreativeAssetMetadata_DetectedFeaturesItem "CSS_FONT_FACE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBACKGROUNDSIZE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBACKGROUNDSIZE = CreativeAssetMetadata_DetectedFeaturesItem "CSS_BACKGROUND_SIZE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERIMAGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERIMAGE = CreativeAssetMetadata_DetectedFeaturesItem "CSS_BORDER_IMAGE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERRADIUS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERRADIUS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_BORDER_RADIUS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBOXSHADOW :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSBOXSHADOW = CreativeAssetMetadata_DetectedFeaturesItem "CSS_BOX_SHADOW"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSFLEXBOX :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSFLEXBOX = CreativeAssetMetadata_DetectedFeaturesItem "CSS_FLEX_BOX"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSHSLA :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSHSLA = CreativeAssetMetadata_DetectedFeaturesItem "CSS_HSLA"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSMULTIPLEBGS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSMULTIPLEBGS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_MULTIPLE_BGS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSOPACITY :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSOPACITY = CreativeAssetMetadata_DetectedFeaturesItem "CSS_OPACITY"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSRGBA :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSRGBA = CreativeAssetMetadata_DetectedFeaturesItem "CSS_RGBA"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTEXTSHADOW :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTEXTSHADOW = CreativeAssetMetadata_DetectedFeaturesItem "CSS_TEXT_SHADOW"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSANIMATIONS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSANIMATIONS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_ANIMATIONS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSCOLUMNS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSCOLUMNS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_COLUMNS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSGENERATEDCONTENT :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSGENERATEDCONTENT = CreativeAssetMetadata_DetectedFeaturesItem "CSS_GENERATED_CONTENT"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSGRADIENTS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSGRADIENTS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_GRADIENTS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSREFLECTIONS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSREFLECTIONS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_REFLECTIONS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_TRANSFORMS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS3D :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS3D = CreativeAssetMetadata_DetectedFeaturesItem "CSS_TRANSFORMS3D"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSITIONS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSITIONS = CreativeAssetMetadata_DetectedFeaturesItem "CSS_TRANSITIONS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_APPLICATIONCACHE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_APPLICATIONCACHE = CreativeAssetMetadata_DetectedFeaturesItem "APPLICATION_CACHE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Canvas :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Canvas = CreativeAssetMetadata_DetectedFeaturesItem "CANVAS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CANVASTEXT :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_CANVASTEXT = CreativeAssetMetadata_DetectedFeaturesItem "CANVAS_TEXT"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_DRAGANDDROP :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_DRAGANDDROP = CreativeAssetMetadata_DetectedFeaturesItem "DRAG_AND_DROP"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_HASHCHANGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_HASHCHANGE = CreativeAssetMetadata_DetectedFeaturesItem "HASH_CHANGE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_History :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_History = CreativeAssetMetadata_DetectedFeaturesItem "HISTORY"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Audio :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Audio = CreativeAssetMetadata_DetectedFeaturesItem "AUDIO"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Video :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Video = CreativeAssetMetadata_DetectedFeaturesItem "VIDEO"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INDEXEDDB :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INDEXEDDB = CreativeAssetMetadata_DetectedFeaturesItem "INDEXED_DB"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_AUTOCOMPLETE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOFOCUS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOFOCUS = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_AUTOFOCUS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRLIST :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRLIST = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_LIST"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPLACEHOLDER :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPLACEHOLDER = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_PLACEHOLDER"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMAX :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMAX = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_MAX"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMIN :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMIN = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_MIN"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMULTIPLE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMULTIPLE = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_MULTIPLE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPATTERN :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPATTERN = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_PATTERN"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRREQUIRED :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRREQUIRED = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_REQUIRED"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRSTEP :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRSTEP = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_ATTR_STEP"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPESEARCH :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPESEARCH = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_SEARCH"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETEL :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETEL = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_TEL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEURL :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEURL = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_URL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEEMAIL :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEEMAIL = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_EMAIL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIME :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIME = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_DATETIME"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATE = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_DATE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEMONTH :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEMONTH = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_MONTH"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEWEEK :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEWEEK = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_WEEK"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETIME :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETIME = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_TIME"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_DATETIME_LOCAL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPENUMBER :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPENUMBER = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_NUMBER"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPERANGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPERANGE = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_RANGE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPECOLOR :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPECOLOR = CreativeAssetMetadata_DetectedFeaturesItem "INPUT_TYPE_COLOR"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_LOCALSTORAGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_LOCALSTORAGE = CreativeAssetMetadata_DetectedFeaturesItem "LOCAL_STORAGE"
+
+-- | POST_MESSAGE always required due to html5 implementation.
+pattern CreativeAssetMetadata_DetectedFeaturesItem_POSTMESSAGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_POSTMESSAGE = CreativeAssetMetadata_DetectedFeaturesItem "POST_MESSAGE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SESSIONSTORAGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SESSIONSTORAGE = CreativeAssetMetadata_DetectedFeaturesItem "SESSION_STORAGE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBSOCKETS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBSOCKETS = CreativeAssetMetadata_DetectedFeaturesItem "WEB_SOCKETS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBSQLDATABASE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBSQLDATABASE = CreativeAssetMetadata_DetectedFeaturesItem "WEB_SQL_DATABASE"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBWORKERS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_WEBWORKERS = CreativeAssetMetadata_DetectedFeaturesItem "WEB_WORKERS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_GEOLOCATION :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_GEOLOCATION = CreativeAssetMetadata_DetectedFeaturesItem "GEO_LOCATION"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INLINESVG :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_INLINESVG = CreativeAssetMetadata_DetectedFeaturesItem "INLINE_SVG"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Smil :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Smil = CreativeAssetMetadata_DetectedFeaturesItem "SMIL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGHREF :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGHREF = CreativeAssetMetadata_DetectedFeaturesItem "SVG_HREF"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGCLIPPATHS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGCLIPPATHS = CreativeAssetMetadata_DetectedFeaturesItem "SVG_CLIP_PATHS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Touch :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Touch = CreativeAssetMetadata_DetectedFeaturesItem "TOUCH"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Webgl :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_Webgl = CreativeAssetMetadata_DetectedFeaturesItem "WEBGL"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGFILTERS :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGFILTERS = CreativeAssetMetadata_DetectedFeaturesItem "SVG_FILTERS"
+
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGFEIMAGE :: CreativeAssetMetadata_DetectedFeaturesItem
+pattern CreativeAssetMetadata_DetectedFeaturesItem_SVGFEIMAGE = CreativeAssetMetadata_DetectedFeaturesItem "SVG_FE_IMAGE"
+
+{-# COMPLETE
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSFONTFACE,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSBACKGROUNDSIZE,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERIMAGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSBORDERRADIUS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSBOXSHADOW,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSFLEXBOX,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSHSLA,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSMULTIPLEBGS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSOPACITY,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSRGBA,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSTEXTSHADOW,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSANIMATIONS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSCOLUMNS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSGENERATEDCONTENT,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSGRADIENTS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSREFLECTIONS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSFORMS3D,
+  CreativeAssetMetadata_DetectedFeaturesItem_CSSTRANSITIONS,
+  CreativeAssetMetadata_DetectedFeaturesItem_APPLICATIONCACHE,
+  CreativeAssetMetadata_DetectedFeaturesItem_Canvas,
+  CreativeAssetMetadata_DetectedFeaturesItem_CANVASTEXT,
+  CreativeAssetMetadata_DetectedFeaturesItem_DRAGANDDROP,
+  CreativeAssetMetadata_DetectedFeaturesItem_HASHCHANGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_History,
+  CreativeAssetMetadata_DetectedFeaturesItem_Audio,
+  CreativeAssetMetadata_DetectedFeaturesItem_Video,
+  CreativeAssetMetadata_DetectedFeaturesItem_INDEXEDDB,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOCOMPLETE,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRAUTOFOCUS,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRLIST,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPLACEHOLDER,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMAX,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMIN,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRMULTIPLE,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRPATTERN,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRREQUIRED,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTATTRSTEP,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPESEARCH,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETEL,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEURL,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEEMAIL,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIME,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATE,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEMONTH,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEWEEK,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPETIME,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPEDATETIMELOCAL,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPENUMBER,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPERANGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_INPUTTYPECOLOR,
+  CreativeAssetMetadata_DetectedFeaturesItem_LOCALSTORAGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_POSTMESSAGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_SESSIONSTORAGE,
+  CreativeAssetMetadata_DetectedFeaturesItem_WEBSOCKETS,
+  CreativeAssetMetadata_DetectedFeaturesItem_WEBSQLDATABASE,
+  CreativeAssetMetadata_DetectedFeaturesItem_WEBWORKERS,
+  CreativeAssetMetadata_DetectedFeaturesItem_GEOLOCATION,
+  CreativeAssetMetadata_DetectedFeaturesItem_INLINESVG,
+  CreativeAssetMetadata_DetectedFeaturesItem_Smil,
+  CreativeAssetMetadata_DetectedFeaturesItem_SVGHREF,
+  CreativeAssetMetadata_DetectedFeaturesItem_SVGCLIPPATHS,
+  CreativeAssetMetadata_DetectedFeaturesItem_Touch,
+  CreativeAssetMetadata_DetectedFeaturesItem_Webgl,
+  CreativeAssetMetadata_DetectedFeaturesItem_SVGFILTERS,
+  CreativeAssetMetadata_DetectedFeaturesItem_SVGFEIMAGE,
+  CreativeAssetMetadata_DetectedFeaturesItem
+  #-}
+
+newtype CreativeAssetMetadata_WarnedValidationRulesItem = CreativeAssetMetadata_WarnedValidationRulesItem {fromCreativeAssetMetadata_WarnedValidationRulesItem :: 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
+    )
+
+-- | Click tag initialization detected but not at the top level of the primary html file.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGNONTOPLEVEL :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGNONTOPLEVEL = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_NON_TOP_LEVEL"
+
+-- | No click tag detected.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMISSING :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMISSING = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_MISSING"
+
+-- | More than one click tag detected.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMORETHANONE :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMORETHANONE = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_MORE_THAN_ONE"
+
+-- | Click tag invalid (failed url validation).
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_INVALID"
+
+-- | Orphaned asset not referenced.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ORPHANEDASSET :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ORPHANEDASSET = CreativeAssetMetadata_WarnedValidationRulesItem "ORPHANED_ASSET"
+
+-- | Primary html file missing.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_PRIMARYHTMLMISSING :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_PRIMARYHTMLMISSING = CreativeAssetMetadata_WarnedValidationRulesItem "PRIMARY_HTML_MISSING"
+
+-- | Reference to a third-party resource.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_EXTERNALFILEREFERENCED :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_EXTERNALFILEREFERENCED = CreativeAssetMetadata_WarnedValidationRulesItem "EXTERNAL_FILE_REFERENCED"
+
+-- | Reference to INAPP MRAID feature.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MRAIDREFERENCED :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MRAIDREFERENCED = CreativeAssetMetadata_WarnedValidationRulesItem "MRAID_REFERENCED"
+
+-- | Reference to INAPP ADMOB feature.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ADMOBREFERENCED :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ADMOBREFERENCED = CreativeAssetMetadata_WarnedValidationRulesItem "ADMOB_REFERENCED"
+
+-- | Invalid file type referenced.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_FILETYPEINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_FILETYPEINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "FILE_TYPE_INVALID"
+
+-- | Invalid zip passed in
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ZIPINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ZIPINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "ZIP_INVALID"
+
+-- | A relative file was linked to that wasn\'t included in zip.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_LINKEDFILENOTFOUND :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_LINKEDFILENOTFOUND = CreativeAssetMetadata_WarnedValidationRulesItem "LINKED_FILE_NOT_FOUND"
+
+-- | Max flash version at 11.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MAX_FLASH_VERSION_11 :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MAX_FLASH_VERSION_11 = CreativeAssetMetadata_WarnedValidationRulesItem "MAX_FLASH_VERSION_11"
+
+-- | Whether the asset uses secure urls or not.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_NOTSSLCOMPLIANT :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_NOTSSLCOMPLIANT = CreativeAssetMetadata_WarnedValidationRulesItem "NOT_SSL_COMPLIANT"
+
+-- | File detail empty.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_FILEDETAILEMPTY :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_FILEDETAILEMPTY = CreativeAssetMetadata_WarnedValidationRulesItem "FILE_DETAIL_EMPTY"
+
+-- | Asset is not valid and could not be processed.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ASSETINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ASSETINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "ASSET_INVALID"
+
+-- | GWD properties are invalid.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_GWDPROPERTIESINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_GWDPROPERTIESINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "GWD_PROPERTIES_INVALID"
+
+-- | Unsupported Enabler methods in DCM.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ENABLERUNSUPPORTEDMETHODDCM :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ENABLERUNSUPPORTEDMETHODDCM = CreativeAssetMetadata_WarnedValidationRulesItem "ENABLER_UNSUPPORTED_METHOD_DCM"
+
+-- | Asset ad format is unsupported in DCM.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ASSETFORMATUNSUPPORTEDDCM :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_ASSETFORMATUNSUPPORTEDDCM = CreativeAssetMetadata_WarnedValidationRulesItem "ASSET_FORMAT_UNSUPPORTED_DCM"
+
+-- | Component is unsupported in DCM.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_COMPONENTUNSUPPORTEDDCM :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_COMPONENTUNSUPPORTEDDCM = CreativeAssetMetadata_WarnedValidationRulesItem "COMPONENT_UNSUPPORTED_DCM"
+
+-- | Html5 feature is unsupported.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_HTML5FEATUREUNSUPPORTED :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_HTML5FEATUREUNSUPPORTED = CreativeAssetMetadata_WarnedValidationRulesItem "HTML5_FEATURE_UNSUPPORTED"
+
+-- | Click tag defined in GWD asset. GWD-published creatives should use exit events instead of defining var clickTag. Defined var clickTags are a symptom of an unsupported workflow, and an error should be thrown.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINGWD :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINGWD = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_IN_GWD"
+
+-- | Whether the asset has hard coded click tag url(s).
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGHARDCODED :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGHARDCODED = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_HARD_CODED"
+
+-- | Whether an SVG block could not be parsed.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_SVGINVALID :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_SVGINVALID = CreativeAssetMetadata_WarnedValidationRulesItem "SVG_INVALID"
+
+-- | Click tag defined in rich media asset. Rich media creatives should use exit events instead of defining var clickTag. Defined var clickTags are a symptom of an unsupported workflow, and an error should be thrown.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINRICHMEDIA :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINRICHMEDIA = CreativeAssetMetadata_WarnedValidationRulesItem "CLICK_TAG_IN_RICH_MEDIA"
+
+-- | Rich media primary asset is missing the Enabler reference.
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MISSINGENABLERREFERENCE :: CreativeAssetMetadata_WarnedValidationRulesItem
+pattern CreativeAssetMetadata_WarnedValidationRulesItem_MISSINGENABLERREFERENCE = CreativeAssetMetadata_WarnedValidationRulesItem "MISSING_ENABLER_REFERENCE"
+
+{-# COMPLETE
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGNONTOPLEVEL,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMISSING,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGMORETHANONE,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ORPHANEDASSET,
+  CreativeAssetMetadata_WarnedValidationRulesItem_PRIMARYHTMLMISSING,
+  CreativeAssetMetadata_WarnedValidationRulesItem_EXTERNALFILEREFERENCED,
+  CreativeAssetMetadata_WarnedValidationRulesItem_MRAIDREFERENCED,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ADMOBREFERENCED,
+  CreativeAssetMetadata_WarnedValidationRulesItem_FILETYPEINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ZIPINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_LINKEDFILENOTFOUND,
+  CreativeAssetMetadata_WarnedValidationRulesItem_MAX_FLASH_VERSION_11,
+  CreativeAssetMetadata_WarnedValidationRulesItem_NOTSSLCOMPLIANT,
+  CreativeAssetMetadata_WarnedValidationRulesItem_FILEDETAILEMPTY,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ASSETINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_GWDPROPERTIESINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ENABLERUNSUPPORTEDMETHODDCM,
+  CreativeAssetMetadata_WarnedValidationRulesItem_ASSETFORMATUNSUPPORTEDDCM,
+  CreativeAssetMetadata_WarnedValidationRulesItem_COMPONENTUNSUPPORTEDDCM,
+  CreativeAssetMetadata_WarnedValidationRulesItem_HTML5FEATUREUNSUPPORTED,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINGWD,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGHARDCODED,
+  CreativeAssetMetadata_WarnedValidationRulesItem_SVGINVALID,
+  CreativeAssetMetadata_WarnedValidationRulesItem_CLICKTAGINRICHMEDIA,
+  CreativeAssetMetadata_WarnedValidationRulesItem_MISSINGENABLERREFERENCE,
+  CreativeAssetMetadata_WarnedValidationRulesItem
+  #-}
+
+-- | Type of the event. This is a read-only field.
+newtype CreativeCustomEvent_AdvertiserCustomEventType = CreativeCustomEvent_AdvertiserCustomEventType {fromCreativeCustomEvent_AdvertiserCustomEventType :: 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
+    )
+
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTTIMER :: CreativeCustomEvent_AdvertiserCustomEventType
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTTIMER = CreativeCustomEvent_AdvertiserCustomEventType "ADVERTISER_EVENT_TIMER"
+
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTEXIT :: CreativeCustomEvent_AdvertiserCustomEventType
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTEXIT = CreativeCustomEvent_AdvertiserCustomEventType "ADVERTISER_EVENT_EXIT"
+
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTCOUNTER :: CreativeCustomEvent_AdvertiserCustomEventType
+pattern CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTCOUNTER = CreativeCustomEvent_AdvertiserCustomEventType "ADVERTISER_EVENT_COUNTER"
+
+{-# COMPLETE
+  CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTTIMER,
+  CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTEXIT,
+  CreativeCustomEvent_AdvertiserCustomEventType_ADVERTISEREVENTCOUNTER,
+  CreativeCustomEvent_AdvertiserCustomEventType
+  #-}
+
+-- | Artwork type used by the creative.This is a read-only field.
+newtype CreativeCustomEvent_ArtworkType = CreativeCustomEvent_ArtworkType {fromCreativeCustomEvent_ArtworkType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The creative is a Flash creative.
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEFLASH :: CreativeCustomEvent_ArtworkType
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEFLASH = CreativeCustomEvent_ArtworkType "ARTWORK_TYPE_FLASH"
+
+-- | The creative is HTML5.
+pattern CreativeCustomEvent_ArtworkType_ARTWORK_TYPE_HTML5 :: CreativeCustomEvent_ArtworkType
+pattern CreativeCustomEvent_ArtworkType_ARTWORK_TYPE_HTML5 = CreativeCustomEvent_ArtworkType "ARTWORK_TYPE_HTML5"
+
+-- | The creative is HTML5 if available, Flash otherwise.
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEMIXED :: CreativeCustomEvent_ArtworkType
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEMIXED = CreativeCustomEvent_ArtworkType "ARTWORK_TYPE_MIXED"
+
+-- | The creative is Image.
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEIMAGE :: CreativeCustomEvent_ArtworkType
+pattern CreativeCustomEvent_ArtworkType_ARTWORKTYPEIMAGE = CreativeCustomEvent_ArtworkType "ARTWORK_TYPE_IMAGE"
+
+{-# COMPLETE
+  CreativeCustomEvent_ArtworkType_ARTWORKTYPEFLASH,
+  CreativeCustomEvent_ArtworkType_ARTWORK_TYPE_HTML5,
+  CreativeCustomEvent_ArtworkType_ARTWORKTYPEMIXED,
+  CreativeCustomEvent_ArtworkType_ARTWORKTYPEIMAGE,
+  CreativeCustomEvent_ArtworkType
+  #-}
+
+-- | Target type used by the event.
+newtype CreativeCustomEvent_TargetType = CreativeCustomEvent_TargetType {fromCreativeCustomEvent_TargetType :: 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
+    )
+
+-- | New tab
+pattern CreativeCustomEvent_TargetType_TARGETBLANK :: CreativeCustomEvent_TargetType
+pattern CreativeCustomEvent_TargetType_TARGETBLANK = CreativeCustomEvent_TargetType "TARGET_BLANK"
+
+-- | Current tab
+pattern CreativeCustomEvent_TargetType_TARGETTOP :: CreativeCustomEvent_TargetType
+pattern CreativeCustomEvent_TargetType_TARGETTOP = CreativeCustomEvent_TargetType "TARGET_TOP"
+
+-- | Same frame
+pattern CreativeCustomEvent_TargetType_TARGETSELF :: CreativeCustomEvent_TargetType
+pattern CreativeCustomEvent_TargetType_TARGETSELF = CreativeCustomEvent_TargetType "TARGET_SELF"
+
+-- | Parent frame
+pattern CreativeCustomEvent_TargetType_TARGETPARENT :: CreativeCustomEvent_TargetType
+pattern CreativeCustomEvent_TargetType_TARGETPARENT = CreativeCustomEvent_TargetType "TARGET_PARENT"
+
+-- | New window with properties specified in window_properties
+pattern CreativeCustomEvent_TargetType_TARGETPOPUP :: CreativeCustomEvent_TargetType
+pattern CreativeCustomEvent_TargetType_TARGETPOPUP = CreativeCustomEvent_TargetType "TARGET_POPUP"
+
+{-# COMPLETE
+  CreativeCustomEvent_TargetType_TARGETBLANK,
+  CreativeCustomEvent_TargetType_TARGETTOP,
+  CreativeCustomEvent_TargetType_TARGETSELF,
+  CreativeCustomEvent_TargetType_TARGETPARENT,
+  CreativeCustomEvent_TargetType_TARGETPOPUP,
+  CreativeCustomEvent_TargetType
+  #-}
+
+-- | Creative group number of the creative group assignment.
+newtype CreativeGroupAssignment_CreativeGroupNumber = CreativeGroupAssignment_CreativeGroupNumber {fromCreativeGroupAssignment_CreativeGroupNumber :: 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
+    )
+
+pattern CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPONE :: CreativeGroupAssignment_CreativeGroupNumber
+pattern CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPONE = CreativeGroupAssignment_CreativeGroupNumber "CREATIVE_GROUP_ONE"
+
+pattern CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPTWO :: CreativeGroupAssignment_CreativeGroupNumber
+pattern CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPTWO = CreativeGroupAssignment_CreativeGroupNumber "CREATIVE_GROUP_TWO"
+
+{-# COMPLETE
+  CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPONE,
+  CreativeGroupAssignment_CreativeGroupNumber_CREATIVEGROUPTWO,
+  CreativeGroupAssignment_CreativeGroupNumber
+  #-}
+
+-- | Optimization model for this configuration.
+newtype CreativeOptimizationConfiguration_OptimizationModel = CreativeOptimizationConfiguration_OptimizationModel {fromCreativeOptimizationConfiguration_OptimizationModel :: 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
+    )
+
+pattern CreativeOptimizationConfiguration_OptimizationModel_Click :: CreativeOptimizationConfiguration_OptimizationModel
+pattern CreativeOptimizationConfiguration_OptimizationModel_Click = CreativeOptimizationConfiguration_OptimizationModel "CLICK"
+
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTCLICK :: CreativeOptimizationConfiguration_OptimizationModel
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTCLICK = CreativeOptimizationConfiguration_OptimizationModel "POST_CLICK"
+
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTIMPRESSION :: CreativeOptimizationConfiguration_OptimizationModel
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTIMPRESSION = CreativeOptimizationConfiguration_OptimizationModel "POST_IMPRESSION"
+
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTCLICKANDIMPRESSION :: CreativeOptimizationConfiguration_OptimizationModel
+pattern CreativeOptimizationConfiguration_OptimizationModel_POSTCLICKANDIMPRESSION = CreativeOptimizationConfiguration_OptimizationModel "POST_CLICK_AND_IMPRESSION"
+
+pattern CreativeOptimizationConfiguration_OptimizationModel_VIDEOCOMPLETION :: CreativeOptimizationConfiguration_OptimizationModel
+pattern CreativeOptimizationConfiguration_OptimizationModel_VIDEOCOMPLETION = CreativeOptimizationConfiguration_OptimizationModel "VIDEO_COMPLETION"
+
+{-# COMPLETE
+  CreativeOptimizationConfiguration_OptimizationModel_Click,
+  CreativeOptimizationConfiguration_OptimizationModel_POSTCLICK,
+  CreativeOptimizationConfiguration_OptimizationModel_POSTIMPRESSION,
+  CreativeOptimizationConfiguration_OptimizationModel_POSTCLICKANDIMPRESSION,
+  CreativeOptimizationConfiguration_OptimizationModel_VIDEOCOMPLETION,
+  CreativeOptimizationConfiguration_OptimizationModel
+  #-}
+
+-- | Type of creative rotation. Can be used to specify whether to use sequential or random rotation.
+newtype CreativeRotation_Type = CreativeRotation_Type {fromCreativeRotation_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
+    )
+
+-- | The weights of each creative in the rotation should be sequential starting at 1. The user may adjust the order.
+pattern CreativeRotation_Type_CREATIVEROTATIONTYPESEQUENTIAL :: CreativeRotation_Type
+pattern CreativeRotation_Type_CREATIVEROTATIONTYPESEQUENTIAL = CreativeRotation_Type "CREATIVE_ROTATION_TYPE_SEQUENTIAL"
+
+-- | The weights are calculated according to the ad\'s CreativeRoationWeightStrategy.
+pattern CreativeRotation_Type_CREATIVEROTATIONTYPERANDOM :: CreativeRotation_Type
+pattern CreativeRotation_Type_CREATIVEROTATIONTYPERANDOM = CreativeRotation_Type "CREATIVE_ROTATION_TYPE_RANDOM"
+
+{-# COMPLETE
+  CreativeRotation_Type_CREATIVEROTATIONTYPESEQUENTIAL,
+  CreativeRotation_Type_CREATIVEROTATIONTYPERANDOM,
+  CreativeRotation_Type
+  #-}
+
+-- | Strategy for calculating weights. Used with CREATIVE/ROTATION/TYPE_RANDOM.
+newtype CreativeRotation_WeightCalculationStrategy = CreativeRotation_WeightCalculationStrategy {fromCreativeRotation_WeightCalculationStrategy :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The creative weights should all be equal to 1. This is the default value for all ads with a rotation type of Random.
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYEQUAL :: CreativeRotation_WeightCalculationStrategy
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYEQUAL = CreativeRotation_WeightCalculationStrategy "WEIGHT_STRATEGY_EQUAL"
+
+-- | The creative weights can be any user provided positive integer.
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYCUSTOM :: CreativeRotation_WeightCalculationStrategy
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYCUSTOM = CreativeRotation_WeightCalculationStrategy "WEIGHT_STRATEGY_CUSTOM"
+
+-- | The weights will be automatically calculated giving preference to the creative that has the highest CTR. The CTR for campaigns that are optimized for clicks = clicks\/impressions. The CTR for campaigns that are optimized for view-through or click through is sum(activities + floodlight weight)\/impressions.
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYHIGHESTCTR :: CreativeRotation_WeightCalculationStrategy
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYHIGHESTCTR = CreativeRotation_WeightCalculationStrategy "WEIGHT_STRATEGY_HIGHEST_CTR"
+
+-- | The creative weights will be automatically calculated using a formula that could not possibly be explained in these comments. The value will be within some predetermined range (probably 0 - 1,000,000).
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYOPTIMIZED :: CreativeRotation_WeightCalculationStrategy
+pattern CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYOPTIMIZED = CreativeRotation_WeightCalculationStrategy "WEIGHT_STRATEGY_OPTIMIZED"
+
+{-# COMPLETE
+  CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYEQUAL,
+  CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYCUSTOM,
+  CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYHIGHESTCTR,
+  CreativeRotation_WeightCalculationStrategy_WEIGHTSTRATEGYOPTIMIZED,
+  CreativeRotation_WeightCalculationStrategy
+  #-}
+
+-- | The type of custom floodlight variable to supply a value for. These map to the \"u[1-100]=\" in the tags.
+newtype CustomFloodlightVariable_Type = CustomFloodlightVariable_Type {fromCustomFloodlightVariable_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
+    )
+
+pattern CustomFloodlightVariable_Type_U1 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U1 = CustomFloodlightVariable_Type "U1"
+
+pattern CustomFloodlightVariable_Type_U2 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U2 = CustomFloodlightVariable_Type "U2"
+
+pattern CustomFloodlightVariable_Type_U3 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U3 = CustomFloodlightVariable_Type "U3"
+
+pattern CustomFloodlightVariable_Type_U4 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U4 = CustomFloodlightVariable_Type "U4"
+
+pattern CustomFloodlightVariable_Type_U5 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U5 = CustomFloodlightVariable_Type "U5"
+
+pattern CustomFloodlightVariable_Type_U6 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U6 = CustomFloodlightVariable_Type "U6"
+
+pattern CustomFloodlightVariable_Type_U7 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U7 = CustomFloodlightVariable_Type "U7"
+
+pattern CustomFloodlightVariable_Type_U8 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U8 = CustomFloodlightVariable_Type "U8"
+
+pattern CustomFloodlightVariable_Type_U9 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U9 = CustomFloodlightVariable_Type "U9"
+
+pattern CustomFloodlightVariable_Type_U10 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U10 = CustomFloodlightVariable_Type "U10"
+
+pattern CustomFloodlightVariable_Type_U11 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U11 = CustomFloodlightVariable_Type "U11"
+
+pattern CustomFloodlightVariable_Type_U12 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U12 = CustomFloodlightVariable_Type "U12"
+
+pattern CustomFloodlightVariable_Type_U13 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U13 = CustomFloodlightVariable_Type "U13"
+
+pattern CustomFloodlightVariable_Type_U14 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U14 = CustomFloodlightVariable_Type "U14"
+
+pattern CustomFloodlightVariable_Type_U15 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U15 = CustomFloodlightVariable_Type "U15"
+
+pattern CustomFloodlightVariable_Type_U16 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U16 = CustomFloodlightVariable_Type "U16"
+
+pattern CustomFloodlightVariable_Type_U17 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U17 = CustomFloodlightVariable_Type "U17"
+
+pattern CustomFloodlightVariable_Type_U18 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U18 = CustomFloodlightVariable_Type "U18"
+
+pattern CustomFloodlightVariable_Type_U19 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U19 = CustomFloodlightVariable_Type "U19"
+
+pattern CustomFloodlightVariable_Type_U20 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U20 = CustomFloodlightVariable_Type "U20"
+
+pattern CustomFloodlightVariable_Type_U21 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U21 = CustomFloodlightVariable_Type "U21"
+
+pattern CustomFloodlightVariable_Type_U22 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U22 = CustomFloodlightVariable_Type "U22"
+
+pattern CustomFloodlightVariable_Type_U23 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U23 = CustomFloodlightVariable_Type "U23"
+
+pattern CustomFloodlightVariable_Type_U24 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U24 = CustomFloodlightVariable_Type "U24"
+
+pattern CustomFloodlightVariable_Type_U25 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U25 = CustomFloodlightVariable_Type "U25"
+
+pattern CustomFloodlightVariable_Type_U26 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U26 = CustomFloodlightVariable_Type "U26"
+
+pattern CustomFloodlightVariable_Type_U27 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U27 = CustomFloodlightVariable_Type "U27"
+
+pattern CustomFloodlightVariable_Type_U28 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U28 = CustomFloodlightVariable_Type "U28"
+
+pattern CustomFloodlightVariable_Type_U29 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U29 = CustomFloodlightVariable_Type "U29"
+
+pattern CustomFloodlightVariable_Type_U30 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U30 = CustomFloodlightVariable_Type "U30"
+
+pattern CustomFloodlightVariable_Type_U31 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U31 = CustomFloodlightVariable_Type "U31"
+
+pattern CustomFloodlightVariable_Type_U32 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U32 = CustomFloodlightVariable_Type "U32"
+
+pattern CustomFloodlightVariable_Type_U33 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U33 = CustomFloodlightVariable_Type "U33"
+
+pattern CustomFloodlightVariable_Type_U34 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U34 = CustomFloodlightVariable_Type "U34"
+
+pattern CustomFloodlightVariable_Type_U35 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U35 = CustomFloodlightVariable_Type "U35"
+
+pattern CustomFloodlightVariable_Type_U36 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U36 = CustomFloodlightVariable_Type "U36"
+
+pattern CustomFloodlightVariable_Type_U37 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U37 = CustomFloodlightVariable_Type "U37"
+
+pattern CustomFloodlightVariable_Type_U38 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U38 = CustomFloodlightVariable_Type "U38"
+
+pattern CustomFloodlightVariable_Type_U39 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U39 = CustomFloodlightVariable_Type "U39"
+
+pattern CustomFloodlightVariable_Type_U40 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U40 = CustomFloodlightVariable_Type "U40"
+
+pattern CustomFloodlightVariable_Type_U41 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U41 = CustomFloodlightVariable_Type "U41"
+
+pattern CustomFloodlightVariable_Type_U42 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U42 = CustomFloodlightVariable_Type "U42"
+
+pattern CustomFloodlightVariable_Type_U43 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U43 = CustomFloodlightVariable_Type "U43"
+
+pattern CustomFloodlightVariable_Type_U44 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U44 = CustomFloodlightVariable_Type "U44"
+
+pattern CustomFloodlightVariable_Type_U45 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U45 = CustomFloodlightVariable_Type "U45"
+
+pattern CustomFloodlightVariable_Type_U46 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U46 = CustomFloodlightVariable_Type "U46"
+
+pattern CustomFloodlightVariable_Type_U47 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U47 = CustomFloodlightVariable_Type "U47"
+
+pattern CustomFloodlightVariable_Type_U48 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U48 = CustomFloodlightVariable_Type "U48"
+
+pattern CustomFloodlightVariable_Type_U49 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U49 = CustomFloodlightVariable_Type "U49"
+
+pattern CustomFloodlightVariable_Type_U50 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U50 = CustomFloodlightVariable_Type "U50"
+
+pattern CustomFloodlightVariable_Type_U51 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U51 = CustomFloodlightVariable_Type "U51"
+
+pattern CustomFloodlightVariable_Type_U52 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U52 = CustomFloodlightVariable_Type "U52"
+
+pattern CustomFloodlightVariable_Type_U53 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U53 = CustomFloodlightVariable_Type "U53"
+
+pattern CustomFloodlightVariable_Type_U54 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U54 = CustomFloodlightVariable_Type "U54"
+
+pattern CustomFloodlightVariable_Type_U55 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U55 = CustomFloodlightVariable_Type "U55"
+
+pattern CustomFloodlightVariable_Type_U56 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U56 = CustomFloodlightVariable_Type "U56"
+
+pattern CustomFloodlightVariable_Type_U57 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U57 = CustomFloodlightVariable_Type "U57"
+
+pattern CustomFloodlightVariable_Type_U58 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U58 = CustomFloodlightVariable_Type "U58"
+
+pattern CustomFloodlightVariable_Type_U59 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U59 = CustomFloodlightVariable_Type "U59"
+
+pattern CustomFloodlightVariable_Type_U60 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U60 = CustomFloodlightVariable_Type "U60"
+
+pattern CustomFloodlightVariable_Type_U61 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U61 = CustomFloodlightVariable_Type "U61"
+
+pattern CustomFloodlightVariable_Type_U62 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U62 = CustomFloodlightVariable_Type "U62"
+
+pattern CustomFloodlightVariable_Type_U63 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U63 = CustomFloodlightVariable_Type "U63"
+
+pattern CustomFloodlightVariable_Type_U64 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U64 = CustomFloodlightVariable_Type "U64"
+
+pattern CustomFloodlightVariable_Type_U65 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U65 = CustomFloodlightVariable_Type "U65"
+
+pattern CustomFloodlightVariable_Type_U66 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U66 = CustomFloodlightVariable_Type "U66"
+
+pattern CustomFloodlightVariable_Type_U67 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U67 = CustomFloodlightVariable_Type "U67"
+
+pattern CustomFloodlightVariable_Type_U68 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U68 = CustomFloodlightVariable_Type "U68"
+
+pattern CustomFloodlightVariable_Type_U69 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U69 = CustomFloodlightVariable_Type "U69"
+
+pattern CustomFloodlightVariable_Type_U70 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U70 = CustomFloodlightVariable_Type "U70"
+
+pattern CustomFloodlightVariable_Type_U71 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U71 = CustomFloodlightVariable_Type "U71"
+
+pattern CustomFloodlightVariable_Type_U72 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U72 = CustomFloodlightVariable_Type "U72"
+
+pattern CustomFloodlightVariable_Type_U73 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U73 = CustomFloodlightVariable_Type "U73"
+
+pattern CustomFloodlightVariable_Type_U74 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U74 = CustomFloodlightVariable_Type "U74"
+
+pattern CustomFloodlightVariable_Type_U75 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U75 = CustomFloodlightVariable_Type "U75"
+
+pattern CustomFloodlightVariable_Type_U76 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U76 = CustomFloodlightVariable_Type "U76"
+
+pattern CustomFloodlightVariable_Type_U77 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U77 = CustomFloodlightVariable_Type "U77"
+
+pattern CustomFloodlightVariable_Type_U78 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U78 = CustomFloodlightVariable_Type "U78"
+
+pattern CustomFloodlightVariable_Type_U79 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U79 = CustomFloodlightVariable_Type "U79"
+
+pattern CustomFloodlightVariable_Type_U80 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U80 = CustomFloodlightVariable_Type "U80"
+
+pattern CustomFloodlightVariable_Type_U81 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U81 = CustomFloodlightVariable_Type "U81"
+
+pattern CustomFloodlightVariable_Type_U82 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U82 = CustomFloodlightVariable_Type "U82"
+
+pattern CustomFloodlightVariable_Type_U83 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U83 = CustomFloodlightVariable_Type "U83"
+
+pattern CustomFloodlightVariable_Type_U84 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U84 = CustomFloodlightVariable_Type "U84"
+
+pattern CustomFloodlightVariable_Type_U85 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U85 = CustomFloodlightVariable_Type "U85"
+
+pattern CustomFloodlightVariable_Type_U86 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U86 = CustomFloodlightVariable_Type "U86"
+
+pattern CustomFloodlightVariable_Type_U87 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U87 = CustomFloodlightVariable_Type "U87"
+
+pattern CustomFloodlightVariable_Type_U88 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U88 = CustomFloodlightVariable_Type "U88"
+
+pattern CustomFloodlightVariable_Type_U89 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U89 = CustomFloodlightVariable_Type "U89"
+
+pattern CustomFloodlightVariable_Type_U90 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U90 = CustomFloodlightVariable_Type "U90"
+
+pattern CustomFloodlightVariable_Type_U91 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U91 = CustomFloodlightVariable_Type "U91"
+
+pattern CustomFloodlightVariable_Type_U92 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U92 = CustomFloodlightVariable_Type "U92"
+
+pattern CustomFloodlightVariable_Type_U93 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U93 = CustomFloodlightVariable_Type "U93"
+
+pattern CustomFloodlightVariable_Type_U94 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U94 = CustomFloodlightVariable_Type "U94"
+
+pattern CustomFloodlightVariable_Type_U95 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U95 = CustomFloodlightVariable_Type "U95"
+
+pattern CustomFloodlightVariable_Type_U96 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U96 = CustomFloodlightVariable_Type "U96"
+
+pattern CustomFloodlightVariable_Type_U97 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U97 = CustomFloodlightVariable_Type "U97"
+
+pattern CustomFloodlightVariable_Type_U98 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U98 = CustomFloodlightVariable_Type "U98"
+
+pattern CustomFloodlightVariable_Type_U99 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U99 = CustomFloodlightVariable_Type "U99"
+
+pattern CustomFloodlightVariable_Type_U100 :: CustomFloodlightVariable_Type
+pattern CustomFloodlightVariable_Type_U100 = CustomFloodlightVariable_Type "U100"
+
+{-# COMPLETE
+  CustomFloodlightVariable_Type_U1,
+  CustomFloodlightVariable_Type_U2,
+  CustomFloodlightVariable_Type_U3,
+  CustomFloodlightVariable_Type_U4,
+  CustomFloodlightVariable_Type_U5,
+  CustomFloodlightVariable_Type_U6,
+  CustomFloodlightVariable_Type_U7,
+  CustomFloodlightVariable_Type_U8,
+  CustomFloodlightVariable_Type_U9,
+  CustomFloodlightVariable_Type_U10,
+  CustomFloodlightVariable_Type_U11,
+  CustomFloodlightVariable_Type_U12,
+  CustomFloodlightVariable_Type_U13,
+  CustomFloodlightVariable_Type_U14,
+  CustomFloodlightVariable_Type_U15,
+  CustomFloodlightVariable_Type_U16,
+  CustomFloodlightVariable_Type_U17,
+  CustomFloodlightVariable_Type_U18,
+  CustomFloodlightVariable_Type_U19,
+  CustomFloodlightVariable_Type_U20,
+  CustomFloodlightVariable_Type_U21,
+  CustomFloodlightVariable_Type_U22,
+  CustomFloodlightVariable_Type_U23,
+  CustomFloodlightVariable_Type_U24,
+  CustomFloodlightVariable_Type_U25,
+  CustomFloodlightVariable_Type_U26,
+  CustomFloodlightVariable_Type_U27,
+  CustomFloodlightVariable_Type_U28,
+  CustomFloodlightVariable_Type_U29,
+  CustomFloodlightVariable_Type_U30,
+  CustomFloodlightVariable_Type_U31,
+  CustomFloodlightVariable_Type_U32,
+  CustomFloodlightVariable_Type_U33,
+  CustomFloodlightVariable_Type_U34,
+  CustomFloodlightVariable_Type_U35,
+  CustomFloodlightVariable_Type_U36,
+  CustomFloodlightVariable_Type_U37,
+  CustomFloodlightVariable_Type_U38,
+  CustomFloodlightVariable_Type_U39,
+  CustomFloodlightVariable_Type_U40,
+  CustomFloodlightVariable_Type_U41,
+  CustomFloodlightVariable_Type_U42,
+  CustomFloodlightVariable_Type_U43,
+  CustomFloodlightVariable_Type_U44,
+  CustomFloodlightVariable_Type_U45,
+  CustomFloodlightVariable_Type_U46,
+  CustomFloodlightVariable_Type_U47,
+  CustomFloodlightVariable_Type_U48,
+  CustomFloodlightVariable_Type_U49,
+  CustomFloodlightVariable_Type_U50,
+  CustomFloodlightVariable_Type_U51,
+  CustomFloodlightVariable_Type_U52,
+  CustomFloodlightVariable_Type_U53,
+  CustomFloodlightVariable_Type_U54,
+  CustomFloodlightVariable_Type_U55,
+  CustomFloodlightVariable_Type_U56,
+  CustomFloodlightVariable_Type_U57,
+  CustomFloodlightVariable_Type_U58,
+  CustomFloodlightVariable_Type_U59,
+  CustomFloodlightVariable_Type_U60,
+  CustomFloodlightVariable_Type_U61,
+  CustomFloodlightVariable_Type_U62,
+  CustomFloodlightVariable_Type_U63,
+  CustomFloodlightVariable_Type_U64,
+  CustomFloodlightVariable_Type_U65,
+  CustomFloodlightVariable_Type_U66,
+  CustomFloodlightVariable_Type_U67,
+  CustomFloodlightVariable_Type_U68,
+  CustomFloodlightVariable_Type_U69,
+  CustomFloodlightVariable_Type_U70,
+  CustomFloodlightVariable_Type_U71,
+  CustomFloodlightVariable_Type_U72,
+  CustomFloodlightVariable_Type_U73,
+  CustomFloodlightVariable_Type_U74,
+  CustomFloodlightVariable_Type_U75,
+  CustomFloodlightVariable_Type_U76,
+  CustomFloodlightVariable_Type_U77,
+  CustomFloodlightVariable_Type_U78,
+  CustomFloodlightVariable_Type_U79,
+  CustomFloodlightVariable_Type_U80,
+  CustomFloodlightVariable_Type_U81,
+  CustomFloodlightVariable_Type_U82,
+  CustomFloodlightVariable_Type_U83,
+  CustomFloodlightVariable_Type_U84,
+  CustomFloodlightVariable_Type_U85,
+  CustomFloodlightVariable_Type_U86,
+  CustomFloodlightVariable_Type_U87,
+  CustomFloodlightVariable_Type_U88,
+  CustomFloodlightVariable_Type_U89,
+  CustomFloodlightVariable_Type_U90,
+  CustomFloodlightVariable_Type_U91,
+  CustomFloodlightVariable_Type_U92,
+  CustomFloodlightVariable_Type_U93,
+  CustomFloodlightVariable_Type_U94,
+  CustomFloodlightVariable_Type_U95,
+  CustomFloodlightVariable_Type_U96,
+  CustomFloodlightVariable_Type_U97,
+  CustomFloodlightVariable_Type_U98,
+  CustomFloodlightVariable_Type_U99,
+  CustomFloodlightVariable_Type_U100,
+  CustomFloodlightVariable_Type
+  #-}
+
+-- | The date range relative to the date of when the report is run.
+newtype DateRange_RelativeDateRange = DateRange_RelativeDateRange {fromDateRange_RelativeDateRange :: 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
+    )
+
+pattern DateRange_RelativeDateRange_Today :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_Today = DateRange_RelativeDateRange "TODAY"
+
+pattern DateRange_RelativeDateRange_Yesterday :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_Yesterday = DateRange_RelativeDateRange "YESTERDAY"
+
+pattern DateRange_RelativeDateRange_WEEKTODATE :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_WEEKTODATE = DateRange_RelativeDateRange "WEEK_TO_DATE"
+
+pattern DateRange_RelativeDateRange_MONTHTODATE :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_MONTHTODATE = DateRange_RelativeDateRange "MONTH_TO_DATE"
+
+pattern DateRange_RelativeDateRange_QUARTERTODATE :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_QUARTERTODATE = DateRange_RelativeDateRange "QUARTER_TO_DATE"
+
+pattern DateRange_RelativeDateRange_YEARTODATE :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_YEARTODATE = DateRange_RelativeDateRange "YEAR_TO_DATE"
+
+pattern DateRange_RelativeDateRange_PREVIOUSWEEK :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_PREVIOUSWEEK = DateRange_RelativeDateRange "PREVIOUS_WEEK"
+
+pattern DateRange_RelativeDateRange_PREVIOUSMONTH :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_PREVIOUSMONTH = DateRange_RelativeDateRange "PREVIOUS_MONTH"
+
+pattern DateRange_RelativeDateRange_PREVIOUSQUARTER :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_PREVIOUSQUARTER = DateRange_RelativeDateRange "PREVIOUS_QUARTER"
+
+pattern DateRange_RelativeDateRange_PREVIOUSYEAR :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_PREVIOUSYEAR = DateRange_RelativeDateRange "PREVIOUS_YEAR"
+
+pattern DateRange_RelativeDateRange_LAST7DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST7DAYS = DateRange_RelativeDateRange "LAST_7_DAYS"
+
+pattern DateRange_RelativeDateRange_LAST30DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST30DAYS = DateRange_RelativeDateRange "LAST_30_DAYS"
+
+pattern DateRange_RelativeDateRange_LAST90DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST90DAYS = DateRange_RelativeDateRange "LAST_90_DAYS"
+
+pattern DateRange_RelativeDateRange_LAST365DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST365DAYS = DateRange_RelativeDateRange "LAST_365_DAYS"
+
+pattern DateRange_RelativeDateRange_LAST24MONTHS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST24MONTHS = DateRange_RelativeDateRange "LAST_24_MONTHS"
+
+pattern DateRange_RelativeDateRange_LAST14DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST14DAYS = DateRange_RelativeDateRange "LAST_14_DAYS"
+
+pattern DateRange_RelativeDateRange_LAST60DAYS :: DateRange_RelativeDateRange
+pattern DateRange_RelativeDateRange_LAST60DAYS = DateRange_RelativeDateRange "LAST_60_DAYS"
+
+{-# COMPLETE
+  DateRange_RelativeDateRange_Today,
+  DateRange_RelativeDateRange_Yesterday,
+  DateRange_RelativeDateRange_WEEKTODATE,
+  DateRange_RelativeDateRange_MONTHTODATE,
+  DateRange_RelativeDateRange_QUARTERTODATE,
+  DateRange_RelativeDateRange_YEARTODATE,
+  DateRange_RelativeDateRange_PREVIOUSWEEK,
+  DateRange_RelativeDateRange_PREVIOUSMONTH,
+  DateRange_RelativeDateRange_PREVIOUSQUARTER,
+  DateRange_RelativeDateRange_PREVIOUSYEAR,
+  DateRange_RelativeDateRange_LAST7DAYS,
+  DateRange_RelativeDateRange_LAST30DAYS,
+  DateRange_RelativeDateRange_LAST90DAYS,
+  DateRange_RelativeDateRange_LAST365DAYS,
+  DateRange_RelativeDateRange_LAST24MONTHS,
+  DateRange_RelativeDateRange_LAST14DAYS,
+  DateRange_RelativeDateRange_LAST60DAYS,
+  DateRange_RelativeDateRange
+  #-}
+
+newtype DayPartTargeting_DaysOfWeekItem = DayPartTargeting_DaysOfWeekItem {fromDayPartTargeting_DaysOfWeekItem :: 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
+    )
+
+pattern DayPartTargeting_DaysOfWeekItem_Sunday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Sunday = DayPartTargeting_DaysOfWeekItem "SUNDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Monday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Monday = DayPartTargeting_DaysOfWeekItem "MONDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Tuesday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Tuesday = DayPartTargeting_DaysOfWeekItem "TUESDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Wednesday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Wednesday = DayPartTargeting_DaysOfWeekItem "WEDNESDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Thursday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Thursday = DayPartTargeting_DaysOfWeekItem "THURSDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Friday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Friday = DayPartTargeting_DaysOfWeekItem "FRIDAY"
+
+pattern DayPartTargeting_DaysOfWeekItem_Saturday :: DayPartTargeting_DaysOfWeekItem
+pattern DayPartTargeting_DaysOfWeekItem_Saturday = DayPartTargeting_DaysOfWeekItem "SATURDAY"
+
+{-# COMPLETE
+  DayPartTargeting_DaysOfWeekItem_Sunday,
+  DayPartTargeting_DaysOfWeekItem_Monday,
+  DayPartTargeting_DaysOfWeekItem_Tuesday,
+  DayPartTargeting_DaysOfWeekItem_Wednesday,
+  DayPartTargeting_DaysOfWeekItem_Thursday,
+  DayPartTargeting_DaysOfWeekItem_Friday,
+  DayPartTargeting_DaysOfWeekItem_Saturday,
+  DayPartTargeting_DaysOfWeekItem
+  #-}
+
+-- | Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.
+newtype DeliverySchedule_Priority = DeliverySchedule_Priority {fromDeliverySchedule_Priority :: 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
+    )
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_01 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_01 = DeliverySchedule_Priority "AD_PRIORITY_01"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_02 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_02 = DeliverySchedule_Priority "AD_PRIORITY_02"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_03 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_03 = DeliverySchedule_Priority "AD_PRIORITY_03"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_04 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_04 = DeliverySchedule_Priority "AD_PRIORITY_04"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_05 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_05 = DeliverySchedule_Priority "AD_PRIORITY_05"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_06 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_06 = DeliverySchedule_Priority "AD_PRIORITY_06"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_07 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_07 = DeliverySchedule_Priority "AD_PRIORITY_07"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_08 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_08 = DeliverySchedule_Priority "AD_PRIORITY_08"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_09 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_09 = DeliverySchedule_Priority "AD_PRIORITY_09"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_10 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_10 = DeliverySchedule_Priority "AD_PRIORITY_10"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_11 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_11 = DeliverySchedule_Priority "AD_PRIORITY_11"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_12 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_12 = DeliverySchedule_Priority "AD_PRIORITY_12"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_13 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_13 = DeliverySchedule_Priority "AD_PRIORITY_13"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_14 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_14 = DeliverySchedule_Priority "AD_PRIORITY_14"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_15 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_15 = DeliverySchedule_Priority "AD_PRIORITY_15"
+
+pattern DeliverySchedule_Priority_AD_PRIORITY_16 :: DeliverySchedule_Priority
+pattern DeliverySchedule_Priority_AD_PRIORITY_16 = DeliverySchedule_Priority "AD_PRIORITY_16"
+
+{-# COMPLETE
+  DeliverySchedule_Priority_AD_PRIORITY_01,
+  DeliverySchedule_Priority_AD_PRIORITY_02,
+  DeliverySchedule_Priority_AD_PRIORITY_03,
+  DeliverySchedule_Priority_AD_PRIORITY_04,
+  DeliverySchedule_Priority_AD_PRIORITY_05,
+  DeliverySchedule_Priority_AD_PRIORITY_06,
+  DeliverySchedule_Priority_AD_PRIORITY_07,
+  DeliverySchedule_Priority_AD_PRIORITY_08,
+  DeliverySchedule_Priority_AD_PRIORITY_09,
+  DeliverySchedule_Priority_AD_PRIORITY_10,
+  DeliverySchedule_Priority_AD_PRIORITY_11,
+  DeliverySchedule_Priority_AD_PRIORITY_12,
+  DeliverySchedule_Priority_AD_PRIORITY_13,
+  DeliverySchedule_Priority_AD_PRIORITY_14,
+  DeliverySchedule_Priority_AD_PRIORITY_15,
+  DeliverySchedule_Priority_AD_PRIORITY_16,
+  DeliverySchedule_Priority
+  #-}
+
+-- | Determines how the \'value\' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, \'/\' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions (\'dfa:paidSearch/\') allow a matchType other than EXACT.
+newtype DimensionValue_MatchType = DimensionValue_MatchType {fromDimensionValue_MatchType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+pattern DimensionValue_MatchType_Exact :: DimensionValue_MatchType
+pattern DimensionValue_MatchType_Exact = DimensionValue_MatchType "EXACT"
+
+pattern DimensionValue_MatchType_BEGINSWITH :: DimensionValue_MatchType
+pattern DimensionValue_MatchType_BEGINSWITH = DimensionValue_MatchType "BEGINS_WITH"
+
+pattern DimensionValue_MatchType_Contains :: DimensionValue_MatchType
+pattern DimensionValue_MatchType_Contains = DimensionValue_MatchType "CONTAINS"
+
+pattern DimensionValue_MatchType_WILDCARDEXPRESSION :: DimensionValue_MatchType
+pattern DimensionValue_MatchType_WILDCARDEXPRESSION = DimensionValue_MatchType "WILDCARD_EXPRESSION"
+
+{-# COMPLETE
+  DimensionValue_MatchType_Exact,
+  DimensionValue_MatchType_BEGINSWITH,
+  DimensionValue_MatchType_Contains,
+  DimensionValue_MatchType_WILDCARDEXPRESSION,
+  DimensionValue_MatchType
+  #-}
+
+newtype DirectorySite_InpageTagFormatsItem = DirectorySite_InpageTagFormatsItem {fromDirectorySite_InpageTagFormatsItem :: 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
+    )
+
+pattern DirectorySite_InpageTagFormatsItem_Standard :: DirectorySite_InpageTagFormatsItem
+pattern DirectorySite_InpageTagFormatsItem_Standard = DirectorySite_InpageTagFormatsItem "STANDARD"
+
+pattern DirectorySite_InpageTagFormatsItem_IFRAMEJAVASCRIPTINPAGE :: DirectorySite_InpageTagFormatsItem
+pattern DirectorySite_InpageTagFormatsItem_IFRAMEJAVASCRIPTINPAGE = DirectorySite_InpageTagFormatsItem "IFRAME_JAVASCRIPT_INPAGE"
+
+pattern DirectorySite_InpageTagFormatsItem_INTERNALREDIRECTINPAGE :: DirectorySite_InpageTagFormatsItem
+pattern DirectorySite_InpageTagFormatsItem_INTERNALREDIRECTINPAGE = DirectorySite_InpageTagFormatsItem "INTERNAL_REDIRECT_INPAGE"
+
+pattern DirectorySite_InpageTagFormatsItem_JAVASCRIPTINPAGE :: DirectorySite_InpageTagFormatsItem
+pattern DirectorySite_InpageTagFormatsItem_JAVASCRIPTINPAGE = DirectorySite_InpageTagFormatsItem "JAVASCRIPT_INPAGE"
+
+{-# COMPLETE
+  DirectorySite_InpageTagFormatsItem_Standard,
+  DirectorySite_InpageTagFormatsItem_IFRAMEJAVASCRIPTINPAGE,
+  DirectorySite_InpageTagFormatsItem_INTERNALREDIRECTINPAGE,
+  DirectorySite_InpageTagFormatsItem_JAVASCRIPTINPAGE,
+  DirectorySite_InpageTagFormatsItem
+  #-}
+
+newtype DirectorySite_InterstitialTagFormatsItem = DirectorySite_InterstitialTagFormatsItem {fromDirectorySite_InterstitialTagFormatsItem :: 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
+    )
+
+pattern DirectorySite_InterstitialTagFormatsItem_IFRAMEJAVASCRIPTINTERSTITIAL :: DirectorySite_InterstitialTagFormatsItem
+pattern DirectorySite_InterstitialTagFormatsItem_IFRAMEJAVASCRIPTINTERSTITIAL = DirectorySite_InterstitialTagFormatsItem "IFRAME_JAVASCRIPT_INTERSTITIAL"
+
+pattern DirectorySite_InterstitialTagFormatsItem_INTERNALREDIRECTINTERSTITIAL :: DirectorySite_InterstitialTagFormatsItem
+pattern DirectorySite_InterstitialTagFormatsItem_INTERNALREDIRECTINTERSTITIAL = DirectorySite_InterstitialTagFormatsItem "INTERNAL_REDIRECT_INTERSTITIAL"
+
+pattern DirectorySite_InterstitialTagFormatsItem_JAVASCRIPTINTERSTITIAL :: DirectorySite_InterstitialTagFormatsItem
+pattern DirectorySite_InterstitialTagFormatsItem_JAVASCRIPTINTERSTITIAL = DirectorySite_InterstitialTagFormatsItem "JAVASCRIPT_INTERSTITIAL"
+
+{-# COMPLETE
+  DirectorySite_InterstitialTagFormatsItem_IFRAMEJAVASCRIPTINTERSTITIAL,
+  DirectorySite_InterstitialTagFormatsItem_INTERNALREDIRECTINTERSTITIAL,
+  DirectorySite_InterstitialTagFormatsItem_JAVASCRIPTINTERSTITIAL,
+  DirectorySite_InterstitialTagFormatsItem
+  #-}
+
+-- | Type of the object of this dynamic targeting key. This is a required field.
+newtype DynamicTargetingKey_ObjectType = DynamicTargetingKey_ObjectType {fromDynamicTargetingKey_ObjectType :: 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
+    )
+
+pattern DynamicTargetingKey_ObjectType_OBJECTADVERTISER :: DynamicTargetingKey_ObjectType
+pattern DynamicTargetingKey_ObjectType_OBJECTADVERTISER = DynamicTargetingKey_ObjectType "OBJECT_ADVERTISER"
+
+pattern DynamicTargetingKey_ObjectType_OBJECTAD :: DynamicTargetingKey_ObjectType
+pattern DynamicTargetingKey_ObjectType_OBJECTAD = DynamicTargetingKey_ObjectType "OBJECT_AD"
+
+pattern DynamicTargetingKey_ObjectType_OBJECTCREATIVE :: DynamicTargetingKey_ObjectType
+pattern DynamicTargetingKey_ObjectType_OBJECTCREATIVE = DynamicTargetingKey_ObjectType "OBJECT_CREATIVE"
+
+pattern DynamicTargetingKey_ObjectType_OBJECTPLACEMENT :: DynamicTargetingKey_ObjectType
+pattern DynamicTargetingKey_ObjectType_OBJECTPLACEMENT = DynamicTargetingKey_ObjectType "OBJECT_PLACEMENT"
+
+{-# COMPLETE
+  DynamicTargetingKey_ObjectType_OBJECTADVERTISER,
+  DynamicTargetingKey_ObjectType_OBJECTAD,
+  DynamicTargetingKey_ObjectType_OBJECTCREATIVE,
+  DynamicTargetingKey_ObjectType_OBJECTPLACEMENT,
+  DynamicTargetingKey_ObjectType
+  #-}
+
+-- | The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.
+newtype EncryptionInfo_EncryptionEntityType = EncryptionInfo_EncryptionEntityType {fromEncryptionInfo_EncryptionEntityType :: 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
+    )
+
+pattern EncryptionInfo_EncryptionEntityType_ENCRYPTIONENTITYTYPEUNKNOWN :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_ENCRYPTIONENTITYTYPEUNKNOWN = EncryptionInfo_EncryptionEntityType "ENCRYPTION_ENTITY_TYPE_UNKNOWN"
+
+pattern EncryptionInfo_EncryptionEntityType_DCMACCOUNT :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_DCMACCOUNT = EncryptionInfo_EncryptionEntityType "DCM_ACCOUNT"
+
+pattern EncryptionInfo_EncryptionEntityType_DCMADVERTISER :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_DCMADVERTISER = EncryptionInfo_EncryptionEntityType "DCM_ADVERTISER"
+
+pattern EncryptionInfo_EncryptionEntityType_DBMPARTNER :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_DBMPARTNER = EncryptionInfo_EncryptionEntityType "DBM_PARTNER"
+
+pattern EncryptionInfo_EncryptionEntityType_DBMADVERTISER :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_DBMADVERTISER = EncryptionInfo_EncryptionEntityType "DBM_ADVERTISER"
+
+pattern EncryptionInfo_EncryptionEntityType_ADWORDSCUSTOMER :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_ADWORDSCUSTOMER = EncryptionInfo_EncryptionEntityType "ADWORDS_CUSTOMER"
+
+pattern EncryptionInfo_EncryptionEntityType_DFPNETWORKCODE :: EncryptionInfo_EncryptionEntityType
+pattern EncryptionInfo_EncryptionEntityType_DFPNETWORKCODE = EncryptionInfo_EncryptionEntityType "DFP_NETWORK_CODE"
+
+{-# COMPLETE
+  EncryptionInfo_EncryptionEntityType_ENCRYPTIONENTITYTYPEUNKNOWN,
+  EncryptionInfo_EncryptionEntityType_DCMACCOUNT,
+  EncryptionInfo_EncryptionEntityType_DCMADVERTISER,
+  EncryptionInfo_EncryptionEntityType_DBMPARTNER,
+  EncryptionInfo_EncryptionEntityType_DBMADVERTISER,
+  EncryptionInfo_EncryptionEntityType_ADWORDSCUSTOMER,
+  EncryptionInfo_EncryptionEntityType_DFPNETWORKCODE,
+  EncryptionInfo_EncryptionEntityType
+  #-}
+
+-- | Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.
+newtype EncryptionInfo_EncryptionSource = EncryptionInfo_EncryptionSource {fromEncryptionInfo_EncryptionSource :: 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
+    )
+
+pattern EncryptionInfo_EncryptionSource_ENCRYPTIONSCOPEUNKNOWN :: EncryptionInfo_EncryptionSource
+pattern EncryptionInfo_EncryptionSource_ENCRYPTIONSCOPEUNKNOWN = EncryptionInfo_EncryptionSource "ENCRYPTION_SCOPE_UNKNOWN"
+
+pattern EncryptionInfo_EncryptionSource_ADSERVING :: EncryptionInfo_EncryptionSource
+pattern EncryptionInfo_EncryptionSource_ADSERVING = EncryptionInfo_EncryptionSource "AD_SERVING"
+
+pattern EncryptionInfo_EncryptionSource_DATATRANSFER :: EncryptionInfo_EncryptionSource
+pattern EncryptionInfo_EncryptionSource_DATATRANSFER = EncryptionInfo_EncryptionSource "DATA_TRANSFER"
+
+{-# COMPLETE
+  EncryptionInfo_EncryptionSource_ENCRYPTIONSCOPEUNKNOWN,
+  EncryptionInfo_EncryptionSource_ADSERVING,
+  EncryptionInfo_EncryptionSource_DATATRANSFER,
+  EncryptionInfo_EncryptionSource
+  #-}
+
+-- | Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.
+newtype EventTag_SiteFilterType = EventTag_SiteFilterType {fromEventTag_SiteFilterType :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | The event tag should only ever fire on specified sites.
+pattern EventTag_SiteFilterType_Allowlist :: EventTag_SiteFilterType
+pattern EventTag_SiteFilterType_Allowlist = EventTag_SiteFilterType "ALLOWLIST"
+
+-- | The event tag should fire on all sites EXCEPT the specified sites.
+pattern EventTag_SiteFilterType_Blocklist :: EventTag_SiteFilterType
+pattern EventTag_SiteFilterType_Blocklist = EventTag_SiteFilterType "BLOCKLIST"
+
+{-# COMPLETE
+  EventTag_SiteFilterType_Allowlist,
+  EventTag_SiteFilterType_Blocklist,
+  EventTag_SiteFilterType
+  #-}
+
+-- | Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.
+newtype EventTag_Status = EventTag_Status {fromEventTag_Status :: 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
+    )
+
+pattern EventTag_Status_Enabled :: EventTag_Status
+pattern EventTag_Status_Enabled = EventTag_Status "ENABLED"
+
+pattern EventTag_Status_Disabled :: EventTag_Status
+pattern EventTag_Status_Disabled = EventTag_Status "DISABLED"
+
+{-# COMPLETE
+  EventTag_Status_Enabled,
+  EventTag_Status_Disabled,
+  EventTag_Status
+  #-}
+
+-- | Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.
+newtype EventTag_Type = EventTag_Type {fromEventTag_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
+    )
+
+-- | A third-party pixel for impression tracking.
+pattern EventTag_Type_IMPRESSIONIMAGEEVENTTAG :: EventTag_Type
+pattern EventTag_Type_IMPRESSIONIMAGEEVENTTAG = EventTag_Type "IMPRESSION_IMAGE_EVENT_TAG"
+
+-- | A third-party JavaScript URL for impression tracking.
+pattern EventTag_Type_IMPRESSIONJAVASCRIPTEVENTTAG :: EventTag_Type
+pattern EventTag_Type_IMPRESSIONJAVASCRIPTEVENTTAG = EventTag_Type "IMPRESSION_JAVASCRIPT_EVENT_TAG"
+
+-- | A third-party URL for click tracking that redirects to the landing page.
+pattern EventTag_Type_CLICKTHROUGHEVENTTAG :: EventTag_Type
+pattern EventTag_Type_CLICKTHROUGHEVENTTAG = EventTag_Type "CLICK_THROUGH_EVENT_TAG"
+
+{-# COMPLETE
+  EventTag_Type_IMPRESSIONIMAGEEVENTTAG,
+  EventTag_Type_IMPRESSIONJAVASCRIPTEVENTTAG,
+  EventTag_Type_CLICKTHROUGHEVENTTAG,
+  EventTag_Type
+  #-}
+
+-- | The output format of the report. Only available once the file is available.
+newtype File_Format = File_Format {fromFile_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
+    )
+
+pattern File_Format_Csv :: File_Format
+pattern File_Format_Csv = File_Format "CSV"
+
+pattern File_Format_Excel :: File_Format
+pattern File_Format_Excel = File_Format "EXCEL"
+
+{-# COMPLETE
+  File_Format_Csv,
+  File_Format_Excel,
+  File_Format
+  #-}
+
+-- | The status of the report file.
+newtype File_Status = File_Status {fromFile_Status :: 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
+    )
+
+pattern File_Status_Processing :: File_Status
+pattern File_Status_Processing = File_Status "PROCESSING"
+
+pattern File_Status_REPORTAVAILABLE :: File_Status
+pattern File_Status_REPORTAVAILABLE = File_Status "REPORT_AVAILABLE"
+
+pattern File_Status_Failed :: File_Status
+pattern File_Status_Failed = File_Status "FAILED"
+
+pattern File_Status_Cancelled :: File_Status
+pattern File_Status_Cancelled = File_Status "CANCELLED"
+
+pattern File_Status_Queued :: File_Status
+pattern File_Status_Queued = File_Status "QUEUED"
+
+{-# COMPLETE
+  File_Status_Processing,
+  File_Status_REPORTAVAILABLE,
+  File_Status_Failed,
+  File_Status_Cancelled,
+  File_Status_Queued,
+  File_Status
+  #-}
+
+-- | Code type used for cache busting in the generated tag. Applicable only when floodlightActivityGroupType is COUNTER and countingMethod is STANDARD/COUNTING or UNIQUE/COUNTING.
+newtype FloodlightActivity_CacheBustingType = FloodlightActivity_CacheBustingType {fromFloodlightActivity_CacheBustingType :: 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
+    )
+
+pattern FloodlightActivity_CacheBustingType_Javascript :: FloodlightActivity_CacheBustingType
+pattern FloodlightActivity_CacheBustingType_Javascript = FloodlightActivity_CacheBustingType "JAVASCRIPT"
+
+pattern FloodlightActivity_CacheBustingType_ACTIVESERVERPAGE :: FloodlightActivity_CacheBustingType
+pattern FloodlightActivity_CacheBustingType_ACTIVESERVERPAGE = FloodlightActivity_CacheBustingType "ACTIVE_SERVER_PAGE"
+
+pattern FloodlightActivity_CacheBustingType_Jsp :: FloodlightActivity_CacheBustingType
+pattern FloodlightActivity_CacheBustingType_Jsp = FloodlightActivity_CacheBustingType "JSP"
+
+pattern FloodlightActivity_CacheBustingType_Php :: FloodlightActivity_CacheBustingType
+pattern FloodlightActivity_CacheBustingType_Php = FloodlightActivity_CacheBustingType "PHP"
+
+pattern FloodlightActivity_CacheBustingType_COLDFUSION :: FloodlightActivity_CacheBustingType
+pattern FloodlightActivity_CacheBustingType_COLDFUSION = FloodlightActivity_CacheBustingType "COLD_FUSION"
+
+{-# COMPLETE
+  FloodlightActivity_CacheBustingType_Javascript,
+  FloodlightActivity_CacheBustingType_ACTIVESERVERPAGE,
+  FloodlightActivity_CacheBustingType_Jsp,
+  FloodlightActivity_CacheBustingType_Php,
+  FloodlightActivity_CacheBustingType_COLDFUSION,
+  FloodlightActivity_CacheBustingType
+  #-}
+
+-- | Counting method for conversions for this floodlight activity. This is a required field.
+newtype FloodlightActivity_CountingMethod = FloodlightActivity_CountingMethod {fromFloodlightActivity_CountingMethod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Count every conversion.
+pattern FloodlightActivity_CountingMethod_STANDARDCOUNTING :: FloodlightActivity_CountingMethod
+pattern FloodlightActivity_CountingMethod_STANDARDCOUNTING = FloodlightActivity_CountingMethod "STANDARD_COUNTING"
+
+-- | Count the first conversion for each unique user during each 24-hour day, from midnight to midnight, Eastern Time.
+pattern FloodlightActivity_CountingMethod_UNIQUECOUNTING :: FloodlightActivity_CountingMethod
+pattern FloodlightActivity_CountingMethod_UNIQUECOUNTING = FloodlightActivity_CountingMethod "UNIQUE_COUNTING"
+
+-- | Count one conversion per user per session. Session length is set by the site where the Spotlight tag is deployed.
+pattern FloodlightActivity_CountingMethod_SESSIONCOUNTING :: FloodlightActivity_CountingMethod
+pattern FloodlightActivity_CountingMethod_SESSIONCOUNTING = FloodlightActivity_CountingMethod "SESSION_COUNTING"
+
+-- | Count all conversions, plus the total number of sales that take place and the total revenue for these transactions.
+pattern FloodlightActivity_CountingMethod_TRANSACTIONSCOUNTING :: FloodlightActivity_CountingMethod
+pattern FloodlightActivity_CountingMethod_TRANSACTIONSCOUNTING = FloodlightActivity_CountingMethod "TRANSACTIONS_COUNTING"
+
+-- | Count each conversion, plus the total number of items sold and the total revenue for these sales.
+pattern FloodlightActivity_CountingMethod_ITEMSSOLDCOUNTING :: FloodlightActivity_CountingMethod
+pattern FloodlightActivity_CountingMethod_ITEMSSOLDCOUNTING = FloodlightActivity_CountingMethod "ITEMS_SOLD_COUNTING"
+
+{-# COMPLETE
+  FloodlightActivity_CountingMethod_STANDARDCOUNTING,
+  FloodlightActivity_CountingMethod_UNIQUECOUNTING,
+  FloodlightActivity_CountingMethod_SESSIONCOUNTING,
+  FloodlightActivity_CountingMethod_TRANSACTIONSCOUNTING,
+  FloodlightActivity_CountingMethod_ITEMSSOLDCOUNTING,
+  FloodlightActivity_CountingMethod
+  #-}
+
+-- | Type of the associated floodlight activity group. This is a read-only field.
+newtype FloodlightActivity_FloodlightActivityGroupType = FloodlightActivity_FloodlightActivityGroupType {fromFloodlightActivity_FloodlightActivityGroupType :: 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
+    )
+
+pattern FloodlightActivity_FloodlightActivityGroupType_Counter :: FloodlightActivity_FloodlightActivityGroupType
+pattern FloodlightActivity_FloodlightActivityGroupType_Counter = FloodlightActivity_FloodlightActivityGroupType "COUNTER"
+
+pattern FloodlightActivity_FloodlightActivityGroupType_Sale :: FloodlightActivity_FloodlightActivityGroupType
+pattern FloodlightActivity_FloodlightActivityGroupType_Sale = FloodlightActivity_FloodlightActivityGroupType "SALE"
+
+{-# COMPLETE
+  FloodlightActivity_FloodlightActivityGroupType_Counter,
+  FloodlightActivity_FloodlightActivityGroupType_Sale,
+  FloodlightActivity_FloodlightActivityGroupType
+  #-}
+
+-- | The type of Floodlight tag this activity will generate. This is a required field.
+newtype FloodlightActivity_FloodlightTagType = FloodlightActivity_FloodlightTagType {fromFloodlightActivity_FloodlightTagType :: 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
+    )
+
+pattern FloodlightActivity_FloodlightTagType_Iframe :: FloodlightActivity_FloodlightTagType
+pattern FloodlightActivity_FloodlightTagType_Iframe = FloodlightActivity_FloodlightTagType "IFRAME"
+
+pattern FloodlightActivity_FloodlightTagType_Image :: FloodlightActivity_FloodlightTagType
+pattern FloodlightActivity_FloodlightTagType_Image = FloodlightActivity_FloodlightTagType "IMAGE"
+
+pattern FloodlightActivity_FloodlightTagType_GLOBALSITETAG :: FloodlightActivity_FloodlightTagType
+pattern FloodlightActivity_FloodlightTagType_GLOBALSITETAG = FloodlightActivity_FloodlightTagType "GLOBAL_SITE_TAG"
+
+{-# COMPLETE
+  FloodlightActivity_FloodlightTagType_Iframe,
+  FloodlightActivity_FloodlightTagType_Image,
+  FloodlightActivity_FloodlightTagType_GLOBALSITETAG,
+  FloodlightActivity_FloodlightTagType
+  #-}
+
+-- | The status of the activity. This can only be set to ACTIVE or ARCHIVED/AND/DISABLED. The ARCHIVED status is no longer supported and cannot be set for Floodlight activities. The DISABLED_POLICY status indicates that a Floodlight activity is violating Google policy. Contact your account manager for more information.
+newtype FloodlightActivity_Status = FloodlightActivity_Status {fromFloodlightActivity_Status :: 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
+    )
+
+pattern FloodlightActivity_Status_Active :: FloodlightActivity_Status
+pattern FloodlightActivity_Status_Active = FloodlightActivity_Status "ACTIVE"
+
+pattern FloodlightActivity_Status_ARCHIVEDANDDISABLED :: FloodlightActivity_Status
+pattern FloodlightActivity_Status_ARCHIVEDANDDISABLED = FloodlightActivity_Status "ARCHIVED_AND_DISABLED"
+
+pattern FloodlightActivity_Status_Archived :: FloodlightActivity_Status
+pattern FloodlightActivity_Status_Archived = FloodlightActivity_Status "ARCHIVED"
+
+pattern FloodlightActivity_Status_DISABLEDPOLICY :: FloodlightActivity_Status
+pattern FloodlightActivity_Status_DISABLEDPOLICY = FloodlightActivity_Status "DISABLED_POLICY"
+
+{-# COMPLETE
+  FloodlightActivity_Status_Active,
+  FloodlightActivity_Status_ARCHIVEDANDDISABLED,
+  FloodlightActivity_Status_Archived,
+  FloodlightActivity_Status_DISABLEDPOLICY,
+  FloodlightActivity_Status
+  #-}
+
+-- | Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.
+newtype FloodlightActivity_TagFormat = FloodlightActivity_TagFormat {fromFloodlightActivity_TagFormat :: 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
+    )
+
+pattern FloodlightActivity_TagFormat_Html :: FloodlightActivity_TagFormat
+pattern FloodlightActivity_TagFormat_Html = FloodlightActivity_TagFormat "HTML"
+
+pattern FloodlightActivity_TagFormat_Xhtml :: FloodlightActivity_TagFormat
+pattern FloodlightActivity_TagFormat_Xhtml = FloodlightActivity_TagFormat "XHTML"
+
+{-# COMPLETE
+  FloodlightActivity_TagFormat_Html,
+  FloodlightActivity_TagFormat_Xhtml,
+  FloodlightActivity_TagFormat
+  #-}
+
+newtype FloodlightActivity_UserDefinedVariableTypesItem = FloodlightActivity_UserDefinedVariableTypesItem {fromFloodlightActivity_UserDefinedVariableTypesItem :: 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
+    )
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U1 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U1 = FloodlightActivity_UserDefinedVariableTypesItem "U1"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U2 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U2 = FloodlightActivity_UserDefinedVariableTypesItem "U2"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U3 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U3 = FloodlightActivity_UserDefinedVariableTypesItem "U3"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U4 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U4 = FloodlightActivity_UserDefinedVariableTypesItem "U4"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U5 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U5 = FloodlightActivity_UserDefinedVariableTypesItem "U5"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U6 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U6 = FloodlightActivity_UserDefinedVariableTypesItem "U6"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U7 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U7 = FloodlightActivity_UserDefinedVariableTypesItem "U7"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U8 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U8 = FloodlightActivity_UserDefinedVariableTypesItem "U8"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U9 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U9 = FloodlightActivity_UserDefinedVariableTypesItem "U9"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U10 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U10 = FloodlightActivity_UserDefinedVariableTypesItem "U10"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U11 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U11 = FloodlightActivity_UserDefinedVariableTypesItem "U11"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U12 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U12 = FloodlightActivity_UserDefinedVariableTypesItem "U12"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U13 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U13 = FloodlightActivity_UserDefinedVariableTypesItem "U13"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U14 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U14 = FloodlightActivity_UserDefinedVariableTypesItem "U14"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U15 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U15 = FloodlightActivity_UserDefinedVariableTypesItem "U15"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U16 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U16 = FloodlightActivity_UserDefinedVariableTypesItem "U16"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U17 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U17 = FloodlightActivity_UserDefinedVariableTypesItem "U17"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U18 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U18 = FloodlightActivity_UserDefinedVariableTypesItem "U18"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U19 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U19 = FloodlightActivity_UserDefinedVariableTypesItem "U19"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U20 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U20 = FloodlightActivity_UserDefinedVariableTypesItem "U20"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U21 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U21 = FloodlightActivity_UserDefinedVariableTypesItem "U21"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U22 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U22 = FloodlightActivity_UserDefinedVariableTypesItem "U22"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U23 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U23 = FloodlightActivity_UserDefinedVariableTypesItem "U23"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U24 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U24 = FloodlightActivity_UserDefinedVariableTypesItem "U24"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U25 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U25 = FloodlightActivity_UserDefinedVariableTypesItem "U25"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U26 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U26 = FloodlightActivity_UserDefinedVariableTypesItem "U26"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U27 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U27 = FloodlightActivity_UserDefinedVariableTypesItem "U27"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U28 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U28 = FloodlightActivity_UserDefinedVariableTypesItem "U28"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U29 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U29 = FloodlightActivity_UserDefinedVariableTypesItem "U29"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U30 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U30 = FloodlightActivity_UserDefinedVariableTypesItem "U30"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U31 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U31 = FloodlightActivity_UserDefinedVariableTypesItem "U31"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U32 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U32 = FloodlightActivity_UserDefinedVariableTypesItem "U32"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U33 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U33 = FloodlightActivity_UserDefinedVariableTypesItem "U33"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U34 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U34 = FloodlightActivity_UserDefinedVariableTypesItem "U34"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U35 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U35 = FloodlightActivity_UserDefinedVariableTypesItem "U35"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U36 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U36 = FloodlightActivity_UserDefinedVariableTypesItem "U36"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U37 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U37 = FloodlightActivity_UserDefinedVariableTypesItem "U37"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U38 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U38 = FloodlightActivity_UserDefinedVariableTypesItem "U38"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U39 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U39 = FloodlightActivity_UserDefinedVariableTypesItem "U39"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U40 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U40 = FloodlightActivity_UserDefinedVariableTypesItem "U40"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U41 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U41 = FloodlightActivity_UserDefinedVariableTypesItem "U41"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U42 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U42 = FloodlightActivity_UserDefinedVariableTypesItem "U42"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U43 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U43 = FloodlightActivity_UserDefinedVariableTypesItem "U43"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U44 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U44 = FloodlightActivity_UserDefinedVariableTypesItem "U44"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U45 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U45 = FloodlightActivity_UserDefinedVariableTypesItem "U45"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U46 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U46 = FloodlightActivity_UserDefinedVariableTypesItem "U46"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U47 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U47 = FloodlightActivity_UserDefinedVariableTypesItem "U47"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U48 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U48 = FloodlightActivity_UserDefinedVariableTypesItem "U48"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U49 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U49 = FloodlightActivity_UserDefinedVariableTypesItem "U49"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U50 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U50 = FloodlightActivity_UserDefinedVariableTypesItem "U50"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U51 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U51 = FloodlightActivity_UserDefinedVariableTypesItem "U51"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U52 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U52 = FloodlightActivity_UserDefinedVariableTypesItem "U52"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U53 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U53 = FloodlightActivity_UserDefinedVariableTypesItem "U53"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U54 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U54 = FloodlightActivity_UserDefinedVariableTypesItem "U54"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U55 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U55 = FloodlightActivity_UserDefinedVariableTypesItem "U55"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U56 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U56 = FloodlightActivity_UserDefinedVariableTypesItem "U56"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U57 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U57 = FloodlightActivity_UserDefinedVariableTypesItem "U57"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U58 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U58 = FloodlightActivity_UserDefinedVariableTypesItem "U58"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U59 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U59 = FloodlightActivity_UserDefinedVariableTypesItem "U59"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U60 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U60 = FloodlightActivity_UserDefinedVariableTypesItem "U60"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U61 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U61 = FloodlightActivity_UserDefinedVariableTypesItem "U61"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U62 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U62 = FloodlightActivity_UserDefinedVariableTypesItem "U62"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U63 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U63 = FloodlightActivity_UserDefinedVariableTypesItem "U63"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U64 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U64 = FloodlightActivity_UserDefinedVariableTypesItem "U64"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U65 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U65 = FloodlightActivity_UserDefinedVariableTypesItem "U65"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U66 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U66 = FloodlightActivity_UserDefinedVariableTypesItem "U66"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U67 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U67 = FloodlightActivity_UserDefinedVariableTypesItem "U67"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U68 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U68 = FloodlightActivity_UserDefinedVariableTypesItem "U68"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U69 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U69 = FloodlightActivity_UserDefinedVariableTypesItem "U69"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U70 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U70 = FloodlightActivity_UserDefinedVariableTypesItem "U70"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U71 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U71 = FloodlightActivity_UserDefinedVariableTypesItem "U71"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U72 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U72 = FloodlightActivity_UserDefinedVariableTypesItem "U72"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U73 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U73 = FloodlightActivity_UserDefinedVariableTypesItem "U73"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U74 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U74 = FloodlightActivity_UserDefinedVariableTypesItem "U74"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U75 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U75 = FloodlightActivity_UserDefinedVariableTypesItem "U75"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U76 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U76 = FloodlightActivity_UserDefinedVariableTypesItem "U76"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U77 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U77 = FloodlightActivity_UserDefinedVariableTypesItem "U77"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U78 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U78 = FloodlightActivity_UserDefinedVariableTypesItem "U78"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U79 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U79 = FloodlightActivity_UserDefinedVariableTypesItem "U79"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U80 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U80 = FloodlightActivity_UserDefinedVariableTypesItem "U80"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U81 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U81 = FloodlightActivity_UserDefinedVariableTypesItem "U81"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U82 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U82 = FloodlightActivity_UserDefinedVariableTypesItem "U82"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U83 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U83 = FloodlightActivity_UserDefinedVariableTypesItem "U83"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U84 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U84 = FloodlightActivity_UserDefinedVariableTypesItem "U84"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U85 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U85 = FloodlightActivity_UserDefinedVariableTypesItem "U85"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U86 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U86 = FloodlightActivity_UserDefinedVariableTypesItem "U86"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U87 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U87 = FloodlightActivity_UserDefinedVariableTypesItem "U87"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U88 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U88 = FloodlightActivity_UserDefinedVariableTypesItem "U88"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U89 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U89 = FloodlightActivity_UserDefinedVariableTypesItem "U89"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U90 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U90 = FloodlightActivity_UserDefinedVariableTypesItem "U90"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U91 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U91 = FloodlightActivity_UserDefinedVariableTypesItem "U91"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U92 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U92 = FloodlightActivity_UserDefinedVariableTypesItem "U92"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U93 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U93 = FloodlightActivity_UserDefinedVariableTypesItem "U93"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U94 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U94 = FloodlightActivity_UserDefinedVariableTypesItem "U94"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U95 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U95 = FloodlightActivity_UserDefinedVariableTypesItem "U95"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U96 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U96 = FloodlightActivity_UserDefinedVariableTypesItem "U96"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U97 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U97 = FloodlightActivity_UserDefinedVariableTypesItem "U97"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U98 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U98 = FloodlightActivity_UserDefinedVariableTypesItem "U98"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U99 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U99 = FloodlightActivity_UserDefinedVariableTypesItem "U99"
+
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U100 :: FloodlightActivity_UserDefinedVariableTypesItem
+pattern FloodlightActivity_UserDefinedVariableTypesItem_U100 = FloodlightActivity_UserDefinedVariableTypesItem "U100"
+
+{-# COMPLETE
+  FloodlightActivity_UserDefinedVariableTypesItem_U1,
+  FloodlightActivity_UserDefinedVariableTypesItem_U2,
+  FloodlightActivity_UserDefinedVariableTypesItem_U3,
+  FloodlightActivity_UserDefinedVariableTypesItem_U4,
+  FloodlightActivity_UserDefinedVariableTypesItem_U5,
+  FloodlightActivity_UserDefinedVariableTypesItem_U6,
+  FloodlightActivity_UserDefinedVariableTypesItem_U7,
+  FloodlightActivity_UserDefinedVariableTypesItem_U8,
+  FloodlightActivity_UserDefinedVariableTypesItem_U9,
+  FloodlightActivity_UserDefinedVariableTypesItem_U10,
+  FloodlightActivity_UserDefinedVariableTypesItem_U11,
+  FloodlightActivity_UserDefinedVariableTypesItem_U12,
+  FloodlightActivity_UserDefinedVariableTypesItem_U13,
+  FloodlightActivity_UserDefinedVariableTypesItem_U14,
+  FloodlightActivity_UserDefinedVariableTypesItem_U15,
+  FloodlightActivity_UserDefinedVariableTypesItem_U16,
+  FloodlightActivity_UserDefinedVariableTypesItem_U17,
+  FloodlightActivity_UserDefinedVariableTypesItem_U18,
+  FloodlightActivity_UserDefinedVariableTypesItem_U19,
+  FloodlightActivity_UserDefinedVariableTypesItem_U20,
+  FloodlightActivity_UserDefinedVariableTypesItem_U21,
+  FloodlightActivity_UserDefinedVariableTypesItem_U22,
+  FloodlightActivity_UserDefinedVariableTypesItem_U23,
+  FloodlightActivity_UserDefinedVariableTypesItem_U24,
+  FloodlightActivity_UserDefinedVariableTypesItem_U25,
+  FloodlightActivity_UserDefinedVariableTypesItem_U26,
+  FloodlightActivity_UserDefinedVariableTypesItem_U27,
+  FloodlightActivity_UserDefinedVariableTypesItem_U28,
+  FloodlightActivity_UserDefinedVariableTypesItem_U29,
+  FloodlightActivity_UserDefinedVariableTypesItem_U30,
+  FloodlightActivity_UserDefinedVariableTypesItem_U31,
+  FloodlightActivity_UserDefinedVariableTypesItem_U32,
+  FloodlightActivity_UserDefinedVariableTypesItem_U33,
+  FloodlightActivity_UserDefinedVariableTypesItem_U34,
+  FloodlightActivity_UserDefinedVariableTypesItem_U35,
+  FloodlightActivity_UserDefinedVariableTypesItem_U36,
+  FloodlightActivity_UserDefinedVariableTypesItem_U37,
+  FloodlightActivity_UserDefinedVariableTypesItem_U38,
+  FloodlightActivity_UserDefinedVariableTypesItem_U39,
+  FloodlightActivity_UserDefinedVariableTypesItem_U40,
+  FloodlightActivity_UserDefinedVariableTypesItem_U41,
+  FloodlightActivity_UserDefinedVariableTypesItem_U42,
+  FloodlightActivity_UserDefinedVariableTypesItem_U43,
+  FloodlightActivity_UserDefinedVariableTypesItem_U44,
+  FloodlightActivity_UserDefinedVariableTypesItem_U45,
+  FloodlightActivity_UserDefinedVariableTypesItem_U46,
+  FloodlightActivity_UserDefinedVariableTypesItem_U47,
+  FloodlightActivity_UserDefinedVariableTypesItem_U48,
+  FloodlightActivity_UserDefinedVariableTypesItem_U49,
+  FloodlightActivity_UserDefinedVariableTypesItem_U50,
+  FloodlightActivity_UserDefinedVariableTypesItem_U51,
+  FloodlightActivity_UserDefinedVariableTypesItem_U52,
+  FloodlightActivity_UserDefinedVariableTypesItem_U53,
+  FloodlightActivity_UserDefinedVariableTypesItem_U54,
+  FloodlightActivity_UserDefinedVariableTypesItem_U55,
+  FloodlightActivity_UserDefinedVariableTypesItem_U56,
+  FloodlightActivity_UserDefinedVariableTypesItem_U57,
+  FloodlightActivity_UserDefinedVariableTypesItem_U58,
+  FloodlightActivity_UserDefinedVariableTypesItem_U59,
+  FloodlightActivity_UserDefinedVariableTypesItem_U60,
+  FloodlightActivity_UserDefinedVariableTypesItem_U61,
+  FloodlightActivity_UserDefinedVariableTypesItem_U62,
+  FloodlightActivity_UserDefinedVariableTypesItem_U63,
+  FloodlightActivity_UserDefinedVariableTypesItem_U64,
+  FloodlightActivity_UserDefinedVariableTypesItem_U65,
+  FloodlightActivity_UserDefinedVariableTypesItem_U66,
+  FloodlightActivity_UserDefinedVariableTypesItem_U67,
+  FloodlightActivity_UserDefinedVariableTypesItem_U68,
+  FloodlightActivity_UserDefinedVariableTypesItem_U69,
+  FloodlightActivity_UserDefinedVariableTypesItem_U70,
+  FloodlightActivity_UserDefinedVariableTypesItem_U71,
+  FloodlightActivity_UserDefinedVariableTypesItem_U72,
+  FloodlightActivity_UserDefinedVariableTypesItem_U73,
+  FloodlightActivity_UserDefinedVariableTypesItem_U74,
+  FloodlightActivity_UserDefinedVariableTypesItem_U75,
+  FloodlightActivity_UserDefinedVariableTypesItem_U76,
+  FloodlightActivity_UserDefinedVariableTypesItem_U77,
+  FloodlightActivity_UserDefinedVariableTypesItem_U78,
+  FloodlightActivity_UserDefinedVariableTypesItem_U79,
+  FloodlightActivity_UserDefinedVariableTypesItem_U80,
+  FloodlightActivity_UserDefinedVariableTypesItem_U81,
+  FloodlightActivity_UserDefinedVariableTypesItem_U82,
+  FloodlightActivity_UserDefinedVariableTypesItem_U83,
+  FloodlightActivity_UserDefinedVariableTypesItem_U84,
+  FloodlightActivity_UserDefinedVariableTypesItem_U85,
+  FloodlightActivity_UserDefinedVariableTypesItem_U86,
+  FloodlightActivity_UserDefinedVariableTypesItem_U87,
+  FloodlightActivity_UserDefinedVariableTypesItem_U88,
+  FloodlightActivity_UserDefinedVariableTypesItem_U89,
+  FloodlightActivity_UserDefinedVariableTypesItem_U90,
+  FloodlightActivity_UserDefinedVariableTypesItem_U91,
+  FloodlightActivity_UserDefinedVariableTypesItem_U92,
+  FloodlightActivity_UserDefinedVariableTypesItem_U93,
+  FloodlightActivity_UserDefinedVariableTypesItem_U94,
+  FloodlightActivity_UserDefinedVariableTypesItem_U95,
+  FloodlightActivity_UserDefinedVariableTypesItem_U96,
+  FloodlightActivity_UserDefinedVariableTypesItem_U97,
+  FloodlightActivity_UserDefinedVariableTypesItem_U98,
+  FloodlightActivity_UserDefinedVariableTypesItem_U99,
+  FloodlightActivity_UserDefinedVariableTypesItem_U100,
+  FloodlightActivity_UserDefinedVariableTypesItem
+  #-}
+
+-- | Type of the floodlight activity group. This is a required field that is read-only after insertion.
+newtype FloodlightActivityGroup_Type = FloodlightActivityGroup_Type {fromFloodlightActivityGroup_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
+    )
+
+pattern FloodlightActivityGroup_Type_Counter :: FloodlightActivityGroup_Type
+pattern FloodlightActivityGroup_Type_Counter = FloodlightActivityGroup_Type "COUNTER"
+
+pattern FloodlightActivityGroup_Type_Sale :: FloodlightActivityGroup_Type
+pattern FloodlightActivityGroup_Type_Sale = FloodlightActivityGroup_Type "SALE"
+
+{-# COMPLETE
+  FloodlightActivityGroup_Type_Counter,
+  FloodlightActivityGroup_Type_Sale,
+  FloodlightActivityGroup_Type
+  #-}
+
+newtype FloodlightConfiguration_FirstDayOfWeek = FloodlightConfiguration_FirstDayOfWeek {fromFloodlightConfiguration_FirstDayOfWeek :: 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
+    )
+
+pattern FloodlightConfiguration_FirstDayOfWeek_Sunday :: FloodlightConfiguration_FirstDayOfWeek
+pattern FloodlightConfiguration_FirstDayOfWeek_Sunday = FloodlightConfiguration_FirstDayOfWeek "SUNDAY"
+
+pattern FloodlightConfiguration_FirstDayOfWeek_Monday :: FloodlightConfiguration_FirstDayOfWeek
+pattern FloodlightConfiguration_FirstDayOfWeek_Monday = FloodlightConfiguration_FirstDayOfWeek "MONDAY"
+
+{-# COMPLETE
+  FloodlightConfiguration_FirstDayOfWeek_Sunday,
+  FloodlightConfiguration_FirstDayOfWeek_Monday,
+  FloodlightConfiguration_FirstDayOfWeek
+  #-}
+
+-- | Types of attribution options for natural search conversions.
+newtype FloodlightConfiguration_NaturalSearchConversionAttributionOption = FloodlightConfiguration_NaturalSearchConversionAttributionOption {fromFloodlightConfiguration_NaturalSearchConversionAttributionOption :: 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
+    )
+
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_EXCLUDENATURALSEARCHCONVERSIONATTRIBUTION :: FloodlightConfiguration_NaturalSearchConversionAttributionOption
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_EXCLUDENATURALSEARCHCONVERSIONATTRIBUTION = FloodlightConfiguration_NaturalSearchConversionAttributionOption "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
+
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHCONVERSIONATTRIBUTION :: FloodlightConfiguration_NaturalSearchConversionAttributionOption
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHCONVERSIONATTRIBUTION = FloodlightConfiguration_NaturalSearchConversionAttributionOption "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
+
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHTIEREDCONVERSIONATTRIBUTION :: FloodlightConfiguration_NaturalSearchConversionAttributionOption
+pattern FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHTIEREDCONVERSIONATTRIBUTION = FloodlightConfiguration_NaturalSearchConversionAttributionOption "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION"
+
+{-# COMPLETE
+  FloodlightConfiguration_NaturalSearchConversionAttributionOption_EXCLUDENATURALSEARCHCONVERSIONATTRIBUTION,
+  FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHCONVERSIONATTRIBUTION,
+  FloodlightConfiguration_NaturalSearchConversionAttributionOption_INCLUDENATURALSEARCHTIEREDCONVERSIONATTRIBUTION,
+  FloodlightConfiguration_NaturalSearchConversionAttributionOption
+  #-}
+
+-- | Position in the browser where the window will open.
+newtype FsCommand_PositionOption = FsCommand_PositionOption {fromFsCommand_PositionOption :: 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
+    )
+
+-- | Center of the window Corresponds to \"center\" in UI
+pattern FsCommand_PositionOption_Centered :: FsCommand_PositionOption
+pattern FsCommand_PositionOption_Centered = FsCommand_PositionOption "CENTERED"
+
+-- | user-defined distance from top left-hand corner of the window Corresponds to \"top-left\" in UI
+pattern FsCommand_PositionOption_DISTANCEFROMTOPLEFTCORNER :: FsCommand_PositionOption
+pattern FsCommand_PositionOption_DISTANCEFROMTOPLEFTCORNER = FsCommand_PositionOption "DISTANCE_FROM_TOP_LEFT_CORNER"
+
+{-# COMPLETE
+  FsCommand_PositionOption_Centered,
+  FsCommand_PositionOption_DISTANCEFROMTOPLEFTCORNER,
+  FsCommand_PositionOption
+  #-}
+
+-- | Type of inventory item.
+newtype InventoryItem_Type = InventoryItem_Type {fromInventoryItem_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
+    )
+
+pattern InventoryItem_Type_PLANNINGPLACEMENTTYPEREGULAR :: InventoryItem_Type
+pattern InventoryItem_Type_PLANNINGPLACEMENTTYPEREGULAR = InventoryItem_Type "PLANNING_PLACEMENT_TYPE_REGULAR"
+
+pattern InventoryItem_Type_PLANNINGPLACEMENTTYPECREDIT :: InventoryItem_Type
+pattern InventoryItem_Type_PLANNINGPLACEMENTTYPECREDIT = InventoryItem_Type "PLANNING_PLACEMENT_TYPE_CREDIT"
+
+{-# COMPLETE
+  InventoryItem_Type_PLANNINGPLACEMENTTYPEREGULAR,
+  InventoryItem_Type_PLANNINGPLACEMENTTYPECREDIT,
+  InventoryItem_Type
+  #-}
+
+-- | The type of invoice document.
+newtype Invoice_InvoiceType = Invoice_InvoiceType {fromInvoice_InvoiceType :: 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
+    )
+
+pattern Invoice_InvoiceType_INVOICETYPEUNSPECIFIED :: Invoice_InvoiceType
+pattern Invoice_InvoiceType_INVOICETYPEUNSPECIFIED = Invoice_InvoiceType "INVOICE_TYPE_UNSPECIFIED"
+
+pattern Invoice_InvoiceType_INVOICETYPECREDIT :: Invoice_InvoiceType
+pattern Invoice_InvoiceType_INVOICETYPECREDIT = Invoice_InvoiceType "INVOICE_TYPE_CREDIT"
+
+pattern Invoice_InvoiceType_INVOICETYPEINVOICE :: Invoice_InvoiceType
+pattern Invoice_InvoiceType_INVOICETYPEINVOICE = Invoice_InvoiceType "INVOICE_TYPE_INVOICE"
+
+{-# COMPLETE
+  Invoice_InvoiceType_INVOICETYPEUNSPECIFIED,
+  Invoice_InvoiceType_INVOICETYPECREDIT,
+  Invoice_InvoiceType_INVOICETYPEINVOICE,
+  Invoice_InvoiceType
+  #-}
+
+-- | Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM/VARIABLE/TERM or REFERRER_TERM.
+newtype ListPopulationTerm_Operator = ListPopulationTerm_Operator {fromListPopulationTerm_Operator :: 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
+    )
+
+pattern ListPopulationTerm_Operator_NUMEQUALS :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_NUMEQUALS = ListPopulationTerm_Operator "NUM_EQUALS"
+
+pattern ListPopulationTerm_Operator_NUMLESSTHAN :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_NUMLESSTHAN = ListPopulationTerm_Operator "NUM_LESS_THAN"
+
+pattern ListPopulationTerm_Operator_NUMLESSTHANEQUAL :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_NUMLESSTHANEQUAL = ListPopulationTerm_Operator "NUM_LESS_THAN_EQUAL"
+
+pattern ListPopulationTerm_Operator_NUMGREATERTHAN :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_NUMGREATERTHAN = ListPopulationTerm_Operator "NUM_GREATER_THAN"
+
+pattern ListPopulationTerm_Operator_NUMGREATERTHANEQUAL :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_NUMGREATERTHANEQUAL = ListPopulationTerm_Operator "NUM_GREATER_THAN_EQUAL"
+
+pattern ListPopulationTerm_Operator_STRINGEQUALS :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_STRINGEQUALS = ListPopulationTerm_Operator "STRING_EQUALS"
+
+pattern ListPopulationTerm_Operator_STRINGCONTAINS :: ListPopulationTerm_Operator
+pattern ListPopulationTerm_Operator_STRINGCONTAINS = ListPopulationTerm_Operator "STRING_CONTAINS"
+
+{-# COMPLETE
+  ListPopulationTerm_Operator_NUMEQUALS,
+  ListPopulationTerm_Operator_NUMLESSTHAN,
+  ListPopulationTerm_Operator_NUMLESSTHANEQUAL,
+  ListPopulationTerm_Operator_NUMGREATERTHAN,
+  ListPopulationTerm_Operator_NUMGREATERTHANEQUAL,
+  ListPopulationTerm_Operator_STRINGEQUALS,
+  ListPopulationTerm_Operator_STRINGCONTAINS,
+  ListPopulationTerm_Operator
+  #-}
+
+-- | List population term type determines the applicable fields in this object. If left unset or set to CUSTOM/VARIABLE/TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST/MEMBERSHIP/TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.
+newtype ListPopulationTerm_Type = ListPopulationTerm_Type {fromListPopulationTerm_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
+    )
+
+pattern ListPopulationTerm_Type_CUSTOMVARIABLETERM :: ListPopulationTerm_Type
+pattern ListPopulationTerm_Type_CUSTOMVARIABLETERM = ListPopulationTerm_Type "CUSTOM_VARIABLE_TERM"
+
+pattern ListPopulationTerm_Type_LISTMEMBERSHIPTERM :: ListPopulationTerm_Type
+pattern ListPopulationTerm_Type_LISTMEMBERSHIPTERM = ListPopulationTerm_Type "LIST_MEMBERSHIP_TERM"
+
+pattern ListPopulationTerm_Type_REFERRERTERM :: ListPopulationTerm_Type
+pattern ListPopulationTerm_Type_REFERRERTERM = ListPopulationTerm_Type "REFERRER_TERM"
+
+{-# COMPLETE
+  ListPopulationTerm_Type_CUSTOMVARIABLETERM,
+  ListPopulationTerm_Type_LISTMEMBERSHIPTERM,
+  ListPopulationTerm_Type_REFERRERTERM,
+  ListPopulationTerm_Type
+  #-}
+
+-- | Status of the partner link.
+newtype MeasurementPartnerAdvertiserLink_LinkStatus = MeasurementPartnerAdvertiserLink_LinkStatus {fromMeasurementPartnerAdvertiserLink_LinkStatus :: 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
+    )
+
+-- | Unlinked.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKED :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKED = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_UNLINKED"
+
+-- | Linked successfully
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKED :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKED = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINKED"
+
+-- | Link pending for wrapping.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINK_PENDING"
+
+-- | Linking failure.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINK_FAILURE"
+
+-- | Link opt-out by user.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT"
+
+-- | Link opt-out pending sync.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
+
+-- | Link wrap answer pending.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
+
+-- | Mode change pending.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
+
+-- | Partner unlink pending.
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING :: MeasurementPartnerAdvertiserLink_LinkStatus
+pattern MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING = MeasurementPartnerAdvertiserLink_LinkStatus "MEASUREMENT_PARTNER_UNLINK_PENDING"
+
+{-# COMPLETE
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKED,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+  MeasurementPartnerAdvertiserLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+  MeasurementPartnerAdvertiserLink_LinkStatus
+  #-}
+
+-- | Measurement partner used for tag wrapping.
+newtype MeasurementPartnerAdvertiserLink_MeasurementPartner = MeasurementPartnerAdvertiserLink_MeasurementPartner {fromMeasurementPartnerAdvertiserLink_MeasurementPartner :: 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
+    )
+
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_None :: MeasurementPartnerAdvertiserLink_MeasurementPartner
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_None = MeasurementPartnerAdvertiserLink_MeasurementPartner "NONE"
+
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_INTEGRALADSCIENCE :: MeasurementPartnerAdvertiserLink_MeasurementPartner
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_INTEGRALADSCIENCE = MeasurementPartnerAdvertiserLink_MeasurementPartner "INTEGRAL_AD_SCIENCE"
+
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_DOUBLEVERIFY :: MeasurementPartnerAdvertiserLink_MeasurementPartner
+pattern MeasurementPartnerAdvertiserLink_MeasurementPartner_DOUBLEVERIFY = MeasurementPartnerAdvertiserLink_MeasurementPartner "DOUBLE_VERIFY"
+
+{-# COMPLETE
+  MeasurementPartnerAdvertiserLink_MeasurementPartner_None,
+  MeasurementPartnerAdvertiserLink_MeasurementPartner_INTEGRALADSCIENCE,
+  MeasurementPartnerAdvertiserLink_MeasurementPartner_DOUBLEVERIFY,
+  MeasurementPartnerAdvertiserLink_MeasurementPartner
+  #-}
+
+-- | .
+newtype MeasurementPartnerCampaignLink_LinkStatus = MeasurementPartnerCampaignLink_LinkStatus {fromMeasurementPartnerCampaignLink_LinkStatus :: 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
+    )
+
+-- | Unlinked.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKED :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKED = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_UNLINKED"
+
+-- | Linked successfully
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKED :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKED = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINKED"
+
+-- | Link pending for wrapping.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINK_PENDING"
+
+-- | Linking failure.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINK_FAILURE"
+
+-- | Link opt-out by user.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT"
+
+-- | Link opt-out pending sync.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
+
+-- | Link wrap answer pending.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
+
+-- | Mode change pending.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
+
+-- | Partner unlink pending.
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING :: MeasurementPartnerCampaignLink_LinkStatus
+pattern MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING = MeasurementPartnerCampaignLink_LinkStatus "MEASUREMENT_PARTNER_UNLINK_PENDING"
+
+{-# COMPLETE
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKED,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+  MeasurementPartnerCampaignLink_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+  MeasurementPartnerCampaignLink_LinkStatus
+  #-}
+
+-- | Measurement partner used for tag wrapping.
+newtype MeasurementPartnerCampaignLink_MeasurementPartner = MeasurementPartnerCampaignLink_MeasurementPartner {fromMeasurementPartnerCampaignLink_MeasurementPartner :: 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
+    )
+
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_None :: MeasurementPartnerCampaignLink_MeasurementPartner
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_None = MeasurementPartnerCampaignLink_MeasurementPartner "NONE"
+
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_INTEGRALADSCIENCE :: MeasurementPartnerCampaignLink_MeasurementPartner
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_INTEGRALADSCIENCE = MeasurementPartnerCampaignLink_MeasurementPartner "INTEGRAL_AD_SCIENCE"
+
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_DOUBLEVERIFY :: MeasurementPartnerCampaignLink_MeasurementPartner
+pattern MeasurementPartnerCampaignLink_MeasurementPartner_DOUBLEVERIFY = MeasurementPartnerCampaignLink_MeasurementPartner "DOUBLE_VERIFY"
+
+{-# COMPLETE
+  MeasurementPartnerCampaignLink_MeasurementPartner_None,
+  MeasurementPartnerCampaignLink_MeasurementPartner_INTEGRALADSCIENCE,
+  MeasurementPartnerCampaignLink_MeasurementPartner_DOUBLEVERIFY,
+  MeasurementPartnerCampaignLink_MeasurementPartner
+  #-}
+
+-- | Placement wrapping status.
+newtype MeasurementPartnerWrappingData_LinkStatus = MeasurementPartnerWrappingData_LinkStatus {fromMeasurementPartnerWrappingData_LinkStatus :: 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
+    )
+
+-- | Unlinked.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKED :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKED = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_UNLINKED"
+
+-- | Linked successfully
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKED :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKED = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINKED"
+
+-- | Link pending for wrapping.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKPENDING :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKPENDING = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINK_PENDING"
+
+-- | Linking failure.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKFAILURE :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKFAILURE = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINK_FAILURE"
+
+-- | Link opt-out by user.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT"
+
+-- | Link opt-out pending sync.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
+
+-- | Link wrap answer pending.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
+
+-- | Mode change pending.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
+
+-- | Partner unlink pending.
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING :: MeasurementPartnerWrappingData_LinkStatus
+pattern MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING = MeasurementPartnerWrappingData_LinkStatus "MEASUREMENT_PARTNER_UNLINK_PENDING"
+
+{-# COMPLETE
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKED,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKED,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKPENDING,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKFAILURE,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUT,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKOPTOUTPENDING,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERLINKWRAPPINGPENDING,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERMODECHANGEPENDING,
+  MeasurementPartnerWrappingData_LinkStatus_MEASUREMENTPARTNERUNLINKPENDING,
+  MeasurementPartnerWrappingData_LinkStatus
+  #-}
+
+-- | Measurement partner used for wrapping the placement.
+newtype MeasurementPartnerWrappingData_MeasurementPartner = MeasurementPartnerWrappingData_MeasurementPartner {fromMeasurementPartnerWrappingData_MeasurementPartner :: 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
+    )
+
+pattern MeasurementPartnerWrappingData_MeasurementPartner_None :: MeasurementPartnerWrappingData_MeasurementPartner
+pattern MeasurementPartnerWrappingData_MeasurementPartner_None = MeasurementPartnerWrappingData_MeasurementPartner "NONE"
+
+pattern MeasurementPartnerWrappingData_MeasurementPartner_INTEGRALADSCIENCE :: MeasurementPartnerWrappingData_MeasurementPartner
+pattern MeasurementPartnerWrappingData_MeasurementPartner_INTEGRALADSCIENCE = MeasurementPartnerWrappingData_MeasurementPartner "INTEGRAL_AD_SCIENCE"
+
+pattern MeasurementPartnerWrappingData_MeasurementPartner_DOUBLEVERIFY :: MeasurementPartnerWrappingData_MeasurementPartner
+pattern MeasurementPartnerWrappingData_MeasurementPartner_DOUBLEVERIFY = MeasurementPartnerWrappingData_MeasurementPartner "DOUBLE_VERIFY"
+
+{-# COMPLETE
+  MeasurementPartnerWrappingData_MeasurementPartner_None,
+  MeasurementPartnerWrappingData_MeasurementPartner_INTEGRALADSCIENCE,
+  MeasurementPartnerWrappingData_MeasurementPartner_DOUBLEVERIFY,
+  MeasurementPartnerWrappingData_MeasurementPartner
+  #-}
+
+-- | Measurement mode for the wrapped placement.
+newtype MeasurementPartnerWrappingData_TagWrappingMode = MeasurementPartnerWrappingData_TagWrappingMode {fromMeasurementPartnerWrappingData_TagWrappingMode :: 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
+    )
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_None :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_None = MeasurementPartnerWrappingData_TagWrappingMode "NONE"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Blocking :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Blocking = MeasurementPartnerWrappingData_TagWrappingMode "BLOCKING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Monitoring :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Monitoring = MeasurementPartnerWrappingData_TagWrappingMode "MONITORING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_MONITORINGREADONLY :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_MONITORINGREADONLY = MeasurementPartnerWrappingData_TagWrappingMode "MONITORING_READ_ONLY"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VIDEOPIXELMONITORING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VIDEOPIXELMONITORING = MeasurementPartnerWrappingData_TagWrappingMode "VIDEO_PIXEL_MONITORING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Tracking :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_Tracking = MeasurementPartnerWrappingData_TagWrappingMode "TRACKING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDMONITORING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDMONITORING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_MONITORING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDBLOCKING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDBLOCKING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_BLOCKING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDMONITORING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDMONITORING = MeasurementPartnerWrappingData_TagWrappingMode "NON_VPAID_MONITORING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYMONITORING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYMONITORING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_ONLY_MONITORING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYBLOCKING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYBLOCKING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_ONLY_BLOCKING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYFILTERING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYFILTERING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_ONLY_FILTERING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDFILTERING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_VPAIDFILTERING = MeasurementPartnerWrappingData_TagWrappingMode "VPAID_FILTERING"
+
+pattern MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDFILTERING :: MeasurementPartnerWrappingData_TagWrappingMode
+pattern MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDFILTERING = MeasurementPartnerWrappingData_TagWrappingMode "NON_VPAID_FILTERING"
+
+{-# COMPLETE
+  MeasurementPartnerWrappingData_TagWrappingMode_None,
+  MeasurementPartnerWrappingData_TagWrappingMode_Blocking,
+  MeasurementPartnerWrappingData_TagWrappingMode_Monitoring,
+  MeasurementPartnerWrappingData_TagWrappingMode_MONITORINGREADONLY,
+  MeasurementPartnerWrappingData_TagWrappingMode_VIDEOPIXELMONITORING,
+  MeasurementPartnerWrappingData_TagWrappingMode_Tracking,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDMONITORING,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDBLOCKING,
+  MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDMONITORING,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYMONITORING,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYBLOCKING,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDONLYFILTERING,
+  MeasurementPartnerWrappingData_TagWrappingMode_VPAIDFILTERING,
+  MeasurementPartnerWrappingData_TagWrappingMode_NONVPAIDFILTERING,
+  MeasurementPartnerWrappingData_TagWrappingMode
+  #-}
+
+-- | Mobile app directory.
+newtype MobileApp_Directory = MobileApp_Directory {fromMobileApp_Directory :: 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
+    )
+
+pattern MobileApp_Directory_Unknown :: MobileApp_Directory
+pattern MobileApp_Directory_Unknown = MobileApp_Directory "UNKNOWN"
+
+pattern MobileApp_Directory_APPLEAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_APPLEAPPSTORE = MobileApp_Directory "APPLE_APP_STORE"
+
+pattern MobileApp_Directory_GOOGLEPLAYSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_GOOGLEPLAYSTORE = MobileApp_Directory "GOOGLE_PLAY_STORE"
+
+pattern MobileApp_Directory_ROKUAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_ROKUAPPSTORE = MobileApp_Directory "ROKU_APP_STORE"
+
+pattern MobileApp_Directory_AMAZONFIRETVAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_AMAZONFIRETVAPPSTORE = MobileApp_Directory "AMAZON_FIRETV_APP_STORE"
+
+pattern MobileApp_Directory_PLAYSTATIONAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_PLAYSTATIONAPPSTORE = MobileApp_Directory "PLAYSTATION_APP_STORE"
+
+pattern MobileApp_Directory_APPLETVAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_APPLETVAPPSTORE = MobileApp_Directory "APPLE_TV_APP_STORE"
+
+pattern MobileApp_Directory_XBOXAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_XBOXAPPSTORE = MobileApp_Directory "XBOX_APP_STORE"
+
+pattern MobileApp_Directory_SAMSUNGTVAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_SAMSUNGTVAPPSTORE = MobileApp_Directory "SAMSUNG_TV_APP_STORE"
+
+pattern MobileApp_Directory_ANDROIDTVAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_ANDROIDTVAPPSTORE = MobileApp_Directory "ANDROID_TV_APP_STORE"
+
+pattern MobileApp_Directory_GENERICCTVAPPSTORE :: MobileApp_Directory
+pattern MobileApp_Directory_GENERICCTVAPPSTORE = MobileApp_Directory "GENERIC_CTV_APP_STORE"
+
+{-# COMPLETE
+  MobileApp_Directory_Unknown,
+  MobileApp_Directory_APPLEAPPSTORE,
+  MobileApp_Directory_GOOGLEPLAYSTORE,
+  MobileApp_Directory_ROKUAPPSTORE,
+  MobileApp_Directory_AMAZONFIRETVAPPSTORE,
+  MobileApp_Directory_PLAYSTATIONAPPSTORE,
+  MobileApp_Directory_APPLETVAPPSTORE,
+  MobileApp_Directory_XBOXAPPSTORE,
+  MobileApp_Directory_SAMSUNGTVAPPSTORE,
+  MobileApp_Directory_ANDROIDTVAPPSTORE,
+  MobileApp_Directory_GENERICCTVAPPSTORE,
+  MobileApp_Directory
+  #-}
+
+-- | Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.
+newtype ObjectFilter_Status = ObjectFilter_Status {fromObjectFilter_Status :: 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
+    )
+
+-- | Profile has access to none of the objects.
+pattern ObjectFilter_Status_None :: ObjectFilter_Status
+pattern ObjectFilter_Status_None = ObjectFilter_Status "NONE"
+
+-- | Profile has access to only specific objects.
+pattern ObjectFilter_Status_Assigned :: ObjectFilter_Status
+pattern ObjectFilter_Status_Assigned = ObjectFilter_Status "ASSIGNED"
+
+-- | Profile has access to all objects.
+pattern ObjectFilter_Status_All :: ObjectFilter_Status
+pattern ObjectFilter_Status_All = ObjectFilter_Status "ALL"
+
+{-# COMPLETE
+  ObjectFilter_Status_None,
+  ObjectFilter_Status_Assigned,
+  ObjectFilter_Status_All,
+  ObjectFilter_Status
+  #-}
+
+-- | Type of this contact.
+newtype OrderContact_ContactType = OrderContact_ContactType {fromOrderContact_ContactType :: 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
+    )
+
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTBUYERCONTACT :: OrderContact_ContactType
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTBUYERCONTACT = OrderContact_ContactType "PLANNING_ORDER_CONTACT_BUYER_CONTACT"
+
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTBUYERBILLINGCONTACT :: OrderContact_ContactType
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTBUYERBILLINGCONTACT = OrderContact_ContactType "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT"
+
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTSELLERCONTACT :: OrderContact_ContactType
+pattern OrderContact_ContactType_PLANNINGORDERCONTACTSELLERCONTACT = OrderContact_ContactType "PLANNING_ORDER_CONTACT_SELLER_CONTACT"
+
+{-# COMPLETE
+  OrderContact_ContactType_PLANNINGORDERCONTACTBUYERCONTACT,
+  OrderContact_ContactType_PLANNINGORDERCONTACTBUYERBILLINGCONTACT,
+  OrderContact_ContactType_PLANNINGORDERCONTACTSELLERCONTACT,
+  OrderContact_ContactType
+  #-}
+
+-- | Whether this placement is active, inactive, archived or permanently archived.
+newtype Placement_ActiveStatus = Placement_ActiveStatus {fromPlacement_ActiveStatus :: 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
+    )
+
+pattern Placement_ActiveStatus_PLACEMENTSTATUSUNKNOWN :: Placement_ActiveStatus
+pattern Placement_ActiveStatus_PLACEMENTSTATUSUNKNOWN = Placement_ActiveStatus "PLACEMENT_STATUS_UNKNOWN"
+
+pattern Placement_ActiveStatus_PLACEMENTSTATUSACTIVE :: Placement_ActiveStatus
+pattern Placement_ActiveStatus_PLACEMENTSTATUSACTIVE = Placement_ActiveStatus "PLACEMENT_STATUS_ACTIVE"
+
+pattern Placement_ActiveStatus_PLACEMENTSTATUSINACTIVE :: Placement_ActiveStatus
+pattern Placement_ActiveStatus_PLACEMENTSTATUSINACTIVE = Placement_ActiveStatus "PLACEMENT_STATUS_INACTIVE"
+
+pattern Placement_ActiveStatus_PLACEMENTSTATUSARCHIVED :: Placement_ActiveStatus
+pattern Placement_ActiveStatus_PLACEMENTSTATUSARCHIVED = Placement_ActiveStatus "PLACEMENT_STATUS_ARCHIVED"
+
+pattern Placement_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED :: Placement_ActiveStatus
+pattern Placement_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED = Placement_ActiveStatus "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
+
+{-# COMPLETE
+  Placement_ActiveStatus_PLACEMENTSTATUSUNKNOWN,
+  Placement_ActiveStatus_PLACEMENTSTATUSACTIVE,
+  Placement_ActiveStatus_PLACEMENTSTATUSINACTIVE,
+  Placement_ActiveStatus_PLACEMENTSTATUSARCHIVED,
+  Placement_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+  Placement_ActiveStatus
+  #-}
+
+-- | Placement compatibility. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY/INTERSTITIAL. IN/STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.
+newtype Placement_Compatibility = Placement_Compatibility {fromPlacement_Compatibility :: 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
+    )
+
+pattern Placement_Compatibility_Display :: Placement_Compatibility
+pattern Placement_Compatibility_Display = Placement_Compatibility "DISPLAY"
+
+pattern Placement_Compatibility_DISPLAYINTERSTITIAL :: Placement_Compatibility
+pattern Placement_Compatibility_DISPLAYINTERSTITIAL = Placement_Compatibility "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern Placement_Compatibility_App :: Placement_Compatibility
+pattern Placement_Compatibility_App = Placement_Compatibility "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern Placement_Compatibility_APPINTERSTITIAL :: Placement_Compatibility
+pattern Placement_Compatibility_APPINTERSTITIAL = Placement_Compatibility "APP_INTERSTITIAL"
+
+pattern Placement_Compatibility_INSTREAMVIDEO :: Placement_Compatibility
+pattern Placement_Compatibility_INSTREAMVIDEO = Placement_Compatibility "IN_STREAM_VIDEO"
+
+pattern Placement_Compatibility_INSTREAMAUDIO :: Placement_Compatibility
+pattern Placement_Compatibility_INSTREAMAUDIO = Placement_Compatibility "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  Placement_Compatibility_Display,
+  Placement_Compatibility_DISPLAYINTERSTITIAL,
+  Placement_Compatibility_App,
+  Placement_Compatibility_APPINTERSTITIAL,
+  Placement_Compatibility_INSTREAMVIDEO,
+  Placement_Compatibility_INSTREAMAUDIO,
+  Placement_Compatibility
+  #-}
+
+-- | Payment source for this placement. This is a required field that is read-only after insertion.
+newtype Placement_PaymentSource = Placement_PaymentSource {fromPlacement_PaymentSource :: 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
+    )
+
+pattern Placement_PaymentSource_PLACEMENTAGENCYPAID :: Placement_PaymentSource
+pattern Placement_PaymentSource_PLACEMENTAGENCYPAID = Placement_PaymentSource "PLACEMENT_AGENCY_PAID"
+
+pattern Placement_PaymentSource_PLACEMENTPUBLISHERPAID :: Placement_PaymentSource
+pattern Placement_PaymentSource_PLACEMENTPUBLISHERPAID = Placement_PaymentSource "PLACEMENT_PUBLISHER_PAID"
+
+{-# COMPLETE
+  Placement_PaymentSource_PLACEMENTAGENCYPAID,
+  Placement_PaymentSource_PLACEMENTPUBLISHERPAID,
+  Placement_PaymentSource
+  #-}
+
+-- | Third-party placement status.
+newtype Placement_Status = Placement_Status {fromPlacement_Status :: 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
+    )
+
+-- | Placement is not yet reviewed by publisher.
+pattern Placement_Status_PENDINGREVIEW :: Placement_Status
+pattern Placement_Status_PENDINGREVIEW = Placement_Status "PENDING_REVIEW"
+
+-- | Placement Ad Serving fee is accepted by publisher
+pattern Placement_Status_PAYMENTACCEPTED :: Placement_Status
+pattern Placement_Status_PAYMENTACCEPTED = Placement_Status "PAYMENT_ACCEPTED"
+
+-- | Placement Ad Serving fee is rejected by publisher
+pattern Placement_Status_PAYMENTREJECTED :: Placement_Status
+pattern Placement_Status_PAYMENTREJECTED = Placement_Status "PAYMENT_REJECTED"
+
+-- | Advertisers has accepted rejection of placement ad serving fee. This will suppress future notification on DDMM UI
+pattern Placement_Status_ACKNOWLEDGEREJECTION :: Placement_Status
+pattern Placement_Status_ACKNOWLEDGEREJECTION = Placement_Status "ACKNOWLEDGE_REJECTION"
+
+-- | Advertisers has accepted acceptance of placement ad serving fee. This will suppress future notification on DDMM UI
+pattern Placement_Status_ACKNOWLEDGEACCEPTANCE :: Placement_Status
+pattern Placement_Status_ACKNOWLEDGEACCEPTANCE = Placement_Status "ACKNOWLEDGE_ACCEPTANCE"
+
+-- | Advertisers is still working on placement not yet ready for Publisher review; default status for pub-paid placements
+pattern Placement_Status_Draft :: Placement_Status
+pattern Placement_Status_Draft = Placement_Status "DRAFT"
+
+{-# COMPLETE
+  Placement_Status_PENDINGREVIEW,
+  Placement_Status_PAYMENTACCEPTED,
+  Placement_Status_PAYMENTREJECTED,
+  Placement_Status_ACKNOWLEDGEREJECTION,
+  Placement_Status_ACKNOWLEDGEACCEPTANCE,
+  Placement_Status_Draft,
+  Placement_Status
+  #-}
+
+newtype Placement_TagFormatsItem = Placement_TagFormatsItem {fromPlacement_TagFormatsItem :: 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
+    )
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGSTANDARD :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGSTANDARD = Placement_TagFormatsItem "PLACEMENT_TAG_STANDARD"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPT = Placement_TagFormatsItem "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEILAYER :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEILAYER = Placement_TagFormatsItem "PLACEMENT_TAG_IFRAME_ILAYER"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERNALREDIRECT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERNALREDIRECT = Placement_TagFormatsItem "PLACEMENT_TAG_INTERNAL_REDIRECT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPT = Placement_TagFormatsItem "PLACEMENT_TAG_JAVASCRIPT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT = Placement_TagFormatsItem "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT = Placement_TagFormatsItem "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPT = Placement_TagFormatsItem "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGCLICKCOMMANDS :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGCLICKCOMMANDS = Placement_TagFormatsItem "PLACEMENT_TAG_CLICK_COMMANDS"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINSTREAMVIDEOPREFETCH :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINSTREAMVIDEOPREFETCH = Placement_TagFormatsItem "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKING :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKING = Placement_TagFormatsItem "PLACEMENT_TAG_TRACKING"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGIFRAME :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGIFRAME = Placement_TagFormatsItem "PLACEMENT_TAG_TRACKING_IFRAME"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGJAVASCRIPT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGJAVASCRIPT = Placement_TagFormatsItem "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
+
+pattern Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 = Placement_TagFormatsItem "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY = Placement_TagFormatsItem "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPTLEGACY :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPTLEGACY = Placement_TagFormatsItem "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY = Placement_TagFormatsItem "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY = Placement_TagFormatsItem "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
+
+pattern Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 = Placement_TagFormatsItem "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
+
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT :: Placement_TagFormatsItem
+pattern Placement_TagFormatsItem_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT = Placement_TagFormatsItem "PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
+
+{-# COMPLETE
+  Placement_TagFormatsItem_PLACEMENTTAGSTANDARD,
+  Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPT,
+  Placement_TagFormatsItem_PLACEMENTTAGIFRAMEILAYER,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERNALREDIRECT,
+  Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPT,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+  Placement_TagFormatsItem_PLACEMENTTAGCLICKCOMMANDS,
+  Placement_TagFormatsItem_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+  Placement_TagFormatsItem_PLACEMENTTAGTRACKING,
+  Placement_TagFormatsItem_PLACEMENTTAGTRACKINGIFRAME,
+  Placement_TagFormatsItem_PLACEMENTTAGTRACKINGJAVASCRIPT,
+  Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+  Placement_TagFormatsItem_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+  Placement_TagFormatsItem_PLACEMENTTAGJAVASCRIPTLEGACY,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+  Placement_TagFormatsItem_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+  Placement_TagFormatsItem_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+  Placement_TagFormatsItem_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+  Placement_TagFormatsItem
+  #-}
+
+-- | VPAID adapter setting for this placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to this placement. /Note:/ Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.
+newtype Placement_VpaidAdapterChoice = Placement_VpaidAdapterChoice {fromPlacement_VpaidAdapterChoice :: 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 means Google chooses which adapter, if any, to serve.
+pattern Placement_VpaidAdapterChoice_Default :: Placement_VpaidAdapterChoice
+pattern Placement_VpaidAdapterChoice_Default = Placement_VpaidAdapterChoice "DEFAULT"
+
+pattern Placement_VpaidAdapterChoice_Flash :: Placement_VpaidAdapterChoice
+pattern Placement_VpaidAdapterChoice_Flash = Placement_VpaidAdapterChoice "FLASH"
+
+pattern Placement_VpaidAdapterChoice_HTML5 :: Placement_VpaidAdapterChoice
+pattern Placement_VpaidAdapterChoice_HTML5 = Placement_VpaidAdapterChoice "HTML5"
+
+pattern Placement_VpaidAdapterChoice_Both :: Placement_VpaidAdapterChoice
+pattern Placement_VpaidAdapterChoice_Both = Placement_VpaidAdapterChoice "BOTH"
+
+{-# COMPLETE
+  Placement_VpaidAdapterChoice_Default,
+  Placement_VpaidAdapterChoice_Flash,
+  Placement_VpaidAdapterChoice_HTML5,
+  Placement_VpaidAdapterChoice_Both,
+  Placement_VpaidAdapterChoice
+  #-}
+
+-- | Whether this placement group is active, inactive, archived or permanently archived.
+newtype PlacementGroup_ActiveStatus = PlacementGroup_ActiveStatus {fromPlacementGroup_ActiveStatus :: 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
+    )
+
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSUNKNOWN :: PlacementGroup_ActiveStatus
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSUNKNOWN = PlacementGroup_ActiveStatus "PLACEMENT_STATUS_UNKNOWN"
+
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSACTIVE :: PlacementGroup_ActiveStatus
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSACTIVE = PlacementGroup_ActiveStatus "PLACEMENT_STATUS_ACTIVE"
+
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSINACTIVE :: PlacementGroup_ActiveStatus
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSINACTIVE = PlacementGroup_ActiveStatus "PLACEMENT_STATUS_INACTIVE"
+
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSARCHIVED :: PlacementGroup_ActiveStatus
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSARCHIVED = PlacementGroup_ActiveStatus "PLACEMENT_STATUS_ARCHIVED"
+
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED :: PlacementGroup_ActiveStatus
+pattern PlacementGroup_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED = PlacementGroup_ActiveStatus "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
+
+{-# COMPLETE
+  PlacementGroup_ActiveStatus_PLACEMENTSTATUSUNKNOWN,
+  PlacementGroup_ActiveStatus_PLACEMENTSTATUSACTIVE,
+  PlacementGroup_ActiveStatus_PLACEMENTSTATUSINACTIVE,
+  PlacementGroup_ActiveStatus_PLACEMENTSTATUSARCHIVED,
+  PlacementGroup_ActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+  PlacementGroup_ActiveStatus
+  #-}
+
+-- | Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.
+newtype PlacementGroup_PlacementGroupType = PlacementGroup_PlacementGroupType {fromPlacementGroup_PlacementGroupType :: 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
+    )
+
+-- | A simple group of site-placements (tags). Basically acts as a single pricing point for a group of tags.
+pattern PlacementGroup_PlacementGroupType_PLACEMENTPACKAGE :: PlacementGroup_PlacementGroupType
+pattern PlacementGroup_PlacementGroupType_PLACEMENTPACKAGE = PlacementGroup_PlacementGroupType "PLACEMENT_PACKAGE"
+
+-- | A group of site-placements (tags) that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. This kind of group requires one of its assigned site-placements to be marked as primary for reporting purposes.
+pattern PlacementGroup_PlacementGroupType_PLACEMENTROADBLOCK :: PlacementGroup_PlacementGroupType
+pattern PlacementGroup_PlacementGroupType_PLACEMENTROADBLOCK = PlacementGroup_PlacementGroupType "PLACEMENT_ROADBLOCK"
+
+{-# COMPLETE
+  PlacementGroup_PlacementGroupType_PLACEMENTPACKAGE,
+  PlacementGroup_PlacementGroupType_PLACEMENTROADBLOCK,
+  PlacementGroup_PlacementGroupType
+  #-}
+
+-- | Popup window position either centered or at specific coordinate.
+newtype PopupWindowProperties_PositionType = PopupWindowProperties_PositionType {fromPopupWindowProperties_PositionType :: 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
+    )
+
+-- | window positioning at center.
+pattern PopupWindowProperties_PositionType_Center :: PopupWindowProperties_PositionType
+pattern PopupWindowProperties_PositionType_Center = PopupWindowProperties_PositionType "CENTER"
+
+-- | window positioning by upper left corner coordinates.
+pattern PopupWindowProperties_PositionType_Coordinates :: PopupWindowProperties_PositionType
+pattern PopupWindowProperties_PositionType_Coordinates = PopupWindowProperties_PositionType "COORDINATES"
+
+{-# COMPLETE
+  PopupWindowProperties_PositionType_Center,
+  PopupWindowProperties_PositionType_Coordinates,
+  PopupWindowProperties_PositionType
+  #-}
+
+-- | Cap cost type of this inventory item.
+newtype Pricing_CapCostType = Pricing_CapCostType {fromPricing_CapCostType :: 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
+    )
+
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPENONE :: Pricing_CapCostType
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPENONE = Pricing_CapCostType "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE"
+
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPEMONTHLY :: Pricing_CapCostType
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPEMONTHLY = Pricing_CapCostType "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY"
+
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPECUMULATIVE :: Pricing_CapCostType
+pattern Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPECUMULATIVE = Pricing_CapCostType "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE"
+
+{-# COMPLETE
+  Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPENONE,
+  Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPEMONTHLY,
+  Pricing_CapCostType_PLANNINGPLACEMENTCAPCOSTTYPECUMULATIVE,
+  Pricing_CapCostType
+  #-}
+
+-- | Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING/PLACEMENT/GROUP/TYPE/PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING/PLACEMENT/GROUP/TYPE/ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.
+newtype Pricing_GroupType = Pricing_GroupType {fromPricing_GroupType :: 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
+    )
+
+-- | A placement package represents \"package pricing\": Pricing and flight information is defined on the package, not on its child placements. The placements in a package do not need to be on the same page.
+pattern Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEPACKAGE :: Pricing_GroupType
+pattern Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEPACKAGE = Pricing_GroupType "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE"
+
+-- | A roadblock represents a set of placements that are all the same page. One of the child placements is designated as the \"primary\" placement for reporting purposes.
+pattern Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEROADBLOCK :: Pricing_GroupType
+pattern Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEROADBLOCK = Pricing_GroupType "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK"
+
+{-# COMPLETE
+  Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEPACKAGE,
+  Pricing_GroupType_PLANNINGPLACEMENTGROUPTYPEROADBLOCK,
+  Pricing_GroupType
+  #-}
+
+-- | Pricing type of this inventory item.
+newtype Pricing_PricingType = Pricing_PricingType {fromPricing_PricingType :: 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
+    )
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEIMPRESSIONS :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEIMPRESSIONS = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPM :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPM = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_CPM"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECLICKS :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECLICKS = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPC :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPC = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_CPC"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPA :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPA = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_CPA"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATEIMPRESSIONS :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATEIMPRESSIONS = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATECLICKS :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATECLICKS = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS"
+
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPMACTIVEVIEW :: Pricing_PricingType
+pattern Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPMACTIVEVIEW = Pricing_PricingType "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW"
+
+{-# COMPLETE
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEIMPRESSIONS,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPM,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECLICKS,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPC,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPA,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATEIMPRESSIONS,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPEFLATRATECLICKS,
+  Pricing_PricingType_PLANNINGPLACEMENTPRICINGTYPECPMACTIVEVIEW,
+  Pricing_PricingType
+  #-}
+
+-- | Placement cap cost option.
+newtype PricingSchedule_CapCostOption = PricingSchedule_CapCostOption {fromPricingSchedule_CapCostOption :: 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
+    )
+
+pattern PricingSchedule_CapCostOption_CAPCOSTNONE :: PricingSchedule_CapCostOption
+pattern PricingSchedule_CapCostOption_CAPCOSTNONE = PricingSchedule_CapCostOption "CAP_COST_NONE"
+
+pattern PricingSchedule_CapCostOption_CAPCOSTMONTHLY :: PricingSchedule_CapCostOption
+pattern PricingSchedule_CapCostOption_CAPCOSTMONTHLY = PricingSchedule_CapCostOption "CAP_COST_MONTHLY"
+
+pattern PricingSchedule_CapCostOption_CAPCOSTCUMULATIVE :: PricingSchedule_CapCostOption
+pattern PricingSchedule_CapCostOption_CAPCOSTCUMULATIVE = PricingSchedule_CapCostOption "CAP_COST_CUMULATIVE"
+
+{-# COMPLETE
+  PricingSchedule_CapCostOption_CAPCOSTNONE,
+  PricingSchedule_CapCostOption_CAPCOSTMONTHLY,
+  PricingSchedule_CapCostOption_CAPCOSTCUMULATIVE,
+  PricingSchedule_CapCostOption
+  #-}
+
+-- | Placement pricing type. This field is required on insertion.
+newtype PricingSchedule_PricingType = PricingSchedule_PricingType {fromPricingSchedule_PricingType :: 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
+    )
+
+pattern PricingSchedule_PricingType_PRICINGTYPECPM :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPECPM = PricingSchedule_PricingType "PRICING_TYPE_CPM"
+
+pattern PricingSchedule_PricingType_PRICINGTYPECPC :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPECPC = PricingSchedule_PricingType "PRICING_TYPE_CPC"
+
+pattern PricingSchedule_PricingType_PRICINGTYPECPA :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPECPA = PricingSchedule_PricingType "PRICING_TYPE_CPA"
+
+pattern PricingSchedule_PricingType_PRICINGTYPEFLATRATEIMPRESSIONS :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPEFLATRATEIMPRESSIONS = PricingSchedule_PricingType "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
+
+pattern PricingSchedule_PricingType_PRICINGTYPEFLATRATECLICKS :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPEFLATRATECLICKS = PricingSchedule_PricingType "PRICING_TYPE_FLAT_RATE_CLICKS"
+
+pattern PricingSchedule_PricingType_PRICINGTYPECPMACTIVEVIEW :: PricingSchedule_PricingType
+pattern PricingSchedule_PricingType_PRICINGTYPECPMACTIVEVIEW = PricingSchedule_PricingType "PRICING_TYPE_CPM_ACTIVEVIEW"
+
+{-# COMPLETE
+  PricingSchedule_PricingType_PRICINGTYPECPM,
+  PricingSchedule_PricingType_PRICINGTYPECPC,
+  PricingSchedule_PricingType_PRICINGTYPECPA,
+  PricingSchedule_PricingType_PRICINGTYPEFLATRATEIMPRESSIONS,
+  PricingSchedule_PricingType_PRICINGTYPEFLATRATECLICKS,
+  PricingSchedule_PricingType_PRICINGTYPECPMACTIVEVIEW,
+  PricingSchedule_PricingType
+  #-}
+
+-- | Audience age group of this project.
+newtype Project_AudienceAgeGroup = Project_AudienceAgeGroup {fromProject_AudienceAgeGroup :: 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
+    )
+
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_18_24 :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_18_24 = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_18_24"
+
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_25_34 :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_25_34 = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_25_34"
+
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_35_44 :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_35_44 = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_35_44"
+
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_45_54 :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_45_54 = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_45_54"
+
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_55_64 :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_55_64 = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_55_64"
+
+pattern Project_AudienceAgeGroup_PLANNINGAUDIENCEAGE65ORMORE :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNINGAUDIENCEAGE65ORMORE = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_65_OR_MORE"
+
+pattern Project_AudienceAgeGroup_PLANNINGAUDIENCEAGEUNKNOWN :: Project_AudienceAgeGroup
+pattern Project_AudienceAgeGroup_PLANNINGAUDIENCEAGEUNKNOWN = Project_AudienceAgeGroup "PLANNING_AUDIENCE_AGE_UNKNOWN"
+
+{-# COMPLETE
+  Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_18_24,
+  Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_25_34,
+  Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_35_44,
+  Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_45_54,
+  Project_AudienceAgeGroup_PLANNING_AUDIENCE_AGE_55_64,
+  Project_AudienceAgeGroup_PLANNINGAUDIENCEAGE65ORMORE,
+  Project_AudienceAgeGroup_PLANNINGAUDIENCEAGEUNKNOWN,
+  Project_AudienceAgeGroup
+  #-}
+
+-- | Audience gender of this project.
+newtype Project_AudienceGender = Project_AudienceGender {fromProject_AudienceGender :: 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
+    )
+
+pattern Project_AudienceGender_PLANNINGAUDIENCEGENDERMALE :: Project_AudienceGender
+pattern Project_AudienceGender_PLANNINGAUDIENCEGENDERMALE = Project_AudienceGender "PLANNING_AUDIENCE_GENDER_MALE"
+
+pattern Project_AudienceGender_PLANNINGAUDIENCEGENDERFEMALE :: Project_AudienceGender
+pattern Project_AudienceGender_PLANNINGAUDIENCEGENDERFEMALE = Project_AudienceGender "PLANNING_AUDIENCE_GENDER_FEMALE"
+
+{-# COMPLETE
+  Project_AudienceGender_PLANNINGAUDIENCEGENDERMALE,
+  Project_AudienceGender_PLANNINGAUDIENCEGENDERFEMALE,
+  Project_AudienceGender
+  #-}
+
+-- | The delivery type for the recipient.
+newtype Recipient_DeliveryType = Recipient_DeliveryType {fromRecipient_DeliveryType :: 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
+    )
+
+pattern Recipient_DeliveryType_Link :: Recipient_DeliveryType
+pattern Recipient_DeliveryType_Link = Recipient_DeliveryType "LINK"
+
+pattern Recipient_DeliveryType_Attachment :: Recipient_DeliveryType
+pattern Recipient_DeliveryType_Attachment = Recipient_DeliveryType "ATTACHMENT"
+
+{-# COMPLETE
+  Recipient_DeliveryType_Link,
+  Recipient_DeliveryType_Attachment,
+  Recipient_DeliveryType
+  #-}
+
+-- | Product from which this remarketing list was originated.
+newtype RemarketingList_ListSource = RemarketingList_ListSource {fromRemarketingList_ListSource :: 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
+    )
+
+-- | covers sources not supported in DCM other than those listed below
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_OTHER"
+
+-- | ADX
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEADX :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEADX = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_ADX"
+
+-- | DFP
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDFP :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDFP = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_DFP"
+
+-- | XFP
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEXFP :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEXFP = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_XFP"
+
+-- | DoubleClick Campaign Manager
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDFA :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDFA = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_DFA"
+
+-- | Google Analytics Premium
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEGA :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEGA = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_GA"
+
+-- | Youtube
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_YOUTUBE"
+
+-- | DoubleClick Bid Manager
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDBM :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDBM = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_DBM"
+
+-- | G+
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_GPLUS"
+
+-- | DoubleClick Audience Center
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDMP :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEDMP = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_DMP"
+
+-- | Playstore
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE :: RemarketingList_ListSource
+pattern RemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE = RemarketingList_ListSource "REMARKETING_LIST_SOURCE_PLAY_STORE"
+
+{-# COMPLETE
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEADX,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEDFP,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEXFP,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEDFA,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEGA,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEDBM,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEDMP,
+  RemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE,
+  RemarketingList_ListSource
+  #-}
+
+-- | The dimension option.
+newtype Report_CrossDimensionReachCriteria_Dimension = Report_CrossDimensionReachCriteria_Dimension {fromReport_CrossDimensionReachCriteria_Dimension :: 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
+    )
+
+pattern Report_CrossDimensionReachCriteria_Dimension_Advertiser :: Report_CrossDimensionReachCriteria_Dimension
+pattern Report_CrossDimensionReachCriteria_Dimension_Advertiser = Report_CrossDimensionReachCriteria_Dimension "ADVERTISER"
+
+pattern Report_CrossDimensionReachCriteria_Dimension_Campaign :: Report_CrossDimensionReachCriteria_Dimension
+pattern Report_CrossDimensionReachCriteria_Dimension_Campaign = Report_CrossDimensionReachCriteria_Dimension "CAMPAIGN"
+
+pattern Report_CrossDimensionReachCriteria_Dimension_SITEBYADVERTISER :: Report_CrossDimensionReachCriteria_Dimension
+pattern Report_CrossDimensionReachCriteria_Dimension_SITEBYADVERTISER = Report_CrossDimensionReachCriteria_Dimension "SITE_BY_ADVERTISER"
+
+pattern Report_CrossDimensionReachCriteria_Dimension_SITEBYCAMPAIGN :: Report_CrossDimensionReachCriteria_Dimension
+pattern Report_CrossDimensionReachCriteria_Dimension_SITEBYCAMPAIGN = Report_CrossDimensionReachCriteria_Dimension "SITE_BY_CAMPAIGN"
+
+{-# COMPLETE
+  Report_CrossDimensionReachCriteria_Dimension_Advertiser,
+  Report_CrossDimensionReachCriteria_Dimension_Campaign,
+  Report_CrossDimensionReachCriteria_Dimension_SITEBYADVERTISER,
+  Report_CrossDimensionReachCriteria_Dimension_SITEBYCAMPAIGN,
+  Report_CrossDimensionReachCriteria_Dimension
+  #-}
+
+-- | The type of delivery for the owner to receive, if enabled.
+newtype Report_Delivery_EmailOwnerDeliveryType = Report_Delivery_EmailOwnerDeliveryType {fromReport_Delivery_EmailOwnerDeliveryType :: 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
+    )
+
+pattern Report_Delivery_EmailOwnerDeliveryType_Link :: Report_Delivery_EmailOwnerDeliveryType
+pattern Report_Delivery_EmailOwnerDeliveryType_Link = Report_Delivery_EmailOwnerDeliveryType "LINK"
+
+pattern Report_Delivery_EmailOwnerDeliveryType_Attachment :: Report_Delivery_EmailOwnerDeliveryType
+pattern Report_Delivery_EmailOwnerDeliveryType_Attachment = Report_Delivery_EmailOwnerDeliveryType "ATTACHMENT"
+
+{-# COMPLETE
+  Report_Delivery_EmailOwnerDeliveryType_Link,
+  Report_Delivery_EmailOwnerDeliveryType_Attachment,
+  Report_Delivery_EmailOwnerDeliveryType
+  #-}
+
+-- | The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report\'s size exceeds the format\'s capabilities. \"CSV\" will then be the fallback format.
+newtype Report_Format = Report_Format {fromReport_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
+    )
+
+pattern Report_Format_Csv :: Report_Format
+pattern Report_Format_Csv = Report_Format "CSV"
+
+pattern Report_Format_Excel :: Report_Format
+pattern Report_Format_Excel = Report_Format "EXCEL"
+
+{-# COMPLETE
+  Report_Format_Csv,
+  Report_Format_Excel,
+  Report_Format
+  #-}
+
+newtype Report_Schedule_RepeatsOnWeekDaysItem = Report_Schedule_RepeatsOnWeekDaysItem {fromReport_Schedule_RepeatsOnWeekDaysItem :: 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
+    )
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Sunday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Sunday = Report_Schedule_RepeatsOnWeekDaysItem "SUNDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Monday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Monday = Report_Schedule_RepeatsOnWeekDaysItem "MONDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Tuesday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Tuesday = Report_Schedule_RepeatsOnWeekDaysItem "TUESDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Wednesday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Wednesday = Report_Schedule_RepeatsOnWeekDaysItem "WEDNESDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Thursday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Thursday = Report_Schedule_RepeatsOnWeekDaysItem "THURSDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Friday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Friday = Report_Schedule_RepeatsOnWeekDaysItem "FRIDAY"
+
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Saturday :: Report_Schedule_RepeatsOnWeekDaysItem
+pattern Report_Schedule_RepeatsOnWeekDaysItem_Saturday = Report_Schedule_RepeatsOnWeekDaysItem "SATURDAY"
+
+{-# COMPLETE
+  Report_Schedule_RepeatsOnWeekDaysItem_Sunday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Monday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Tuesday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Wednesday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Thursday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Friday,
+  Report_Schedule_RepeatsOnWeekDaysItem_Saturday,
+  Report_Schedule_RepeatsOnWeekDaysItem
+  #-}
+
+-- | Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month. Example: If \'startDate\' is Monday, April 2nd 2012 (2012-04-02), \"DAY/OF/MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK/OF/MONTH\" would run subsequent reports on the first Monday of the month.
+newtype Report_Schedule_RunsOnDayOfMonth = Report_Schedule_RunsOnDayOfMonth {fromReport_Schedule_RunsOnDayOfMonth :: 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
+    )
+
+pattern Report_Schedule_RunsOnDayOfMonth_DAYOFMONTH :: Report_Schedule_RunsOnDayOfMonth
+pattern Report_Schedule_RunsOnDayOfMonth_DAYOFMONTH = Report_Schedule_RunsOnDayOfMonth "DAY_OF_MONTH"
+
+pattern Report_Schedule_RunsOnDayOfMonth_WEEKOFMONTH :: Report_Schedule_RunsOnDayOfMonth
+pattern Report_Schedule_RunsOnDayOfMonth_WEEKOFMONTH = Report_Schedule_RunsOnDayOfMonth "WEEK_OF_MONTH"
+
+{-# COMPLETE
+  Report_Schedule_RunsOnDayOfMonth_DAYOFMONTH,
+  Report_Schedule_RunsOnDayOfMonth_WEEKOFMONTH,
+  Report_Schedule_RunsOnDayOfMonth
+  #-}
+
+-- | The type of the report.
+newtype Report_Type = Report_Type {fromReport_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
+    )
+
+pattern Report_Type_Standard :: Report_Type
+pattern Report_Type_Standard = Report_Type "STANDARD"
+
+pattern Report_Type_Reach :: Report_Type
+pattern Report_Type_Reach = Report_Type "REACH"
+
+pattern Report_Type_PATHTOCONVERSION :: Report_Type
+pattern Report_Type_PATHTOCONVERSION = Report_Type "PATH_TO_CONVERSION"
+
+pattern Report_Type_CROSSDIMENSIONREACH :: Report_Type
+pattern Report_Type_CROSSDIMENSIONREACH = Report_Type "CROSS_DIMENSION_REACH"
+
+pattern Report_Type_Floodlight :: Report_Type
+pattern Report_Type_Floodlight = Report_Type "FLOODLIGHT"
+
+pattern Report_Type_CROSSMEDIAREACH :: Report_Type
+pattern Report_Type_CROSSMEDIAREACH = Report_Type "CROSS_MEDIA_REACH"
+
+{-# COMPLETE
+  Report_Type_Standard,
+  Report_Type_Reach,
+  Report_Type_PATHTOCONVERSION,
+  Report_Type_CROSSDIMENSIONREACH,
+  Report_Type_Floodlight,
+  Report_Type_CROSSMEDIAREACH,
+  Report_Type
+  #-}
+
+-- | Site contact type.
+newtype SiteContact_ContactType = SiteContact_ContactType {fromSiteContact_ContactType :: 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
+    )
+
+pattern SiteContact_ContactType_SALESPERSON :: SiteContact_ContactType
+pattern SiteContact_ContactType_SALESPERSON = SiteContact_ContactType "SALES_PERSON"
+
+pattern SiteContact_ContactType_Trafficker :: SiteContact_ContactType
+pattern SiteContact_ContactType_Trafficker = SiteContact_ContactType "TRAFFICKER"
+
+{-# COMPLETE
+  SiteContact_ContactType_SALESPERSON,
+  SiteContact_ContactType_Trafficker,
+  SiteContact_ContactType
+  #-}
+
+-- | Default VPAID adapter setting for new placements created under this site. This value will be used to populate the placements.vpaidAdapterChoice field, when no value is specified for the new placement. Controls which VPAID format the measurement adapter will use for in-stream video creatives assigned to the placement. The publisher\'s specifications will typically determine this setting. For VPAID creatives, the adapter format will match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter). /Note:/ Flash is no longer supported. This field now defaults to HTML5 when the following values are provided: FLASH, BOTH.
+newtype SiteSettings_VpaidAdapterChoiceTemplate = SiteSettings_VpaidAdapterChoiceTemplate {fromSiteSettings_VpaidAdapterChoiceTemplate :: 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 means Google chooses which adapter, if any, to serve.
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Default :: SiteSettings_VpaidAdapterChoiceTemplate
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Default = SiteSettings_VpaidAdapterChoiceTemplate "DEFAULT"
+
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Flash :: SiteSettings_VpaidAdapterChoiceTemplate
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Flash = SiteSettings_VpaidAdapterChoiceTemplate "FLASH"
+
+pattern SiteSettings_VpaidAdapterChoiceTemplate_HTML5 :: SiteSettings_VpaidAdapterChoiceTemplate
+pattern SiteSettings_VpaidAdapterChoiceTemplate_HTML5 = SiteSettings_VpaidAdapterChoiceTemplate "HTML5"
+
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Both :: SiteSettings_VpaidAdapterChoiceTemplate
+pattern SiteSettings_VpaidAdapterChoiceTemplate_Both = SiteSettings_VpaidAdapterChoiceTemplate "BOTH"
+
+{-# COMPLETE
+  SiteSettings_VpaidAdapterChoiceTemplate_Default,
+  SiteSettings_VpaidAdapterChoiceTemplate_Flash,
+  SiteSettings_VpaidAdapterChoiceTemplate_HTML5,
+  SiteSettings_VpaidAdapterChoiceTemplate_Both,
+  SiteSettings_VpaidAdapterChoiceTemplate
+  #-}
+
+-- | Orientation of a site template used for video. This will act as default for new placements created under this site.
+newtype SiteVideoSettings_Orientation = SiteVideoSettings_Orientation {fromSiteVideoSettings_Orientation :: 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
+    )
+
+pattern SiteVideoSettings_Orientation_Any :: SiteVideoSettings_Orientation
+pattern SiteVideoSettings_Orientation_Any = SiteVideoSettings_Orientation "ANY"
+
+pattern SiteVideoSettings_Orientation_Landscape :: SiteVideoSettings_Orientation
+pattern SiteVideoSettings_Orientation_Landscape = SiteVideoSettings_Orientation "LANDSCAPE"
+
+pattern SiteVideoSettings_Orientation_Portrait :: SiteVideoSettings_Orientation
+pattern SiteVideoSettings_Orientation_Portrait = SiteVideoSettings_Orientation "PORTRAIT"
+
+{-# COMPLETE
+  SiteVideoSettings_Orientation_Any,
+  SiteVideoSettings_Orientation_Landscape,
+  SiteVideoSettings_Orientation_Portrait,
+  SiteVideoSettings_Orientation
+  #-}
+
+-- | An optional sort order for the dimension column.
+newtype SortedDimension_SortOrder = SortedDimension_SortOrder {fromSortedDimension_SortOrder :: 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
+    )
+
+pattern SortedDimension_SortOrder_Ascending :: SortedDimension_SortOrder
+pattern SortedDimension_SortOrder_Ascending = SortedDimension_SortOrder "ASCENDING"
+
+pattern SortedDimension_SortOrder_Descending :: SortedDimension_SortOrder
+pattern SortedDimension_SortOrder_Descending = SortedDimension_SortOrder "DESCENDING"
+
+{-# COMPLETE
+  SortedDimension_SortOrder_Ascending,
+  SortedDimension_SortOrder_Descending,
+  SortedDimension_SortOrder
+  #-}
+
+-- | TagData tag format of this tag.
+newtype TagData_Format = TagData_Format {fromTagData_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
+    )
+
+pattern TagData_Format_PLACEMENTTAGSTANDARD :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGSTANDARD = TagData_Format "PLACEMENT_TAG_STANDARD"
+
+pattern TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPT = TagData_Format "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
+
+pattern TagData_Format_PLACEMENTTAGIFRAMEILAYER :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGIFRAMEILAYER = TagData_Format "PLACEMENT_TAG_IFRAME_ILAYER"
+
+pattern TagData_Format_PLACEMENTTAGINTERNALREDIRECT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERNALREDIRECT = TagData_Format "PLACEMENT_TAG_INTERNAL_REDIRECT"
+
+pattern TagData_Format_PLACEMENTTAGJAVASCRIPT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGJAVASCRIPT = TagData_Format "PLACEMENT_TAG_JAVASCRIPT"
+
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT = TagData_Format "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
+
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT = TagData_Format "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
+
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPT = TagData_Format "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
+
+pattern TagData_Format_PLACEMENTTAGCLICKCOMMANDS :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGCLICKCOMMANDS = TagData_Format "PLACEMENT_TAG_CLICK_COMMANDS"
+
+pattern TagData_Format_PLACEMENTTAGINSTREAMVIDEOPREFETCH :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINSTREAMVIDEOPREFETCH = TagData_Format "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
+
+pattern TagData_Format_PLACEMENTTAGTRACKING :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGTRACKING = TagData_Format "PLACEMENT_TAG_TRACKING"
+
+pattern TagData_Format_PLACEMENTTAGTRACKINGIFRAME :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGTRACKINGIFRAME = TagData_Format "PLACEMENT_TAG_TRACKING_IFRAME"
+
+pattern TagData_Format_PLACEMENTTAGTRACKINGJAVASCRIPT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGTRACKINGJAVASCRIPT = TagData_Format "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
+
+pattern TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 :: TagData_Format
+pattern TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 = TagData_Format "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
+
+pattern TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY = TagData_Format "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern TagData_Format_PLACEMENTTAGJAVASCRIPTLEGACY :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGJAVASCRIPTLEGACY = TagData_Format "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
+
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY = TagData_Format "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY = TagData_Format "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
+
+pattern TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 :: TagData_Format
+pattern TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 = TagData_Format "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
+
+pattern TagData_Format_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT :: TagData_Format
+pattern TagData_Format_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT = TagData_Format "PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
+
+{-# COMPLETE
+  TagData_Format_PLACEMENTTAGSTANDARD,
+  TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPT,
+  TagData_Format_PLACEMENTTAGIFRAMEILAYER,
+  TagData_Format_PLACEMENTTAGINTERNALREDIRECT,
+  TagData_Format_PLACEMENTTAGJAVASCRIPT,
+  TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+  TagData_Format_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+  TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+  TagData_Format_PLACEMENTTAGCLICKCOMMANDS,
+  TagData_Format_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+  TagData_Format_PLACEMENTTAGTRACKING,
+  TagData_Format_PLACEMENTTAGTRACKINGIFRAME,
+  TagData_Format_PLACEMENTTAGTRACKINGJAVASCRIPT,
+  TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+  TagData_Format_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+  TagData_Format_PLACEMENTTAGJAVASCRIPTLEGACY,
+  TagData_Format_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+  TagData_Format_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+  TagData_Format_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+  TagData_Format_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+  TagData_Format
+  #-}
+
+-- | Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.
+newtype TagSetting_KeywordOption = TagSetting_KeywordOption {fromTagSetting_KeywordOption :: 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
+    )
+
+-- | Creates DART ad tags with a placeholder, such as kw=[keyword] and a list of keywords. The site trafficker must replace [keyword] with the keywords targeted by an ad.
+pattern TagSetting_KeywordOption_PLACEHOLDERWITHLISTOFKEYWORDS :: TagSetting_KeywordOption
+pattern TagSetting_KeywordOption_PLACEHOLDERWITHLISTOFKEYWORDS = TagSetting_KeywordOption "PLACEHOLDER_WITH_LIST_OF_KEYWORDS"
+
+-- | Creates DART ad tags that do not have a placeholder for keywords and creates a list of keywords separately from the DART ad tags. Use this option if the site uses a keyword referrer or is a site that uses DART for Publishers.
+pattern TagSetting_KeywordOption_Ignore :: TagSetting_KeywordOption
+pattern TagSetting_KeywordOption_Ignore = TagSetting_KeywordOption "IGNORE"
+
+-- | Results in unique tag generation for each relevant keyword during tag export. For example, an ad with three keywords will generate three tags with each tag having its kw= parameter filled in with the relevant keyword values.
+pattern TagSetting_KeywordOption_GENERATESEPARATETAGFOREACHKEYWORD :: TagSetting_KeywordOption
+pattern TagSetting_KeywordOption_GENERATESEPARATETAGFOREACHKEYWORD = TagSetting_KeywordOption "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD"
+
+{-# COMPLETE
+  TagSetting_KeywordOption_PLACEHOLDERWITHLISTOFKEYWORDS,
+  TagSetting_KeywordOption_Ignore,
+  TagSetting_KeywordOption_GENERATESEPARATETAGFOREACHKEYWORD,
+  TagSetting_KeywordOption
+  #-}
+
+-- | Type of browser window for which the backup image of the flash creative can be displayed.
+newtype TargetWindow_TargetWindowOption = TargetWindow_TargetWindowOption {fromTargetWindow_TargetWindowOption :: 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
+    )
+
+-- | Open up a new window to display the backup image Corresponds to \"_blank\" in html
+pattern TargetWindow_TargetWindowOption_NEWWINDOW :: TargetWindow_TargetWindowOption
+pattern TargetWindow_TargetWindowOption_NEWWINDOW = TargetWindow_TargetWindowOption "NEW_WINDOW"
+
+-- | Use the current window to display the backup image Corresponds to \"_top\" in html
+pattern TargetWindow_TargetWindowOption_CURRENTWINDOW :: TargetWindow_TargetWindowOption
+pattern TargetWindow_TargetWindowOption_CURRENTWINDOW = TargetWindow_TargetWindowOption "CURRENT_WINDOW"
+
+-- | User-defined HTML used to display the backup image Corresponds to \"other\"
+pattern TargetWindow_TargetWindowOption_Custom :: TargetWindow_TargetWindowOption
+pattern TargetWindow_TargetWindowOption_Custom = TargetWindow_TargetWindowOption "CUSTOM"
+
+{-# COMPLETE
+  TargetWindow_TargetWindowOption_NEWWINDOW,
+  TargetWindow_TargetWindowOption_CURRENTWINDOW,
+  TargetWindow_TargetWindowOption_Custom,
+  TargetWindow_TargetWindowOption
+  #-}
+
+-- | Product from which this targetable remarketing list was originated.
+newtype TargetableRemarketingList_ListSource = TargetableRemarketingList_ListSource {fromTargetableRemarketingList_ListSource :: 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
+    )
+
+-- | covers sources not supported in DCM other than those listed below
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_OTHER"
+
+-- | ADX
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEADX :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEADX = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_ADX"
+
+-- | DFP
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFP :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFP = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_DFP"
+
+-- | XFP
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEXFP :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEXFP = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_XFP"
+
+-- | DoubleClick Campaign Manager
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFA :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFA = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_DFA"
+
+-- | Google Analytics Premium
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGA :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGA = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_GA"
+
+-- | Youtube
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_YOUTUBE"
+
+-- | DoubleClick Bid Manager
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDBM :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDBM = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_DBM"
+
+-- | G+
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_GPLUS"
+
+-- | DoubleClick Audience Center
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDMP :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDMP = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_DMP"
+
+-- | Playstore
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE :: TargetableRemarketingList_ListSource
+pattern TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE = TargetableRemarketingList_ListSource "REMARKETING_LIST_SOURCE_PLAY_STORE"
+
+{-# COMPLETE
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEOTHER,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEADX,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFP,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEXFP,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDFA,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGA,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEYOUTUBE,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDBM,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEGPLUS,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEDMP,
+  TargetableRemarketingList_ListSource_REMARKETINGLISTSOURCEPLAYSTORE,
+  TargetableRemarketingList_ListSource
+  #-}
+
+-- | Third-party URL type for in-stream video and in-stream audio creatives.
+newtype ThirdPartyTrackingUrl_ThirdPartyUrlType = ThirdPartyTrackingUrl_ThirdPartyUrlType {fromThirdPartyTrackingUrl_ThirdPartyUrlType :: 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
+    )
+
+-- | Used to count impressions of the ad after video buffering is complete.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_Impression :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_Impression = ThirdPartyTrackingUrl_ThirdPartyUrlType "IMPRESSION"
+
+-- | Used to track user clicks on the video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_CLICKTRACKING :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_CLICKTRACKING = ThirdPartyTrackingUrl_ThirdPartyUrlType "CLICK_TRACKING"
+
+-- | Used to track the number of times a user starts a video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTART :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTART = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_START"
+
+-- | Used to track the number of times the video plays to 25% of its length.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFIRSTQUARTILE :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFIRSTQUARTILE = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_FIRST_QUARTILE"
+
+-- | Used to track the number of times the video plays to 50% of its length.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMIDPOINT :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMIDPOINT = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_MIDPOINT"
+
+-- | Used to track the number of times the video plays to 75% of its length.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOTHIRDQUARTILE :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOTHIRDQUARTILE = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_THIRD_QUARTILE"
+
+-- | Used to track the number of times the video plays to the end.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCOMPLETE :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCOMPLETE = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_COMPLETE"
+
+-- | Used to track the number of times a user mutes the video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMUTE :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMUTE = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_MUTE"
+
+-- | Used to track the number of times a user pauses the video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPAUSE :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPAUSE = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_PAUSE"
+
+-- | Used to track the number of times a user replays the video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOREWIND :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOREWIND = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_REWIND"
+
+-- | Used to track the number of times a user expands the video to full-screen size.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFULLSCREEN :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFULLSCREEN = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_FULLSCREEN"
+
+-- | Used to track the number of times a user stops the video.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTOP :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTOP = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_STOP"
+
+-- | Used to track the number of times a user performs a custom click, such as clicking on a video hot spot.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCUSTOM :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCUSTOM = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_CUSTOM"
+
+-- | Used for DFA6 compatibility, this is deprecating in favor of event tags.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_Survey :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_Survey = ThirdPartyTrackingUrl_ThirdPartyUrlType "SURVEY"
+
+-- | Used by Studio RichMediaCreative, maps to its thirdPartyImpressionsUrl
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIAIMPRESSION :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIAIMPRESSION = ThirdPartyTrackingUrl_ThirdPartyUrlType "RICH_MEDIA_IMPRESSION"
+
+-- | Used by Studio RichMediaCreative, maps to its thirdPartyRichMediaImpressionsUrl
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIARMIMPRESSION :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIARMIMPRESSION = ThirdPartyTrackingUrl_ThirdPartyUrlType "RICH_MEDIA_RM_IMPRESSION"
+
+-- | Used by Studio RichMediaCreative, maps to its thirdPartyBackupImageImpressionsUrl
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIABACKUPIMPRESSION :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIABACKUPIMPRESSION = ThirdPartyTrackingUrl_ThirdPartyUrlType "RICH_MEDIA_BACKUP_IMPRESSION"
+
+-- | Used to track the number of times the video was skipped.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSKIP :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSKIP = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_SKIP"
+
+-- | Used to track the number of times the video plays to an offset determined by the user.
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPROGRESS :: ThirdPartyTrackingUrl_ThirdPartyUrlType
+pattern ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPROGRESS = ThirdPartyTrackingUrl_ThirdPartyUrlType "VIDEO_PROGRESS"
+
+{-# COMPLETE
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_Impression,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_CLICKTRACKING,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTART,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFIRSTQUARTILE,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMIDPOINT,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOTHIRDQUARTILE,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCOMPLETE,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOMUTE,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPAUSE,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOREWIND,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOFULLSCREEN,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSTOP,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOCUSTOM,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_Survey,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIAIMPRESSION,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIARMIMPRESSION,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_RICHMEDIABACKUPIMPRESSION,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOSKIP,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType_VIDEOPROGRESS,
+  ThirdPartyTrackingUrl_ThirdPartyUrlType
+  #-}
+
+-- | \"CampaignComponentType\" of this TV campaign.
+newtype TvCampaignSummary_Type = TvCampaignSummary_Type {fromTvCampaignSummary_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
+    )
+
+-- | Required to exist; do not use.
+pattern TvCampaignSummary_Type_CAMPAIGNCOMPONENTTYPEUNSPECIFIED :: TvCampaignSummary_Type
+pattern TvCampaignSummary_Type_CAMPAIGNCOMPONENTTYPEUNSPECIFIED = TvCampaignSummary_Type "CAMPAIGN_COMPONENT_TYPE_UNSPECIFIED"
+
+-- | Company.
+pattern TvCampaignSummary_Type_Company :: TvCampaignSummary_Type
+pattern TvCampaignSummary_Type_Company = TvCampaignSummary_Type "COMPANY"
+
+-- | Brand.
+pattern TvCampaignSummary_Type_Brand :: TvCampaignSummary_Type
+pattern TvCampaignSummary_Type_Brand = TvCampaignSummary_Type "BRAND"
+
+-- | Product.
+pattern TvCampaignSummary_Type_Product :: TvCampaignSummary_Type
+pattern TvCampaignSummary_Type_Product = TvCampaignSummary_Type "PRODUCT"
+
+-- | Campaign.
+pattern TvCampaignSummary_Type_Campaign :: TvCampaignSummary_Type
+pattern TvCampaignSummary_Type_Campaign = TvCampaignSummary_Type "CAMPAIGN"
+
+{-# COMPLETE
+  TvCampaignSummary_Type_CAMPAIGNCOMPONENTTYPEUNSPECIFIED,
+  TvCampaignSummary_Type_Company,
+  TvCampaignSummary_Type_Brand,
+  TvCampaignSummary_Type_Product,
+  TvCampaignSummary_Type_Campaign,
+  TvCampaignSummary_Type
+  #-}
+
+-- | The date window of the timepoint.
+newtype TvCampaignTimepoint_DateWindow = TvCampaignTimepoint_DateWindow {fromTvCampaignTimepoint_DateWindow :: 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, should never be set.
+pattern TvCampaignTimepoint_DateWindow_WEEKSUNSPECIFIED :: TvCampaignTimepoint_DateWindow
+pattern TvCampaignTimepoint_DateWindow_WEEKSUNSPECIFIED = TvCampaignTimepoint_DateWindow "WEEKS_UNSPECIFIED"
+
+-- | One week.
+pattern TvCampaignTimepoint_DateWindow_WEEKSONE :: TvCampaignTimepoint_DateWindow
+pattern TvCampaignTimepoint_DateWindow_WEEKSONE = TvCampaignTimepoint_DateWindow "WEEKS_ONE"
+
+-- | Four weeks.
+pattern TvCampaignTimepoint_DateWindow_WEEKSFOUR :: TvCampaignTimepoint_DateWindow
+pattern TvCampaignTimepoint_DateWindow_WEEKSFOUR = TvCampaignTimepoint_DateWindow "WEEKS_FOUR"
+
+-- | Eight weeks.
+pattern TvCampaignTimepoint_DateWindow_WEEKSEIGHT :: TvCampaignTimepoint_DateWindow
+pattern TvCampaignTimepoint_DateWindow_WEEKSEIGHT = TvCampaignTimepoint_DateWindow "WEEKS_EIGHT"
+
+-- | Twelve weeks.
+pattern TvCampaignTimepoint_DateWindow_WEEKSTWELVE :: TvCampaignTimepoint_DateWindow
+pattern TvCampaignTimepoint_DateWindow_WEEKSTWELVE = TvCampaignTimepoint_DateWindow "WEEKS_TWELVE"
+
+{-# COMPLETE
+  TvCampaignTimepoint_DateWindow_WEEKSUNSPECIFIED,
+  TvCampaignTimepoint_DateWindow_WEEKSONE,
+  TvCampaignTimepoint_DateWindow_WEEKSFOUR,
+  TvCampaignTimepoint_DateWindow_WEEKSEIGHT,
+  TvCampaignTimepoint_DateWindow_WEEKSTWELVE,
+  TvCampaignTimepoint_DateWindow
+  #-}
+
+-- | Registry used for the Ad ID value.
+newtype UniversalAdId_Registry = UniversalAdId_Registry {fromUniversalAdId_Registry :: 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
+    )
+
+pattern UniversalAdId_Registry_Other :: UniversalAdId_Registry
+pattern UniversalAdId_Registry_Other = UniversalAdId_Registry "OTHER"
+
+pattern UniversalAdId_Registry_ADIDOFFICIAL :: UniversalAdId_Registry
+pattern UniversalAdId_Registry_ADIDOFFICIAL = UniversalAdId_Registry "AD_ID_OFFICIAL"
+
+pattern UniversalAdId_Registry_Clearcast :: UniversalAdId_Registry
+pattern UniversalAdId_Registry_Clearcast = UniversalAdId_Registry "CLEARCAST"
+
+pattern UniversalAdId_Registry_Dcm :: UniversalAdId_Registry
+pattern UniversalAdId_Registry_Dcm = UniversalAdId_Registry "DCM"
+
+pattern UniversalAdId_Registry_Arpp :: UniversalAdId_Registry
+pattern UniversalAdId_Registry_Arpp = UniversalAdId_Registry "ARPP"
+
+{-# COMPLETE
+  UniversalAdId_Registry_Other,
+  UniversalAdId_Registry_ADIDOFFICIAL,
+  UniversalAdId_Registry_Clearcast,
+  UniversalAdId_Registry_Dcm,
+  UniversalAdId_Registry_Arpp,
+  UniversalAdId_Registry
+  #-}
+
+-- | Data type for the variable. This is a required field.
+newtype UserDefinedVariableConfiguration_DataType = UserDefinedVariableConfiguration_DataType {fromUserDefinedVariableConfiguration_DataType :: 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
+    )
+
+pattern UserDefinedVariableConfiguration_DataType_String :: UserDefinedVariableConfiguration_DataType
+pattern UserDefinedVariableConfiguration_DataType_String = UserDefinedVariableConfiguration_DataType "STRING"
+
+pattern UserDefinedVariableConfiguration_DataType_Number :: UserDefinedVariableConfiguration_DataType
+pattern UserDefinedVariableConfiguration_DataType_Number = UserDefinedVariableConfiguration_DataType "NUMBER"
+
+{-# COMPLETE
+  UserDefinedVariableConfiguration_DataType_String,
+  UserDefinedVariableConfiguration_DataType_Number,
+  UserDefinedVariableConfiguration_DataType
+  #-}
+
+-- | Variable name in the tag. This is a required field.
+newtype UserDefinedVariableConfiguration_VariableType = UserDefinedVariableConfiguration_VariableType {fromUserDefinedVariableConfiguration_VariableType :: 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
+    )
+
+pattern UserDefinedVariableConfiguration_VariableType_U1 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U1 = UserDefinedVariableConfiguration_VariableType "U1"
+
+pattern UserDefinedVariableConfiguration_VariableType_U2 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U2 = UserDefinedVariableConfiguration_VariableType "U2"
+
+pattern UserDefinedVariableConfiguration_VariableType_U3 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U3 = UserDefinedVariableConfiguration_VariableType "U3"
+
+pattern UserDefinedVariableConfiguration_VariableType_U4 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U4 = UserDefinedVariableConfiguration_VariableType "U4"
+
+pattern UserDefinedVariableConfiguration_VariableType_U5 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U5 = UserDefinedVariableConfiguration_VariableType "U5"
+
+pattern UserDefinedVariableConfiguration_VariableType_U6 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U6 = UserDefinedVariableConfiguration_VariableType "U6"
+
+pattern UserDefinedVariableConfiguration_VariableType_U7 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U7 = UserDefinedVariableConfiguration_VariableType "U7"
+
+pattern UserDefinedVariableConfiguration_VariableType_U8 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U8 = UserDefinedVariableConfiguration_VariableType "U8"
+
+pattern UserDefinedVariableConfiguration_VariableType_U9 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U9 = UserDefinedVariableConfiguration_VariableType "U9"
+
+pattern UserDefinedVariableConfiguration_VariableType_U10 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U10 = UserDefinedVariableConfiguration_VariableType "U10"
+
+pattern UserDefinedVariableConfiguration_VariableType_U11 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U11 = UserDefinedVariableConfiguration_VariableType "U11"
+
+pattern UserDefinedVariableConfiguration_VariableType_U12 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U12 = UserDefinedVariableConfiguration_VariableType "U12"
+
+pattern UserDefinedVariableConfiguration_VariableType_U13 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U13 = UserDefinedVariableConfiguration_VariableType "U13"
+
+pattern UserDefinedVariableConfiguration_VariableType_U14 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U14 = UserDefinedVariableConfiguration_VariableType "U14"
+
+pattern UserDefinedVariableConfiguration_VariableType_U15 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U15 = UserDefinedVariableConfiguration_VariableType "U15"
+
+pattern UserDefinedVariableConfiguration_VariableType_U16 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U16 = UserDefinedVariableConfiguration_VariableType "U16"
+
+pattern UserDefinedVariableConfiguration_VariableType_U17 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U17 = UserDefinedVariableConfiguration_VariableType "U17"
+
+pattern UserDefinedVariableConfiguration_VariableType_U18 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U18 = UserDefinedVariableConfiguration_VariableType "U18"
+
+pattern UserDefinedVariableConfiguration_VariableType_U19 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U19 = UserDefinedVariableConfiguration_VariableType "U19"
+
+pattern UserDefinedVariableConfiguration_VariableType_U20 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U20 = UserDefinedVariableConfiguration_VariableType "U20"
+
+pattern UserDefinedVariableConfiguration_VariableType_U21 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U21 = UserDefinedVariableConfiguration_VariableType "U21"
+
+pattern UserDefinedVariableConfiguration_VariableType_U22 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U22 = UserDefinedVariableConfiguration_VariableType "U22"
+
+pattern UserDefinedVariableConfiguration_VariableType_U23 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U23 = UserDefinedVariableConfiguration_VariableType "U23"
+
+pattern UserDefinedVariableConfiguration_VariableType_U24 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U24 = UserDefinedVariableConfiguration_VariableType "U24"
+
+pattern UserDefinedVariableConfiguration_VariableType_U25 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U25 = UserDefinedVariableConfiguration_VariableType "U25"
+
+pattern UserDefinedVariableConfiguration_VariableType_U26 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U26 = UserDefinedVariableConfiguration_VariableType "U26"
+
+pattern UserDefinedVariableConfiguration_VariableType_U27 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U27 = UserDefinedVariableConfiguration_VariableType "U27"
+
+pattern UserDefinedVariableConfiguration_VariableType_U28 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U28 = UserDefinedVariableConfiguration_VariableType "U28"
+
+pattern UserDefinedVariableConfiguration_VariableType_U29 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U29 = UserDefinedVariableConfiguration_VariableType "U29"
+
+pattern UserDefinedVariableConfiguration_VariableType_U30 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U30 = UserDefinedVariableConfiguration_VariableType "U30"
+
+pattern UserDefinedVariableConfiguration_VariableType_U31 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U31 = UserDefinedVariableConfiguration_VariableType "U31"
+
+pattern UserDefinedVariableConfiguration_VariableType_U32 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U32 = UserDefinedVariableConfiguration_VariableType "U32"
+
+pattern UserDefinedVariableConfiguration_VariableType_U33 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U33 = UserDefinedVariableConfiguration_VariableType "U33"
+
+pattern UserDefinedVariableConfiguration_VariableType_U34 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U34 = UserDefinedVariableConfiguration_VariableType "U34"
+
+pattern UserDefinedVariableConfiguration_VariableType_U35 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U35 = UserDefinedVariableConfiguration_VariableType "U35"
+
+pattern UserDefinedVariableConfiguration_VariableType_U36 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U36 = UserDefinedVariableConfiguration_VariableType "U36"
+
+pattern UserDefinedVariableConfiguration_VariableType_U37 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U37 = UserDefinedVariableConfiguration_VariableType "U37"
+
+pattern UserDefinedVariableConfiguration_VariableType_U38 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U38 = UserDefinedVariableConfiguration_VariableType "U38"
+
+pattern UserDefinedVariableConfiguration_VariableType_U39 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U39 = UserDefinedVariableConfiguration_VariableType "U39"
+
+pattern UserDefinedVariableConfiguration_VariableType_U40 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U40 = UserDefinedVariableConfiguration_VariableType "U40"
+
+pattern UserDefinedVariableConfiguration_VariableType_U41 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U41 = UserDefinedVariableConfiguration_VariableType "U41"
+
+pattern UserDefinedVariableConfiguration_VariableType_U42 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U42 = UserDefinedVariableConfiguration_VariableType "U42"
+
+pattern UserDefinedVariableConfiguration_VariableType_U43 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U43 = UserDefinedVariableConfiguration_VariableType "U43"
+
+pattern UserDefinedVariableConfiguration_VariableType_U44 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U44 = UserDefinedVariableConfiguration_VariableType "U44"
+
+pattern UserDefinedVariableConfiguration_VariableType_U45 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U45 = UserDefinedVariableConfiguration_VariableType "U45"
+
+pattern UserDefinedVariableConfiguration_VariableType_U46 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U46 = UserDefinedVariableConfiguration_VariableType "U46"
+
+pattern UserDefinedVariableConfiguration_VariableType_U47 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U47 = UserDefinedVariableConfiguration_VariableType "U47"
+
+pattern UserDefinedVariableConfiguration_VariableType_U48 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U48 = UserDefinedVariableConfiguration_VariableType "U48"
+
+pattern UserDefinedVariableConfiguration_VariableType_U49 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U49 = UserDefinedVariableConfiguration_VariableType "U49"
+
+pattern UserDefinedVariableConfiguration_VariableType_U50 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U50 = UserDefinedVariableConfiguration_VariableType "U50"
+
+pattern UserDefinedVariableConfiguration_VariableType_U51 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U51 = UserDefinedVariableConfiguration_VariableType "U51"
+
+pattern UserDefinedVariableConfiguration_VariableType_U52 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U52 = UserDefinedVariableConfiguration_VariableType "U52"
+
+pattern UserDefinedVariableConfiguration_VariableType_U53 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U53 = UserDefinedVariableConfiguration_VariableType "U53"
+
+pattern UserDefinedVariableConfiguration_VariableType_U54 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U54 = UserDefinedVariableConfiguration_VariableType "U54"
+
+pattern UserDefinedVariableConfiguration_VariableType_U55 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U55 = UserDefinedVariableConfiguration_VariableType "U55"
+
+pattern UserDefinedVariableConfiguration_VariableType_U56 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U56 = UserDefinedVariableConfiguration_VariableType "U56"
+
+pattern UserDefinedVariableConfiguration_VariableType_U57 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U57 = UserDefinedVariableConfiguration_VariableType "U57"
+
+pattern UserDefinedVariableConfiguration_VariableType_U58 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U58 = UserDefinedVariableConfiguration_VariableType "U58"
+
+pattern UserDefinedVariableConfiguration_VariableType_U59 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U59 = UserDefinedVariableConfiguration_VariableType "U59"
+
+pattern UserDefinedVariableConfiguration_VariableType_U60 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U60 = UserDefinedVariableConfiguration_VariableType "U60"
+
+pattern UserDefinedVariableConfiguration_VariableType_U61 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U61 = UserDefinedVariableConfiguration_VariableType "U61"
+
+pattern UserDefinedVariableConfiguration_VariableType_U62 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U62 = UserDefinedVariableConfiguration_VariableType "U62"
+
+pattern UserDefinedVariableConfiguration_VariableType_U63 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U63 = UserDefinedVariableConfiguration_VariableType "U63"
+
+pattern UserDefinedVariableConfiguration_VariableType_U64 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U64 = UserDefinedVariableConfiguration_VariableType "U64"
+
+pattern UserDefinedVariableConfiguration_VariableType_U65 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U65 = UserDefinedVariableConfiguration_VariableType "U65"
+
+pattern UserDefinedVariableConfiguration_VariableType_U66 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U66 = UserDefinedVariableConfiguration_VariableType "U66"
+
+pattern UserDefinedVariableConfiguration_VariableType_U67 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U67 = UserDefinedVariableConfiguration_VariableType "U67"
+
+pattern UserDefinedVariableConfiguration_VariableType_U68 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U68 = UserDefinedVariableConfiguration_VariableType "U68"
+
+pattern UserDefinedVariableConfiguration_VariableType_U69 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U69 = UserDefinedVariableConfiguration_VariableType "U69"
+
+pattern UserDefinedVariableConfiguration_VariableType_U70 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U70 = UserDefinedVariableConfiguration_VariableType "U70"
+
+pattern UserDefinedVariableConfiguration_VariableType_U71 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U71 = UserDefinedVariableConfiguration_VariableType "U71"
+
+pattern UserDefinedVariableConfiguration_VariableType_U72 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U72 = UserDefinedVariableConfiguration_VariableType "U72"
+
+pattern UserDefinedVariableConfiguration_VariableType_U73 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U73 = UserDefinedVariableConfiguration_VariableType "U73"
+
+pattern UserDefinedVariableConfiguration_VariableType_U74 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U74 = UserDefinedVariableConfiguration_VariableType "U74"
+
+pattern UserDefinedVariableConfiguration_VariableType_U75 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U75 = UserDefinedVariableConfiguration_VariableType "U75"
+
+pattern UserDefinedVariableConfiguration_VariableType_U76 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U76 = UserDefinedVariableConfiguration_VariableType "U76"
+
+pattern UserDefinedVariableConfiguration_VariableType_U77 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U77 = UserDefinedVariableConfiguration_VariableType "U77"
+
+pattern UserDefinedVariableConfiguration_VariableType_U78 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U78 = UserDefinedVariableConfiguration_VariableType "U78"
+
+pattern UserDefinedVariableConfiguration_VariableType_U79 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U79 = UserDefinedVariableConfiguration_VariableType "U79"
+
+pattern UserDefinedVariableConfiguration_VariableType_U80 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U80 = UserDefinedVariableConfiguration_VariableType "U80"
+
+pattern UserDefinedVariableConfiguration_VariableType_U81 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U81 = UserDefinedVariableConfiguration_VariableType "U81"
+
+pattern UserDefinedVariableConfiguration_VariableType_U82 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U82 = UserDefinedVariableConfiguration_VariableType "U82"
+
+pattern UserDefinedVariableConfiguration_VariableType_U83 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U83 = UserDefinedVariableConfiguration_VariableType "U83"
+
+pattern UserDefinedVariableConfiguration_VariableType_U84 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U84 = UserDefinedVariableConfiguration_VariableType "U84"
+
+pattern UserDefinedVariableConfiguration_VariableType_U85 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U85 = UserDefinedVariableConfiguration_VariableType "U85"
+
+pattern UserDefinedVariableConfiguration_VariableType_U86 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U86 = UserDefinedVariableConfiguration_VariableType "U86"
+
+pattern UserDefinedVariableConfiguration_VariableType_U87 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U87 = UserDefinedVariableConfiguration_VariableType "U87"
+
+pattern UserDefinedVariableConfiguration_VariableType_U88 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U88 = UserDefinedVariableConfiguration_VariableType "U88"
+
+pattern UserDefinedVariableConfiguration_VariableType_U89 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U89 = UserDefinedVariableConfiguration_VariableType "U89"
+
+pattern UserDefinedVariableConfiguration_VariableType_U90 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U90 = UserDefinedVariableConfiguration_VariableType "U90"
+
+pattern UserDefinedVariableConfiguration_VariableType_U91 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U91 = UserDefinedVariableConfiguration_VariableType "U91"
+
+pattern UserDefinedVariableConfiguration_VariableType_U92 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U92 = UserDefinedVariableConfiguration_VariableType "U92"
+
+pattern UserDefinedVariableConfiguration_VariableType_U93 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U93 = UserDefinedVariableConfiguration_VariableType "U93"
+
+pattern UserDefinedVariableConfiguration_VariableType_U94 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U94 = UserDefinedVariableConfiguration_VariableType "U94"
+
+pattern UserDefinedVariableConfiguration_VariableType_U95 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U95 = UserDefinedVariableConfiguration_VariableType "U95"
+
+pattern UserDefinedVariableConfiguration_VariableType_U96 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U96 = UserDefinedVariableConfiguration_VariableType "U96"
+
+pattern UserDefinedVariableConfiguration_VariableType_U97 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U97 = UserDefinedVariableConfiguration_VariableType "U97"
+
+pattern UserDefinedVariableConfiguration_VariableType_U98 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U98 = UserDefinedVariableConfiguration_VariableType "U98"
+
+pattern UserDefinedVariableConfiguration_VariableType_U99 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U99 = UserDefinedVariableConfiguration_VariableType "U99"
+
+pattern UserDefinedVariableConfiguration_VariableType_U100 :: UserDefinedVariableConfiguration_VariableType
+pattern UserDefinedVariableConfiguration_VariableType_U100 = UserDefinedVariableConfiguration_VariableType "U100"
+
+{-# COMPLETE
+  UserDefinedVariableConfiguration_VariableType_U1,
+  UserDefinedVariableConfiguration_VariableType_U2,
+  UserDefinedVariableConfiguration_VariableType_U3,
+  UserDefinedVariableConfiguration_VariableType_U4,
+  UserDefinedVariableConfiguration_VariableType_U5,
+  UserDefinedVariableConfiguration_VariableType_U6,
+  UserDefinedVariableConfiguration_VariableType_U7,
+  UserDefinedVariableConfiguration_VariableType_U8,
+  UserDefinedVariableConfiguration_VariableType_U9,
+  UserDefinedVariableConfiguration_VariableType_U10,
+  UserDefinedVariableConfiguration_VariableType_U11,
+  UserDefinedVariableConfiguration_VariableType_U12,
+  UserDefinedVariableConfiguration_VariableType_U13,
+  UserDefinedVariableConfiguration_VariableType_U14,
+  UserDefinedVariableConfiguration_VariableType_U15,
+  UserDefinedVariableConfiguration_VariableType_U16,
+  UserDefinedVariableConfiguration_VariableType_U17,
+  UserDefinedVariableConfiguration_VariableType_U18,
+  UserDefinedVariableConfiguration_VariableType_U19,
+  UserDefinedVariableConfiguration_VariableType_U20,
+  UserDefinedVariableConfiguration_VariableType_U21,
+  UserDefinedVariableConfiguration_VariableType_U22,
+  UserDefinedVariableConfiguration_VariableType_U23,
+  UserDefinedVariableConfiguration_VariableType_U24,
+  UserDefinedVariableConfiguration_VariableType_U25,
+  UserDefinedVariableConfiguration_VariableType_U26,
+  UserDefinedVariableConfiguration_VariableType_U27,
+  UserDefinedVariableConfiguration_VariableType_U28,
+  UserDefinedVariableConfiguration_VariableType_U29,
+  UserDefinedVariableConfiguration_VariableType_U30,
+  UserDefinedVariableConfiguration_VariableType_U31,
+  UserDefinedVariableConfiguration_VariableType_U32,
+  UserDefinedVariableConfiguration_VariableType_U33,
+  UserDefinedVariableConfiguration_VariableType_U34,
+  UserDefinedVariableConfiguration_VariableType_U35,
+  UserDefinedVariableConfiguration_VariableType_U36,
+  UserDefinedVariableConfiguration_VariableType_U37,
+  UserDefinedVariableConfiguration_VariableType_U38,
+  UserDefinedVariableConfiguration_VariableType_U39,
+  UserDefinedVariableConfiguration_VariableType_U40,
+  UserDefinedVariableConfiguration_VariableType_U41,
+  UserDefinedVariableConfiguration_VariableType_U42,
+  UserDefinedVariableConfiguration_VariableType_U43,
+  UserDefinedVariableConfiguration_VariableType_U44,
+  UserDefinedVariableConfiguration_VariableType_U45,
+  UserDefinedVariableConfiguration_VariableType_U46,
+  UserDefinedVariableConfiguration_VariableType_U47,
+  UserDefinedVariableConfiguration_VariableType_U48,
+  UserDefinedVariableConfiguration_VariableType_U49,
+  UserDefinedVariableConfiguration_VariableType_U50,
+  UserDefinedVariableConfiguration_VariableType_U51,
+  UserDefinedVariableConfiguration_VariableType_U52,
+  UserDefinedVariableConfiguration_VariableType_U53,
+  UserDefinedVariableConfiguration_VariableType_U54,
+  UserDefinedVariableConfiguration_VariableType_U55,
+  UserDefinedVariableConfiguration_VariableType_U56,
+  UserDefinedVariableConfiguration_VariableType_U57,
+  UserDefinedVariableConfiguration_VariableType_U58,
+  UserDefinedVariableConfiguration_VariableType_U59,
+  UserDefinedVariableConfiguration_VariableType_U60,
+  UserDefinedVariableConfiguration_VariableType_U61,
+  UserDefinedVariableConfiguration_VariableType_U62,
+  UserDefinedVariableConfiguration_VariableType_U63,
+  UserDefinedVariableConfiguration_VariableType_U64,
+  UserDefinedVariableConfiguration_VariableType_U65,
+  UserDefinedVariableConfiguration_VariableType_U66,
+  UserDefinedVariableConfiguration_VariableType_U67,
+  UserDefinedVariableConfiguration_VariableType_U68,
+  UserDefinedVariableConfiguration_VariableType_U69,
+  UserDefinedVariableConfiguration_VariableType_U70,
+  UserDefinedVariableConfiguration_VariableType_U71,
+  UserDefinedVariableConfiguration_VariableType_U72,
+  UserDefinedVariableConfiguration_VariableType_U73,
+  UserDefinedVariableConfiguration_VariableType_U74,
+  UserDefinedVariableConfiguration_VariableType_U75,
+  UserDefinedVariableConfiguration_VariableType_U76,
+  UserDefinedVariableConfiguration_VariableType_U77,
+  UserDefinedVariableConfiguration_VariableType_U78,
+  UserDefinedVariableConfiguration_VariableType_U79,
+  UserDefinedVariableConfiguration_VariableType_U80,
+  UserDefinedVariableConfiguration_VariableType_U81,
+  UserDefinedVariableConfiguration_VariableType_U82,
+  UserDefinedVariableConfiguration_VariableType_U83,
+  UserDefinedVariableConfiguration_VariableType_U84,
+  UserDefinedVariableConfiguration_VariableType_U85,
+  UserDefinedVariableConfiguration_VariableType_U86,
+  UserDefinedVariableConfiguration_VariableType_U87,
+  UserDefinedVariableConfiguration_VariableType_U88,
+  UserDefinedVariableConfiguration_VariableType_U89,
+  UserDefinedVariableConfiguration_VariableType_U90,
+  UserDefinedVariableConfiguration_VariableType_U91,
+  UserDefinedVariableConfiguration_VariableType_U92,
+  UserDefinedVariableConfiguration_VariableType_U93,
+  UserDefinedVariableConfiguration_VariableType_U94,
+  UserDefinedVariableConfiguration_VariableType_U95,
+  UserDefinedVariableConfiguration_VariableType_U96,
+  UserDefinedVariableConfiguration_VariableType_U97,
+  UserDefinedVariableConfiguration_VariableType_U98,
+  UserDefinedVariableConfiguration_VariableType_U99,
+  UserDefinedVariableConfiguration_VariableType_U100,
+  UserDefinedVariableConfiguration_VariableType
+  #-}
+
+-- | Levels of availability for a user role permission.
+newtype UserRolePermission_Availability = UserRolePermission_Availability {fromUserRolePermission_Availability :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Not available by default.
+pattern UserRolePermission_Availability_NOTAVAILABLEBYDEFAULT :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_NOTAVAILABLEBYDEFAULT = UserRolePermission_Availability "NOT_AVAILABLE_BY_DEFAULT"
+
+-- | Available by default to accounts only.
+pattern UserRolePermission_Availability_ACCOUNTBYDEFAULT :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_ACCOUNTBYDEFAULT = UserRolePermission_Availability "ACCOUNT_BY_DEFAULT"
+
+-- | Available by default to both accounts and subaccounts.
+pattern UserRolePermission_Availability_SUBACCOUNTANDACCOUNTBYDEFAULT :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_SUBACCOUNTANDACCOUNTBYDEFAULT = UserRolePermission_Availability "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT"
+
+-- | Always available to accounts.
+pattern UserRolePermission_Availability_ACCOUNTALWAYS :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_ACCOUNTALWAYS = UserRolePermission_Availability "ACCOUNT_ALWAYS"
+
+-- | Always available to both accounts and subaccounts.
+pattern UserRolePermission_Availability_SUBACCOUNTANDACCOUNTALWAYS :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_SUBACCOUNTANDACCOUNTALWAYS = UserRolePermission_Availability "SUBACCOUNT_AND_ACCOUNT_ALWAYS"
+
+-- | Available for user profile permissions only.
+pattern UserRolePermission_Availability_USERPROFILEONLY :: UserRolePermission_Availability
+pattern UserRolePermission_Availability_USERPROFILEONLY = UserRolePermission_Availability "USER_PROFILE_ONLY"
+
+{-# COMPLETE
+  UserRolePermission_Availability_NOTAVAILABLEBYDEFAULT,
+  UserRolePermission_Availability_ACCOUNTBYDEFAULT,
+  UserRolePermission_Availability_SUBACCOUNTANDACCOUNTBYDEFAULT,
+  UserRolePermission_Availability_ACCOUNTALWAYS,
+  UserRolePermission_Availability_SUBACCOUNTANDACCOUNTALWAYS,
+  UserRolePermission_Availability_USERPROFILEONLY,
+  UserRolePermission_Availability
+  #-}
+
+-- | File type of the video format.
+newtype VideoFormat_FileType = VideoFormat_FileType {fromVideoFormat_FileType :: 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
+    )
+
+pattern VideoFormat_FileType_Flv :: VideoFormat_FileType
+pattern VideoFormat_FileType_Flv = VideoFormat_FileType "FLV"
+
+pattern VideoFormat_FileType_Threegpp :: VideoFormat_FileType
+pattern VideoFormat_FileType_Threegpp = VideoFormat_FileType "THREEGPP"
+
+pattern VideoFormat_FileType_MP4 :: VideoFormat_FileType
+pattern VideoFormat_FileType_MP4 = VideoFormat_FileType "MP4"
+
+pattern VideoFormat_FileType_Webm :: VideoFormat_FileType
+pattern VideoFormat_FileType_Webm = VideoFormat_FileType "WEBM"
+
+pattern VideoFormat_FileType_M3U8 :: VideoFormat_FileType
+pattern VideoFormat_FileType_M3U8 = VideoFormat_FileType "M3U8"
+
+{-# COMPLETE
+  VideoFormat_FileType_Flv,
+  VideoFormat_FileType_Threegpp,
+  VideoFormat_FileType_MP4,
+  VideoFormat_FileType_Webm,
+  VideoFormat_FileType_M3U8,
+  VideoFormat_FileType
+  #-}
+
+-- | Orientation of a video placement. If this value is set, placement will return assets matching the specified orientation.
+newtype VideoSettings_Orientation = VideoSettings_Orientation {fromVideoSettings_Orientation :: 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
+    )
+
+pattern VideoSettings_Orientation_Any :: VideoSettings_Orientation
+pattern VideoSettings_Orientation_Any = VideoSettings_Orientation "ANY"
+
+pattern VideoSettings_Orientation_Landscape :: VideoSettings_Orientation
+pattern VideoSettings_Orientation_Landscape = VideoSettings_Orientation "LANDSCAPE"
+
+pattern VideoSettings_Orientation_Portrait :: VideoSettings_Orientation
+pattern VideoSettings_Orientation_Portrait = VideoSettings_Orientation "PORTRAIT"
+
+{-# COMPLETE
+  VideoSettings_Orientation_Any,
+  VideoSettings_Orientation_Landscape,
+  VideoSettings_Orientation_Portrait,
+  VideoSettings_Orientation
+  #-}
+
+-- | Field by which to sort the list.
+newtype AccountUserProfilesListSortField = AccountUserProfilesListSortField {fromAccountUserProfilesListSortField :: 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
+    )
+
+pattern AccountUserProfilesListSortField_ID :: AccountUserProfilesListSortField
+pattern AccountUserProfilesListSortField_ID = AccountUserProfilesListSortField "ID"
+
+pattern AccountUserProfilesListSortField_Name :: AccountUserProfilesListSortField
+pattern AccountUserProfilesListSortField_Name = AccountUserProfilesListSortField "NAME"
+
+{-# COMPLETE
+  AccountUserProfilesListSortField_ID,
+  AccountUserProfilesListSortField_Name,
+  AccountUserProfilesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AccountUserProfilesListSortOrder = AccountUserProfilesListSortOrder {fromAccountUserProfilesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AccountUserProfilesListSortOrder_Ascending :: AccountUserProfilesListSortOrder
+pattern AccountUserProfilesListSortOrder_Ascending = AccountUserProfilesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AccountUserProfilesListSortOrder_Descending :: AccountUserProfilesListSortOrder
+pattern AccountUserProfilesListSortOrder_Descending = AccountUserProfilesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AccountUserProfilesListSortOrder_Ascending,
+  AccountUserProfilesListSortOrder_Descending,
+  AccountUserProfilesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype AccountsListSortField = AccountsListSortField {fromAccountsListSortField :: 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
+    )
+
+pattern AccountsListSortField_ID :: AccountsListSortField
+pattern AccountsListSortField_ID = AccountsListSortField "ID"
+
+pattern AccountsListSortField_Name :: AccountsListSortField
+pattern AccountsListSortField_Name = AccountsListSortField "NAME"
+
+{-# COMPLETE
+  AccountsListSortField_ID,
+  AccountsListSortField_Name,
+  AccountsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AccountsListSortOrder = AccountsListSortOrder {fromAccountsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AccountsListSortOrder_Ascending :: AccountsListSortOrder
+pattern AccountsListSortOrder_Ascending = AccountsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AccountsListSortOrder_Descending :: AccountsListSortOrder
+pattern AccountsListSortOrder_Descending = AccountsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AccountsListSortOrder_Ascending,
+  AccountsListSortOrder_Descending,
+  AccountsListSortOrder
+  #-}
+
+-- | Select default ads with the specified compatibility. Applicable when type is AD/SERVING/DEFAULT/AD. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.
+newtype AdsListCompatibility = AdsListCompatibility {fromAdsListCompatibility :: 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
+    )
+
+pattern AdsListCompatibility_Display :: AdsListCompatibility
+pattern AdsListCompatibility_Display = AdsListCompatibility "DISPLAY"
+
+pattern AdsListCompatibility_DISPLAYINTERSTITIAL :: AdsListCompatibility
+pattern AdsListCompatibility_DISPLAYINTERSTITIAL = AdsListCompatibility "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern AdsListCompatibility_App :: AdsListCompatibility
+pattern AdsListCompatibility_App = AdsListCompatibility "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern AdsListCompatibility_APPINTERSTITIAL :: AdsListCompatibility
+pattern AdsListCompatibility_APPINTERSTITIAL = AdsListCompatibility "APP_INTERSTITIAL"
+
+pattern AdsListCompatibility_INSTREAMVIDEO :: AdsListCompatibility
+pattern AdsListCompatibility_INSTREAMVIDEO = AdsListCompatibility "IN_STREAM_VIDEO"
+
+pattern AdsListCompatibility_INSTREAMAUDIO :: AdsListCompatibility
+pattern AdsListCompatibility_INSTREAMAUDIO = AdsListCompatibility "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  AdsListCompatibility_Display,
+  AdsListCompatibility_DISPLAYINTERSTITIAL,
+  AdsListCompatibility_App,
+  AdsListCompatibility_APPINTERSTITIAL,
+  AdsListCompatibility_INSTREAMVIDEO,
+  AdsListCompatibility_INSTREAMAUDIO,
+  AdsListCompatibility
+  #-}
+
+-- | Field by which to sort the list.
+newtype AdsListSortField = AdsListSortField {fromAdsListSortField :: 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
+    )
+
+pattern AdsListSortField_ID :: AdsListSortField
+pattern AdsListSortField_ID = AdsListSortField "ID"
+
+pattern AdsListSortField_Name :: AdsListSortField
+pattern AdsListSortField_Name = AdsListSortField "NAME"
+
+{-# COMPLETE
+  AdsListSortField_ID,
+  AdsListSortField_Name,
+  AdsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AdsListSortOrder = AdsListSortOrder {fromAdsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AdsListSortOrder_Ascending :: AdsListSortOrder
+pattern AdsListSortOrder_Ascending = AdsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AdsListSortOrder_Descending :: AdsListSortOrder
+pattern AdsListSortOrder_Descending = AdsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AdsListSortOrder_Ascending,
+  AdsListSortOrder_Descending,
+  AdsListSortOrder
+  #-}
+
+-- | Select only ads with these types.
+newtype AdsListType = AdsListType {fromAdsListType :: 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
+    )
+
+pattern AdsListType_ADSERVINGSTANDARDAD :: AdsListType
+pattern AdsListType_ADSERVINGSTANDARDAD = AdsListType "AD_SERVING_STANDARD_AD"
+
+pattern AdsListType_ADSERVINGDEFAULTAD :: AdsListType
+pattern AdsListType_ADSERVINGDEFAULTAD = AdsListType "AD_SERVING_DEFAULT_AD"
+
+pattern AdsListType_ADSERVINGCLICKTRACKER :: AdsListType
+pattern AdsListType_ADSERVINGCLICKTRACKER = AdsListType "AD_SERVING_CLICK_TRACKER"
+
+pattern AdsListType_ADSERVINGTRACKING :: AdsListType
+pattern AdsListType_ADSERVINGTRACKING = AdsListType "AD_SERVING_TRACKING"
+
+pattern AdsListType_ADSERVINGBRANDSAFEAD :: AdsListType
+pattern AdsListType_ADSERVINGBRANDSAFEAD = AdsListType "AD_SERVING_BRAND_SAFE_AD"
+
+{-# COMPLETE
+  AdsListType_ADSERVINGSTANDARDAD,
+  AdsListType_ADSERVINGDEFAULTAD,
+  AdsListType_ADSERVINGCLICKTRACKER,
+  AdsListType_ADSERVINGTRACKING,
+  AdsListType_ADSERVINGBRANDSAFEAD,
+  AdsListType
+  #-}
+
+-- | Field by which to sort the list.
+newtype AdvertiserGroupsListSortField = AdvertiserGroupsListSortField {fromAdvertiserGroupsListSortField :: 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
+    )
+
+pattern AdvertiserGroupsListSortField_ID :: AdvertiserGroupsListSortField
+pattern AdvertiserGroupsListSortField_ID = AdvertiserGroupsListSortField "ID"
+
+pattern AdvertiserGroupsListSortField_Name :: AdvertiserGroupsListSortField
+pattern AdvertiserGroupsListSortField_Name = AdvertiserGroupsListSortField "NAME"
+
+{-# COMPLETE
+  AdvertiserGroupsListSortField_ID,
+  AdvertiserGroupsListSortField_Name,
+  AdvertiserGroupsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AdvertiserGroupsListSortOrder = AdvertiserGroupsListSortOrder {fromAdvertiserGroupsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AdvertiserGroupsListSortOrder_Ascending :: AdvertiserGroupsListSortOrder
+pattern AdvertiserGroupsListSortOrder_Ascending = AdvertiserGroupsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AdvertiserGroupsListSortOrder_Descending :: AdvertiserGroupsListSortOrder
+pattern AdvertiserGroupsListSortOrder_Descending = AdvertiserGroupsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AdvertiserGroupsListSortOrder_Ascending,
+  AdvertiserGroupsListSortOrder_Descending,
+  AdvertiserGroupsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype AdvertiserLandingPagesListSortField = AdvertiserLandingPagesListSortField {fromAdvertiserLandingPagesListSortField :: 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
+    )
+
+pattern AdvertiserLandingPagesListSortField_ID :: AdvertiserLandingPagesListSortField
+pattern AdvertiserLandingPagesListSortField_ID = AdvertiserLandingPagesListSortField "ID"
+
+pattern AdvertiserLandingPagesListSortField_Name :: AdvertiserLandingPagesListSortField
+pattern AdvertiserLandingPagesListSortField_Name = AdvertiserLandingPagesListSortField "NAME"
+
+{-# COMPLETE
+  AdvertiserLandingPagesListSortField_ID,
+  AdvertiserLandingPagesListSortField_Name,
+  AdvertiserLandingPagesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AdvertiserLandingPagesListSortOrder = AdvertiserLandingPagesListSortOrder {fromAdvertiserLandingPagesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AdvertiserLandingPagesListSortOrder_Ascending :: AdvertiserLandingPagesListSortOrder
+pattern AdvertiserLandingPagesListSortOrder_Ascending = AdvertiserLandingPagesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AdvertiserLandingPagesListSortOrder_Descending :: AdvertiserLandingPagesListSortOrder
+pattern AdvertiserLandingPagesListSortOrder_Descending = AdvertiserLandingPagesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AdvertiserLandingPagesListSortOrder_Ascending,
+  AdvertiserLandingPagesListSortOrder_Descending,
+  AdvertiserLandingPagesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype AdvertisersListSortField = AdvertisersListSortField {fromAdvertisersListSortField :: 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
+    )
+
+pattern AdvertisersListSortField_ID :: AdvertisersListSortField
+pattern AdvertisersListSortField_ID = AdvertisersListSortField "ID"
+
+pattern AdvertisersListSortField_Name :: AdvertisersListSortField
+pattern AdvertisersListSortField_Name = AdvertisersListSortField "NAME"
+
+{-# COMPLETE
+  AdvertisersListSortField_ID,
+  AdvertisersListSortField_Name,
+  AdvertisersListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype AdvertisersListSortOrder = AdvertisersListSortOrder {fromAdvertisersListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern AdvertisersListSortOrder_Ascending :: AdvertisersListSortOrder
+pattern AdvertisersListSortOrder_Ascending = AdvertisersListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern AdvertisersListSortOrder_Descending :: AdvertisersListSortOrder
+pattern AdvertisersListSortOrder_Descending = AdvertisersListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  AdvertisersListSortOrder_Ascending,
+  AdvertisersListSortOrder_Descending,
+  AdvertisersListSortOrder
+  #-}
+
+-- | Select only advertisers with the specified status.
+newtype AdvertisersListStatus = AdvertisersListStatus {fromAdvertisersListStatus :: 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
+    )
+
+-- | Approved (ads can deliver)
+pattern AdvertisersListStatus_Approved :: AdvertisersListStatus
+pattern AdvertisersListStatus_Approved = AdvertisersListStatus "APPROVED"
+
+-- | On-hold (all ads are stopped)
+pattern AdvertisersListStatus_ONHOLD :: AdvertisersListStatus
+pattern AdvertisersListStatus_ONHOLD = AdvertisersListStatus "ON_HOLD"
+
+{-# COMPLETE
+  AdvertisersListStatus_Approved,
+  AdvertisersListStatus_ONHOLD,
+  AdvertisersListStatus
+  #-}
+
+-- | Field by which to sort the list.
+newtype BillingProfilesListSortField = BillingProfilesListSortField {fromBillingProfilesListSortField :: 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
+    )
+
+pattern BillingProfilesListSortField_ID :: BillingProfilesListSortField
+pattern BillingProfilesListSortField_ID = BillingProfilesListSortField "ID"
+
+pattern BillingProfilesListSortField_Name :: BillingProfilesListSortField
+pattern BillingProfilesListSortField_Name = BillingProfilesListSortField "NAME"
+
+{-# COMPLETE
+  BillingProfilesListSortField_ID,
+  BillingProfilesListSortField_Name,
+  BillingProfilesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype BillingProfilesListSortOrder = BillingProfilesListSortOrder {fromBillingProfilesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern BillingProfilesListSortOrder_Ascending :: BillingProfilesListSortOrder
+pattern BillingProfilesListSortOrder_Ascending = BillingProfilesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern BillingProfilesListSortOrder_Descending :: BillingProfilesListSortOrder
+pattern BillingProfilesListSortOrder_Descending = BillingProfilesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  BillingProfilesListSortOrder_Ascending,
+  BillingProfilesListSortOrder_Descending,
+  BillingProfilesListSortOrder
+  #-}
+
+-- | Select only billing profile with the specified status.
+newtype BillingProfilesListStatus = BillingProfilesListStatus {fromBillingProfilesListStatus :: 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
+    )
+
+pattern BillingProfilesListStatus_UNDERREVIEW :: BillingProfilesListStatus
+pattern BillingProfilesListStatus_UNDERREVIEW = BillingProfilesListStatus "UNDER_REVIEW"
+
+pattern BillingProfilesListStatus_Active :: BillingProfilesListStatus
+pattern BillingProfilesListStatus_Active = BillingProfilesListStatus "ACTIVE"
+
+pattern BillingProfilesListStatus_Archived :: BillingProfilesListStatus
+pattern BillingProfilesListStatus_Archived = BillingProfilesListStatus "ARCHIVED"
+
+{-# COMPLETE
+  BillingProfilesListStatus_UNDERREVIEW,
+  BillingProfilesListStatus_Active,
+  BillingProfilesListStatus_Archived,
+  BillingProfilesListStatus
+  #-}
+
+-- | Order of sorted results.
+newtype CampaignCreativeAssociationsListSortOrder = CampaignCreativeAssociationsListSortOrder {fromCampaignCreativeAssociationsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CampaignCreativeAssociationsListSortOrder_Ascending :: CampaignCreativeAssociationsListSortOrder
+pattern CampaignCreativeAssociationsListSortOrder_Ascending = CampaignCreativeAssociationsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CampaignCreativeAssociationsListSortOrder_Descending :: CampaignCreativeAssociationsListSortOrder
+pattern CampaignCreativeAssociationsListSortOrder_Descending = CampaignCreativeAssociationsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CampaignCreativeAssociationsListSortOrder_Ascending,
+  CampaignCreativeAssociationsListSortOrder_Descending,
+  CampaignCreativeAssociationsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype CampaignsListSortField = CampaignsListSortField {fromCampaignsListSortField :: 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
+    )
+
+pattern CampaignsListSortField_ID :: CampaignsListSortField
+pattern CampaignsListSortField_ID = CampaignsListSortField "ID"
+
+pattern CampaignsListSortField_Name :: CampaignsListSortField
+pattern CampaignsListSortField_Name = CampaignsListSortField "NAME"
+
+{-# COMPLETE
+  CampaignsListSortField_ID,
+  CampaignsListSortField_Name,
+  CampaignsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype CampaignsListSortOrder = CampaignsListSortOrder {fromCampaignsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CampaignsListSortOrder_Ascending :: CampaignsListSortOrder
+pattern CampaignsListSortOrder_Ascending = CampaignsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CampaignsListSortOrder_Descending :: CampaignsListSortOrder
+pattern CampaignsListSortOrder_Descending = CampaignsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CampaignsListSortOrder_Ascending,
+  CampaignsListSortOrder_Descending,
+  CampaignsListSortOrder
+  #-}
+
+-- | Select only change logs with the specified action.
+newtype ChangeLogsListAction = ChangeLogsListAction {fromChangeLogsListAction :: 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
+    )
+
+pattern ChangeLogsListAction_ACTIONCREATE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONCREATE = ChangeLogsListAction "ACTION_CREATE"
+
+pattern ChangeLogsListAction_ACTIONUPDATE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONUPDATE = ChangeLogsListAction "ACTION_UPDATE"
+
+pattern ChangeLogsListAction_ACTIONDELETE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONDELETE = ChangeLogsListAction "ACTION_DELETE"
+
+pattern ChangeLogsListAction_ACTIONENABLE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONENABLE = ChangeLogsListAction "ACTION_ENABLE"
+
+pattern ChangeLogsListAction_ACTIONDISABLE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONDISABLE = ChangeLogsListAction "ACTION_DISABLE"
+
+pattern ChangeLogsListAction_ACTIONADD :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONADD = ChangeLogsListAction "ACTION_ADD"
+
+pattern ChangeLogsListAction_ACTIONREMOVE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONREMOVE = ChangeLogsListAction "ACTION_REMOVE"
+
+pattern ChangeLogsListAction_ACTIONMARKASDEFAULT :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONMARKASDEFAULT = ChangeLogsListAction "ACTION_MARK_AS_DEFAULT"
+
+pattern ChangeLogsListAction_ACTIONASSOCIATE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONASSOCIATE = ChangeLogsListAction "ACTION_ASSOCIATE"
+
+pattern ChangeLogsListAction_ACTIONASSIGN :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONASSIGN = ChangeLogsListAction "ACTION_ASSIGN"
+
+pattern ChangeLogsListAction_ACTIONUNASSIGN :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONUNASSIGN = ChangeLogsListAction "ACTION_UNASSIGN"
+
+pattern ChangeLogsListAction_ACTIONSEND :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONSEND = ChangeLogsListAction "ACTION_SEND"
+
+pattern ChangeLogsListAction_ACTIONLINK :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONLINK = ChangeLogsListAction "ACTION_LINK"
+
+pattern ChangeLogsListAction_ACTIONUNLINK :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONUNLINK = ChangeLogsListAction "ACTION_UNLINK"
+
+pattern ChangeLogsListAction_ACTIONPUSH :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONPUSH = ChangeLogsListAction "ACTION_PUSH"
+
+pattern ChangeLogsListAction_ACTIONEMAILTAGS :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONEMAILTAGS = ChangeLogsListAction "ACTION_EMAIL_TAGS"
+
+pattern ChangeLogsListAction_ACTIONSHARE :: ChangeLogsListAction
+pattern ChangeLogsListAction_ACTIONSHARE = ChangeLogsListAction "ACTION_SHARE"
+
+{-# COMPLETE
+  ChangeLogsListAction_ACTIONCREATE,
+  ChangeLogsListAction_ACTIONUPDATE,
+  ChangeLogsListAction_ACTIONDELETE,
+  ChangeLogsListAction_ACTIONENABLE,
+  ChangeLogsListAction_ACTIONDISABLE,
+  ChangeLogsListAction_ACTIONADD,
+  ChangeLogsListAction_ACTIONREMOVE,
+  ChangeLogsListAction_ACTIONMARKASDEFAULT,
+  ChangeLogsListAction_ACTIONASSOCIATE,
+  ChangeLogsListAction_ACTIONASSIGN,
+  ChangeLogsListAction_ACTIONUNASSIGN,
+  ChangeLogsListAction_ACTIONSEND,
+  ChangeLogsListAction_ACTIONLINK,
+  ChangeLogsListAction_ACTIONUNLINK,
+  ChangeLogsListAction_ACTIONPUSH,
+  ChangeLogsListAction_ACTIONEMAILTAGS,
+  ChangeLogsListAction_ACTIONSHARE,
+  ChangeLogsListAction
+  #-}
+
+-- | Select only change logs with the specified object type.
+newtype ChangeLogsListObjectType = ChangeLogsListObjectType {fromChangeLogsListObjectType :: 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
+    )
+
+pattern ChangeLogsListObjectType_OBJECTADVERTISER :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTADVERTISER = ChangeLogsListObjectType "OBJECT_ADVERTISER"
+
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTCONFIGURATION :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTCONFIGURATION = ChangeLogsListObjectType "OBJECT_FLOODLIGHT_CONFIGURATION"
+
+pattern ChangeLogsListObjectType_OBJECTAD :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTAD = ChangeLogsListObjectType "OBJECT_AD"
+
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTACTVITY :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTACTVITY = ChangeLogsListObjectType "OBJECT_FLOODLIGHT_ACTVITY"
+
+pattern ChangeLogsListObjectType_OBJECTCAMPAIGN :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCAMPAIGN = ChangeLogsListObjectType "OBJECT_CAMPAIGN"
+
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTACTIVITYGROUP :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTACTIVITYGROUP = ChangeLogsListObjectType "OBJECT_FLOODLIGHT_ACTIVITY_GROUP"
+
+pattern ChangeLogsListObjectType_OBJECTCREATIVE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCREATIVE = ChangeLogsListObjectType "OBJECT_CREATIVE"
+
+pattern ChangeLogsListObjectType_OBJECTPLACEMENT :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTPLACEMENT = ChangeLogsListObjectType "OBJECT_PLACEMENT"
+
+pattern ChangeLogsListObjectType_OBJECTDFASITE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTDFASITE = ChangeLogsListObjectType "OBJECT_DFA_SITE"
+
+pattern ChangeLogsListObjectType_OBJECTUSERROLE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTUSERROLE = ChangeLogsListObjectType "OBJECT_USER_ROLE"
+
+pattern ChangeLogsListObjectType_OBJECTUSERPROFILE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTUSERPROFILE = ChangeLogsListObjectType "OBJECT_USER_PROFILE"
+
+pattern ChangeLogsListObjectType_OBJECTADVERTISERGROUP :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTADVERTISERGROUP = ChangeLogsListObjectType "OBJECT_ADVERTISER_GROUP"
+
+pattern ChangeLogsListObjectType_OBJECTACCOUNT :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTACCOUNT = ChangeLogsListObjectType "OBJECT_ACCOUNT"
+
+pattern ChangeLogsListObjectType_OBJECTSUBACCOUNT :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTSUBACCOUNT = ChangeLogsListObjectType "OBJECT_SUBACCOUNT"
+
+pattern ChangeLogsListObjectType_OBJECTRICHMEDIACREATIVE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTRICHMEDIACREATIVE = ChangeLogsListObjectType "OBJECT_RICHMEDIA_CREATIVE"
+
+pattern ChangeLogsListObjectType_OBJECTINSTREAMCREATIVE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTINSTREAMCREATIVE = ChangeLogsListObjectType "OBJECT_INSTREAM_CREATIVE"
+
+pattern ChangeLogsListObjectType_OBJECTMEDIAORDER :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTMEDIAORDER = ChangeLogsListObjectType "OBJECT_MEDIA_ORDER"
+
+pattern ChangeLogsListObjectType_OBJECTCONTENTCATEGORY :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCONTENTCATEGORY = ChangeLogsListObjectType "OBJECT_CONTENT_CATEGORY"
+
+pattern ChangeLogsListObjectType_OBJECTPLACEMENTSTRATEGY :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTPLACEMENTSTRATEGY = ChangeLogsListObjectType "OBJECT_PLACEMENT_STRATEGY"
+
+pattern ChangeLogsListObjectType_OBJECTSDSITE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTSDSITE = ChangeLogsListObjectType "OBJECT_SD_SITE"
+
+pattern ChangeLogsListObjectType_OBJECTSIZE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTSIZE = ChangeLogsListObjectType "OBJECT_SIZE"
+
+pattern ChangeLogsListObjectType_OBJECTCREATIVEGROUP :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCREATIVEGROUP = ChangeLogsListObjectType "OBJECT_CREATIVE_GROUP"
+
+pattern ChangeLogsListObjectType_OBJECTCREATIVEASSET :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCREATIVEASSET = ChangeLogsListObjectType "OBJECT_CREATIVE_ASSET"
+
+pattern ChangeLogsListObjectType_OBJECTUSERPROFILEFILTER :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTUSERPROFILEFILTER = ChangeLogsListObjectType "OBJECT_USER_PROFILE_FILTER"
+
+pattern ChangeLogsListObjectType_OBJECTLANDINGPAGE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTLANDINGPAGE = ChangeLogsListObjectType "OBJECT_LANDING_PAGE"
+
+pattern ChangeLogsListObjectType_OBJECTCREATIVEFIELD :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCREATIVEFIELD = ChangeLogsListObjectType "OBJECT_CREATIVE_FIELD"
+
+pattern ChangeLogsListObjectType_OBJECTREMARKETINGLIST :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTREMARKETINGLIST = ChangeLogsListObjectType "OBJECT_REMARKETING_LIST"
+
+pattern ChangeLogsListObjectType_OBJECTPROVIDEDLISTCLIENT :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTPROVIDEDLISTCLIENT = ChangeLogsListObjectType "OBJECT_PROVIDED_LIST_CLIENT"
+
+pattern ChangeLogsListObjectType_OBJECTEVENTTAG :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTEVENTTAG = ChangeLogsListObjectType "OBJECT_EVENT_TAG"
+
+pattern ChangeLogsListObjectType_OBJECTCREATIVEBUNDLE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCREATIVEBUNDLE = ChangeLogsListObjectType "OBJECT_CREATIVE_BUNDLE"
+
+pattern ChangeLogsListObjectType_OBJECTBILLINGACCOUNTGROUP :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTBILLINGACCOUNTGROUP = ChangeLogsListObjectType "OBJECT_BILLING_ACCOUNT_GROUP"
+
+pattern ChangeLogsListObjectType_OBJECTBILLINGFEATURE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTBILLINGFEATURE = ChangeLogsListObjectType "OBJECT_BILLING_FEATURE"
+
+pattern ChangeLogsListObjectType_OBJECTRATECARD :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTRATECARD = ChangeLogsListObjectType "OBJECT_RATE_CARD"
+
+pattern ChangeLogsListObjectType_OBJECTACCOUNTBILLINGFEATURE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTACCOUNTBILLINGFEATURE = ChangeLogsListObjectType "OBJECT_ACCOUNT_BILLING_FEATURE"
+
+pattern ChangeLogsListObjectType_OBJECTBILLINGMINIMUMFEE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTBILLINGMINIMUMFEE = ChangeLogsListObjectType "OBJECT_BILLING_MINIMUM_FEE"
+
+pattern ChangeLogsListObjectType_OBJECTBILLINGPROFILE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTBILLINGPROFILE = ChangeLogsListObjectType "OBJECT_BILLING_PROFILE"
+
+pattern ChangeLogsListObjectType_OBJECTPLAYSTORELINK :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTPLAYSTORELINK = ChangeLogsListObjectType "OBJECT_PLAYSTORE_LINK"
+
+pattern ChangeLogsListObjectType_OBJECTTARGETINGTEMPLATE :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTTARGETINGTEMPLATE = ChangeLogsListObjectType "OBJECT_TARGETING_TEMPLATE"
+
+pattern ChangeLogsListObjectType_OBJECTSEARCHLIFTSTUDY :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTSEARCHLIFTSTUDY = ChangeLogsListObjectType "OBJECT_SEARCH_LIFT_STUDY"
+
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTDV360LINK :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTFLOODLIGHTDV360LINK = ChangeLogsListObjectType "OBJECT_FLOODLIGHT_DV360_LINK"
+
+pattern ChangeLogsListObjectType_OBJECTADVERTISERCUSTOMERLINK :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTADVERTISERCUSTOMERLINK = ChangeLogsListObjectType "OBJECT_ADVERTISER_CUSTOMER_LINK"
+
+pattern ChangeLogsListObjectType_OBJECTCONVERSIONDOMAIN :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTCONVERSIONDOMAIN = ChangeLogsListObjectType "OBJECT_CONVERSION_DOMAIN"
+
+pattern ChangeLogsListObjectType_OBJECTACCOUNTCONVERSIONDOMAIN :: ChangeLogsListObjectType
+pattern ChangeLogsListObjectType_OBJECTACCOUNTCONVERSIONDOMAIN = ChangeLogsListObjectType "OBJECT_ACCOUNT_CONVERSION_DOMAIN"
+
+{-# COMPLETE
+  ChangeLogsListObjectType_OBJECTADVERTISER,
+  ChangeLogsListObjectType_OBJECTFLOODLIGHTCONFIGURATION,
+  ChangeLogsListObjectType_OBJECTAD,
+  ChangeLogsListObjectType_OBJECTFLOODLIGHTACTVITY,
+  ChangeLogsListObjectType_OBJECTCAMPAIGN,
+  ChangeLogsListObjectType_OBJECTFLOODLIGHTACTIVITYGROUP,
+  ChangeLogsListObjectType_OBJECTCREATIVE,
+  ChangeLogsListObjectType_OBJECTPLACEMENT,
+  ChangeLogsListObjectType_OBJECTDFASITE,
+  ChangeLogsListObjectType_OBJECTUSERROLE,
+  ChangeLogsListObjectType_OBJECTUSERPROFILE,
+  ChangeLogsListObjectType_OBJECTADVERTISERGROUP,
+  ChangeLogsListObjectType_OBJECTACCOUNT,
+  ChangeLogsListObjectType_OBJECTSUBACCOUNT,
+  ChangeLogsListObjectType_OBJECTRICHMEDIACREATIVE,
+  ChangeLogsListObjectType_OBJECTINSTREAMCREATIVE,
+  ChangeLogsListObjectType_OBJECTMEDIAORDER,
+  ChangeLogsListObjectType_OBJECTCONTENTCATEGORY,
+  ChangeLogsListObjectType_OBJECTPLACEMENTSTRATEGY,
+  ChangeLogsListObjectType_OBJECTSDSITE,
+  ChangeLogsListObjectType_OBJECTSIZE,
+  ChangeLogsListObjectType_OBJECTCREATIVEGROUP,
+  ChangeLogsListObjectType_OBJECTCREATIVEASSET,
+  ChangeLogsListObjectType_OBJECTUSERPROFILEFILTER,
+  ChangeLogsListObjectType_OBJECTLANDINGPAGE,
+  ChangeLogsListObjectType_OBJECTCREATIVEFIELD,
+  ChangeLogsListObjectType_OBJECTREMARKETINGLIST,
+  ChangeLogsListObjectType_OBJECTPROVIDEDLISTCLIENT,
+  ChangeLogsListObjectType_OBJECTEVENTTAG,
+  ChangeLogsListObjectType_OBJECTCREATIVEBUNDLE,
+  ChangeLogsListObjectType_OBJECTBILLINGACCOUNTGROUP,
+  ChangeLogsListObjectType_OBJECTBILLINGFEATURE,
+  ChangeLogsListObjectType_OBJECTRATECARD,
+  ChangeLogsListObjectType_OBJECTACCOUNTBILLINGFEATURE,
+  ChangeLogsListObjectType_OBJECTBILLINGMINIMUMFEE,
+  ChangeLogsListObjectType_OBJECTBILLINGPROFILE,
+  ChangeLogsListObjectType_OBJECTPLAYSTORELINK,
+  ChangeLogsListObjectType_OBJECTTARGETINGTEMPLATE,
+  ChangeLogsListObjectType_OBJECTSEARCHLIFTSTUDY,
+  ChangeLogsListObjectType_OBJECTFLOODLIGHTDV360LINK,
+  ChangeLogsListObjectType_OBJECTADVERTISERCUSTOMERLINK,
+  ChangeLogsListObjectType_OBJECTCONVERSIONDOMAIN,
+  ChangeLogsListObjectType_OBJECTACCOUNTCONVERSIONDOMAIN,
+  ChangeLogsListObjectType
+  #-}
+
+-- | Field by which to sort the list.
+newtype ContentCategoriesListSortField = ContentCategoriesListSortField {fromContentCategoriesListSortField :: 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
+    )
+
+pattern ContentCategoriesListSortField_ID :: ContentCategoriesListSortField
+pattern ContentCategoriesListSortField_ID = ContentCategoriesListSortField "ID"
+
+pattern ContentCategoriesListSortField_Name :: ContentCategoriesListSortField
+pattern ContentCategoriesListSortField_Name = ContentCategoriesListSortField "NAME"
+
+{-# COMPLETE
+  ContentCategoriesListSortField_ID,
+  ContentCategoriesListSortField_Name,
+  ContentCategoriesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype ContentCategoriesListSortOrder = ContentCategoriesListSortOrder {fromContentCategoriesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern ContentCategoriesListSortOrder_Ascending :: ContentCategoriesListSortOrder
+pattern ContentCategoriesListSortOrder_Ascending = ContentCategoriesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern ContentCategoriesListSortOrder_Descending :: ContentCategoriesListSortOrder
+pattern ContentCategoriesListSortOrder_Descending = ContentCategoriesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  ContentCategoriesListSortOrder_Ascending,
+  ContentCategoriesListSortOrder_Descending,
+  ContentCategoriesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype CreativeFieldValuesListSortField = CreativeFieldValuesListSortField {fromCreativeFieldValuesListSortField :: 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
+    )
+
+pattern CreativeFieldValuesListSortField_ID :: CreativeFieldValuesListSortField
+pattern CreativeFieldValuesListSortField_ID = CreativeFieldValuesListSortField "ID"
+
+pattern CreativeFieldValuesListSortField_Value :: CreativeFieldValuesListSortField
+pattern CreativeFieldValuesListSortField_Value = CreativeFieldValuesListSortField "VALUE"
+
+{-# COMPLETE
+  CreativeFieldValuesListSortField_ID,
+  CreativeFieldValuesListSortField_Value,
+  CreativeFieldValuesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype CreativeFieldValuesListSortOrder = CreativeFieldValuesListSortOrder {fromCreativeFieldValuesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CreativeFieldValuesListSortOrder_Ascending :: CreativeFieldValuesListSortOrder
+pattern CreativeFieldValuesListSortOrder_Ascending = CreativeFieldValuesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CreativeFieldValuesListSortOrder_Descending :: CreativeFieldValuesListSortOrder
+pattern CreativeFieldValuesListSortOrder_Descending = CreativeFieldValuesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CreativeFieldValuesListSortOrder_Ascending,
+  CreativeFieldValuesListSortOrder_Descending,
+  CreativeFieldValuesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype CreativeFieldsListSortField = CreativeFieldsListSortField {fromCreativeFieldsListSortField :: 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
+    )
+
+pattern CreativeFieldsListSortField_ID :: CreativeFieldsListSortField
+pattern CreativeFieldsListSortField_ID = CreativeFieldsListSortField "ID"
+
+pattern CreativeFieldsListSortField_Name :: CreativeFieldsListSortField
+pattern CreativeFieldsListSortField_Name = CreativeFieldsListSortField "NAME"
+
+{-# COMPLETE
+  CreativeFieldsListSortField_ID,
+  CreativeFieldsListSortField_Name,
+  CreativeFieldsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype CreativeFieldsListSortOrder = CreativeFieldsListSortOrder {fromCreativeFieldsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CreativeFieldsListSortOrder_Ascending :: CreativeFieldsListSortOrder
+pattern CreativeFieldsListSortOrder_Ascending = CreativeFieldsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CreativeFieldsListSortOrder_Descending :: CreativeFieldsListSortOrder
+pattern CreativeFieldsListSortOrder_Descending = CreativeFieldsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CreativeFieldsListSortOrder_Ascending,
+  CreativeFieldsListSortOrder_Descending,
+  CreativeFieldsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype CreativeGroupsListSortField = CreativeGroupsListSortField {fromCreativeGroupsListSortField :: 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
+    )
+
+pattern CreativeGroupsListSortField_ID :: CreativeGroupsListSortField
+pattern CreativeGroupsListSortField_ID = CreativeGroupsListSortField "ID"
+
+pattern CreativeGroupsListSortField_Name :: CreativeGroupsListSortField
+pattern CreativeGroupsListSortField_Name = CreativeGroupsListSortField "NAME"
+
+{-# COMPLETE
+  CreativeGroupsListSortField_ID,
+  CreativeGroupsListSortField_Name,
+  CreativeGroupsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype CreativeGroupsListSortOrder = CreativeGroupsListSortOrder {fromCreativeGroupsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CreativeGroupsListSortOrder_Ascending :: CreativeGroupsListSortOrder
+pattern CreativeGroupsListSortOrder_Ascending = CreativeGroupsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CreativeGroupsListSortOrder_Descending :: CreativeGroupsListSortOrder
+pattern CreativeGroupsListSortOrder_Descending = CreativeGroupsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CreativeGroupsListSortOrder_Ascending,
+  CreativeGroupsListSortOrder_Descending,
+  CreativeGroupsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype CreativesListSortField = CreativesListSortField {fromCreativesListSortField :: 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
+    )
+
+pattern CreativesListSortField_ID :: CreativesListSortField
+pattern CreativesListSortField_ID = CreativesListSortField "ID"
+
+pattern CreativesListSortField_Name :: CreativesListSortField
+pattern CreativesListSortField_Name = CreativesListSortField "NAME"
+
+{-# COMPLETE
+  CreativesListSortField_ID,
+  CreativesListSortField_Name,
+  CreativesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype CreativesListSortOrder = CreativesListSortOrder {fromCreativesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern CreativesListSortOrder_Ascending :: CreativesListSortOrder
+pattern CreativesListSortOrder_Ascending = CreativesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern CreativesListSortOrder_Descending :: CreativesListSortOrder
+pattern CreativesListSortOrder_Descending = CreativesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  CreativesListSortOrder_Ascending,
+  CreativesListSortOrder_Descending,
+  CreativesListSortOrder
+  #-}
+
+-- | Select only creatives with these creative types.
+newtype CreativesListTypes = CreativesListTypes {fromCreativesListTypes :: 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
+    )
+
+pattern CreativesListTypes_Image :: CreativesListTypes
+pattern CreativesListTypes_Image = CreativesListTypes "IMAGE"
+
+pattern CreativesListTypes_DISPLAYREDIRECT :: CreativesListTypes
+pattern CreativesListTypes_DISPLAYREDIRECT = CreativesListTypes "DISPLAY_REDIRECT"
+
+pattern CreativesListTypes_CUSTOMDISPLAY :: CreativesListTypes
+pattern CreativesListTypes_CUSTOMDISPLAY = CreativesListTypes "CUSTOM_DISPLAY"
+
+pattern CreativesListTypes_INTERNALREDIRECT :: CreativesListTypes
+pattern CreativesListTypes_INTERNALREDIRECT = CreativesListTypes "INTERNAL_REDIRECT"
+
+pattern CreativesListTypes_CUSTOMDISPLAYINTERSTITIAL :: CreativesListTypes
+pattern CreativesListTypes_CUSTOMDISPLAYINTERSTITIAL = CreativesListTypes "CUSTOM_DISPLAY_INTERSTITIAL"
+
+pattern CreativesListTypes_INTERSTITIALINTERNALREDIRECT :: CreativesListTypes
+pattern CreativesListTypes_INTERSTITIALINTERNALREDIRECT = CreativesListTypes "INTERSTITIAL_INTERNAL_REDIRECT"
+
+pattern CreativesListTypes_TRACKINGTEXT :: CreativesListTypes
+pattern CreativesListTypes_TRACKINGTEXT = CreativesListTypes "TRACKING_TEXT"
+
+pattern CreativesListTypes_RICHMEDIADISPLAYBANNER :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIADISPLAYBANNER = CreativesListTypes "RICH_MEDIA_DISPLAY_BANNER"
+
+pattern CreativesListTypes_RICHMEDIAINPAGEFLOATING :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIAINPAGEFLOATING = CreativesListTypes "RICH_MEDIA_INPAGE_FLOATING"
+
+pattern CreativesListTypes_RICHMEDIAIMEXPAND :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIAIMEXPAND = CreativesListTypes "RICH_MEDIA_IM_EXPAND"
+
+pattern CreativesListTypes_RICHMEDIADISPLAYEXPANDING :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIADISPLAYEXPANDING = CreativesListTypes "RICH_MEDIA_DISPLAY_EXPANDING"
+
+pattern CreativesListTypes_RICHMEDIADISPLAYINTERSTITIAL :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIADISPLAYINTERSTITIAL = CreativesListTypes "RICH_MEDIA_DISPLAY_INTERSTITIAL"
+
+pattern CreativesListTypes_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL = CreativesListTypes "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
+
+pattern CreativesListTypes_RICHMEDIAMOBILEINAPP :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIAMOBILEINAPP = CreativesListTypes "RICH_MEDIA_MOBILE_IN_APP"
+
+pattern CreativesListTypes_FLASHINPAGE :: CreativesListTypes
+pattern CreativesListTypes_FLASHINPAGE = CreativesListTypes "FLASH_INPAGE"
+
+pattern CreativesListTypes_INSTREAMVIDEO :: CreativesListTypes
+pattern CreativesListTypes_INSTREAMVIDEO = CreativesListTypes "INSTREAM_VIDEO"
+
+pattern CreativesListTypes_VPAIDLINEARVIDEO :: CreativesListTypes
+pattern CreativesListTypes_VPAIDLINEARVIDEO = CreativesListTypes "VPAID_LINEAR_VIDEO"
+
+pattern CreativesListTypes_VPAIDNONLINEARVIDEO :: CreativesListTypes
+pattern CreativesListTypes_VPAIDNONLINEARVIDEO = CreativesListTypes "VPAID_NON_LINEAR_VIDEO"
+
+pattern CreativesListTypes_INSTREAMVIDEOREDIRECT :: CreativesListTypes
+pattern CreativesListTypes_INSTREAMVIDEOREDIRECT = CreativesListTypes "INSTREAM_VIDEO_REDIRECT"
+
+pattern CreativesListTypes_RICHMEDIAPEELDOWN :: CreativesListTypes
+pattern CreativesListTypes_RICHMEDIAPEELDOWN = CreativesListTypes "RICH_MEDIA_PEEL_DOWN"
+
+pattern CreativesListTypes_HTML5BANNER :: CreativesListTypes
+pattern CreativesListTypes_HTML5BANNER = CreativesListTypes "HTML5_BANNER"
+
+pattern CreativesListTypes_Display :: CreativesListTypes
+pattern CreativesListTypes_Display = CreativesListTypes "DISPLAY"
+
+pattern CreativesListTypes_DISPLAYIMAGEGALLERY :: CreativesListTypes
+pattern CreativesListTypes_DISPLAYIMAGEGALLERY = CreativesListTypes "DISPLAY_IMAGE_GALLERY"
+
+pattern CreativesListTypes_BRANDSAFEDEFAULTINSTREAMVIDEO :: CreativesListTypes
+pattern CreativesListTypes_BRANDSAFEDEFAULTINSTREAMVIDEO = CreativesListTypes "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
+
+pattern CreativesListTypes_INSTREAMAUDIO :: CreativesListTypes
+pattern CreativesListTypes_INSTREAMAUDIO = CreativesListTypes "INSTREAM_AUDIO"
+
+{-# COMPLETE
+  CreativesListTypes_Image,
+  CreativesListTypes_DISPLAYREDIRECT,
+  CreativesListTypes_CUSTOMDISPLAY,
+  CreativesListTypes_INTERNALREDIRECT,
+  CreativesListTypes_CUSTOMDISPLAYINTERSTITIAL,
+  CreativesListTypes_INTERSTITIALINTERNALREDIRECT,
+  CreativesListTypes_TRACKINGTEXT,
+  CreativesListTypes_RICHMEDIADISPLAYBANNER,
+  CreativesListTypes_RICHMEDIAINPAGEFLOATING,
+  CreativesListTypes_RICHMEDIAIMEXPAND,
+  CreativesListTypes_RICHMEDIADISPLAYEXPANDING,
+  CreativesListTypes_RICHMEDIADISPLAYINTERSTITIAL,
+  CreativesListTypes_RICHMEDIADISPLAYMULTIFLOATINGINTERSTITIAL,
+  CreativesListTypes_RICHMEDIAMOBILEINAPP,
+  CreativesListTypes_FLASHINPAGE,
+  CreativesListTypes_INSTREAMVIDEO,
+  CreativesListTypes_VPAIDLINEARVIDEO,
+  CreativesListTypes_VPAIDNONLINEARVIDEO,
+  CreativesListTypes_INSTREAMVIDEOREDIRECT,
+  CreativesListTypes_RICHMEDIAPEELDOWN,
+  CreativesListTypes_HTML5BANNER,
+  CreativesListTypes_Display,
+  CreativesListTypes_DISPLAYIMAGEGALLERY,
+  CreativesListTypes_BRANDSAFEDEFAULTINSTREAMVIDEO,
+  CreativesListTypes_INSTREAMAUDIO,
+  CreativesListTypes
+  #-}
+
+-- | Field by which to sort the list.
+newtype DirectorySitesListSortField = DirectorySitesListSortField {fromDirectorySitesListSortField :: 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
+    )
+
+pattern DirectorySitesListSortField_ID :: DirectorySitesListSortField
+pattern DirectorySitesListSortField_ID = DirectorySitesListSortField "ID"
+
+pattern DirectorySitesListSortField_Name :: DirectorySitesListSortField
+pattern DirectorySitesListSortField_Name = DirectorySitesListSortField "NAME"
+
+{-# COMPLETE
+  DirectorySitesListSortField_ID,
+  DirectorySitesListSortField_Name,
+  DirectorySitesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype DirectorySitesListSortOrder = DirectorySitesListSortOrder {fromDirectorySitesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern DirectorySitesListSortOrder_Ascending :: DirectorySitesListSortOrder
+pattern DirectorySitesListSortOrder_Ascending = DirectorySitesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern DirectorySitesListSortOrder_Descending :: DirectorySitesListSortOrder
+pattern DirectorySitesListSortOrder_Descending = DirectorySitesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  DirectorySitesListSortOrder_Ascending,
+  DirectorySitesListSortOrder_Descending,
+  DirectorySitesListSortOrder
+  #-}
+
+-- | Required. Type of the object of this dynamic targeting key. This is a required field.
+newtype DynamicTargetingKeysDeleteObjectType = DynamicTargetingKeysDeleteObjectType {fromDynamicTargetingKeysDeleteObjectType :: 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
+    )
+
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTADVERTISER :: DynamicTargetingKeysDeleteObjectType
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTADVERTISER = DynamicTargetingKeysDeleteObjectType "OBJECT_ADVERTISER"
+
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTAD :: DynamicTargetingKeysDeleteObjectType
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTAD = DynamicTargetingKeysDeleteObjectType "OBJECT_AD"
+
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTCREATIVE :: DynamicTargetingKeysDeleteObjectType
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTCREATIVE = DynamicTargetingKeysDeleteObjectType "OBJECT_CREATIVE"
+
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTPLACEMENT :: DynamicTargetingKeysDeleteObjectType
+pattern DynamicTargetingKeysDeleteObjectType_OBJECTPLACEMENT = DynamicTargetingKeysDeleteObjectType "OBJECT_PLACEMENT"
+
+{-# COMPLETE
+  DynamicTargetingKeysDeleteObjectType_OBJECTADVERTISER,
+  DynamicTargetingKeysDeleteObjectType_OBJECTAD,
+  DynamicTargetingKeysDeleteObjectType_OBJECTCREATIVE,
+  DynamicTargetingKeysDeleteObjectType_OBJECTPLACEMENT,
+  DynamicTargetingKeysDeleteObjectType
+  #-}
+
+-- | Select only dynamic targeting keys with this object type.
+newtype DynamicTargetingKeysListObjectType = DynamicTargetingKeysListObjectType {fromDynamicTargetingKeysListObjectType :: 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
+    )
+
+pattern DynamicTargetingKeysListObjectType_OBJECTADVERTISER :: DynamicTargetingKeysListObjectType
+pattern DynamicTargetingKeysListObjectType_OBJECTADVERTISER = DynamicTargetingKeysListObjectType "OBJECT_ADVERTISER"
+
+pattern DynamicTargetingKeysListObjectType_OBJECTAD :: DynamicTargetingKeysListObjectType
+pattern DynamicTargetingKeysListObjectType_OBJECTAD = DynamicTargetingKeysListObjectType "OBJECT_AD"
+
+pattern DynamicTargetingKeysListObjectType_OBJECTCREATIVE :: DynamicTargetingKeysListObjectType
+pattern DynamicTargetingKeysListObjectType_OBJECTCREATIVE = DynamicTargetingKeysListObjectType "OBJECT_CREATIVE"
+
+pattern DynamicTargetingKeysListObjectType_OBJECTPLACEMENT :: DynamicTargetingKeysListObjectType
+pattern DynamicTargetingKeysListObjectType_OBJECTPLACEMENT = DynamicTargetingKeysListObjectType "OBJECT_PLACEMENT"
+
+{-# COMPLETE
+  DynamicTargetingKeysListObjectType_OBJECTADVERTISER,
+  DynamicTargetingKeysListObjectType_OBJECTAD,
+  DynamicTargetingKeysListObjectType_OBJECTCREATIVE,
+  DynamicTargetingKeysListObjectType_OBJECTPLACEMENT,
+  DynamicTargetingKeysListObjectType
+  #-}
+
+-- | Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.
+newtype EventTagsListEventTagTypes = EventTagsListEventTagTypes {fromEventTagsListEventTagTypes :: 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
+    )
+
+-- | A third-party pixel for impression tracking.
+pattern EventTagsListEventTagTypes_IMPRESSIONIMAGEEVENTTAG :: EventTagsListEventTagTypes
+pattern EventTagsListEventTagTypes_IMPRESSIONIMAGEEVENTTAG = EventTagsListEventTagTypes "IMPRESSION_IMAGE_EVENT_TAG"
+
+-- | A third-party JavaScript URL for impression tracking.
+pattern EventTagsListEventTagTypes_IMPRESSIONJAVASCRIPTEVENTTAG :: EventTagsListEventTagTypes
+pattern EventTagsListEventTagTypes_IMPRESSIONJAVASCRIPTEVENTTAG = EventTagsListEventTagTypes "IMPRESSION_JAVASCRIPT_EVENT_TAG"
+
+-- | A third-party URL for click tracking that redirects to the landing page.
+pattern EventTagsListEventTagTypes_CLICKTHROUGHEVENTTAG :: EventTagsListEventTagTypes
+pattern EventTagsListEventTagTypes_CLICKTHROUGHEVENTTAG = EventTagsListEventTagTypes "CLICK_THROUGH_EVENT_TAG"
+
+{-# COMPLETE
+  EventTagsListEventTagTypes_IMPRESSIONIMAGEEVENTTAG,
+  EventTagsListEventTagTypes_IMPRESSIONJAVASCRIPTEVENTTAG,
+  EventTagsListEventTagTypes_CLICKTHROUGHEVENTTAG,
+  EventTagsListEventTagTypes
+  #-}
+
+-- | Field by which to sort the list.
+newtype EventTagsListSortField = EventTagsListSortField {fromEventTagsListSortField :: 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
+    )
+
+pattern EventTagsListSortField_ID :: EventTagsListSortField
+pattern EventTagsListSortField_ID = EventTagsListSortField "ID"
+
+pattern EventTagsListSortField_Name :: EventTagsListSortField
+pattern EventTagsListSortField_Name = EventTagsListSortField "NAME"
+
+{-# COMPLETE
+  EventTagsListSortField_ID,
+  EventTagsListSortField_Name,
+  EventTagsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype EventTagsListSortOrder = EventTagsListSortOrder {fromEventTagsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern EventTagsListSortOrder_Ascending :: EventTagsListSortOrder
+pattern EventTagsListSortOrder_Ascending = EventTagsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern EventTagsListSortOrder_Descending :: EventTagsListSortOrder
+pattern EventTagsListSortOrder_Descending = EventTagsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  EventTagsListSortOrder_Ascending,
+  EventTagsListSortOrder_Descending,
+  EventTagsListSortOrder
+  #-}
+
+-- | The scope that defines which results are returned.
+newtype FilesListScope = FilesListScope {fromFilesListScope :: 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
+    )
+
+-- | All files in account.
+pattern FilesListScope_All :: FilesListScope
+pattern FilesListScope_All = FilesListScope "ALL"
+
+-- | My files.
+pattern FilesListScope_Mine :: FilesListScope
+pattern FilesListScope_Mine = FilesListScope "MINE"
+
+-- | Files shared with me.
+pattern FilesListScope_SHAREDWITHME :: FilesListScope
+pattern FilesListScope_SHAREDWITHME = FilesListScope "SHARED_WITH_ME"
+
+{-# COMPLETE
+  FilesListScope_All,
+  FilesListScope_Mine,
+  FilesListScope_SHAREDWITHME,
+  FilesListScope
+  #-}
+
+-- | The field by which to sort the list.
+newtype FilesListSortField = FilesListSortField {fromFilesListSortField :: 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
+    )
+
+-- | Sort by file ID.
+pattern FilesListSortField_ID :: FilesListSortField
+pattern FilesListSortField_ID = FilesListSortField "ID"
+
+-- | Sort by \'lastmodifiedAt\' field.
+pattern FilesListSortField_LASTMODIFIEDTIME :: FilesListSortField
+pattern FilesListSortField_LASTMODIFIEDTIME = FilesListSortField "LAST_MODIFIED_TIME"
+
+{-# COMPLETE
+  FilesListSortField_ID,
+  FilesListSortField_LASTMODIFIEDTIME,
+  FilesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype FilesListSortOrder = FilesListSortOrder {fromFilesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern FilesListSortOrder_Ascending :: FilesListSortOrder
+pattern FilesListSortOrder_Ascending = FilesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern FilesListSortOrder_Descending :: FilesListSortOrder
+pattern FilesListSortOrder_Descending = FilesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  FilesListSortOrder_Ascending,
+  FilesListSortOrder_Descending,
+  FilesListSortOrder
+  #-}
+
+-- | Select only floodlight activities with the specified floodlight activity group type.
+newtype FloodlightActivitiesListFloodlightActivityGroupType = FloodlightActivitiesListFloodlightActivityGroupType {fromFloodlightActivitiesListFloodlightActivityGroupType :: 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
+    )
+
+pattern FloodlightActivitiesListFloodlightActivityGroupType_Counter :: FloodlightActivitiesListFloodlightActivityGroupType
+pattern FloodlightActivitiesListFloodlightActivityGroupType_Counter = FloodlightActivitiesListFloodlightActivityGroupType "COUNTER"
+
+pattern FloodlightActivitiesListFloodlightActivityGroupType_Sale :: FloodlightActivitiesListFloodlightActivityGroupType
+pattern FloodlightActivitiesListFloodlightActivityGroupType_Sale = FloodlightActivitiesListFloodlightActivityGroupType "SALE"
+
+{-# COMPLETE
+  FloodlightActivitiesListFloodlightActivityGroupType_Counter,
+  FloodlightActivitiesListFloodlightActivityGroupType_Sale,
+  FloodlightActivitiesListFloodlightActivityGroupType
+  #-}
+
+-- | Field by which to sort the list.
+newtype FloodlightActivitiesListSortField = FloodlightActivitiesListSortField {fromFloodlightActivitiesListSortField :: 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
+    )
+
+pattern FloodlightActivitiesListSortField_ID :: FloodlightActivitiesListSortField
+pattern FloodlightActivitiesListSortField_ID = FloodlightActivitiesListSortField "ID"
+
+pattern FloodlightActivitiesListSortField_Name :: FloodlightActivitiesListSortField
+pattern FloodlightActivitiesListSortField_Name = FloodlightActivitiesListSortField "NAME"
+
+{-# COMPLETE
+  FloodlightActivitiesListSortField_ID,
+  FloodlightActivitiesListSortField_Name,
+  FloodlightActivitiesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype FloodlightActivitiesListSortOrder = FloodlightActivitiesListSortOrder {fromFloodlightActivitiesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern FloodlightActivitiesListSortOrder_Ascending :: FloodlightActivitiesListSortOrder
+pattern FloodlightActivitiesListSortOrder_Ascending = FloodlightActivitiesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern FloodlightActivitiesListSortOrder_Descending :: FloodlightActivitiesListSortOrder
+pattern FloodlightActivitiesListSortOrder_Descending = FloodlightActivitiesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  FloodlightActivitiesListSortOrder_Ascending,
+  FloodlightActivitiesListSortOrder_Descending,
+  FloodlightActivitiesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype FloodlightActivityGroupsListSortField = FloodlightActivityGroupsListSortField {fromFloodlightActivityGroupsListSortField :: 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
+    )
+
+pattern FloodlightActivityGroupsListSortField_ID :: FloodlightActivityGroupsListSortField
+pattern FloodlightActivityGroupsListSortField_ID = FloodlightActivityGroupsListSortField "ID"
+
+pattern FloodlightActivityGroupsListSortField_Name :: FloodlightActivityGroupsListSortField
+pattern FloodlightActivityGroupsListSortField_Name = FloodlightActivityGroupsListSortField "NAME"
+
+{-# COMPLETE
+  FloodlightActivityGroupsListSortField_ID,
+  FloodlightActivityGroupsListSortField_Name,
+  FloodlightActivityGroupsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype FloodlightActivityGroupsListSortOrder = FloodlightActivityGroupsListSortOrder {fromFloodlightActivityGroupsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern FloodlightActivityGroupsListSortOrder_Ascending :: FloodlightActivityGroupsListSortOrder
+pattern FloodlightActivityGroupsListSortOrder_Ascending = FloodlightActivityGroupsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern FloodlightActivityGroupsListSortOrder_Descending :: FloodlightActivityGroupsListSortOrder
+pattern FloodlightActivityGroupsListSortOrder_Descending = FloodlightActivityGroupsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  FloodlightActivityGroupsListSortOrder_Ascending,
+  FloodlightActivityGroupsListSortOrder_Descending,
+  FloodlightActivityGroupsListSortOrder
+  #-}
+
+-- | Select only floodlight activity groups with the specified floodlight activity group type.
+newtype FloodlightActivityGroupsListType = FloodlightActivityGroupsListType {fromFloodlightActivityGroupsListType :: 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
+    )
+
+pattern FloodlightActivityGroupsListType_Counter :: FloodlightActivityGroupsListType
+pattern FloodlightActivityGroupsListType_Counter = FloodlightActivityGroupsListType "COUNTER"
+
+pattern FloodlightActivityGroupsListType_Sale :: FloodlightActivityGroupsListType
+pattern FloodlightActivityGroupsListType_Sale = FloodlightActivityGroupsListType "SALE"
+
+{-# COMPLETE
+  FloodlightActivityGroupsListType_Counter,
+  FloodlightActivityGroupsListType_Sale,
+  FloodlightActivityGroupsListType
+  #-}
+
+-- | Field by which to sort the list.
+newtype InventoryItemsListSortField = InventoryItemsListSortField {fromInventoryItemsListSortField :: 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
+    )
+
+pattern InventoryItemsListSortField_ID :: InventoryItemsListSortField
+pattern InventoryItemsListSortField_ID = InventoryItemsListSortField "ID"
+
+pattern InventoryItemsListSortField_Name :: InventoryItemsListSortField
+pattern InventoryItemsListSortField_Name = InventoryItemsListSortField "NAME"
+
+{-# COMPLETE
+  InventoryItemsListSortField_ID,
+  InventoryItemsListSortField_Name,
+  InventoryItemsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype InventoryItemsListSortOrder = InventoryItemsListSortOrder {fromInventoryItemsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern InventoryItemsListSortOrder_Ascending :: InventoryItemsListSortOrder
+pattern InventoryItemsListSortOrder_Ascending = InventoryItemsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern InventoryItemsListSortOrder_Descending :: InventoryItemsListSortOrder
+pattern InventoryItemsListSortOrder_Descending = InventoryItemsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  InventoryItemsListSortOrder_Ascending,
+  InventoryItemsListSortOrder_Descending,
+  InventoryItemsListSortOrder
+  #-}
+
+-- | Select only inventory items with this type.
+newtype InventoryItemsListType = InventoryItemsListType {fromInventoryItemsListType :: 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
+    )
+
+pattern InventoryItemsListType_PLANNINGPLACEMENTTYPEREGULAR :: InventoryItemsListType
+pattern InventoryItemsListType_PLANNINGPLACEMENTTYPEREGULAR = InventoryItemsListType "PLANNING_PLACEMENT_TYPE_REGULAR"
+
+pattern InventoryItemsListType_PLANNINGPLACEMENTTYPECREDIT :: InventoryItemsListType
+pattern InventoryItemsListType_PLANNINGPLACEMENTTYPECREDIT = InventoryItemsListType "PLANNING_PLACEMENT_TYPE_CREDIT"
+
+{-# COMPLETE
+  InventoryItemsListType_PLANNINGPLACEMENTTYPEREGULAR,
+  InventoryItemsListType_PLANNINGPLACEMENTTYPECREDIT,
+  InventoryItemsListType
+  #-}
+
+-- | Select only apps from these directories.
+newtype MobileAppsListDirectories = MobileAppsListDirectories {fromMobileAppsListDirectories :: 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
+    )
+
+pattern MobileAppsListDirectories_Unknown :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_Unknown = MobileAppsListDirectories "UNKNOWN"
+
+pattern MobileAppsListDirectories_APPLEAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_APPLEAPPSTORE = MobileAppsListDirectories "APPLE_APP_STORE"
+
+pattern MobileAppsListDirectories_GOOGLEPLAYSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_GOOGLEPLAYSTORE = MobileAppsListDirectories "GOOGLE_PLAY_STORE"
+
+pattern MobileAppsListDirectories_ROKUAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_ROKUAPPSTORE = MobileAppsListDirectories "ROKU_APP_STORE"
+
+pattern MobileAppsListDirectories_AMAZONFIRETVAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_AMAZONFIRETVAPPSTORE = MobileAppsListDirectories "AMAZON_FIRETV_APP_STORE"
+
+pattern MobileAppsListDirectories_PLAYSTATIONAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_PLAYSTATIONAPPSTORE = MobileAppsListDirectories "PLAYSTATION_APP_STORE"
+
+pattern MobileAppsListDirectories_APPLETVAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_APPLETVAPPSTORE = MobileAppsListDirectories "APPLE_TV_APP_STORE"
+
+pattern MobileAppsListDirectories_XBOXAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_XBOXAPPSTORE = MobileAppsListDirectories "XBOX_APP_STORE"
+
+pattern MobileAppsListDirectories_SAMSUNGTVAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_SAMSUNGTVAPPSTORE = MobileAppsListDirectories "SAMSUNG_TV_APP_STORE"
+
+pattern MobileAppsListDirectories_ANDROIDTVAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_ANDROIDTVAPPSTORE = MobileAppsListDirectories "ANDROID_TV_APP_STORE"
+
+pattern MobileAppsListDirectories_GENERICCTVAPPSTORE :: MobileAppsListDirectories
+pattern MobileAppsListDirectories_GENERICCTVAPPSTORE = MobileAppsListDirectories "GENERIC_CTV_APP_STORE"
+
+{-# COMPLETE
+  MobileAppsListDirectories_Unknown,
+  MobileAppsListDirectories_APPLEAPPSTORE,
+  MobileAppsListDirectories_GOOGLEPLAYSTORE,
+  MobileAppsListDirectories_ROKUAPPSTORE,
+  MobileAppsListDirectories_AMAZONFIRETVAPPSTORE,
+  MobileAppsListDirectories_PLAYSTATIONAPPSTORE,
+  MobileAppsListDirectories_APPLETVAPPSTORE,
+  MobileAppsListDirectories_XBOXAPPSTORE,
+  MobileAppsListDirectories_SAMSUNGTVAPPSTORE,
+  MobileAppsListDirectories_ANDROIDTVAPPSTORE,
+  MobileAppsListDirectories_GENERICCTVAPPSTORE,
+  MobileAppsListDirectories
+  #-}
+
+-- | Field by which to sort the list.
+newtype OrdersListSortField = OrdersListSortField {fromOrdersListSortField :: 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
+    )
+
+pattern OrdersListSortField_ID :: OrdersListSortField
+pattern OrdersListSortField_ID = OrdersListSortField "ID"
+
+pattern OrdersListSortField_Name :: OrdersListSortField
+pattern OrdersListSortField_Name = OrdersListSortField "NAME"
+
+{-# COMPLETE
+  OrdersListSortField_ID,
+  OrdersListSortField_Name,
+  OrdersListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype OrdersListSortOrder = OrdersListSortOrder {fromOrdersListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern OrdersListSortOrder_Ascending :: OrdersListSortOrder
+pattern OrdersListSortOrder_Ascending = OrdersListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern OrdersListSortOrder_Descending :: OrdersListSortOrder
+pattern OrdersListSortOrder_Descending = OrdersListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  OrdersListSortOrder_Ascending,
+  OrdersListSortOrder_Descending,
+  OrdersListSortOrder
+  #-}
+
+-- | Select only placements with these active statuses.
+newtype PlacementGroupsListActiveStatus = PlacementGroupsListActiveStatus {fromPlacementGroupsListActiveStatus :: 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
+    )
+
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSUNKNOWN :: PlacementGroupsListActiveStatus
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSUNKNOWN = PlacementGroupsListActiveStatus "PLACEMENT_STATUS_UNKNOWN"
+
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSACTIVE :: PlacementGroupsListActiveStatus
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSACTIVE = PlacementGroupsListActiveStatus "PLACEMENT_STATUS_ACTIVE"
+
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSINACTIVE :: PlacementGroupsListActiveStatus
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSINACTIVE = PlacementGroupsListActiveStatus "PLACEMENT_STATUS_INACTIVE"
+
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSARCHIVED :: PlacementGroupsListActiveStatus
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSARCHIVED = PlacementGroupsListActiveStatus "PLACEMENT_STATUS_ARCHIVED"
+
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED :: PlacementGroupsListActiveStatus
+pattern PlacementGroupsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED = PlacementGroupsListActiveStatus "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
+
+{-# COMPLETE
+  PlacementGroupsListActiveStatus_PLACEMENTSTATUSUNKNOWN,
+  PlacementGroupsListActiveStatus_PLACEMENTSTATUSACTIVE,
+  PlacementGroupsListActiveStatus_PLACEMENTSTATUSINACTIVE,
+  PlacementGroupsListActiveStatus_PLACEMENTSTATUSARCHIVED,
+  PlacementGroupsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+  PlacementGroupsListActiveStatus
+  #-}
+
+-- | Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.
+newtype PlacementGroupsListPlacementGroupType = PlacementGroupsListPlacementGroupType {fromPlacementGroupsListPlacementGroupType :: 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
+    )
+
+-- | A simple group of site-placements (tags). Basically acts as a single pricing point for a group of tags.
+pattern PlacementGroupsListPlacementGroupType_PLACEMENTPACKAGE :: PlacementGroupsListPlacementGroupType
+pattern PlacementGroupsListPlacementGroupType_PLACEMENTPACKAGE = PlacementGroupsListPlacementGroupType "PLACEMENT_PACKAGE"
+
+-- | A group of site-placements (tags) that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. This kind of group requires one of its assigned site-placements to be marked as primary for reporting purposes.
+pattern PlacementGroupsListPlacementGroupType_PLACEMENTROADBLOCK :: PlacementGroupsListPlacementGroupType
+pattern PlacementGroupsListPlacementGroupType_PLACEMENTROADBLOCK = PlacementGroupsListPlacementGroupType "PLACEMENT_ROADBLOCK"
+
+{-# COMPLETE
+  PlacementGroupsListPlacementGroupType_PLACEMENTPACKAGE,
+  PlacementGroupsListPlacementGroupType_PLACEMENTROADBLOCK,
+  PlacementGroupsListPlacementGroupType
+  #-}
+
+-- | Select only placement groups with these pricing types.
+newtype PlacementGroupsListPricingTypes = PlacementGroupsListPricingTypes {fromPlacementGroupsListPricingTypes :: 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
+    )
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPM :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPM = PlacementGroupsListPricingTypes "PRICING_TYPE_CPM"
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPC :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPC = PlacementGroupsListPricingTypes "PRICING_TYPE_CPC"
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPA :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPA = PlacementGroupsListPricingTypes "PRICING_TYPE_CPA"
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS = PlacementGroupsListPricingTypes "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATECLICKS :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATECLICKS = PlacementGroupsListPricingTypes "PRICING_TYPE_FLAT_RATE_CLICKS"
+
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPMACTIVEVIEW :: PlacementGroupsListPricingTypes
+pattern PlacementGroupsListPricingTypes_PRICINGTYPECPMACTIVEVIEW = PlacementGroupsListPricingTypes "PRICING_TYPE_CPM_ACTIVEVIEW"
+
+{-# COMPLETE
+  PlacementGroupsListPricingTypes_PRICINGTYPECPM,
+  PlacementGroupsListPricingTypes_PRICINGTYPECPC,
+  PlacementGroupsListPricingTypes_PRICINGTYPECPA,
+  PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS,
+  PlacementGroupsListPricingTypes_PRICINGTYPEFLATRATECLICKS,
+  PlacementGroupsListPricingTypes_PRICINGTYPECPMACTIVEVIEW,
+  PlacementGroupsListPricingTypes
+  #-}
+
+-- | Field by which to sort the list.
+newtype PlacementGroupsListSortField = PlacementGroupsListSortField {fromPlacementGroupsListSortField :: 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
+    )
+
+pattern PlacementGroupsListSortField_ID :: PlacementGroupsListSortField
+pattern PlacementGroupsListSortField_ID = PlacementGroupsListSortField "ID"
+
+pattern PlacementGroupsListSortField_Name :: PlacementGroupsListSortField
+pattern PlacementGroupsListSortField_Name = PlacementGroupsListSortField "NAME"
+
+{-# COMPLETE
+  PlacementGroupsListSortField_ID,
+  PlacementGroupsListSortField_Name,
+  PlacementGroupsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype PlacementGroupsListSortOrder = PlacementGroupsListSortOrder {fromPlacementGroupsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern PlacementGroupsListSortOrder_Ascending :: PlacementGroupsListSortOrder
+pattern PlacementGroupsListSortOrder_Ascending = PlacementGroupsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern PlacementGroupsListSortOrder_Descending :: PlacementGroupsListSortOrder
+pattern PlacementGroupsListSortOrder_Descending = PlacementGroupsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  PlacementGroupsListSortOrder_Ascending,
+  PlacementGroupsListSortOrder_Descending,
+  PlacementGroupsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype PlacementStrategiesListSortField = PlacementStrategiesListSortField {fromPlacementStrategiesListSortField :: 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
+    )
+
+pattern PlacementStrategiesListSortField_ID :: PlacementStrategiesListSortField
+pattern PlacementStrategiesListSortField_ID = PlacementStrategiesListSortField "ID"
+
+pattern PlacementStrategiesListSortField_Name :: PlacementStrategiesListSortField
+pattern PlacementStrategiesListSortField_Name = PlacementStrategiesListSortField "NAME"
+
+{-# COMPLETE
+  PlacementStrategiesListSortField_ID,
+  PlacementStrategiesListSortField_Name,
+  PlacementStrategiesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype PlacementStrategiesListSortOrder = PlacementStrategiesListSortOrder {fromPlacementStrategiesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern PlacementStrategiesListSortOrder_Ascending :: PlacementStrategiesListSortOrder
+pattern PlacementStrategiesListSortOrder_Ascending = PlacementStrategiesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern PlacementStrategiesListSortOrder_Descending :: PlacementStrategiesListSortOrder
+pattern PlacementStrategiesListSortOrder_Descending = PlacementStrategiesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  PlacementStrategiesListSortOrder_Ascending,
+  PlacementStrategiesListSortOrder_Descending,
+  PlacementStrategiesListSortOrder
+  #-}
+
+-- | Tag formats to generate for these placements. /Note:/ PLACEMENT/TAG/STANDARD can only be generated for 1x1 placements.
+newtype PlacementsGeneratetagsTagFormats = PlacementsGeneratetagsTagFormats {fromPlacementsGeneratetagsTagFormats :: 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
+    )
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGSTANDARD :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGSTANDARD = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_STANDARD"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEILAYER :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEILAYER = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_IFRAME_ILAYER"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERNALREDIRECT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERNALREDIRECT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERNAL_REDIRECT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_JAVASCRIPT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGCLICKCOMMANDS :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGCLICKCOMMANDS = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_CLICK_COMMANDS"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINSTREAMVIDEOPREFETCH :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINSTREAMVIDEOPREFETCH = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKING :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKING = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_TRACKING"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGIFRAME :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGIFRAME = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_TRACKING_IFRAME"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGJAVASCRIPT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGJAVASCRIPT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3 = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPTLEGACY :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPTLEGACY = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4 = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
+
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT :: PlacementsGeneratetagsTagFormats
+pattern PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT = PlacementsGeneratetagsTagFormats "PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
+
+{-# COMPLETE
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGSTANDARD,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEILAYER,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERNALREDIRECT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALINTERNALREDIRECT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPT,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGCLICKCOMMANDS,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINSTREAMVIDEOPREFETCH,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKING,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGIFRAME,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGJAVASCRIPT,
+  PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGIFRAMEJAVASCRIPTLEGACY,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGJAVASCRIPTLEGACY,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALIFRAMEJAVASCRIPTLEGACY,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGINTERSTITIALJAVASCRIPTLEGACY,
+  PlacementsGeneratetagsTagFormats_PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4,
+  PlacementsGeneratetagsTagFormats_PLACEMENTTAGTRACKINGTHIRDPARTYMEASUREMENT,
+  PlacementsGeneratetagsTagFormats
+  #-}
+
+-- | Select only placements with these active statuses.
+newtype PlacementsListActiveStatus = PlacementsListActiveStatus {fromPlacementsListActiveStatus :: 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
+    )
+
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSUNKNOWN :: PlacementsListActiveStatus
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSUNKNOWN = PlacementsListActiveStatus "PLACEMENT_STATUS_UNKNOWN"
+
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSACTIVE :: PlacementsListActiveStatus
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSACTIVE = PlacementsListActiveStatus "PLACEMENT_STATUS_ACTIVE"
+
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSINACTIVE :: PlacementsListActiveStatus
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSINACTIVE = PlacementsListActiveStatus "PLACEMENT_STATUS_INACTIVE"
+
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSARCHIVED :: PlacementsListActiveStatus
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSARCHIVED = PlacementsListActiveStatus "PLACEMENT_STATUS_ARCHIVED"
+
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED :: PlacementsListActiveStatus
+pattern PlacementsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED = PlacementsListActiveStatus "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
+
+{-# COMPLETE
+  PlacementsListActiveStatus_PLACEMENTSTATUSUNKNOWN,
+  PlacementsListActiveStatus_PLACEMENTSTATUSACTIVE,
+  PlacementsListActiveStatus_PLACEMENTSTATUSINACTIVE,
+  PlacementsListActiveStatus_PLACEMENTSTATUSARCHIVED,
+  PlacementsListActiveStatus_PLACEMENTSTATUSPERMANENTLYARCHIVED,
+  PlacementsListActiveStatus
+  #-}
+
+-- | Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM/VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
+newtype PlacementsListCompatibilities = PlacementsListCompatibilities {fromPlacementsListCompatibilities :: 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
+    )
+
+pattern PlacementsListCompatibilities_Display :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_Display = PlacementsListCompatibilities "DISPLAY"
+
+pattern PlacementsListCompatibilities_DISPLAYINTERSTITIAL :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_DISPLAYINTERSTITIAL = PlacementsListCompatibilities "DISPLAY_INTERSTITIAL"
+
+-- | Deprecated enum value. No longer supported.
+pattern PlacementsListCompatibilities_App :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_App = PlacementsListCompatibilities "APP"
+
+-- | Deprecated enum value. No longer supported.
+pattern PlacementsListCompatibilities_APPINTERSTITIAL :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_APPINTERSTITIAL = PlacementsListCompatibilities "APP_INTERSTITIAL"
+
+pattern PlacementsListCompatibilities_INSTREAMVIDEO :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_INSTREAMVIDEO = PlacementsListCompatibilities "IN_STREAM_VIDEO"
+
+pattern PlacementsListCompatibilities_INSTREAMAUDIO :: PlacementsListCompatibilities
+pattern PlacementsListCompatibilities_INSTREAMAUDIO = PlacementsListCompatibilities "IN_STREAM_AUDIO"
+
+{-# COMPLETE
+  PlacementsListCompatibilities_Display,
+  PlacementsListCompatibilities_DISPLAYINTERSTITIAL,
+  PlacementsListCompatibilities_App,
+  PlacementsListCompatibilities_APPINTERSTITIAL,
+  PlacementsListCompatibilities_INSTREAMVIDEO,
+  PlacementsListCompatibilities_INSTREAMAUDIO,
+  PlacementsListCompatibilities
+  #-}
+
+-- | Select only placements with this payment source.
+newtype PlacementsListPaymentSource = PlacementsListPaymentSource {fromPlacementsListPaymentSource :: 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
+    )
+
+pattern PlacementsListPaymentSource_PLACEMENTAGENCYPAID :: PlacementsListPaymentSource
+pattern PlacementsListPaymentSource_PLACEMENTAGENCYPAID = PlacementsListPaymentSource "PLACEMENT_AGENCY_PAID"
+
+pattern PlacementsListPaymentSource_PLACEMENTPUBLISHERPAID :: PlacementsListPaymentSource
+pattern PlacementsListPaymentSource_PLACEMENTPUBLISHERPAID = PlacementsListPaymentSource "PLACEMENT_PUBLISHER_PAID"
+
+{-# COMPLETE
+  PlacementsListPaymentSource_PLACEMENTAGENCYPAID,
+  PlacementsListPaymentSource_PLACEMENTPUBLISHERPAID,
+  PlacementsListPaymentSource
+  #-}
+
+-- | Select only placements with these pricing types.
+newtype PlacementsListPricingTypes = PlacementsListPricingTypes {fromPlacementsListPricingTypes :: 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
+    )
+
+pattern PlacementsListPricingTypes_PRICINGTYPECPM :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPECPM = PlacementsListPricingTypes "PRICING_TYPE_CPM"
+
+pattern PlacementsListPricingTypes_PRICINGTYPECPC :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPECPC = PlacementsListPricingTypes "PRICING_TYPE_CPC"
+
+pattern PlacementsListPricingTypes_PRICINGTYPECPA :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPECPA = PlacementsListPricingTypes "PRICING_TYPE_CPA"
+
+pattern PlacementsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS = PlacementsListPricingTypes "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
+
+pattern PlacementsListPricingTypes_PRICINGTYPEFLATRATECLICKS :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPEFLATRATECLICKS = PlacementsListPricingTypes "PRICING_TYPE_FLAT_RATE_CLICKS"
+
+pattern PlacementsListPricingTypes_PRICINGTYPECPMACTIVEVIEW :: PlacementsListPricingTypes
+pattern PlacementsListPricingTypes_PRICINGTYPECPMACTIVEVIEW = PlacementsListPricingTypes "PRICING_TYPE_CPM_ACTIVEVIEW"
+
+{-# COMPLETE
+  PlacementsListPricingTypes_PRICINGTYPECPM,
+  PlacementsListPricingTypes_PRICINGTYPECPC,
+  PlacementsListPricingTypes_PRICINGTYPECPA,
+  PlacementsListPricingTypes_PRICINGTYPEFLATRATEIMPRESSIONS,
+  PlacementsListPricingTypes_PRICINGTYPEFLATRATECLICKS,
+  PlacementsListPricingTypes_PRICINGTYPECPMACTIVEVIEW,
+  PlacementsListPricingTypes
+  #-}
+
+-- | Field by which to sort the list.
+newtype PlacementsListSortField = PlacementsListSortField {fromPlacementsListSortField :: 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
+    )
+
+pattern PlacementsListSortField_ID :: PlacementsListSortField
+pattern PlacementsListSortField_ID = PlacementsListSortField "ID"
+
+pattern PlacementsListSortField_Name :: PlacementsListSortField
+pattern PlacementsListSortField_Name = PlacementsListSortField "NAME"
+
+{-# COMPLETE
+  PlacementsListSortField_ID,
+  PlacementsListSortField_Name,
+  PlacementsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype PlacementsListSortOrder = PlacementsListSortOrder {fromPlacementsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern PlacementsListSortOrder_Ascending :: PlacementsListSortOrder
+pattern PlacementsListSortOrder_Ascending = PlacementsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern PlacementsListSortOrder_Descending :: PlacementsListSortOrder
+pattern PlacementsListSortOrder_Descending = PlacementsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  PlacementsListSortOrder_Ascending,
+  PlacementsListSortOrder_Descending,
+  PlacementsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype ProjectsListSortField = ProjectsListSortField {fromProjectsListSortField :: 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
+    )
+
+pattern ProjectsListSortField_ID :: ProjectsListSortField
+pattern ProjectsListSortField_ID = ProjectsListSortField "ID"
+
+pattern ProjectsListSortField_Name :: ProjectsListSortField
+pattern ProjectsListSortField_Name = ProjectsListSortField "NAME"
+
+{-# COMPLETE
+  ProjectsListSortField_ID,
+  ProjectsListSortField_Name,
+  ProjectsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype ProjectsListSortOrder = ProjectsListSortOrder {fromProjectsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern ProjectsListSortOrder_Ascending :: ProjectsListSortOrder
+pattern ProjectsListSortOrder_Ascending = ProjectsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern ProjectsListSortOrder_Descending :: ProjectsListSortOrder
+pattern ProjectsListSortOrder_Descending = ProjectsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  ProjectsListSortOrder_Ascending,
+  ProjectsListSortOrder_Descending,
+  ProjectsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype RemarketingListsListSortField = RemarketingListsListSortField {fromRemarketingListsListSortField :: 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
+    )
+
+pattern RemarketingListsListSortField_ID :: RemarketingListsListSortField
+pattern RemarketingListsListSortField_ID = RemarketingListsListSortField "ID"
+
+pattern RemarketingListsListSortField_Name :: RemarketingListsListSortField
+pattern RemarketingListsListSortField_Name = RemarketingListsListSortField "NAME"
+
+{-# COMPLETE
+  RemarketingListsListSortField_ID,
+  RemarketingListsListSortField_Name,
+  RemarketingListsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype RemarketingListsListSortOrder = RemarketingListsListSortOrder {fromRemarketingListsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern RemarketingListsListSortOrder_Ascending :: RemarketingListsListSortOrder
+pattern RemarketingListsListSortOrder_Ascending = RemarketingListsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern RemarketingListsListSortOrder_Descending :: RemarketingListsListSortOrder
+pattern RemarketingListsListSortOrder_Descending = RemarketingListsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  RemarketingListsListSortOrder_Ascending,
+  RemarketingListsListSortOrder_Descending,
+  RemarketingListsListSortOrder
+  #-}
+
+-- | The field by which to sort the list.
+newtype ReportsFilesListSortField = ReportsFilesListSortField {fromReportsFilesListSortField :: 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
+    )
+
+pattern ReportsFilesListSortField_ID :: ReportsFilesListSortField
+pattern ReportsFilesListSortField_ID = ReportsFilesListSortField "ID"
+
+pattern ReportsFilesListSortField_LASTMODIFIEDTIME :: ReportsFilesListSortField
+pattern ReportsFilesListSortField_LASTMODIFIEDTIME = ReportsFilesListSortField "LAST_MODIFIED_TIME"
+
+{-# COMPLETE
+  ReportsFilesListSortField_ID,
+  ReportsFilesListSortField_LASTMODIFIEDTIME,
+  ReportsFilesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype ReportsFilesListSortOrder = ReportsFilesListSortOrder {fromReportsFilesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern ReportsFilesListSortOrder_Ascending :: ReportsFilesListSortOrder
+pattern ReportsFilesListSortOrder_Ascending = ReportsFilesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern ReportsFilesListSortOrder_Descending :: ReportsFilesListSortOrder
+pattern ReportsFilesListSortOrder_Descending = ReportsFilesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  ReportsFilesListSortOrder_Ascending,
+  ReportsFilesListSortOrder_Descending,
+  ReportsFilesListSortOrder
+  #-}
+
+-- | The scope that defines which results are returned.
+newtype ReportsListScope = ReportsListScope {fromReportsListScope :: 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
+    )
+
+-- | All reports in account.
+pattern ReportsListScope_All :: ReportsListScope
+pattern ReportsListScope_All = ReportsListScope "ALL"
+
+-- | My reports.
+pattern ReportsListScope_Mine :: ReportsListScope
+pattern ReportsListScope_Mine = ReportsListScope "MINE"
+
+{-# COMPLETE
+  ReportsListScope_All,
+  ReportsListScope_Mine,
+  ReportsListScope
+  #-}
+
+-- | The field by which to sort the list.
+newtype ReportsListSortField = ReportsListSortField {fromReportsListSortField :: 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
+    )
+
+-- | Sort by report ID.
+pattern ReportsListSortField_ID :: ReportsListSortField
+pattern ReportsListSortField_ID = ReportsListSortField "ID"
+
+-- | Sort by \'lastModifiedTime\' field.
+pattern ReportsListSortField_LASTMODIFIEDTIME :: ReportsListSortField
+pattern ReportsListSortField_LASTMODIFIEDTIME = ReportsListSortField "LAST_MODIFIED_TIME"
+
+-- | Sort by name of reports.
+pattern ReportsListSortField_Name :: ReportsListSortField
+pattern ReportsListSortField_Name = ReportsListSortField "NAME"
+
+{-# COMPLETE
+  ReportsListSortField_ID,
+  ReportsListSortField_LASTMODIFIEDTIME,
+  ReportsListSortField_Name,
+  ReportsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype ReportsListSortOrder = ReportsListSortOrder {fromReportsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern ReportsListSortOrder_Ascending :: ReportsListSortOrder
+pattern ReportsListSortOrder_Ascending = ReportsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern ReportsListSortOrder_Descending :: ReportsListSortOrder
+pattern ReportsListSortOrder_Descending = ReportsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  ReportsListSortOrder_Ascending,
+  ReportsListSortOrder_Descending,
+  ReportsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype SitesListSortField = SitesListSortField {fromSitesListSortField :: 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
+    )
+
+pattern SitesListSortField_ID :: SitesListSortField
+pattern SitesListSortField_ID = SitesListSortField "ID"
+
+pattern SitesListSortField_Name :: SitesListSortField
+pattern SitesListSortField_Name = SitesListSortField "NAME"
+
+{-# COMPLETE
+  SitesListSortField_ID,
+  SitesListSortField_Name,
+  SitesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype SitesListSortOrder = SitesListSortOrder {fromSitesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern SitesListSortOrder_Ascending :: SitesListSortOrder
+pattern SitesListSortOrder_Ascending = SitesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern SitesListSortOrder_Descending :: SitesListSortOrder
+pattern SitesListSortOrder_Descending = SitesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  SitesListSortOrder_Ascending,
+  SitesListSortOrder_Descending,
+  SitesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype SubaccountsListSortField = SubaccountsListSortField {fromSubaccountsListSortField :: 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
+    )
+
+pattern SubaccountsListSortField_ID :: SubaccountsListSortField
+pattern SubaccountsListSortField_ID = SubaccountsListSortField "ID"
+
+pattern SubaccountsListSortField_Name :: SubaccountsListSortField
+pattern SubaccountsListSortField_Name = SubaccountsListSortField "NAME"
+
+{-# COMPLETE
+  SubaccountsListSortField_ID,
+  SubaccountsListSortField_Name,
+  SubaccountsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype SubaccountsListSortOrder = SubaccountsListSortOrder {fromSubaccountsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern SubaccountsListSortOrder_Ascending :: SubaccountsListSortOrder
+pattern SubaccountsListSortOrder_Ascending = SubaccountsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern SubaccountsListSortOrder_Descending :: SubaccountsListSortOrder
+pattern SubaccountsListSortOrder_Descending = SubaccountsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  SubaccountsListSortOrder_Ascending,
+  SubaccountsListSortOrder_Descending,
+  SubaccountsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype TargetableRemarketingListsListSortField = TargetableRemarketingListsListSortField {fromTargetableRemarketingListsListSortField :: 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
+    )
+
+pattern TargetableRemarketingListsListSortField_ID :: TargetableRemarketingListsListSortField
+pattern TargetableRemarketingListsListSortField_ID = TargetableRemarketingListsListSortField "ID"
+
+pattern TargetableRemarketingListsListSortField_Name :: TargetableRemarketingListsListSortField
+pattern TargetableRemarketingListsListSortField_Name = TargetableRemarketingListsListSortField "NAME"
+
+{-# COMPLETE
+  TargetableRemarketingListsListSortField_ID,
+  TargetableRemarketingListsListSortField_Name,
+  TargetableRemarketingListsListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype TargetableRemarketingListsListSortOrder = TargetableRemarketingListsListSortOrder {fromTargetableRemarketingListsListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern TargetableRemarketingListsListSortOrder_Ascending :: TargetableRemarketingListsListSortOrder
+pattern TargetableRemarketingListsListSortOrder_Ascending = TargetableRemarketingListsListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern TargetableRemarketingListsListSortOrder_Descending :: TargetableRemarketingListsListSortOrder
+pattern TargetableRemarketingListsListSortOrder_Descending = TargetableRemarketingListsListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  TargetableRemarketingListsListSortOrder_Ascending,
+  TargetableRemarketingListsListSortOrder_Descending,
+  TargetableRemarketingListsListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype TargetingTemplatesListSortField = TargetingTemplatesListSortField {fromTargetingTemplatesListSortField :: 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
+    )
+
+pattern TargetingTemplatesListSortField_ID :: TargetingTemplatesListSortField
+pattern TargetingTemplatesListSortField_ID = TargetingTemplatesListSortField "ID"
+
+pattern TargetingTemplatesListSortField_Name :: TargetingTemplatesListSortField
+pattern TargetingTemplatesListSortField_Name = TargetingTemplatesListSortField "NAME"
+
+{-# COMPLETE
+  TargetingTemplatesListSortField_ID,
+  TargetingTemplatesListSortField_Name,
+  TargetingTemplatesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype TargetingTemplatesListSortOrder = TargetingTemplatesListSortOrder {fromTargetingTemplatesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern TargetingTemplatesListSortOrder_Ascending :: TargetingTemplatesListSortOrder
+pattern TargetingTemplatesListSortOrder_Ascending = TargetingTemplatesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern TargetingTemplatesListSortOrder_Descending :: TargetingTemplatesListSortOrder
+pattern TargetingTemplatesListSortOrder_Descending = TargetingTemplatesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  TargetingTemplatesListSortOrder_Ascending,
+  TargetingTemplatesListSortOrder_Descending,
+  TargetingTemplatesListSortOrder
+  #-}
+
+-- | Field by which to sort the list.
+newtype UserRolesListSortField = UserRolesListSortField {fromUserRolesListSortField :: 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
+    )
+
+pattern UserRolesListSortField_ID :: UserRolesListSortField
+pattern UserRolesListSortField_ID = UserRolesListSortField "ID"
+
+pattern UserRolesListSortField_Name :: UserRolesListSortField
+pattern UserRolesListSortField_Name = UserRolesListSortField "NAME"
+
+{-# COMPLETE
+  UserRolesListSortField_ID,
+  UserRolesListSortField_Name,
+  UserRolesListSortField
+  #-}
+
+-- | Order of sorted results.
+newtype UserRolesListSortOrder = UserRolesListSortOrder {fromUserRolesListSortOrder :: 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
+    )
+
+-- | Ascending order.
+pattern UserRolesListSortOrder_Ascending :: UserRolesListSortOrder
+pattern UserRolesListSortOrder_Ascending = UserRolesListSortOrder "ASCENDING"
+
+-- | Descending order.
+pattern UserRolesListSortOrder_Descending :: UserRolesListSortOrder
+pattern UserRolesListSortOrder_Descending = UserRolesListSortOrder "DESCENDING"
+
+{-# COMPLETE
+  UserRolesListSortOrder_Ascending,
+  UserRolesListSortOrder_Descending,
+  UserRolesListSortOrder
+  #-}
diff --git a/gen/Gogol/DFAReporting/InventoryItems/Get.hs b/gen/Gogol/DFAReporting/InventoryItems/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/InventoryItems/Get.hs
@@ -0,0 +1,127 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.InventoryItems.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one inventory item by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.inventoryItems.get@.
+module Gogol.DFAReporting.InventoryItems.Get
+  ( -- * Resource
+    DFAReportingInventoryItemsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingInventoryItemsGet (..),
+    newDFAReportingInventoryItemsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.inventoryItems.get@ method which the
+-- 'DFAReportingInventoryItemsGet' request conforms to.
+type DFAReportingInventoryItemsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.Capture "projectId" Core.Int64
+    Core.:> "inventoryItems"
+    Core.:> Core.Capture "id" 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] InventoryItem
+
+-- | Gets one inventory item by ID.
+--
+-- /See:/ 'newDFAReportingInventoryItemsGet' smart constructor.
+data DFAReportingInventoryItemsGet = DFAReportingInventoryItemsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Inventory item ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Project ID for order documents.
+    projectId :: 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 'DFAReportingInventoryItemsGet' with the minimum fields required to make a request.
+newDFAReportingInventoryItemsGet ::
+  -- |  Inventory item ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Project ID for order documents. See 'projectId'.
+  Core.Int64 ->
+  DFAReportingInventoryItemsGet
+newDFAReportingInventoryItemsGet id profileId projectId =
+  DFAReportingInventoryItemsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      projectId = projectId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingInventoryItemsGet where
+  type Rs DFAReportingInventoryItemsGet = InventoryItem
+  type
+    Scopes DFAReportingInventoryItemsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingInventoryItemsGet {..} =
+    go
+      profileId
+      projectId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingInventoryItemsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/InventoryItems/List.hs b/gen/Gogol/DFAReporting/InventoryItems/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/InventoryItems/List.hs
@@ -0,0 +1,165 @@
+{-# 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.DFAReporting.InventoryItems.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)
+--
+-- Retrieves a list of inventory items, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.inventoryItems.list@.
+module Gogol.DFAReporting.InventoryItems.List
+  ( -- * Resource
+    DFAReportingInventoryItemsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingInventoryItemsList (..),
+    newDFAReportingInventoryItemsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.inventoryItems.list@ method which the
+-- 'DFAReportingInventoryItemsList' request conforms to.
+type DFAReportingInventoryItemsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.Capture "projectId" Core.Int64
+    Core.:> "inventoryItems"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "inPlan" Core.Bool
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParams "orderId" Core.Int64
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParams "siteId" Core.Int64
+    Core.:> Core.QueryParam "sortField" InventoryItemsListSortField
+    Core.:> Core.QueryParam "sortOrder" InventoryItemsListSortOrder
+    Core.:> Core.QueryParam "type" InventoryItemsListType
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] InventoryItemsListResponse
+
+-- | Retrieves a list of inventory items, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingInventoryItemsList' smart constructor.
+data DFAReportingInventoryItemsList = DFAReportingInventoryItemsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only inventory items with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only inventory items that are in plan.
+    inPlan :: (Core.Maybe Core.Bool),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only inventory items that belong to specified orders.
+    orderId :: (Core.Maybe [Core.Int64]),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Project ID for order documents.
+    projectId :: Core.Int64,
+    -- | Select only inventory items that are associated with these sites.
+    siteId :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: InventoryItemsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: InventoryItemsListSortOrder,
+    -- | Select only inventory items with this type.
+    type' :: (Core.Maybe InventoryItemsListType),
+    -- | 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 'DFAReportingInventoryItemsList' with the minimum fields required to make a request.
+newDFAReportingInventoryItemsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Project ID for order documents. See 'projectId'.
+  Core.Int64 ->
+  DFAReportingInventoryItemsList
+newDFAReportingInventoryItemsList profileId projectId =
+  DFAReportingInventoryItemsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      inPlan = Core.Nothing,
+      maxResults = 1000,
+      orderId = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      projectId = projectId,
+      siteId = Core.Nothing,
+      sortField = InventoryItemsListSortField_ID,
+      sortOrder = InventoryItemsListSortOrder_Ascending,
+      type' = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingInventoryItemsList where
+  type Rs DFAReportingInventoryItemsList = InventoryItemsListResponse
+  type
+    Scopes DFAReportingInventoryItemsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingInventoryItemsList {..} =
+    go
+      profileId
+      projectId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      inPlan
+      (Core.Just maxResults)
+      (orderId Core.^. Core._Default)
+      pageToken
+      (siteId Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      type'
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingInventoryItemsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Languages/List.hs b/gen/Gogol/DFAReporting/Languages/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Languages/List.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.DFAReporting.Languages.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)
+--
+-- Retrieves a list of languages.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.languages.list@.
+module Gogol.DFAReporting.Languages.List
+  ( -- * Resource
+    DFAReportingLanguagesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingLanguagesList (..),
+    newDFAReportingLanguagesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.languages.list@ method which the
+-- 'DFAReportingLanguagesList' request conforms to.
+type DFAReportingLanguagesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "languages"
+    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] LanguagesListResponse
+
+-- | Retrieves a list of languages.
+--
+-- /See:/ 'newDFAReportingLanguagesList' smart constructor.
+data DFAReportingLanguagesList = DFAReportingLanguagesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingLanguagesList' with the minimum fields required to make a request.
+newDFAReportingLanguagesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingLanguagesList
+newDFAReportingLanguagesList profileId =
+  DFAReportingLanguagesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingLanguagesList where
+  type Rs DFAReportingLanguagesList = LanguagesListResponse
+  type
+    Scopes DFAReportingLanguagesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingLanguagesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingLanguagesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Metros/List.hs b/gen/Gogol/DFAReporting/Metros/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Metros/List.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.DFAReporting.Metros.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)
+--
+-- Retrieves a list of metros.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.metros.list@.
+module Gogol.DFAReporting.Metros.List
+  ( -- * Resource
+    DFAReportingMetrosListResource,
+
+    -- ** Constructing a Request
+    DFAReportingMetrosList (..),
+    newDFAReportingMetrosList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.metros.list@ method which the
+-- 'DFAReportingMetrosList' request conforms to.
+type DFAReportingMetrosListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "metros"
+    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] MetrosListResponse
+
+-- | Retrieves a list of metros.
+--
+-- /See:/ 'newDFAReportingMetrosList' smart constructor.
+data DFAReportingMetrosList = DFAReportingMetrosList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingMetrosList' with the minimum fields required to make a request.
+newDFAReportingMetrosList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingMetrosList
+newDFAReportingMetrosList profileId =
+  DFAReportingMetrosList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingMetrosList where
+  type Rs DFAReportingMetrosList = MetrosListResponse
+  type Scopes DFAReportingMetrosList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingMetrosList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingMetrosListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/MobileApps/Get.hs b/gen/Gogol/DFAReporting/MobileApps/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/MobileApps/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.MobileApps.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one mobile app by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.mobileApps.get@.
+module Gogol.DFAReporting.MobileApps.Get
+  ( -- * Resource
+    DFAReportingMobileAppsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingMobileAppsGet (..),
+    newDFAReportingMobileAppsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.mobileApps.get@ method which the
+-- 'DFAReportingMobileAppsGet' request conforms to.
+type DFAReportingMobileAppsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "mobileApps"
+    Core.:> Core.Capture "id" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] MobileApp
+
+-- | Gets one mobile app by ID.
+--
+-- /See:/ 'newDFAReportingMobileAppsGet' smart constructor.
+data DFAReportingMobileAppsGet = DFAReportingMobileAppsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Mobile app ID.
+    id :: Core.Text,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingMobileAppsGet' with the minimum fields required to make a request.
+newDFAReportingMobileAppsGet ::
+  -- |  Mobile app ID. See 'id'.
+  Core.Text ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingMobileAppsGet
+newDFAReportingMobileAppsGet id profileId =
+  DFAReportingMobileAppsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingMobileAppsGet where
+  type Rs DFAReportingMobileAppsGet = MobileApp
+  type
+    Scopes DFAReportingMobileAppsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingMobileAppsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingMobileAppsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/MobileApps/List.hs b/gen/Gogol/DFAReporting/MobileApps/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/MobileApps/List.hs
@@ -0,0 +1,137 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.MobileApps.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)
+--
+-- Retrieves list of available mobile apps.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.mobileApps.list@.
+module Gogol.DFAReporting.MobileApps.List
+  ( -- * Resource
+    DFAReportingMobileAppsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingMobileAppsList (..),
+    newDFAReportingMobileAppsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.mobileApps.list@ method which the
+-- 'DFAReportingMobileAppsList' request conforms to.
+type DFAReportingMobileAppsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "mobileApps"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "directories" MobileAppsListDirectories
+    Core.:> Core.QueryParams "ids" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" 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] MobileAppsListResponse
+
+-- | Retrieves list of available mobile apps.
+--
+-- /See:/ 'newDFAReportingMobileAppsList' smart constructor.
+data DFAReportingMobileAppsList = DFAReportingMobileAppsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only apps from these directories.
+    directories :: (Core.Maybe [MobileAppsListDirectories]),
+    -- | Select only apps with these IDs.
+    ids :: (Core.Maybe [Core.Text]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"app/2015\" will return objects with names like \"app Jan 2018\", \"app Jan 2018\", or simply \"app 2018\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"app\" will match objects with name \"my app\", \"app 2018\", or simply \"app\".
+    searchString :: (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 'DFAReportingMobileAppsList' with the minimum fields required to make a request.
+newDFAReportingMobileAppsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingMobileAppsList
+newDFAReportingMobileAppsList profileId =
+  DFAReportingMobileAppsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      directories = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingMobileAppsList where
+  type Rs DFAReportingMobileAppsList = MobileAppsListResponse
+  type
+    Scopes DFAReportingMobileAppsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingMobileAppsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (directories Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingMobileAppsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/MobileCarriers/Get.hs b/gen/Gogol/DFAReporting/MobileCarriers/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/MobileCarriers/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.MobileCarriers.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one mobile carrier by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.mobileCarriers.get@.
+module Gogol.DFAReporting.MobileCarriers.Get
+  ( -- * Resource
+    DFAReportingMobileCarriersGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingMobileCarriersGet (..),
+    newDFAReportingMobileCarriersGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.mobileCarriers.get@ method which the
+-- 'DFAReportingMobileCarriersGet' request conforms to.
+type DFAReportingMobileCarriersGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "mobileCarriers"
+    Core.:> Core.Capture "id" 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] MobileCarrier
+
+-- | Gets one mobile carrier by ID.
+--
+-- /See:/ 'newDFAReportingMobileCarriersGet' smart constructor.
+data DFAReportingMobileCarriersGet = DFAReportingMobileCarriersGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Mobile carrier ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingMobileCarriersGet' with the minimum fields required to make a request.
+newDFAReportingMobileCarriersGet ::
+  -- |  Mobile carrier ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingMobileCarriersGet
+newDFAReportingMobileCarriersGet id profileId =
+  DFAReportingMobileCarriersGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingMobileCarriersGet where
+  type Rs DFAReportingMobileCarriersGet = MobileCarrier
+  type
+    Scopes DFAReportingMobileCarriersGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingMobileCarriersGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingMobileCarriersGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/MobileCarriers/List.hs b/gen/Gogol/DFAReporting/MobileCarriers/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/MobileCarriers/List.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.DFAReporting.MobileCarriers.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)
+--
+-- Retrieves a list of mobile carriers.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.mobileCarriers.list@.
+module Gogol.DFAReporting.MobileCarriers.List
+  ( -- * Resource
+    DFAReportingMobileCarriersListResource,
+
+    -- ** Constructing a Request
+    DFAReportingMobileCarriersList (..),
+    newDFAReportingMobileCarriersList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.mobileCarriers.list@ method which the
+-- 'DFAReportingMobileCarriersList' request conforms to.
+type DFAReportingMobileCarriersListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "mobileCarriers"
+    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] MobileCarriersListResponse
+
+-- | Retrieves a list of mobile carriers.
+--
+-- /See:/ 'newDFAReportingMobileCarriersList' smart constructor.
+data DFAReportingMobileCarriersList = DFAReportingMobileCarriersList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingMobileCarriersList' with the minimum fields required to make a request.
+newDFAReportingMobileCarriersList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingMobileCarriersList
+newDFAReportingMobileCarriersList profileId =
+  DFAReportingMobileCarriersList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingMobileCarriersList where
+  type Rs DFAReportingMobileCarriersList = MobileCarriersListResponse
+  type
+    Scopes DFAReportingMobileCarriersList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingMobileCarriersList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingMobileCarriersListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/OperatingSystemVersions/Get.hs b/gen/Gogol/DFAReporting/OperatingSystemVersions/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/OperatingSystemVersions/Get.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.OperatingSystemVersions.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one operating system version by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.operatingSystemVersions.get@.
+module Gogol.DFAReporting.OperatingSystemVersions.Get
+  ( -- * Resource
+    DFAReportingOperatingSystemVersionsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingOperatingSystemVersionsGet (..),
+    newDFAReportingOperatingSystemVersionsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.operatingSystemVersions.get@ method which the
+-- 'DFAReportingOperatingSystemVersionsGet' request conforms to.
+type DFAReportingOperatingSystemVersionsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "operatingSystemVersions"
+    Core.:> Core.Capture "id" 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] OperatingSystemVersion
+
+-- | Gets one operating system version by ID.
+--
+-- /See:/ 'newDFAReportingOperatingSystemVersionsGet' smart constructor.
+data DFAReportingOperatingSystemVersionsGet = DFAReportingOperatingSystemVersionsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Operating system version ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingOperatingSystemVersionsGet' with the minimum fields required to make a request.
+newDFAReportingOperatingSystemVersionsGet ::
+  -- |  Operating system version ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingOperatingSystemVersionsGet
+newDFAReportingOperatingSystemVersionsGet id profileId =
+  DFAReportingOperatingSystemVersionsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOperatingSystemVersionsGet where
+  type
+    Rs DFAReportingOperatingSystemVersionsGet =
+      OperatingSystemVersion
+  type
+    Scopes DFAReportingOperatingSystemVersionsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOperatingSystemVersionsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingOperatingSystemVersionsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/OperatingSystemVersions/List.hs b/gen/Gogol/DFAReporting/OperatingSystemVersions/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/OperatingSystemVersions/List.hs
@@ -0,0 +1,116 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.OperatingSystemVersions.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)
+--
+-- Retrieves a list of operating system versions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.operatingSystemVersions.list@.
+module Gogol.DFAReporting.OperatingSystemVersions.List
+  ( -- * Resource
+    DFAReportingOperatingSystemVersionsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingOperatingSystemVersionsList (..),
+    newDFAReportingOperatingSystemVersionsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.operatingSystemVersions.list@ method which the
+-- 'DFAReportingOperatingSystemVersionsList' request conforms to.
+type DFAReportingOperatingSystemVersionsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "operatingSystemVersions"
+    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] OperatingSystemVersionsListResponse
+
+-- | Retrieves a list of operating system versions.
+--
+-- /See:/ 'newDFAReportingOperatingSystemVersionsList' smart constructor.
+data DFAReportingOperatingSystemVersionsList = DFAReportingOperatingSystemVersionsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingOperatingSystemVersionsList' with the minimum fields required to make a request.
+newDFAReportingOperatingSystemVersionsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingOperatingSystemVersionsList
+newDFAReportingOperatingSystemVersionsList profileId =
+  DFAReportingOperatingSystemVersionsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOperatingSystemVersionsList where
+  type
+    Rs DFAReportingOperatingSystemVersionsList =
+      OperatingSystemVersionsListResponse
+  type
+    Scopes DFAReportingOperatingSystemVersionsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOperatingSystemVersionsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingOperatingSystemVersionsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/OperatingSystems/Get.hs b/gen/Gogol/DFAReporting/OperatingSystems/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/OperatingSystems/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.OperatingSystems.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one operating system by DART ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.operatingSystems.get@.
+module Gogol.DFAReporting.OperatingSystems.Get
+  ( -- * Resource
+    DFAReportingOperatingSystemsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingOperatingSystemsGet (..),
+    newDFAReportingOperatingSystemsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.operatingSystems.get@ method which the
+-- 'DFAReportingOperatingSystemsGet' request conforms to.
+type DFAReportingOperatingSystemsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "operatingSystems"
+    Core.:> Core.Capture "dartId" 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] OperatingSystem
+
+-- | Gets one operating system by DART ID.
+--
+-- /See:/ 'newDFAReportingOperatingSystemsGet' smart constructor.
+data DFAReportingOperatingSystemsGet = DFAReportingOperatingSystemsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Operating system DART ID.
+    dartId :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingOperatingSystemsGet' with the minimum fields required to make a request.
+newDFAReportingOperatingSystemsGet ::
+  -- |  Operating system DART ID. See 'dartId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingOperatingSystemsGet
+newDFAReportingOperatingSystemsGet dartId profileId =
+  DFAReportingOperatingSystemsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      dartId = dartId,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOperatingSystemsGet where
+  type Rs DFAReportingOperatingSystemsGet = OperatingSystem
+  type
+    Scopes DFAReportingOperatingSystemsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOperatingSystemsGet {..} =
+    go
+      profileId
+      dartId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingOperatingSystemsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/OperatingSystems/List.hs b/gen/Gogol/DFAReporting/OperatingSystems/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/OperatingSystems/List.hs
@@ -0,0 +1,114 @@
+{-# 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.DFAReporting.OperatingSystems.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)
+--
+-- Retrieves a list of operating systems.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.operatingSystems.list@.
+module Gogol.DFAReporting.OperatingSystems.List
+  ( -- * Resource
+    DFAReportingOperatingSystemsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingOperatingSystemsList (..),
+    newDFAReportingOperatingSystemsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.operatingSystems.list@ method which the
+-- 'DFAReportingOperatingSystemsList' request conforms to.
+type DFAReportingOperatingSystemsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "operatingSystems"
+    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] OperatingSystemsListResponse
+
+-- | Retrieves a list of operating systems.
+--
+-- /See:/ 'newDFAReportingOperatingSystemsList' smart constructor.
+data DFAReportingOperatingSystemsList = DFAReportingOperatingSystemsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingOperatingSystemsList' with the minimum fields required to make a request.
+newDFAReportingOperatingSystemsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingOperatingSystemsList
+newDFAReportingOperatingSystemsList profileId =
+  DFAReportingOperatingSystemsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOperatingSystemsList where
+  type
+    Rs DFAReportingOperatingSystemsList =
+      OperatingSystemsListResponse
+  type
+    Scopes DFAReportingOperatingSystemsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOperatingSystemsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingOperatingSystemsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Orders/Get.hs b/gen/Gogol/DFAReporting/Orders/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Orders/Get.hs
@@ -0,0 +1,125 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Orders.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one order by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.orders.get@.
+module Gogol.DFAReporting.Orders.Get
+  ( -- * Resource
+    DFAReportingOrdersGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingOrdersGet (..),
+    newDFAReportingOrdersGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.orders.get@ method which the
+-- 'DFAReportingOrdersGet' request conforms to.
+type DFAReportingOrdersGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.Capture "projectId" Core.Int64
+    Core.:> "orders"
+    Core.:> Core.Capture "id" 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] Order
+
+-- | Gets one order by ID.
+--
+-- /See:/ 'newDFAReportingOrdersGet' smart constructor.
+data DFAReportingOrdersGet = DFAReportingOrdersGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Order ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Project ID for orders.
+    projectId :: 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 'DFAReportingOrdersGet' with the minimum fields required to make a request.
+newDFAReportingOrdersGet ::
+  -- |  Order ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Project ID for orders. See 'projectId'.
+  Core.Int64 ->
+  DFAReportingOrdersGet
+newDFAReportingOrdersGet id profileId projectId =
+  DFAReportingOrdersGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      projectId = projectId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOrdersGet where
+  type Rs DFAReportingOrdersGet = Order
+  type Scopes DFAReportingOrdersGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOrdersGet {..} =
+    go
+      profileId
+      projectId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingOrdersGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Orders/List.hs b/gen/Gogol/DFAReporting/Orders/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Orders/List.hs
@@ -0,0 +1,153 @@
+{-# 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.DFAReporting.Orders.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)
+--
+-- Retrieves a list of orders, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.orders.list@.
+module Gogol.DFAReporting.Orders.List
+  ( -- * Resource
+    DFAReportingOrdersListResource,
+
+    -- ** Constructing a Request
+    DFAReportingOrdersList (..),
+    newDFAReportingOrdersList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.orders.list@ method which the
+-- 'DFAReportingOrdersList' request conforms to.
+type DFAReportingOrdersListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.Capture "projectId" Core.Int64
+    Core.:> "orders"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParams "siteId" Core.Int64
+    Core.:> Core.QueryParam "sortField" OrdersListSortField
+    Core.:> Core.QueryParam "sortOrder" OrdersListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] OrdersListResponse
+
+-- | Retrieves a list of orders, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingOrdersList' smart constructor.
+data DFAReportingOrdersList = DFAReportingOrdersList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only orders with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Project ID for orders.
+    projectId :: Core.Int64,
+    -- | Allows searching for orders by name or ID. Wildcards (/) are allowed. For example, \"order/2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Select only orders that are associated with these site IDs.
+    siteId :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: OrdersListSortField,
+    -- | Order of sorted results.
+    sortOrder :: OrdersListSortOrder,
+    -- | 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 'DFAReportingOrdersList' with the minimum fields required to make a request.
+newDFAReportingOrdersList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Project ID for orders. See 'projectId'.
+  Core.Int64 ->
+  DFAReportingOrdersList
+newDFAReportingOrdersList profileId projectId =
+  DFAReportingOrdersList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      projectId = projectId,
+      searchString = Core.Nothing,
+      siteId = Core.Nothing,
+      sortField = OrdersListSortField_ID,
+      sortOrder = OrdersListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingOrdersList where
+  type Rs DFAReportingOrdersList = OrdersListResponse
+  type Scopes DFAReportingOrdersList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingOrdersList {..} =
+    go
+      profileId
+      projectId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (siteId Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingOrdersListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementGroups/Get.hs b/gen/Gogol/DFAReporting/PlacementGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementGroups/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one placement group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementGroups.get@.
+module Gogol.DFAReporting.PlacementGroups.Get
+  ( -- * Resource
+    DFAReportingPlacementGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementGroupsGet (..),
+    newDFAReportingPlacementGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementGroups.get@ method which the
+-- 'DFAReportingPlacementGroupsGet' request conforms to.
+type DFAReportingPlacementGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementGroups"
+    Core.:> Core.Capture "id" 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] PlacementGroup
+
+-- | Gets one placement group by ID.
+--
+-- /See:/ 'newDFAReportingPlacementGroupsGet' smart constructor.
+data DFAReportingPlacementGroupsGet = DFAReportingPlacementGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Placement group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementGroupsGet' with the minimum fields required to make a request.
+newDFAReportingPlacementGroupsGet ::
+  -- |  Placement group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementGroupsGet
+newDFAReportingPlacementGroupsGet id profileId =
+  DFAReportingPlacementGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementGroupsGet where
+  type Rs DFAReportingPlacementGroupsGet = PlacementGroup
+  type
+    Scopes DFAReportingPlacementGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementGroupsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementGroups/Insert.hs b/gen/Gogol/DFAReporting/PlacementGroups/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementGroups/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementGroups.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new placement group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementGroups.insert@.
+module Gogol.DFAReporting.PlacementGroups.Insert
+  ( -- * Resource
+    DFAReportingPlacementGroupsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementGroupsInsert (..),
+    newDFAReportingPlacementGroupsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementGroups.insert@ method which the
+-- 'DFAReportingPlacementGroupsInsert' request conforms to.
+type DFAReportingPlacementGroupsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementGroups"
+    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] PlacementGroup
+    Core.:> Core.Post '[Core.JSON] PlacementGroup
+
+-- | Inserts a new placement group.
+--
+-- /See:/ 'newDFAReportingPlacementGroupsInsert' smart constructor.
+data DFAReportingPlacementGroupsInsert = DFAReportingPlacementGroupsInsert
+  { -- | 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 :: PlacementGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementGroupsInsert' with the minimum fields required to make a request.
+newDFAReportingPlacementGroupsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementGroupsInsert
+newDFAReportingPlacementGroupsInsert payload profileId =
+  DFAReportingPlacementGroupsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementGroupsInsert where
+  type Rs DFAReportingPlacementGroupsInsert = PlacementGroup
+  type
+    Scopes DFAReportingPlacementGroupsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementGroupsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementGroupsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementGroups/List.hs b/gen/Gogol/DFAReporting/PlacementGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementGroups/List.hs
@@ -0,0 +1,221 @@
+{-# 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.DFAReporting.PlacementGroups.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)
+--
+-- Retrieves a list of placement groups, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementGroups.list@.
+module Gogol.DFAReporting.PlacementGroups.List
+  ( -- * Resource
+    DFAReportingPlacementGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementGroupsList (..),
+    newDFAReportingPlacementGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementGroups.list@ method which the
+-- 'DFAReportingPlacementGroupsList' request conforms to.
+type DFAReportingPlacementGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementGroups"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "activeStatus" PlacementGroupsListActiveStatus
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "campaignIds" Core.Int64
+    Core.:> Core.QueryParams "contentCategoryIds" Core.Int64
+    Core.:> Core.QueryParams "directorySiteIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxEndDate" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "maxStartDate" Core.Text
+    Core.:> Core.QueryParam "minEndDate" Core.Text
+    Core.:> Core.QueryParam "minStartDate" Core.Text
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam
+              "placementGroupType"
+              PlacementGroupsListPlacementGroupType
+    Core.:> Core.QueryParams "placementStrategyIds" Core.Int64
+    Core.:> Core.QueryParams
+              "pricingTypes"
+              PlacementGroupsListPricingTypes
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParams "siteIds" Core.Int64
+    Core.:> Core.QueryParam
+              "sortField"
+              PlacementGroupsListSortField
+    Core.:> Core.QueryParam
+              "sortOrder"
+              PlacementGroupsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam
+              "upload_protocol"
+              Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              PlacementGroupsListResponse
+
+-- | Retrieves a list of placement groups, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingPlacementGroupsList' smart constructor.
+data DFAReportingPlacementGroupsList = DFAReportingPlacementGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only placements with these active statuses.
+    activeStatus :: (Core.Maybe [PlacementGroupsListActiveStatus]),
+    -- | Select only placement groups that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only placement groups that belong to these campaigns.
+    campaignIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placement groups that are associated with these content categories.
+    contentCategoryIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placement groups that are associated with these directory sites.
+    directorySiteIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placement groups with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".
+    maxEndDate :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".
+    maxStartDate :: (Core.Maybe Core.Text),
+    -- | Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".
+    minEndDate :: (Core.Maybe Core.Text),
+    -- | Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".
+    minStartDate :: (Core.Maybe Core.Text),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.
+    placementGroupType :: (Core.Maybe PlacementGroupsListPlacementGroupType),
+    -- | Select only placement groups that are associated with these placement strategies.
+    placementStrategyIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placement groups with these pricing types.
+    pricingTypes :: (Core.Maybe [PlacementGroupsListPricingTypes]),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for placement groups by name or ID. Wildcards (/) are allowed. For example, \"placement/2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Select only placement groups that are associated with these sites.
+    siteIds :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: PlacementGroupsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: PlacementGroupsListSortOrder,
+    -- | 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 'DFAReportingPlacementGroupsList' with the minimum fields required to make a request.
+newDFAReportingPlacementGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementGroupsList
+newDFAReportingPlacementGroupsList profileId =
+  DFAReportingPlacementGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      activeStatus = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      callback = Core.Nothing,
+      campaignIds = Core.Nothing,
+      contentCategoryIds = Core.Nothing,
+      directorySiteIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxEndDate = Core.Nothing,
+      maxResults = 800,
+      maxStartDate = Core.Nothing,
+      minEndDate = Core.Nothing,
+      minStartDate = Core.Nothing,
+      pageToken = Core.Nothing,
+      placementGroupType = Core.Nothing,
+      placementStrategyIds = Core.Nothing,
+      pricingTypes = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      siteIds = Core.Nothing,
+      sortField = PlacementGroupsListSortField_ID,
+      sortOrder = PlacementGroupsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementGroupsList where
+  type
+    Rs DFAReportingPlacementGroupsList =
+      PlacementGroupsListResponse
+  type
+    Scopes DFAReportingPlacementGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (activeStatus Core.^. Core._Default)
+      (advertiserIds Core.^. Core._Default)
+      callback
+      (campaignIds Core.^. Core._Default)
+      (contentCategoryIds Core.^. Core._Default)
+      (directorySiteIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      maxEndDate
+      (Core.Just maxResults)
+      maxStartDate
+      minEndDate
+      minStartDate
+      pageToken
+      placementGroupType
+      (placementStrategyIds Core.^. Core._Default)
+      (pricingTypes Core.^. Core._Default)
+      searchString
+      (siteIds Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementGroupsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementGroups/Patch.hs b/gen/Gogol/DFAReporting/PlacementGroups/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementGroups/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementGroups.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement group. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementGroups.patch@.
+module Gogol.DFAReporting.PlacementGroups.Patch
+  ( -- * Resource
+    DFAReportingPlacementGroupsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementGroupsPatch (..),
+    newDFAReportingPlacementGroupsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementGroups.patch@ method which the
+-- 'DFAReportingPlacementGroupsPatch' request conforms to.
+type DFAReportingPlacementGroupsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementGroups"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] PlacementGroup
+    Core.:> Core.Patch '[Core.JSON] PlacementGroup
+
+-- | Updates an existing placement group. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingPlacementGroupsPatch' smart constructor.
+data DFAReportingPlacementGroupsPatch = DFAReportingPlacementGroupsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Placement ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: PlacementGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementGroupsPatch' with the minimum fields required to make a request.
+newDFAReportingPlacementGroupsPatch ::
+  -- |  Required. Placement ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementGroupsPatch
+newDFAReportingPlacementGroupsPatch id payload profileId =
+  DFAReportingPlacementGroupsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementGroupsPatch where
+  type Rs DFAReportingPlacementGroupsPatch = PlacementGroup
+  type
+    Scopes DFAReportingPlacementGroupsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementGroupsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementGroupsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementGroups/Update.hs b/gen/Gogol/DFAReporting/PlacementGroups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementGroups/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementGroups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement group.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementGroups.update@.
+module Gogol.DFAReporting.PlacementGroups.Update
+  ( -- * Resource
+    DFAReportingPlacementGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementGroupsUpdate (..),
+    newDFAReportingPlacementGroupsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementGroups.update@ method which the
+-- 'DFAReportingPlacementGroupsUpdate' request conforms to.
+type DFAReportingPlacementGroupsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementGroups"
+    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] PlacementGroup
+    Core.:> Core.Put '[Core.JSON] PlacementGroup
+
+-- | Updates an existing placement group.
+--
+-- /See:/ 'newDFAReportingPlacementGroupsUpdate' smart constructor.
+data DFAReportingPlacementGroupsUpdate = DFAReportingPlacementGroupsUpdate
+  { -- | 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 :: PlacementGroup,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementGroupsUpdate' with the minimum fields required to make a request.
+newDFAReportingPlacementGroupsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementGroup ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementGroupsUpdate
+newDFAReportingPlacementGroupsUpdate payload profileId =
+  DFAReportingPlacementGroupsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementGroupsUpdate where
+  type Rs DFAReportingPlacementGroupsUpdate = PlacementGroup
+  type
+    Scopes DFAReportingPlacementGroupsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementGroupsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementGroupsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/Delete.hs b/gen/Gogol/DFAReporting/PlacementStrategies/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/Delete.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementStrategies.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 placement strategy.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.delete@.
+module Gogol.DFAReporting.PlacementStrategies.Delete
+  ( -- * Resource
+    DFAReportingPlacementStrategiesDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesDelete (..),
+    newDFAReportingPlacementStrategiesDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.delete@ method which the
+-- 'DFAReportingPlacementStrategiesDelete' request conforms to.
+type DFAReportingPlacementStrategiesDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    Core.:> Core.Capture "id" 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 placement strategy.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesDelete' smart constructor.
+data DFAReportingPlacementStrategiesDelete = DFAReportingPlacementStrategiesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Placement strategy ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementStrategiesDelete' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesDelete ::
+  -- |  Placement strategy ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesDelete
+newDFAReportingPlacementStrategiesDelete id profileId =
+  DFAReportingPlacementStrategiesDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesDelete where
+  type Rs DFAReportingPlacementStrategiesDelete = ()
+  type
+    Scopes DFAReportingPlacementStrategiesDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesDeleteResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/Get.hs b/gen/Gogol/DFAReporting/PlacementStrategies/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementStrategies.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one placement strategy by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.get@.
+module Gogol.DFAReporting.PlacementStrategies.Get
+  ( -- * Resource
+    DFAReportingPlacementStrategiesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesGet (..),
+    newDFAReportingPlacementStrategiesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.get@ method which the
+-- 'DFAReportingPlacementStrategiesGet' request conforms to.
+type DFAReportingPlacementStrategiesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    Core.:> Core.Capture "id" 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] PlacementStrategy
+
+-- | Gets one placement strategy by ID.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesGet' smart constructor.
+data DFAReportingPlacementStrategiesGet = DFAReportingPlacementStrategiesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Placement strategy ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementStrategiesGet' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesGet ::
+  -- |  Placement strategy ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesGet
+newDFAReportingPlacementStrategiesGet id profileId =
+  DFAReportingPlacementStrategiesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesGet where
+  type Rs DFAReportingPlacementStrategiesGet = PlacementStrategy
+  type
+    Scopes DFAReportingPlacementStrategiesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/Insert.hs b/gen/Gogol/DFAReporting/PlacementStrategies/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementStrategies.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new placement strategy.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.insert@.
+module Gogol.DFAReporting.PlacementStrategies.Insert
+  ( -- * Resource
+    DFAReportingPlacementStrategiesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesInsert (..),
+    newDFAReportingPlacementStrategiesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.insert@ method which the
+-- 'DFAReportingPlacementStrategiesInsert' request conforms to.
+type DFAReportingPlacementStrategiesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    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] PlacementStrategy
+    Core.:> Core.Post '[Core.JSON] PlacementStrategy
+
+-- | Inserts a new placement strategy.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesInsert' smart constructor.
+data DFAReportingPlacementStrategiesInsert = DFAReportingPlacementStrategiesInsert
+  { -- | 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 :: PlacementStrategy,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementStrategiesInsert' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementStrategy ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesInsert
+newDFAReportingPlacementStrategiesInsert payload profileId =
+  DFAReportingPlacementStrategiesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesInsert where
+  type Rs DFAReportingPlacementStrategiesInsert = PlacementStrategy
+  type
+    Scopes DFAReportingPlacementStrategiesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/List.hs b/gen/Gogol/DFAReporting/PlacementStrategies/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/List.hs
@@ -0,0 +1,146 @@
+{-# 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.DFAReporting.PlacementStrategies.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)
+--
+-- Retrieves a list of placement strategies, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.list@.
+module Gogol.DFAReporting.PlacementStrategies.List
+  ( -- * Resource
+    DFAReportingPlacementStrategiesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesList (..),
+    newDFAReportingPlacementStrategiesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.list@ method which the
+-- 'DFAReportingPlacementStrategiesList' request conforms to.
+type DFAReportingPlacementStrategiesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" PlacementStrategiesListSortField
+    Core.:> Core.QueryParam "sortOrder" PlacementStrategiesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] PlacementStrategiesListResponse
+
+-- | Retrieves a list of placement strategies, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesList' smart constructor.
+data DFAReportingPlacementStrategiesList = DFAReportingPlacementStrategiesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only placement strategies with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"placementstrategy/2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: PlacementStrategiesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: PlacementStrategiesListSortOrder,
+    -- | 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 'DFAReportingPlacementStrategiesList' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesList
+newDFAReportingPlacementStrategiesList profileId =
+  DFAReportingPlacementStrategiesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = PlacementStrategiesListSortField_ID,
+      sortOrder = PlacementStrategiesListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesList where
+  type
+    Rs DFAReportingPlacementStrategiesList =
+      PlacementStrategiesListResponse
+  type
+    Scopes DFAReportingPlacementStrategiesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/Patch.hs b/gen/Gogol/DFAReporting/PlacementStrategies/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementStrategies.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement strategy. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.patch@.
+module Gogol.DFAReporting.PlacementStrategies.Patch
+  ( -- * Resource
+    DFAReportingPlacementStrategiesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesPatch (..),
+    newDFAReportingPlacementStrategiesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.patch@ method which the
+-- 'DFAReportingPlacementStrategiesPatch' request conforms to.
+type DFAReportingPlacementStrategiesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] PlacementStrategy
+    Core.:> Core.Patch '[Core.JSON] PlacementStrategy
+
+-- | Updates an existing placement strategy. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesPatch' smart constructor.
+data DFAReportingPlacementStrategiesPatch = DFAReportingPlacementStrategiesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. PlacementStrategy ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: PlacementStrategy,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementStrategiesPatch' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesPatch ::
+  -- |  Required. PlacementStrategy ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementStrategy ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesPatch
+newDFAReportingPlacementStrategiesPatch id payload profileId =
+  DFAReportingPlacementStrategiesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesPatch where
+  type Rs DFAReportingPlacementStrategiesPatch = PlacementStrategy
+  type
+    Scopes DFAReportingPlacementStrategiesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlacementStrategies/Update.hs b/gen/Gogol/DFAReporting/PlacementStrategies/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlacementStrategies/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlacementStrategies.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement strategy.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placementStrategies.update@.
+module Gogol.DFAReporting.PlacementStrategies.Update
+  ( -- * Resource
+    DFAReportingPlacementStrategiesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementStrategiesUpdate (..),
+    newDFAReportingPlacementStrategiesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placementStrategies.update@ method which the
+-- 'DFAReportingPlacementStrategiesUpdate' request conforms to.
+type DFAReportingPlacementStrategiesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placementStrategies"
+    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] PlacementStrategy
+    Core.:> Core.Put '[Core.JSON] PlacementStrategy
+
+-- | Updates an existing placement strategy.
+--
+-- /See:/ 'newDFAReportingPlacementStrategiesUpdate' smart constructor.
+data DFAReportingPlacementStrategiesUpdate = DFAReportingPlacementStrategiesUpdate
+  { -- | 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 :: PlacementStrategy,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementStrategiesUpdate' with the minimum fields required to make a request.
+newDFAReportingPlacementStrategiesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  PlacementStrategy ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementStrategiesUpdate
+newDFAReportingPlacementStrategiesUpdate payload profileId =
+  DFAReportingPlacementStrategiesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementStrategiesUpdate where
+  type Rs DFAReportingPlacementStrategiesUpdate = PlacementStrategy
+  type
+    Scopes DFAReportingPlacementStrategiesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementStrategiesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementStrategiesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/Generatetags.hs b/gen/Gogol/DFAReporting/Placements/Generatetags.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/Generatetags.hs
@@ -0,0 +1,132 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Placements.Generatetags
+-- 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)
+--
+-- Generates tags for a placement.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.generatetags@.
+module Gogol.DFAReporting.Placements.Generatetags
+  ( -- * Resource
+    DFAReportingPlacementsGeneratetagsResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsGeneratetags (..),
+    newDFAReportingPlacementsGeneratetags,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.generatetags@ method which the
+-- 'DFAReportingPlacementsGeneratetags' request conforms to.
+type DFAReportingPlacementsGeneratetagsResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    Core.:> "generatetags"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "campaignId" Core.Int64
+    Core.:> Core.QueryParams "placementIds" Core.Int64
+    Core.:> Core.QueryParams "tagFormats" PlacementsGeneratetagsTagFormats
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Post '[Core.JSON] PlacementsGenerateTagsResponse
+
+-- | Generates tags for a placement.
+--
+-- /See:/ 'newDFAReportingPlacementsGeneratetags' smart constructor.
+data DFAReportingPlacementsGeneratetags = DFAReportingPlacementsGeneratetags
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Generate placements belonging to this campaign. This is a required field.
+    campaignId :: (Core.Maybe Core.Int64),
+    -- | Generate tags for these placements.
+    placementIds :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Tag formats to generate for these placements. /Note:/ PLACEMENT/TAG/STANDARD can only be generated for 1x1 placements.
+    tagFormats :: (Core.Maybe [PlacementsGeneratetagsTagFormats]),
+    -- | 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 'DFAReportingPlacementsGeneratetags' with the minimum fields required to make a request.
+newDFAReportingPlacementsGeneratetags ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsGeneratetags
+newDFAReportingPlacementsGeneratetags profileId =
+  DFAReportingPlacementsGeneratetags
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      campaignId = Core.Nothing,
+      placementIds = Core.Nothing,
+      profileId = profileId,
+      tagFormats = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsGeneratetags where
+  type
+    Rs DFAReportingPlacementsGeneratetags =
+      PlacementsGenerateTagsResponse
+  type
+    Scopes DFAReportingPlacementsGeneratetags =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsGeneratetags {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      campaignId
+      (placementIds Core.^. Core._Default)
+      (tagFormats Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingPlacementsGeneratetagsResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/Get.hs b/gen/Gogol/DFAReporting/Placements/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Placements.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one placement by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.get@.
+module Gogol.DFAReporting.Placements.Get
+  ( -- * Resource
+    DFAReportingPlacementsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsGet (..),
+    newDFAReportingPlacementsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.get@ method which the
+-- 'DFAReportingPlacementsGet' request conforms to.
+type DFAReportingPlacementsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    Core.:> Core.Capture "id" 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] Placement
+
+-- | Gets one placement by ID.
+--
+-- /See:/ 'newDFAReportingPlacementsGet' smart constructor.
+data DFAReportingPlacementsGet = DFAReportingPlacementsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Placement ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementsGet' with the minimum fields required to make a request.
+newDFAReportingPlacementsGet ::
+  -- |  Placement ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsGet
+newDFAReportingPlacementsGet id profileId =
+  DFAReportingPlacementsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsGet where
+  type Rs DFAReportingPlacementsGet = Placement
+  type
+    Scopes DFAReportingPlacementsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/Insert.hs b/gen/Gogol/DFAReporting/Placements/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Placements.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new placement.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.insert@.
+module Gogol.DFAReporting.Placements.Insert
+  ( -- * Resource
+    DFAReportingPlacementsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsInsert (..),
+    newDFAReportingPlacementsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.insert@ method which the
+-- 'DFAReportingPlacementsInsert' request conforms to.
+type DFAReportingPlacementsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    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] Placement
+    Core.:> Core.Post '[Core.JSON] Placement
+
+-- | Inserts a new placement.
+--
+-- /See:/ 'newDFAReportingPlacementsInsert' smart constructor.
+data DFAReportingPlacementsInsert = DFAReportingPlacementsInsert
+  { -- | 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 :: Placement,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementsInsert' with the minimum fields required to make a request.
+newDFAReportingPlacementsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Placement ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsInsert
+newDFAReportingPlacementsInsert payload profileId =
+  DFAReportingPlacementsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsInsert where
+  type Rs DFAReportingPlacementsInsert = Placement
+  type
+    Scopes DFAReportingPlacementsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/List.hs b/gen/Gogol/DFAReporting/Placements/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/List.hs
@@ -0,0 +1,240 @@
+{-# 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.DFAReporting.Placements.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)
+--
+-- Retrieves a list of placements, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.list@.
+module Gogol.DFAReporting.Placements.List
+  ( -- * Resource
+    DFAReportingPlacementsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsList (..),
+    newDFAReportingPlacementsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.list@ method which the
+-- 'DFAReportingPlacementsList' request conforms to.
+type DFAReportingPlacementsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "activeStatus" PlacementsListActiveStatus
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "campaignIds" Core.Int64
+    Core.:> Core.QueryParams "compatibilities" PlacementsListCompatibilities
+    Core.:> Core.QueryParams "contentCategoryIds" Core.Int64
+    Core.:> Core.QueryParams "directorySiteIds" Core.Int64
+    Core.:> Core.QueryParams "groupIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxEndDate" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "maxStartDate" Core.Text
+    Core.:> Core.QueryParam "minEndDate" Core.Text
+    Core.:> Core.QueryParam "minStartDate" Core.Text
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam
+              "paymentSource"
+              PlacementsListPaymentSource
+    Core.:> Core.QueryParams
+              "placementStrategyIds"
+              Core.Int64
+    Core.:> Core.QueryParams
+              "pricingTypes"
+              PlacementsListPricingTypes
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParams "siteIds" Core.Int64
+    Core.:> Core.QueryParams "sizeIds" Core.Int64
+    Core.:> Core.QueryParam
+              "sortField"
+              PlacementsListSortField
+    Core.:> Core.QueryParam
+              "sortOrder"
+              PlacementsListSortOrder
+    Core.:> Core.QueryParam
+              "uploadType"
+              Core.Text
+    Core.:> Core.QueryParam
+              "upload_protocol"
+              Core.Text
+    Core.:> Core.QueryParam
+              "alt"
+              Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              PlacementsListResponse
+
+-- | Retrieves a list of placements, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingPlacementsList' smart constructor.
+data DFAReportingPlacementsList = DFAReportingPlacementsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only placements with these active statuses.
+    activeStatus :: (Core.Maybe [PlacementsListActiveStatus]),
+    -- | Select only placements that belong to these advertisers.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only placements that belong to these campaigns.
+    campaignIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY/INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP/INTERSTITIAL are for rendering in mobile apps. IN/STREAM/VIDEO refers to rendering in in-stream video ads developed with the VAST standard.
+    compatibilities :: (Core.Maybe [PlacementsListCompatibilities]),
+    -- | Select only placements that are associated with these content categories.
+    contentCategoryIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements that are associated with these directory sites.
+    directorySiteIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements that belong to these placement groups.
+    groupIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".
+    maxEndDate :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".
+    maxStartDate :: (Core.Maybe Core.Text),
+    -- | Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".
+    minEndDate :: (Core.Maybe Core.Text),
+    -- | Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".
+    minStartDate :: (Core.Maybe Core.Text),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Select only placements with this payment source.
+    paymentSource :: (Core.Maybe PlacementsListPaymentSource),
+    -- | Select only placements that are associated with these placement strategies.
+    placementStrategyIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements with these pricing types.
+    pricingTypes :: (Core.Maybe [PlacementsListPricingTypes]),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for placements by name or ID. Wildcards (/) are allowed. For example, \"placement/2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\" .
+    searchString :: (Core.Maybe Core.Text),
+    -- | Select only placements that are associated with these sites.
+    siteIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only placements that are associated with these sizes.
+    sizeIds :: (Core.Maybe [Core.Int64]),
+    -- | Field by which to sort the list.
+    sortField :: PlacementsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: PlacementsListSortOrder,
+    -- | 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 'DFAReportingPlacementsList' with the minimum fields required to make a request.
+newDFAReportingPlacementsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsList
+newDFAReportingPlacementsList profileId =
+  DFAReportingPlacementsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      activeStatus = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      callback = Core.Nothing,
+      campaignIds = Core.Nothing,
+      compatibilities = Core.Nothing,
+      contentCategoryIds = Core.Nothing,
+      directorySiteIds = Core.Nothing,
+      groupIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxEndDate = Core.Nothing,
+      maxResults = 1000,
+      maxStartDate = Core.Nothing,
+      minEndDate = Core.Nothing,
+      minStartDate = Core.Nothing,
+      pageToken = Core.Nothing,
+      paymentSource = Core.Nothing,
+      placementStrategyIds = Core.Nothing,
+      pricingTypes = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      siteIds = Core.Nothing,
+      sizeIds = Core.Nothing,
+      sortField = PlacementsListSortField_ID,
+      sortOrder = PlacementsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsList where
+  type Rs DFAReportingPlacementsList = PlacementsListResponse
+  type
+    Scopes DFAReportingPlacementsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (activeStatus Core.^. Core._Default)
+      (advertiserIds Core.^. Core._Default)
+      callback
+      (campaignIds Core.^. Core._Default)
+      (compatibilities Core.^. Core._Default)
+      (contentCategoryIds Core.^. Core._Default)
+      (directorySiteIds Core.^. Core._Default)
+      (groupIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      maxEndDate
+      (Core.Just maxResults)
+      maxStartDate
+      minEndDate
+      minStartDate
+      pageToken
+      paymentSource
+      (placementStrategyIds Core.^. Core._Default)
+      (pricingTypes Core.^. Core._Default)
+      searchString
+      (siteIds Core.^. Core._Default)
+      (sizeIds Core.^. Core._Default)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/Patch.hs b/gen/Gogol/DFAReporting/Placements/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Placements.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.patch@.
+module Gogol.DFAReporting.Placements.Patch
+  ( -- * Resource
+    DFAReportingPlacementsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsPatch (..),
+    newDFAReportingPlacementsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.patch@ method which the
+-- 'DFAReportingPlacementsPatch' request conforms to.
+type DFAReportingPlacementsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Placement
+    Core.:> Core.Patch '[Core.JSON] Placement
+
+-- | Updates an existing placement. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingPlacementsPatch' smart constructor.
+data DFAReportingPlacementsPatch = DFAReportingPlacementsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Placement ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Placement,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementsPatch' with the minimum fields required to make a request.
+newDFAReportingPlacementsPatch ::
+  -- |  Required. Placement ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Placement ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsPatch
+newDFAReportingPlacementsPatch id payload profileId =
+  DFAReportingPlacementsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsPatch where
+  type Rs DFAReportingPlacementsPatch = Placement
+  type
+    Scopes DFAReportingPlacementsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Placements/Update.hs b/gen/Gogol/DFAReporting/Placements/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Placements/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Placements.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing placement.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.placements.update@.
+module Gogol.DFAReporting.Placements.Update
+  ( -- * Resource
+    DFAReportingPlacementsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlacementsUpdate (..),
+    newDFAReportingPlacementsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.placements.update@ method which the
+-- 'DFAReportingPlacementsUpdate' request conforms to.
+type DFAReportingPlacementsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "placements"
+    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] Placement
+    Core.:> Core.Put '[Core.JSON] Placement
+
+-- | Updates an existing placement.
+--
+-- /See:/ 'newDFAReportingPlacementsUpdate' smart constructor.
+data DFAReportingPlacementsUpdate = DFAReportingPlacementsUpdate
+  { -- | 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 :: Placement,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlacementsUpdate' with the minimum fields required to make a request.
+newDFAReportingPlacementsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Placement ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlacementsUpdate
+newDFAReportingPlacementsUpdate payload profileId =
+  DFAReportingPlacementsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlacementsUpdate where
+  type Rs DFAReportingPlacementsUpdate = Placement
+  type
+    Scopes DFAReportingPlacementsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlacementsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlacementsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlatformTypes/Get.hs b/gen/Gogol/DFAReporting/PlatformTypes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlatformTypes/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PlatformTypes.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one platform type by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.platformTypes.get@.
+module Gogol.DFAReporting.PlatformTypes.Get
+  ( -- * Resource
+    DFAReportingPlatformTypesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlatformTypesGet (..),
+    newDFAReportingPlatformTypesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.platformTypes.get@ method which the
+-- 'DFAReportingPlatformTypesGet' request conforms to.
+type DFAReportingPlatformTypesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "platformTypes"
+    Core.:> Core.Capture "id" 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] PlatformType
+
+-- | Gets one platform type by ID.
+--
+-- /See:/ 'newDFAReportingPlatformTypesGet' smart constructor.
+data DFAReportingPlatformTypesGet = DFAReportingPlatformTypesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Platform type ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlatformTypesGet' with the minimum fields required to make a request.
+newDFAReportingPlatformTypesGet ::
+  -- |  Platform type ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlatformTypesGet
+newDFAReportingPlatformTypesGet id profileId =
+  DFAReportingPlatformTypesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlatformTypesGet where
+  type Rs DFAReportingPlatformTypesGet = PlatformType
+  type
+    Scopes DFAReportingPlatformTypesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlatformTypesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlatformTypesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PlatformTypes/List.hs b/gen/Gogol/DFAReporting/PlatformTypes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PlatformTypes/List.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.DFAReporting.PlatformTypes.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)
+--
+-- Retrieves a list of platform types.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.platformTypes.list@.
+module Gogol.DFAReporting.PlatformTypes.List
+  ( -- * Resource
+    DFAReportingPlatformTypesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingPlatformTypesList (..),
+    newDFAReportingPlatformTypesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.platformTypes.list@ method which the
+-- 'DFAReportingPlatformTypesList' request conforms to.
+type DFAReportingPlatformTypesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "platformTypes"
+    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] PlatformTypesListResponse
+
+-- | Retrieves a list of platform types.
+--
+-- /See:/ 'newDFAReportingPlatformTypesList' smart constructor.
+data DFAReportingPlatformTypesList = DFAReportingPlatformTypesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPlatformTypesList' with the minimum fields required to make a request.
+newDFAReportingPlatformTypesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPlatformTypesList
+newDFAReportingPlatformTypesList profileId =
+  DFAReportingPlatformTypesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPlatformTypesList where
+  type Rs DFAReportingPlatformTypesList = PlatformTypesListResponse
+  type
+    Scopes DFAReportingPlatformTypesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPlatformTypesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPlatformTypesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PostalCodes/Get.hs b/gen/Gogol/DFAReporting/PostalCodes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PostalCodes/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.PostalCodes.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one postal code by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.postalCodes.get@.
+module Gogol.DFAReporting.PostalCodes.Get
+  ( -- * Resource
+    DFAReportingPostalCodesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingPostalCodesGet (..),
+    newDFAReportingPostalCodesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.postalCodes.get@ method which the
+-- 'DFAReportingPostalCodesGet' request conforms to.
+type DFAReportingPostalCodesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "postalCodes"
+    Core.:> Core.Capture "code" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] PostalCode
+
+-- | Gets one postal code by ID.
+--
+-- /See:/ 'newDFAReportingPostalCodesGet' smart constructor.
+data DFAReportingPostalCodesGet = DFAReportingPostalCodesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Postal code ID.
+    code :: Core.Text,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPostalCodesGet' with the minimum fields required to make a request.
+newDFAReportingPostalCodesGet ::
+  -- |  Postal code ID. See 'code'.
+  Core.Text ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPostalCodesGet
+newDFAReportingPostalCodesGet code profileId =
+  DFAReportingPostalCodesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      code = code,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPostalCodesGet where
+  type Rs DFAReportingPostalCodesGet = PostalCode
+  type
+    Scopes DFAReportingPostalCodesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPostalCodesGet {..} =
+    go
+      profileId
+      code
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPostalCodesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/PostalCodes/List.hs b/gen/Gogol/DFAReporting/PostalCodes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/PostalCodes/List.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.DFAReporting.PostalCodes.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)
+--
+-- Retrieves a list of postal codes.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.postalCodes.list@.
+module Gogol.DFAReporting.PostalCodes.List
+  ( -- * Resource
+    DFAReportingPostalCodesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingPostalCodesList (..),
+    newDFAReportingPostalCodesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.postalCodes.list@ method which the
+-- 'DFAReportingPostalCodesList' request conforms to.
+type DFAReportingPostalCodesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "postalCodes"
+    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] PostalCodesListResponse
+
+-- | Retrieves a list of postal codes.
+--
+-- /See:/ 'newDFAReportingPostalCodesList' smart constructor.
+data DFAReportingPostalCodesList = DFAReportingPostalCodesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingPostalCodesList' with the minimum fields required to make a request.
+newDFAReportingPostalCodesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingPostalCodesList
+newDFAReportingPostalCodesList profileId =
+  DFAReportingPostalCodesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingPostalCodesList where
+  type Rs DFAReportingPostalCodesList = PostalCodesListResponse
+  type
+    Scopes DFAReportingPostalCodesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingPostalCodesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingPostalCodesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Projects/Get.hs b/gen/Gogol/DFAReporting/Projects/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Projects/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Projects.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one project by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.projects.get@.
+module Gogol.DFAReporting.Projects.Get
+  ( -- * Resource
+    DFAReportingProjectsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingProjectsGet (..),
+    newDFAReportingProjectsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.projects.get@ method which the
+-- 'DFAReportingProjectsGet' request conforms to.
+type DFAReportingProjectsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.Capture "id" 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] Project
+
+-- | Gets one project by ID.
+--
+-- /See:/ 'newDFAReportingProjectsGet' smart constructor.
+data DFAReportingProjectsGet = DFAReportingProjectsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Project ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingProjectsGet' with the minimum fields required to make a request.
+newDFAReportingProjectsGet ::
+  -- |  Project ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingProjectsGet
+newDFAReportingProjectsGet id profileId =
+  DFAReportingProjectsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingProjectsGet where
+  type Rs DFAReportingProjectsGet = Project
+  type Scopes DFAReportingProjectsGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingProjectsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingProjectsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Projects/List.hs b/gen/Gogol/DFAReporting/Projects/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Projects/List.hs
@@ -0,0 +1,147 @@
+{-# 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.DFAReporting.Projects.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)
+--
+-- Retrieves a list of projects, possibly filtered. This method supports paging .
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.projects.list@.
+module Gogol.DFAReporting.Projects.List
+  ( -- * Resource
+    DFAReportingProjectsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingProjectsList (..),
+    newDFAReportingProjectsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.projects.list@ method which the
+-- 'DFAReportingProjectsList' request conforms to.
+type DFAReportingProjectsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "projects"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParams "advertiserIds" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" ProjectsListSortField
+    Core.:> Core.QueryParam "sortOrder" ProjectsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ProjectsListResponse
+
+-- | Retrieves a list of projects, possibly filtered. This method supports paging .
+--
+-- /See:/ 'newDFAReportingProjectsList' smart constructor.
+data DFAReportingProjectsList = DFAReportingProjectsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only projects with these advertiser IDs.
+    advertiserIds :: (Core.Maybe [Core.Int64]),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only projects with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for projects by name or ID. Wildcards (/) are allowed. For example, \"project/2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: ProjectsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: ProjectsListSortOrder,
+    -- | 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 'DFAReportingProjectsList' with the minimum fields required to make a request.
+newDFAReportingProjectsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingProjectsList
+newDFAReportingProjectsList profileId =
+  DFAReportingProjectsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserIds = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = ProjectsListSortField_ID,
+      sortOrder = ProjectsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingProjectsList where
+  type Rs DFAReportingProjectsList = ProjectsListResponse
+  type
+    Scopes DFAReportingProjectsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingProjectsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      (advertiserIds Core.^. Core._Default)
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingProjectsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Regions/List.hs b/gen/Gogol/DFAReporting/Regions/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Regions/List.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.DFAReporting.Regions.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)
+--
+-- Retrieves a list of regions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.regions.list@.
+module Gogol.DFAReporting.Regions.List
+  ( -- * Resource
+    DFAReportingRegionsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingRegionsList (..),
+    newDFAReportingRegionsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.regions.list@ method which the
+-- 'DFAReportingRegionsList' request conforms to.
+type DFAReportingRegionsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "regions"
+    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] RegionsListResponse
+
+-- | Retrieves a list of regions.
+--
+-- /See:/ 'newDFAReportingRegionsList' smart constructor.
+data DFAReportingRegionsList = DFAReportingRegionsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRegionsList' with the minimum fields required to make a request.
+newDFAReportingRegionsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRegionsList
+newDFAReportingRegionsList profileId =
+  DFAReportingRegionsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRegionsList where
+  type Rs DFAReportingRegionsList = RegionsListResponse
+  type Scopes DFAReportingRegionsList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRegionsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingRegionsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingListShares/Get.hs b/gen/Gogol/DFAReporting/RemarketingListShares/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingListShares/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingListShares.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one remarketing list share by remarketing list ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingListShares.get@.
+module Gogol.DFAReporting.RemarketingListShares.Get
+  ( -- * Resource
+    DFAReportingRemarketingListSharesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListSharesGet (..),
+    newDFAReportingRemarketingListSharesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingListShares.get@ method which the
+-- 'DFAReportingRemarketingListSharesGet' request conforms to.
+type DFAReportingRemarketingListSharesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingListShares"
+    Core.:> Core.Capture "remarketingListId" 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] RemarketingListShare
+
+-- | Gets one remarketing list share by remarketing list ID.
+--
+-- /See:/ 'newDFAReportingRemarketingListSharesGet' smart constructor.
+data DFAReportingRemarketingListSharesGet = DFAReportingRemarketingListSharesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Remarketing list ID.
+    remarketingListId :: 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 'DFAReportingRemarketingListSharesGet' with the minimum fields required to make a request.
+newDFAReportingRemarketingListSharesGet ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  -- |  Remarketing list ID. See 'remarketingListId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListSharesGet
+newDFAReportingRemarketingListSharesGet profileId remarketingListId =
+  DFAReportingRemarketingListSharesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      remarketingListId = remarketingListId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListSharesGet where
+  type Rs DFAReportingRemarketingListSharesGet = RemarketingListShare
+  type
+    Scopes DFAReportingRemarketingListSharesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListSharesGet {..} =
+    go
+      profileId
+      remarketingListId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListSharesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingListShares/Patch.hs b/gen/Gogol/DFAReporting/RemarketingListShares/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingListShares/Patch.hs
@@ -0,0 +1,130 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingListShares.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing remarketing list share. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingListShares.patch@.
+module Gogol.DFAReporting.RemarketingListShares.Patch
+  ( -- * Resource
+    DFAReportingRemarketingListSharesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListSharesPatch (..),
+    newDFAReportingRemarketingListSharesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingListShares.patch@ method which the
+-- 'DFAReportingRemarketingListSharesPatch' request conforms to.
+type DFAReportingRemarketingListSharesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingListShares"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] RemarketingListShare
+    Core.:> Core.Patch '[Core.JSON] RemarketingListShare
+
+-- | Updates an existing remarketing list share. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingRemarketingListSharesPatch' smart constructor.
+data DFAReportingRemarketingListSharesPatch = DFAReportingRemarketingListSharesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. RemarketingList ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: RemarketingListShare,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListSharesPatch' with the minimum fields required to make a request.
+newDFAReportingRemarketingListSharesPatch ::
+  -- |  Required. RemarketingList ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  RemarketingListShare ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListSharesPatch
+newDFAReportingRemarketingListSharesPatch id payload profileId =
+  DFAReportingRemarketingListSharesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListSharesPatch where
+  type
+    Rs DFAReportingRemarketingListSharesPatch =
+      RemarketingListShare
+  type
+    Scopes DFAReportingRemarketingListSharesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListSharesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListSharesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingListShares/Update.hs b/gen/Gogol/DFAReporting/RemarketingListShares/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingListShares/Update.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingListShares.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing remarketing list share.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingListShares.update@.
+module Gogol.DFAReporting.RemarketingListShares.Update
+  ( -- * Resource
+    DFAReportingRemarketingListSharesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListSharesUpdate (..),
+    newDFAReportingRemarketingListSharesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingListShares.update@ method which the
+-- 'DFAReportingRemarketingListSharesUpdate' request conforms to.
+type DFAReportingRemarketingListSharesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingListShares"
+    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] RemarketingListShare
+    Core.:> Core.Put '[Core.JSON] RemarketingListShare
+
+-- | Updates an existing remarketing list share.
+--
+-- /See:/ 'newDFAReportingRemarketingListSharesUpdate' smart constructor.
+data DFAReportingRemarketingListSharesUpdate = DFAReportingRemarketingListSharesUpdate
+  { -- | 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 :: RemarketingListShare,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListSharesUpdate' with the minimum fields required to make a request.
+newDFAReportingRemarketingListSharesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  RemarketingListShare ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListSharesUpdate
+newDFAReportingRemarketingListSharesUpdate payload profileId =
+  DFAReportingRemarketingListSharesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListSharesUpdate where
+  type
+    Rs DFAReportingRemarketingListSharesUpdate =
+      RemarketingListShare
+  type
+    Scopes DFAReportingRemarketingListSharesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListSharesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListSharesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingLists/Get.hs b/gen/Gogol/DFAReporting/RemarketingLists/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingLists/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingLists.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one remarketing list by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingLists.get@.
+module Gogol.DFAReporting.RemarketingLists.Get
+  ( -- * Resource
+    DFAReportingRemarketingListsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListsGet (..),
+    newDFAReportingRemarketingListsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingLists.get@ method which the
+-- 'DFAReportingRemarketingListsGet' request conforms to.
+type DFAReportingRemarketingListsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingLists"
+    Core.:> Core.Capture "id" 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] RemarketingList
+
+-- | Gets one remarketing list by ID.
+--
+-- /See:/ 'newDFAReportingRemarketingListsGet' smart constructor.
+data DFAReportingRemarketingListsGet = DFAReportingRemarketingListsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Remarketing list ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListsGet' with the minimum fields required to make a request.
+newDFAReportingRemarketingListsGet ::
+  -- |  Remarketing list ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListsGet
+newDFAReportingRemarketingListsGet id profileId =
+  DFAReportingRemarketingListsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListsGet where
+  type Rs DFAReportingRemarketingListsGet = RemarketingList
+  type
+    Scopes DFAReportingRemarketingListsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingRemarketingListsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingLists/Insert.hs b/gen/Gogol/DFAReporting/RemarketingLists/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingLists/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingLists.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new remarketing list.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingLists.insert@.
+module Gogol.DFAReporting.RemarketingLists.Insert
+  ( -- * Resource
+    DFAReportingRemarketingListsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListsInsert (..),
+    newDFAReportingRemarketingListsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingLists.insert@ method which the
+-- 'DFAReportingRemarketingListsInsert' request conforms to.
+type DFAReportingRemarketingListsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingLists"
+    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] RemarketingList
+    Core.:> Core.Post '[Core.JSON] RemarketingList
+
+-- | Inserts a new remarketing list.
+--
+-- /See:/ 'newDFAReportingRemarketingListsInsert' smart constructor.
+data DFAReportingRemarketingListsInsert = DFAReportingRemarketingListsInsert
+  { -- | 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 :: RemarketingList,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListsInsert' with the minimum fields required to make a request.
+newDFAReportingRemarketingListsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  RemarketingList ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListsInsert
+newDFAReportingRemarketingListsInsert payload profileId =
+  DFAReportingRemarketingListsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListsInsert where
+  type Rs DFAReportingRemarketingListsInsert = RemarketingList
+  type
+    Scopes DFAReportingRemarketingListsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListsInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingLists/List.hs b/gen/Gogol/DFAReporting/RemarketingLists/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingLists/List.hs
@@ -0,0 +1,156 @@
+{-# 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.DFAReporting.RemarketingLists.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)
+--
+-- Retrieves a list of remarketing lists, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingLists.list@.
+module Gogol.DFAReporting.RemarketingLists.List
+  ( -- * Resource
+    DFAReportingRemarketingListsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListsList (..),
+    newDFAReportingRemarketingListsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingLists.list@ method which the
+-- 'DFAReportingRemarketingListsList' request conforms to.
+type DFAReportingRemarketingListsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingLists"
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "floodlightActivityId" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "name" Core.Text
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "sortField" RemarketingListsListSortField
+    Core.:> Core.QueryParam "sortOrder" RemarketingListsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] RemarketingListsListResponse
+
+-- | Retrieves a list of remarketing lists, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingRemarketingListsList' smart constructor.
+data DFAReportingRemarketingListsList = DFAReportingRemarketingListsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active or only inactive remarketing lists.
+    active :: (Core.Maybe Core.Bool),
+    -- | Required. Select only remarketing lists owned by this advertiser.
+    advertiserId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only remarketing lists that have this floodlight activity ID.
+    floodlightActivityId :: (Core.Maybe Core.Int64),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"remarketing list/2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".
+    name :: (Core.Maybe Core.Text),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Field by which to sort the list.
+    sortField :: RemarketingListsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: RemarketingListsListSortOrder,
+    -- | 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 'DFAReportingRemarketingListsList' with the minimum fields required to make a request.
+newDFAReportingRemarketingListsList ::
+  -- |  Required. Select only remarketing lists owned by this advertiser. See 'advertiserId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListsList
+newDFAReportingRemarketingListsList advertiserId profileId =
+  DFAReportingRemarketingListsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      active = Core.Nothing,
+      advertiserId = advertiserId,
+      callback = Core.Nothing,
+      floodlightActivityId = Core.Nothing,
+      maxResults = 1000,
+      name = Core.Nothing,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      sortField = RemarketingListsListSortField_ID,
+      sortOrder = RemarketingListsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListsList where
+  type
+    Rs DFAReportingRemarketingListsList =
+      RemarketingListsListResponse
+  type
+    Scopes DFAReportingRemarketingListsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListsList {..} =
+    go
+      profileId
+      (Core.Just advertiserId)
+      xgafv
+      accessToken
+      active
+      callback
+      floodlightActivityId
+      (Core.Just maxResults)
+      name
+      pageToken
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingRemarketingListsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingLists/Patch.hs b/gen/Gogol/DFAReporting/RemarketingLists/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingLists/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingLists.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing remarketing list. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingLists.patch@.
+module Gogol.DFAReporting.RemarketingLists.Patch
+  ( -- * Resource
+    DFAReportingRemarketingListsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListsPatch (..),
+    newDFAReportingRemarketingListsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingLists.patch@ method which the
+-- 'DFAReportingRemarketingListsPatch' request conforms to.
+type DFAReportingRemarketingListsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingLists"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] RemarketingList
+    Core.:> Core.Patch '[Core.JSON] RemarketingList
+
+-- | Updates an existing remarketing list. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingRemarketingListsPatch' smart constructor.
+data DFAReportingRemarketingListsPatch = DFAReportingRemarketingListsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. RemarketingList ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: RemarketingList,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListsPatch' with the minimum fields required to make a request.
+newDFAReportingRemarketingListsPatch ::
+  -- |  Required. RemarketingList ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  RemarketingList ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListsPatch
+newDFAReportingRemarketingListsPatch id payload profileId =
+  DFAReportingRemarketingListsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListsPatch where
+  type Rs DFAReportingRemarketingListsPatch = RemarketingList
+  type
+    Scopes DFAReportingRemarketingListsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListsPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/RemarketingLists/Update.hs b/gen/Gogol/DFAReporting/RemarketingLists/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/RemarketingLists/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.RemarketingLists.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing remarketing list.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.remarketingLists.update@.
+module Gogol.DFAReporting.RemarketingLists.Update
+  ( -- * Resource
+    DFAReportingRemarketingListsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingRemarketingListsUpdate (..),
+    newDFAReportingRemarketingListsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.remarketingLists.update@ method which the
+-- 'DFAReportingRemarketingListsUpdate' request conforms to.
+type DFAReportingRemarketingListsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "remarketingLists"
+    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] RemarketingList
+    Core.:> Core.Put '[Core.JSON] RemarketingList
+
+-- | Updates an existing remarketing list.
+--
+-- /See:/ 'newDFAReportingRemarketingListsUpdate' smart constructor.
+data DFAReportingRemarketingListsUpdate = DFAReportingRemarketingListsUpdate
+  { -- | 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 :: RemarketingList,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingRemarketingListsUpdate' with the minimum fields required to make a request.
+newDFAReportingRemarketingListsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  RemarketingList ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingRemarketingListsUpdate
+newDFAReportingRemarketingListsUpdate payload profileId =
+  DFAReportingRemarketingListsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingRemarketingListsUpdate where
+  type Rs DFAReportingRemarketingListsUpdate = RemarketingList
+  type
+    Scopes DFAReportingRemarketingListsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingRemarketingListsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingRemarketingListsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/CompatibleFields/Query.hs b/gen/Gogol/DFAReporting/Reports/CompatibleFields/Query.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/CompatibleFields/Query.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.CompatibleFields.Query
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.compatibleFields.query@.
+module Gogol.DFAReporting.Reports.CompatibleFields.Query
+  ( -- * Resource
+    DFAReportingReportsCompatibleFieldsQueryResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsCompatibleFieldsQuery (..),
+    newDFAReportingReportsCompatibleFieldsQuery,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.compatibleFields.query@ method which the
+-- 'DFAReportingReportsCompatibleFieldsQuery' request conforms to.
+type DFAReportingReportsCompatibleFieldsQueryResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "reports"
+    Core.:> "compatiblefields"
+    Core.:> "query"
+    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] Report
+    Core.:> Core.Post '[Core.JSON] CompatibleFields
+
+-- | Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.
+--
+-- /See:/ 'newDFAReportingReportsCompatibleFieldsQuery' smart constructor.
+data DFAReportingReportsCompatibleFieldsQuery = DFAReportingReportsCompatibleFieldsQuery
+  { -- | 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 :: Report,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: 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 'DFAReportingReportsCompatibleFieldsQuery' with the minimum fields required to make a request.
+newDFAReportingReportsCompatibleFieldsQuery ::
+  -- |  Multipart request metadata. See 'payload'.
+  Report ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingReportsCompatibleFieldsQuery
+newDFAReportingReportsCompatibleFieldsQuery payload profileId =
+  DFAReportingReportsCompatibleFieldsQuery
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingReportsCompatibleFieldsQuery
+  where
+  type Rs DFAReportingReportsCompatibleFieldsQuery = CompatibleFields
+  type
+    Scopes DFAReportingReportsCompatibleFieldsQuery =
+      '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsCompatibleFieldsQuery {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingReportsCompatibleFieldsQueryResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Delete.hs b/gen/Gogol/DFAReporting/Reports/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Delete.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.Delete
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Deletes a report by its ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.delete@.
+module Gogol.DFAReporting.Reports.Delete
+  ( -- * Resource
+    DFAReportingReportsDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsDelete (..),
+    newDFAReportingReportsDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.delete@ method which the
+-- 'DFAReportingReportsDelete' request conforms to.
+type DFAReportingReportsDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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.Delete '[Core.JSON] ()
+
+-- | Deletes a report by its ID.
+--
+-- /See:/ 'newDFAReportingReportsDelete' smart constructor.
+data DFAReportingReportsDelete = DFAReportingReportsDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingReportsDelete' with the minimum fields required to make a request.
+newDFAReportingReportsDelete ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsDelete
+newDFAReportingReportsDelete profileId reportId =
+  DFAReportingReportsDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsDelete where
+  type Rs DFAReportingReportsDelete = ()
+  type Scopes DFAReportingReportsDelete = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsDelete {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsDeleteResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Files/Get.hs b/gen/Gogol/DFAReporting/Reports/Files/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Files/Get.hs
@@ -0,0 +1,170 @@
+{-# 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.DFAReporting.Reports.Files.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 file by its report ID and file ID. This method supports media download.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.files.get@.
+module Gogol.DFAReporting.Reports.Files.Get
+  ( -- * Resource
+    DFAReportingReportsFilesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsFilesGet (..),
+    newDFAReportingReportsFilesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.files.get@ method which the
+-- 'DFAReportingReportsFilesGet' request conforms to.
+type DFAReportingReportsFilesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.Capture "fileId" 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] File
+    Core.:<|> "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.Capture "fileId" 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.AltMedia
+    Core.:> Core.Get '[Core.OctetStream] Core.Stream
+
+-- | Retrieves a report file by its report ID and file ID. This method supports media download.
+--
+-- /See:/ 'newDFAReportingReportsFilesGet' smart constructor.
+data DFAReportingReportsFilesGet = DFAReportingReportsFilesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The ID of the report file.
+    fileId :: Core.Int64,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingReportsFilesGet' with the minimum fields required to make a request.
+newDFAReportingReportsFilesGet ::
+  -- |  The ID of the report file. See 'fileId'.
+  Core.Int64 ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsFilesGet
+newDFAReportingReportsFilesGet fileId profileId reportId =
+  DFAReportingReportsFilesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      fileId = fileId,
+      profileId = profileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsFilesGet where
+  type Rs DFAReportingReportsFilesGet = File
+  type
+    Scopes DFAReportingReportsFilesGet =
+      '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsFilesGet {..} =
+    go
+      profileId
+      reportId
+      fileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go Core.:<|> _ =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsFilesGetResource)
+          Core.mempty
+
+instance
+  Core.GoogleRequest
+    (Core.MediaDownload DFAReportingReportsFilesGet)
+  where
+  type
+    Rs (Core.MediaDownload DFAReportingReportsFilesGet) =
+      Core.Stream
+  type
+    Scopes (Core.MediaDownload DFAReportingReportsFilesGet) =
+      Core.Scopes DFAReportingReportsFilesGet
+  requestClient (Core.MediaDownload DFAReportingReportsFilesGet {..}) =
+    go
+      profileId
+      reportId
+      fileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltMedia)
+      dFAReportingService
+    where
+      _ Core.:<|> go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsFilesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Files/List.hs b/gen/Gogol/DFAReporting/Reports/Files/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Files/List.hs
@@ -0,0 +1,140 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.Files.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 files for a report.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.files.list@.
+module Gogol.DFAReporting.Reports.Files.List
+  ( -- * Resource
+    DFAReportingReportsFilesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsFilesList (..),
+    newDFAReportingReportsFilesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.files.list@ method which the
+-- 'DFAReportingReportsFilesList' request conforms to.
+type DFAReportingReportsFilesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "files"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "sortField" ReportsFilesListSortField
+    Core.:> Core.QueryParam "sortOrder" ReportsFilesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] FileList
+
+-- | Lists files for a report.
+--
+-- /See:/ 'newDFAReportingReportsFilesList' smart constructor.
+data DFAReportingReportsFilesList = DFAReportingReportsFilesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | The value of the nextToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the parent report.
+    reportId :: Core.Int64,
+    -- | The field by which to sort the list.
+    sortField :: ReportsFilesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: ReportsFilesListSortOrder,
+    -- | 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 'DFAReportingReportsFilesList' with the minimum fields required to make a request.
+newDFAReportingReportsFilesList ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the parent report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsFilesList
+newDFAReportingReportsFilesList profileId reportId =
+  DFAReportingReportsFilesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      maxResults = 10,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      reportId = reportId,
+      sortField = ReportsFilesListSortField_LASTMODIFIEDTIME,
+      sortOrder = ReportsFilesListSortOrder_Descending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsFilesList where
+  type Rs DFAReportingReportsFilesList = FileList
+  type
+    Scopes DFAReportingReportsFilesList =
+      '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsFilesList {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      (Core.Just maxResults)
+      pageToken
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsFilesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Get.hs b/gen/Gogol/DFAReporting/Reports/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.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 by its ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.get@.
+module Gogol.DFAReporting.Reports.Get
+  ( -- * Resource
+    DFAReportingReportsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsGet (..),
+    newDFAReportingReportsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.get@ method which the
+-- 'DFAReportingReportsGet' request conforms to.
+type DFAReportingReportsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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 by its ID.
+--
+-- /See:/ 'newDFAReportingReportsGet' smart constructor.
+data DFAReportingReportsGet = DFAReportingReportsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingReportsGet' with the minimum fields required to make a request.
+newDFAReportingReportsGet ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsGet
+newDFAReportingReportsGet profileId reportId =
+  DFAReportingReportsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsGet where
+  type Rs DFAReportingReportsGet = Report
+  type Scopes DFAReportingReportsGet = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsGet {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Insert.hs b/gen/Gogol/DFAReporting/Reports/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Insert.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates a report.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.insert@.
+module Gogol.DFAReporting.Reports.Insert
+  ( -- * Resource
+    DFAReportingReportsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsInsert (..),
+    newDFAReportingReportsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.insert@ method which the
+-- 'DFAReportingReportsInsert' request conforms to.
+type DFAReportingReportsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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 "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] Report
+    Core.:> Core.Post '[Core.JSON] Report
+
+-- | Creates a report.
+--
+-- /See:/ 'newDFAReportingReportsInsert' smart constructor.
+data DFAReportingReportsInsert = DFAReportingReportsInsert
+  { -- | 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 :: Report,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: 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 'DFAReportingReportsInsert' with the minimum fields required to make a request.
+newDFAReportingReportsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Report ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingReportsInsert
+newDFAReportingReportsInsert payload profileId =
+  DFAReportingReportsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsInsert where
+  type Rs DFAReportingReportsInsert = Report
+  type Scopes DFAReportingReportsInsert = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/List.hs b/gen/Gogol/DFAReporting/Reports/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/List.hs
@@ -0,0 +1,135 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.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)
+--
+-- Retrieves list of reports.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.list@.
+module Gogol.DFAReporting.Reports.List
+  ( -- * Resource
+    DFAReportingReportsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsList (..),
+    newDFAReportingReportsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.list@ method which the
+-- 'DFAReportingReportsList' request conforms to.
+type DFAReportingReportsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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 "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "scope" ReportsListScope
+    Core.:> Core.QueryParam "sortField" ReportsListSortField
+    Core.:> Core.QueryParam "sortOrder" ReportsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ReportList
+
+-- | Retrieves list of reports.
+--
+-- /See:/ 'newDFAReportingReportsList' smart constructor.
+data DFAReportingReportsList = DFAReportingReportsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | The value of the nextToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The scope that defines which results are returned.
+    scope :: ReportsListScope,
+    -- | The field by which to sort the list.
+    sortField :: ReportsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: ReportsListSortOrder,
+    -- | 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 'DFAReportingReportsList' with the minimum fields required to make a request.
+newDFAReportingReportsList ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingReportsList
+newDFAReportingReportsList profileId =
+  DFAReportingReportsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      maxResults = 10,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      scope = ReportsListScope_Mine,
+      sortField = ReportsListSortField_LASTMODIFIEDTIME,
+      sortOrder = ReportsListSortOrder_Descending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsList where
+  type Rs DFAReportingReportsList = ReportList
+  type Scopes DFAReportingReportsList = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (Core.Just maxResults)
+      pageToken
+      (Core.Just scope)
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Patch.hs b/gen/Gogol/DFAReporting/Reports/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Patch.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing report. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.patch@.
+module Gogol.DFAReporting.Reports.Patch
+  ( -- * Resource
+    DFAReportingReportsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsPatch (..),
+    newDFAReportingReportsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.patch@ method which the
+-- 'DFAReportingReportsPatch' request conforms to.
+type DFAReportingReportsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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.ReqBody '[Core.JSON] Report
+    Core.:> Core.Patch '[Core.JSON] Report
+
+-- | Updates an existing report. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingReportsPatch' smart constructor.
+data DFAReportingReportsPatch = DFAReportingReportsPatch
+  { -- | 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 :: Report,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingReportsPatch' with the minimum fields required to make a request.
+newDFAReportingReportsPatch ::
+  -- |  Multipart request metadata. See 'payload'.
+  Report ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsPatch
+newDFAReportingReportsPatch payload profileId reportId =
+  DFAReportingReportsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsPatch where
+  type Rs DFAReportingReportsPatch = Report
+  type Scopes DFAReportingReportsPatch = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsPatch {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Run.hs b/gen/Gogol/DFAReporting/Reports/Run.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Run.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.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 a report.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.run@.
+module Gogol.DFAReporting.Reports.Run
+  ( -- * Resource
+    DFAReportingReportsRunResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsRun (..),
+    newDFAReportingReportsRun,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.run@ method which the
+-- 'DFAReportingReportsRun' request conforms to.
+type DFAReportingReportsRunResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "reports"
+    Core.:> Core.Capture "reportId" Core.Int64
+    Core.:> "run"
+    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.Post '[Core.JSON] File
+
+-- | Runs a report.
+--
+-- /See:/ 'newDFAReportingReportsRun' smart constructor.
+data DFAReportingReportsRun = DFAReportingReportsRun
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    reportId :: Core.Int64,
+    -- | If set and true, tries to run the report synchronously.
+    synchronous :: 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 'DFAReportingReportsRun' with the minimum fields required to make a request.
+newDFAReportingReportsRun ::
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsRun
+newDFAReportingReportsRun profileId reportId =
+  DFAReportingReportsRun
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      reportId = reportId,
+      synchronous = Core.False,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsRun where
+  type Rs DFAReportingReportsRun = File
+  type Scopes DFAReportingReportsRun = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsRun {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      (Core.Just synchronous)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsRunResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Reports/Update.hs b/gen/Gogol/DFAReporting/Reports/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Reports/Update.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Reports.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates a report.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.reports.update@.
+module Gogol.DFAReporting.Reports.Update
+  ( -- * Resource
+    DFAReportingReportsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingReportsUpdate (..),
+    newDFAReportingReportsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.reports.update@ method which the
+-- 'DFAReportingReportsUpdate' request conforms to.
+type DFAReportingReportsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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.ReqBody '[Core.JSON] Report
+    Core.:> Core.Put '[Core.JSON] Report
+
+-- | Updates a report.
+--
+-- /See:/ 'newDFAReportingReportsUpdate' smart constructor.
+data DFAReportingReportsUpdate = DFAReportingReportsUpdate
+  { -- | 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 :: Report,
+    -- | The Campaign Manager 360 user profile ID.
+    profileId :: Core.Int64,
+    -- | The ID of the report.
+    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 'DFAReportingReportsUpdate' with the minimum fields required to make a request.
+newDFAReportingReportsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Report ->
+  -- |  The Campaign Manager 360 user profile ID. See 'profileId'.
+  Core.Int64 ->
+  -- |  The ID of the report. See 'reportId'.
+  Core.Int64 ->
+  DFAReportingReportsUpdate
+newDFAReportingReportsUpdate payload profileId reportId =
+  DFAReportingReportsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      reportId = reportId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingReportsUpdate where
+  type Rs DFAReportingReportsUpdate = Report
+  type Scopes DFAReportingReportsUpdate = '[Dfareporting'FullControl]
+  requestClient DFAReportingReportsUpdate {..} =
+    go
+      profileId
+      reportId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingReportsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sites/Get.hs b/gen/Gogol/DFAReporting/Sites/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sites/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sites.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one site by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sites.get@.
+module Gogol.DFAReporting.Sites.Get
+  ( -- * Resource
+    DFAReportingSitesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingSitesGet (..),
+    newDFAReportingSitesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sites.get@ method which the
+-- 'DFAReportingSitesGet' request conforms to.
+type DFAReportingSitesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sites"
+    Core.:> Core.Capture "id" 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] Site
+
+-- | Gets one site by ID.
+--
+-- /See:/ 'newDFAReportingSitesGet' smart constructor.
+data DFAReportingSitesGet = DFAReportingSitesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Site ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSitesGet' with the minimum fields required to make a request.
+newDFAReportingSitesGet ::
+  -- |  Site ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSitesGet
+newDFAReportingSitesGet id profileId =
+  DFAReportingSitesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSitesGet where
+  type Rs DFAReportingSitesGet = Site
+  type Scopes DFAReportingSitesGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSitesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSitesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sites/Insert.hs b/gen/Gogol/DFAReporting/Sites/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sites/Insert.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sites.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new site.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sites.insert@.
+module Gogol.DFAReporting.Sites.Insert
+  ( -- * Resource
+    DFAReportingSitesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingSitesInsert (..),
+    newDFAReportingSitesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sites.insert@ method which the
+-- 'DFAReportingSitesInsert' request conforms to.
+type DFAReportingSitesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sites"
+    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] Site
+    Core.:> Core.Post '[Core.JSON] Site
+
+-- | Inserts a new site.
+--
+-- /See:/ 'newDFAReportingSitesInsert' smart constructor.
+data DFAReportingSitesInsert = DFAReportingSitesInsert
+  { -- | 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 :: Site,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSitesInsert' with the minimum fields required to make a request.
+newDFAReportingSitesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Site ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSitesInsert
+newDFAReportingSitesInsert payload profileId =
+  DFAReportingSitesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSitesInsert where
+  type Rs DFAReportingSitesInsert = Site
+  type Scopes DFAReportingSitesInsert = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSitesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSitesInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sites/List.hs b/gen/Gogol/DFAReporting/Sites/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sites/List.hs
@@ -0,0 +1,185 @@
+{-# 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.DFAReporting.Sites.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)
+--
+-- Retrieves a list of sites, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sites.list@.
+module Gogol.DFAReporting.Sites.List
+  ( -- * Resource
+    DFAReportingSitesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingSitesList (..),
+    newDFAReportingSitesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sites.list@ method which the
+-- 'DFAReportingSitesList' request conforms to.
+type DFAReportingSitesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sites"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "acceptsInStreamVideoPlacements" Core.Bool
+    Core.:> Core.QueryParam "acceptsInterstitialPlacements" Core.Bool
+    Core.:> Core.QueryParam "acceptsPublisherPaidPlacements" Core.Bool
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "adWordsSite" Core.Bool
+    Core.:> Core.QueryParam "approved" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "campaignIds" Core.Int64
+    Core.:> Core.QueryParams "directorySiteIds" Core.Int64
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" SitesListSortField
+    Core.:> Core.QueryParam "sortOrder" SitesListSortOrder
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "unmappedSite" Core.Bool
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] SitesListResponse
+
+-- | Retrieves a list of sites, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingSitesList' smart constructor.
+data DFAReportingSitesList = DFAReportingSitesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | This search filter is no longer supported and will have no effect on the results returned.
+    acceptsInStreamVideoPlacements :: (Core.Maybe Core.Bool),
+    -- | This search filter is no longer supported and will have no effect on the results returned.
+    acceptsInterstitialPlacements :: (Core.Maybe Core.Bool),
+    -- | Select only sites that accept publisher paid placements.
+    acceptsPublisherPaidPlacements :: (Core.Maybe Core.Bool),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only AdWords sites.
+    adWordsSite :: (Core.Maybe Core.Bool),
+    -- | Select only approved sites.
+    approved :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only sites with these campaign IDs.
+    campaignIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only sites with these directory site IDs.
+    directorySiteIds :: (Core.Maybe [Core.Int64]),
+    -- | Select only sites with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name, ID or keyName. Wildcards (/) are allowed. For example, \"site/2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: SitesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: SitesListSortOrder,
+    -- | Select only sites with this subaccount ID.
+    subaccountId :: (Core.Maybe Core.Int64),
+    -- | Select only sites that have not been mapped to a directory site.
+    unmappedSite :: (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 'DFAReportingSitesList' with the minimum fields required to make a request.
+newDFAReportingSitesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSitesList
+newDFAReportingSitesList profileId =
+  DFAReportingSitesList
+    { xgafv = Core.Nothing,
+      acceptsInStreamVideoPlacements = Core.Nothing,
+      acceptsInterstitialPlacements = Core.Nothing,
+      acceptsPublisherPaidPlacements = Core.Nothing,
+      accessToken = Core.Nothing,
+      adWordsSite = Core.Nothing,
+      approved = Core.Nothing,
+      callback = Core.Nothing,
+      campaignIds = Core.Nothing,
+      directorySiteIds = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = SitesListSortField_ID,
+      sortOrder = SitesListSortOrder_Ascending,
+      subaccountId = Core.Nothing,
+      unmappedSite = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSitesList where
+  type Rs DFAReportingSitesList = SitesListResponse
+  type Scopes DFAReportingSitesList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSitesList {..} =
+    go
+      profileId
+      xgafv
+      acceptsInStreamVideoPlacements
+      acceptsInterstitialPlacements
+      acceptsPublisherPaidPlacements
+      accessToken
+      adWordsSite
+      approved
+      callback
+      (campaignIds Core.^. Core._Default)
+      (directorySiteIds Core.^. Core._Default)
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      subaccountId
+      unmappedSite
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSitesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sites/Patch.hs b/gen/Gogol/DFAReporting/Sites/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sites/Patch.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sites.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing site. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sites.patch@.
+module Gogol.DFAReporting.Sites.Patch
+  ( -- * Resource
+    DFAReportingSitesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingSitesPatch (..),
+    newDFAReportingSitesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sites.patch@ method which the
+-- 'DFAReportingSitesPatch' request conforms to.
+type DFAReportingSitesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sites"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Site
+    Core.:> Core.Patch '[Core.JSON] Site
+
+-- | Updates an existing site. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingSitesPatch' smart constructor.
+data DFAReportingSitesPatch = DFAReportingSitesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Site ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Site,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSitesPatch' with the minimum fields required to make a request.
+newDFAReportingSitesPatch ::
+  -- |  Required. Site ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Site ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSitesPatch
+newDFAReportingSitesPatch id payload profileId =
+  DFAReportingSitesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSitesPatch where
+  type Rs DFAReportingSitesPatch = Site
+  type Scopes DFAReportingSitesPatch = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSitesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSitesPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sites/Update.hs b/gen/Gogol/DFAReporting/Sites/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sites/Update.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sites.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing site.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sites.update@.
+module Gogol.DFAReporting.Sites.Update
+  ( -- * Resource
+    DFAReportingSitesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingSitesUpdate (..),
+    newDFAReportingSitesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sites.update@ method which the
+-- 'DFAReportingSitesUpdate' request conforms to.
+type DFAReportingSitesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sites"
+    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] Site
+    Core.:> Core.Put '[Core.JSON] Site
+
+-- | Updates an existing site.
+--
+-- /See:/ 'newDFAReportingSitesUpdate' smart constructor.
+data DFAReportingSitesUpdate = DFAReportingSitesUpdate
+  { -- | 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 :: Site,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSitesUpdate' with the minimum fields required to make a request.
+newDFAReportingSitesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Site ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSitesUpdate
+newDFAReportingSitesUpdate payload profileId =
+  DFAReportingSitesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSitesUpdate where
+  type Rs DFAReportingSitesUpdate = Site
+  type Scopes DFAReportingSitesUpdate = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSitesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSitesUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sizes/Get.hs b/gen/Gogol/DFAReporting/Sizes/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sizes/Get.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sizes.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one size by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sizes.get@.
+module Gogol.DFAReporting.Sizes.Get
+  ( -- * Resource
+    DFAReportingSizesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingSizesGet (..),
+    newDFAReportingSizesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sizes.get@ method which the
+-- 'DFAReportingSizesGet' request conforms to.
+type DFAReportingSizesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sizes"
+    Core.:> Core.Capture "id" 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] Size
+
+-- | Gets one size by ID.
+--
+-- /See:/ 'newDFAReportingSizesGet' smart constructor.
+data DFAReportingSizesGet = DFAReportingSizesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Size ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSizesGet' with the minimum fields required to make a request.
+newDFAReportingSizesGet ::
+  -- |  Size ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSizesGet
+newDFAReportingSizesGet id profileId =
+  DFAReportingSizesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSizesGet where
+  type Rs DFAReportingSizesGet = Size
+  type Scopes DFAReportingSizesGet = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSizesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSizesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sizes/Insert.hs b/gen/Gogol/DFAReporting/Sizes/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sizes/Insert.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Sizes.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new size.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sizes.insert@.
+module Gogol.DFAReporting.Sizes.Insert
+  ( -- * Resource
+    DFAReportingSizesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingSizesInsert (..),
+    newDFAReportingSizesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sizes.insert@ method which the
+-- 'DFAReportingSizesInsert' request conforms to.
+type DFAReportingSizesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sizes"
+    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] Size
+    Core.:> Core.Post '[Core.JSON] Size
+
+-- | Inserts a new size.
+--
+-- /See:/ 'newDFAReportingSizesInsert' smart constructor.
+data DFAReportingSizesInsert = DFAReportingSizesInsert
+  { -- | 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 :: Size,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSizesInsert' with the minimum fields required to make a request.
+newDFAReportingSizesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Size ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSizesInsert
+newDFAReportingSizesInsert payload profileId =
+  DFAReportingSizesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSizesInsert where
+  type Rs DFAReportingSizesInsert = Size
+  type Scopes DFAReportingSizesInsert = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSizesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSizesInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Sizes/List.hs b/gen/Gogol/DFAReporting/Sizes/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Sizes/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.DFAReporting.Sizes.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)
+--
+-- Retrieves a list of sizes, possibly filtered. Retrieved sizes are globally unique and may include values not currently in use by your account. Due to this, the list of sizes returned by this method may differ from the list seen in the Trafficking UI.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.sizes.list@.
+module Gogol.DFAReporting.Sizes.List
+  ( -- * Resource
+    DFAReportingSizesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingSizesList (..),
+    newDFAReportingSizesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.sizes.list@ method which the
+-- 'DFAReportingSizesList' request conforms to.
+type DFAReportingSizesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "sizes"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "height" Core.Int32
+    Core.:> Core.QueryParam "iabStandard" Core.Bool
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "width" Core.Int32
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] SizesListResponse
+
+-- | Retrieves a list of sizes, possibly filtered. Retrieved sizes are globally unique and may include values not currently in use by your account. Due to this, the list of sizes returned by this method may differ from the list seen in the Trafficking UI.
+--
+-- /See:/ 'newDFAReportingSizesList' smart constructor.
+data DFAReportingSizesList = DFAReportingSizesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only sizes with this height.
+    height :: (Core.Maybe Core.Int32),
+    -- | Select only IAB standard sizes.
+    iabStandard :: (Core.Maybe Core.Bool),
+    -- | Select only sizes with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: 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),
+    -- | Select only sizes with this width.
+    width :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DFAReportingSizesList' with the minimum fields required to make a request.
+newDFAReportingSizesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSizesList
+newDFAReportingSizesList profileId =
+  DFAReportingSizesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      height = Core.Nothing,
+      iabStandard = Core.Nothing,
+      ids = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing,
+      width = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSizesList where
+  type Rs DFAReportingSizesList = SizesListResponse
+  type Scopes DFAReportingSizesList = '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSizesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      height
+      iabStandard
+      (ids Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      width
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSizesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Subaccounts/Get.hs b/gen/Gogol/DFAReporting/Subaccounts/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Subaccounts/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Subaccounts.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one subaccount by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.subaccounts.get@.
+module Gogol.DFAReporting.Subaccounts.Get
+  ( -- * Resource
+    DFAReportingSubaccountsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingSubaccountsGet (..),
+    newDFAReportingSubaccountsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.subaccounts.get@ method which the
+-- 'DFAReportingSubaccountsGet' request conforms to.
+type DFAReportingSubaccountsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "subaccounts"
+    Core.:> Core.Capture "id" 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] Subaccount
+
+-- | Gets one subaccount by ID.
+--
+-- /See:/ 'newDFAReportingSubaccountsGet' smart constructor.
+data DFAReportingSubaccountsGet = DFAReportingSubaccountsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Subaccount ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSubaccountsGet' with the minimum fields required to make a request.
+newDFAReportingSubaccountsGet ::
+  -- |  Subaccount ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSubaccountsGet
+newDFAReportingSubaccountsGet id profileId =
+  DFAReportingSubaccountsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSubaccountsGet where
+  type Rs DFAReportingSubaccountsGet = Subaccount
+  type
+    Scopes DFAReportingSubaccountsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSubaccountsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSubaccountsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Subaccounts/Insert.hs b/gen/Gogol/DFAReporting/Subaccounts/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Subaccounts/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Subaccounts.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new subaccount.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.subaccounts.insert@.
+module Gogol.DFAReporting.Subaccounts.Insert
+  ( -- * Resource
+    DFAReportingSubaccountsInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingSubaccountsInsert (..),
+    newDFAReportingSubaccountsInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.subaccounts.insert@ method which the
+-- 'DFAReportingSubaccountsInsert' request conforms to.
+type DFAReportingSubaccountsInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "subaccounts"
+    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] Subaccount
+    Core.:> Core.Post '[Core.JSON] Subaccount
+
+-- | Inserts a new subaccount.
+--
+-- /See:/ 'newDFAReportingSubaccountsInsert' smart constructor.
+data DFAReportingSubaccountsInsert = DFAReportingSubaccountsInsert
+  { -- | 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 :: Subaccount,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSubaccountsInsert' with the minimum fields required to make a request.
+newDFAReportingSubaccountsInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Subaccount ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSubaccountsInsert
+newDFAReportingSubaccountsInsert payload profileId =
+  DFAReportingSubaccountsInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSubaccountsInsert where
+  type Rs DFAReportingSubaccountsInsert = Subaccount
+  type
+    Scopes DFAReportingSubaccountsInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSubaccountsInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSubaccountsInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Subaccounts/List.hs b/gen/Gogol/DFAReporting/Subaccounts/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Subaccounts/List.hs
@@ -0,0 +1,142 @@
+{-# 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.DFAReporting.Subaccounts.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)
+--
+-- Gets a list of subaccounts, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.subaccounts.list@.
+module Gogol.DFAReporting.Subaccounts.List
+  ( -- * Resource
+    DFAReportingSubaccountsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingSubaccountsList (..),
+    newDFAReportingSubaccountsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.subaccounts.list@ method which the
+-- 'DFAReportingSubaccountsList' request conforms to.
+type DFAReportingSubaccountsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "subaccounts"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" SubaccountsListSortField
+    Core.:> Core.QueryParam "sortOrder" SubaccountsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] SubaccountsListResponse
+
+-- | Gets a list of subaccounts, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingSubaccountsList' smart constructor.
+data DFAReportingSubaccountsList = DFAReportingSubaccountsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only subaccounts with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"subaccount/2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\" .
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: SubaccountsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: SubaccountsListSortOrder,
+    -- | 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 'DFAReportingSubaccountsList' with the minimum fields required to make a request.
+newDFAReportingSubaccountsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSubaccountsList
+newDFAReportingSubaccountsList profileId =
+  DFAReportingSubaccountsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = SubaccountsListSortField_ID,
+      sortOrder = SubaccountsListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSubaccountsList where
+  type Rs DFAReportingSubaccountsList = SubaccountsListResponse
+  type
+    Scopes DFAReportingSubaccountsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSubaccountsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSubaccountsListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Subaccounts/Patch.hs b/gen/Gogol/DFAReporting/Subaccounts/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Subaccounts/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Subaccounts.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing subaccount. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.subaccounts.patch@.
+module Gogol.DFAReporting.Subaccounts.Patch
+  ( -- * Resource
+    DFAReportingSubaccountsPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingSubaccountsPatch (..),
+    newDFAReportingSubaccountsPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.subaccounts.patch@ method which the
+-- 'DFAReportingSubaccountsPatch' request conforms to.
+type DFAReportingSubaccountsPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "subaccounts"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] Subaccount
+    Core.:> Core.Patch '[Core.JSON] Subaccount
+
+-- | Updates an existing subaccount. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingSubaccountsPatch' smart constructor.
+data DFAReportingSubaccountsPatch = DFAReportingSubaccountsPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Subaccount ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: Subaccount,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSubaccountsPatch' with the minimum fields required to make a request.
+newDFAReportingSubaccountsPatch ::
+  -- |  Required. Subaccount ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  Subaccount ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSubaccountsPatch
+newDFAReportingSubaccountsPatch id payload profileId =
+  DFAReportingSubaccountsPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSubaccountsPatch where
+  type Rs DFAReportingSubaccountsPatch = Subaccount
+  type
+    Scopes DFAReportingSubaccountsPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSubaccountsPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSubaccountsPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Subaccounts/Update.hs b/gen/Gogol/DFAReporting/Subaccounts/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Subaccounts/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.Subaccounts.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing subaccount.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.subaccounts.update@.
+module Gogol.DFAReporting.Subaccounts.Update
+  ( -- * Resource
+    DFAReportingSubaccountsUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingSubaccountsUpdate (..),
+    newDFAReportingSubaccountsUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.subaccounts.update@ method which the
+-- 'DFAReportingSubaccountsUpdate' request conforms to.
+type DFAReportingSubaccountsUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "subaccounts"
+    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] Subaccount
+    Core.:> Core.Put '[Core.JSON] Subaccount
+
+-- | Updates an existing subaccount.
+--
+-- /See:/ 'newDFAReportingSubaccountsUpdate' smart constructor.
+data DFAReportingSubaccountsUpdate = DFAReportingSubaccountsUpdate
+  { -- | 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 :: Subaccount,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingSubaccountsUpdate' with the minimum fields required to make a request.
+newDFAReportingSubaccountsUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Subaccount ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingSubaccountsUpdate
+newDFAReportingSubaccountsUpdate payload profileId =
+  DFAReportingSubaccountsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingSubaccountsUpdate where
+  type Rs DFAReportingSubaccountsUpdate = Subaccount
+  type
+    Scopes DFAReportingSubaccountsUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingSubaccountsUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingSubaccountsUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetableRemarketingLists/Get.hs b/gen/Gogol/DFAReporting/TargetableRemarketingLists/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetableRemarketingLists/Get.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TargetableRemarketingLists.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one remarketing list by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetableRemarketingLists.get@.
+module Gogol.DFAReporting.TargetableRemarketingLists.Get
+  ( -- * Resource
+    DFAReportingTargetableRemarketingListsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetableRemarketingListsGet (..),
+    newDFAReportingTargetableRemarketingListsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetableRemarketingLists.get@ method which the
+-- 'DFAReportingTargetableRemarketingListsGet' request conforms to.
+type DFAReportingTargetableRemarketingListsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetableRemarketingLists"
+    Core.:> Core.Capture "id" 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] TargetableRemarketingList
+
+-- | Gets one remarketing list by ID.
+--
+-- /See:/ 'newDFAReportingTargetableRemarketingListsGet' smart constructor.
+data DFAReportingTargetableRemarketingListsGet = DFAReportingTargetableRemarketingListsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Remarketing list ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTargetableRemarketingListsGet' with the minimum fields required to make a request.
+newDFAReportingTargetableRemarketingListsGet ::
+  -- |  Remarketing list ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetableRemarketingListsGet
+newDFAReportingTargetableRemarketingListsGet id profileId =
+  DFAReportingTargetableRemarketingListsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingTargetableRemarketingListsGet
+  where
+  type
+    Rs DFAReportingTargetableRemarketingListsGet =
+      TargetableRemarketingList
+  type
+    Scopes DFAReportingTargetableRemarketingListsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetableRemarketingListsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetableRemarketingListsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetableRemarketingLists/List.hs b/gen/Gogol/DFAReporting/TargetableRemarketingLists/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetableRemarketingLists/List.hs
@@ -0,0 +1,162 @@
+{-# 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.DFAReporting.TargetableRemarketingLists.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)
+--
+-- Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetableRemarketingLists.list@.
+module Gogol.DFAReporting.TargetableRemarketingLists.List
+  ( -- * Resource
+    DFAReportingTargetableRemarketingListsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetableRemarketingListsList (..),
+    newDFAReportingTargetableRemarketingListsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetableRemarketingLists.list@ method which the
+-- 'DFAReportingTargetableRemarketingListsList' request conforms to.
+type DFAReportingTargetableRemarketingListsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetableRemarketingLists"
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "active" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "name" Core.Text
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "sortField" TargetableRemarketingListsListSortField
+    Core.:> Core.QueryParam "sortOrder" TargetableRemarketingListsListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get
+              '[Core.JSON]
+              TargetableRemarketingListsListResponse
+
+-- | Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingTargetableRemarketingListsList' smart constructor.
+data DFAReportingTargetableRemarketingListsList = DFAReportingTargetableRemarketingListsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only active or only inactive targetable remarketing lists.
+    active :: (Core.Maybe Core.Bool),
+    -- | Required. Select only targetable remarketing lists targetable by these advertisers.
+    advertiserId :: Core.Int64,
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"remarketing list/2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".
+    name :: (Core.Maybe Core.Text),
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Field by which to sort the list.
+    sortField :: TargetableRemarketingListsListSortField,
+    -- | Order of sorted results.
+    sortOrder :: TargetableRemarketingListsListSortOrder,
+    -- | 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 'DFAReportingTargetableRemarketingListsList' with the minimum fields required to make a request.
+newDFAReportingTargetableRemarketingListsList ::
+  -- |  Required. Select only targetable remarketing lists targetable by these advertisers. See 'advertiserId'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetableRemarketingListsList
+newDFAReportingTargetableRemarketingListsList
+  advertiserId
+  profileId =
+    DFAReportingTargetableRemarketingListsList
+      { xgafv = Core.Nothing,
+        accessToken = Core.Nothing,
+        active = Core.Nothing,
+        advertiserId = advertiserId,
+        callback = Core.Nothing,
+        maxResults = 1000,
+        name = Core.Nothing,
+        pageToken = Core.Nothing,
+        profileId = profileId,
+        sortField =
+          TargetableRemarketingListsListSortField_ID,
+        sortOrder =
+          TargetableRemarketingListsListSortOrder_Ascending,
+        uploadType = Core.Nothing,
+        uploadProtocol = Core.Nothing
+      }
+
+instance
+  Core.GoogleRequest
+    DFAReportingTargetableRemarketingListsList
+  where
+  type
+    Rs DFAReportingTargetableRemarketingListsList =
+      TargetableRemarketingListsListResponse
+  type
+    Scopes DFAReportingTargetableRemarketingListsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetableRemarketingListsList {..} =
+    go
+      profileId
+      (Core.Just advertiserId)
+      xgafv
+      accessToken
+      active
+      callback
+      (Core.Just maxResults)
+      name
+      pageToken
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetableRemarketingListsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetingTemplates/Get.hs b/gen/Gogol/DFAReporting/TargetingTemplates/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetingTemplates/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TargetingTemplates.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one targeting template by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetingTemplates.get@.
+module Gogol.DFAReporting.TargetingTemplates.Get
+  ( -- * Resource
+    DFAReportingTargetingTemplatesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetingTemplatesGet (..),
+    newDFAReportingTargetingTemplatesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetingTemplates.get@ method which the
+-- 'DFAReportingTargetingTemplatesGet' request conforms to.
+type DFAReportingTargetingTemplatesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetingTemplates"
+    Core.:> Core.Capture "id" 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] TargetingTemplate
+
+-- | Gets one targeting template by ID.
+--
+-- /See:/ 'newDFAReportingTargetingTemplatesGet' smart constructor.
+data DFAReportingTargetingTemplatesGet = DFAReportingTargetingTemplatesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Targeting template ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTargetingTemplatesGet' with the minimum fields required to make a request.
+newDFAReportingTargetingTemplatesGet ::
+  -- |  Targeting template ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetingTemplatesGet
+newDFAReportingTargetingTemplatesGet id profileId =
+  DFAReportingTargetingTemplatesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTargetingTemplatesGet where
+  type Rs DFAReportingTargetingTemplatesGet = TargetingTemplate
+  type
+    Scopes DFAReportingTargetingTemplatesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetingTemplatesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetingTemplatesGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetingTemplates/Insert.hs b/gen/Gogol/DFAReporting/TargetingTemplates/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetingTemplates/Insert.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TargetingTemplates.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new targeting template.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetingTemplates.insert@.
+module Gogol.DFAReporting.TargetingTemplates.Insert
+  ( -- * Resource
+    DFAReportingTargetingTemplatesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetingTemplatesInsert (..),
+    newDFAReportingTargetingTemplatesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetingTemplates.insert@ method which the
+-- 'DFAReportingTargetingTemplatesInsert' request conforms to.
+type DFAReportingTargetingTemplatesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetingTemplates"
+    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] TargetingTemplate
+    Core.:> Core.Post '[Core.JSON] TargetingTemplate
+
+-- | Inserts a new targeting template.
+--
+-- /See:/ 'newDFAReportingTargetingTemplatesInsert' smart constructor.
+data DFAReportingTargetingTemplatesInsert = DFAReportingTargetingTemplatesInsert
+  { -- | 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 :: TargetingTemplate,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTargetingTemplatesInsert' with the minimum fields required to make a request.
+newDFAReportingTargetingTemplatesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  TargetingTemplate ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetingTemplatesInsert
+newDFAReportingTargetingTemplatesInsert payload profileId =
+  DFAReportingTargetingTemplatesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTargetingTemplatesInsert where
+  type Rs DFAReportingTargetingTemplatesInsert = TargetingTemplate
+  type
+    Scopes DFAReportingTargetingTemplatesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetingTemplatesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetingTemplatesInsertResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetingTemplates/List.hs b/gen/Gogol/DFAReporting/TargetingTemplates/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetingTemplates/List.hs
@@ -0,0 +1,151 @@
+{-# 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.DFAReporting.TargetingTemplates.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)
+--
+-- Retrieves a list of targeting templates, optionally filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetingTemplates.list@.
+module Gogol.DFAReporting.TargetingTemplates.List
+  ( -- * Resource
+    DFAReportingTargetingTemplatesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetingTemplatesList (..),
+    newDFAReportingTargetingTemplatesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetingTemplates.list@ method which the
+-- 'DFAReportingTargetingTemplatesList' request conforms to.
+type DFAReportingTargetingTemplatesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetingTemplates"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "advertiserId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" TargetingTemplatesListSortField
+    Core.:> Core.QueryParam "sortOrder" TargetingTemplatesListSortOrder
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] TargetingTemplatesListResponse
+
+-- | Retrieves a list of targeting templates, optionally filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingTargetingTemplatesList' smart constructor.
+data DFAReportingTargetingTemplatesList = DFAReportingTargetingTemplatesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only targeting templates with this advertiser ID.
+    advertiserId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only targeting templates with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"template/2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: TargetingTemplatesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: TargetingTemplatesListSortOrder,
+    -- | 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 'DFAReportingTargetingTemplatesList' with the minimum fields required to make a request.
+newDFAReportingTargetingTemplatesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetingTemplatesList
+newDFAReportingTargetingTemplatesList profileId =
+  DFAReportingTargetingTemplatesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      advertiserId = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = TargetingTemplatesListSortField_ID,
+      sortOrder = TargetingTemplatesListSortOrder_Ascending,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTargetingTemplatesList where
+  type
+    Rs DFAReportingTargetingTemplatesList =
+      TargetingTemplatesListResponse
+  type
+    Scopes DFAReportingTargetingTemplatesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetingTemplatesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      advertiserId
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetingTemplatesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetingTemplates/Patch.hs b/gen/Gogol/DFAReporting/TargetingTemplates/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetingTemplates/Patch.hs
@@ -0,0 +1,128 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TargetingTemplates.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing targeting template. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetingTemplates.patch@.
+module Gogol.DFAReporting.TargetingTemplates.Patch
+  ( -- * Resource
+    DFAReportingTargetingTemplatesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetingTemplatesPatch (..),
+    newDFAReportingTargetingTemplatesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetingTemplates.patch@ method which the
+-- 'DFAReportingTargetingTemplatesPatch' request conforms to.
+type DFAReportingTargetingTemplatesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetingTemplates"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] TargetingTemplate
+    Core.:> Core.Patch '[Core.JSON] TargetingTemplate
+
+-- | Updates an existing targeting template. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingTargetingTemplatesPatch' smart constructor.
+data DFAReportingTargetingTemplatesPatch = DFAReportingTargetingTemplatesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. RemarketingList ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: TargetingTemplate,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTargetingTemplatesPatch' with the minimum fields required to make a request.
+newDFAReportingTargetingTemplatesPatch ::
+  -- |  Required. RemarketingList ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  TargetingTemplate ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetingTemplatesPatch
+newDFAReportingTargetingTemplatesPatch id payload profileId =
+  DFAReportingTargetingTemplatesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTargetingTemplatesPatch where
+  type Rs DFAReportingTargetingTemplatesPatch = TargetingTemplate
+  type
+    Scopes DFAReportingTargetingTemplatesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetingTemplatesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetingTemplatesPatchResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TargetingTemplates/Update.hs b/gen/Gogol/DFAReporting/TargetingTemplates/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TargetingTemplates/Update.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TargetingTemplates.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing targeting template.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.targetingTemplates.update@.
+module Gogol.DFAReporting.TargetingTemplates.Update
+  ( -- * Resource
+    DFAReportingTargetingTemplatesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingTargetingTemplatesUpdate (..),
+    newDFAReportingTargetingTemplatesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.targetingTemplates.update@ method which the
+-- 'DFAReportingTargetingTemplatesUpdate' request conforms to.
+type DFAReportingTargetingTemplatesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "targetingTemplates"
+    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] TargetingTemplate
+    Core.:> Core.Put '[Core.JSON] TargetingTemplate
+
+-- | Updates an existing targeting template.
+--
+-- /See:/ 'newDFAReportingTargetingTemplatesUpdate' smart constructor.
+data DFAReportingTargetingTemplatesUpdate = DFAReportingTargetingTemplatesUpdate
+  { -- | 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 :: TargetingTemplate,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTargetingTemplatesUpdate' with the minimum fields required to make a request.
+newDFAReportingTargetingTemplatesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  TargetingTemplate ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTargetingTemplatesUpdate
+newDFAReportingTargetingTemplatesUpdate payload profileId =
+  DFAReportingTargetingTemplatesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTargetingTemplatesUpdate where
+  type Rs DFAReportingTargetingTemplatesUpdate = TargetingTemplate
+  type
+    Scopes DFAReportingTargetingTemplatesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTargetingTemplatesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTargetingTemplatesUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TvCampaignDetails/Get.hs b/gen/Gogol/DFAReporting/TvCampaignDetails/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TvCampaignDetails/Get.hs
@@ -0,0 +1,124 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TvCampaignDetails.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one TvCampaignDetail by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.tvCampaignDetails.get@.
+module Gogol.DFAReporting.TvCampaignDetails.Get
+  ( -- * Resource
+    DFAReportingTvCampaignDetailsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingTvCampaignDetailsGet (..),
+    newDFAReportingTvCampaignDetailsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.tvCampaignDetails.get@ method which the
+-- 'DFAReportingTvCampaignDetailsGet' request conforms to.
+type DFAReportingTvCampaignDetailsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "tvCampaignDetails"
+    Core.:> Core.Capture "id" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "accountId" Core.Int64
+    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] TvCampaignDetail
+
+-- | Gets one TvCampaignDetail by ID.
+--
+-- /See:/ 'newDFAReportingTvCampaignDetailsGet' smart constructor.
+data DFAReportingTvCampaignDetailsGet = DFAReportingTvCampaignDetailsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Required. Account ID associated with this request.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. TV Campaign ID.
+    id :: Core.Text,
+    -- | Required. User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTvCampaignDetailsGet' with the minimum fields required to make a request.
+newDFAReportingTvCampaignDetailsGet ::
+  -- |  Required. TV Campaign ID. See 'id'.
+  Core.Text ->
+  -- |  Required. User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTvCampaignDetailsGet
+newDFAReportingTvCampaignDetailsGet id profileId =
+  DFAReportingTvCampaignDetailsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      accountId = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTvCampaignDetailsGet where
+  type Rs DFAReportingTvCampaignDetailsGet = TvCampaignDetail
+  type
+    Scopes DFAReportingTvCampaignDetailsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTvCampaignDetailsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      accountId
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingTvCampaignDetailsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/TvCampaignSummaries/List.hs b/gen/Gogol/DFAReporting/TvCampaignSummaries/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/TvCampaignSummaries/List.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.TvCampaignSummaries.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)
+--
+-- Retrieves a list of TV campaign summaries.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.tvCampaignSummaries.list@.
+module Gogol.DFAReporting.TvCampaignSummaries.List
+  ( -- * Resource
+    DFAReportingTvCampaignSummariesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingTvCampaignSummariesList (..),
+    newDFAReportingTvCampaignSummariesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.tvCampaignSummaries.list@ method which the
+-- 'DFAReportingTvCampaignSummariesList' request conforms to.
+type DFAReportingTvCampaignSummariesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "tvCampaignSummaries"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "accountId" Core.Int64
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "name" 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] TvCampaignSummariesListResponse
+
+-- | Retrieves a list of TV campaign summaries.
+--
+-- /See:/ 'newDFAReportingTvCampaignSummariesList' smart constructor.
+data DFAReportingTvCampaignSummariesList = DFAReportingTvCampaignSummariesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Required. Account ID associated with this request.
+    accountId :: (Core.Maybe Core.Int64),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. Search string to filter the list of TV campaign summaries. Matches any substring. Required field.
+    name :: (Core.Maybe Core.Text),
+    -- | Required. User profile ID associated with this request.
+    profileId :: 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 'DFAReportingTvCampaignSummariesList' with the minimum fields required to make a request.
+newDFAReportingTvCampaignSummariesList ::
+  -- |  Required. User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingTvCampaignSummariesList
+newDFAReportingTvCampaignSummariesList profileId =
+  DFAReportingTvCampaignSummariesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      accountId = Core.Nothing,
+      callback = Core.Nothing,
+      name = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingTvCampaignSummariesList where
+  type
+    Rs DFAReportingTvCampaignSummariesList =
+      TvCampaignSummariesListResponse
+  type
+    Scopes DFAReportingTvCampaignSummariesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingTvCampaignSummariesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      accountId
+      callback
+      name
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingTvCampaignSummariesListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/Types.hs b/gen/Gogol/DFAReporting/Types.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/Types.hs
@@ -0,0 +1,1711 @@
+{-# 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.DFAReporting.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.DFAReporting.Types
+  ( -- * Configuration
+    dFAReportingService,
+
+    -- * OAuth Scopes
+    Ddmconversions'FullControl,
+    Dfareporting'FullControl,
+    Dfatrafficking'FullControl,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** Account
+    Account (..),
+    newAccount,
+
+    -- ** Account_AccountProfile
+    Account_AccountProfile (..),
+
+    -- ** Account_ActiveAdsLimitTier
+    Account_ActiveAdsLimitTier (..),
+
+    -- ** AccountActiveAdSummary
+    AccountActiveAdSummary (..),
+    newAccountActiveAdSummary,
+
+    -- ** AccountActiveAdSummary_ActiveAdsLimitTier
+    AccountActiveAdSummary_ActiveAdsLimitTier (..),
+
+    -- ** AccountPermission
+    AccountPermission (..),
+    newAccountPermission,
+
+    -- ** AccountPermission_AccountProfilesItem
+    AccountPermission_AccountProfilesItem (..),
+
+    -- ** AccountPermission_Level
+    AccountPermission_Level (..),
+
+    -- ** AccountPermissionGroup
+    AccountPermissionGroup (..),
+    newAccountPermissionGroup,
+
+    -- ** AccountPermissionGroupsListResponse
+    AccountPermissionGroupsListResponse (..),
+    newAccountPermissionGroupsListResponse,
+
+    -- ** AccountPermissionsListResponse
+    AccountPermissionsListResponse (..),
+    newAccountPermissionsListResponse,
+
+    -- ** AccountUserProfile
+    AccountUserProfile (..),
+    newAccountUserProfile,
+
+    -- ** AccountUserProfile_TraffickerType
+    AccountUserProfile_TraffickerType (..),
+
+    -- ** AccountUserProfile_UserAccessType
+    AccountUserProfile_UserAccessType (..),
+
+    -- ** AccountUserProfilesListResponse
+    AccountUserProfilesListResponse (..),
+    newAccountUserProfilesListResponse,
+
+    -- ** AccountsListResponse
+    AccountsListResponse (..),
+    newAccountsListResponse,
+
+    -- ** Activities
+    Activities (..),
+    newActivities,
+
+    -- ** Ad
+    Ad (..),
+    newAd,
+
+    -- ** Ad_Compatibility
+    Ad_Compatibility (..),
+
+    -- ** Ad_Type
+    Ad_Type (..),
+
+    -- ** AdBlockingConfiguration
+    AdBlockingConfiguration (..),
+    newAdBlockingConfiguration,
+
+    -- ** AdSlot
+    AdSlot (..),
+    newAdSlot,
+
+    -- ** AdSlot_Compatibility
+    AdSlot_Compatibility (..),
+
+    -- ** AdSlot_PaymentSourceType
+    AdSlot_PaymentSourceType (..),
+
+    -- ** AdsListResponse
+    AdsListResponse (..),
+    newAdsListResponse,
+
+    -- ** Advertiser
+    Advertiser (..),
+    newAdvertiser,
+
+    -- ** Advertiser_Status
+    Advertiser_Status (..),
+
+    -- ** AdvertiserGroup
+    AdvertiserGroup (..),
+    newAdvertiserGroup,
+
+    -- ** AdvertiserGroupsListResponse
+    AdvertiserGroupsListResponse (..),
+    newAdvertiserGroupsListResponse,
+
+    -- ** AdvertiserInvoicesListResponse
+    AdvertiserInvoicesListResponse (..),
+    newAdvertiserInvoicesListResponse,
+
+    -- ** AdvertiserLandingPagesListResponse
+    AdvertiserLandingPagesListResponse (..),
+    newAdvertiserLandingPagesListResponse,
+
+    -- ** AdvertisersListResponse
+    AdvertisersListResponse (..),
+    newAdvertisersListResponse,
+
+    -- ** AudienceSegment
+    AudienceSegment (..),
+    newAudienceSegment,
+
+    -- ** AudienceSegmentGroup
+    AudienceSegmentGroup (..),
+    newAudienceSegmentGroup,
+
+    -- ** BillingAssignment
+    BillingAssignment (..),
+    newBillingAssignment,
+
+    -- ** BillingAssignmentsListResponse
+    BillingAssignmentsListResponse (..),
+    newBillingAssignmentsListResponse,
+
+    -- ** BillingProfile
+    BillingProfile (..),
+    newBillingProfile,
+
+    -- ** BillingProfile_InvoiceLevel
+    BillingProfile_InvoiceLevel (..),
+
+    -- ** BillingProfile_Status
+    BillingProfile_Status (..),
+
+    -- ** BillingProfilesListResponse
+    BillingProfilesListResponse (..),
+    newBillingProfilesListResponse,
+
+    -- ** BillingRate
+    BillingRate (..),
+    newBillingRate,
+
+    -- ** BillingRate_Type
+    BillingRate_Type (..),
+
+    -- ** BillingRate_UnitOfMeasure
+    BillingRate_UnitOfMeasure (..),
+
+    -- ** BillingRateTieredRate
+    BillingRateTieredRate (..),
+    newBillingRateTieredRate,
+
+    -- ** BillingRatesListResponse
+    BillingRatesListResponse (..),
+    newBillingRatesListResponse,
+
+    -- ** Browser
+    Browser (..),
+    newBrowser,
+
+    -- ** BrowsersListResponse
+    BrowsersListResponse (..),
+    newBrowsersListResponse,
+
+    -- ** Campaign
+    Campaign (..),
+    newCampaign,
+
+    -- ** CampaignCreativeAssociation
+    CampaignCreativeAssociation (..),
+    newCampaignCreativeAssociation,
+
+    -- ** CampaignCreativeAssociationsListResponse
+    CampaignCreativeAssociationsListResponse (..),
+    newCampaignCreativeAssociationsListResponse,
+
+    -- ** CampaignSummary
+    CampaignSummary (..),
+    newCampaignSummary,
+
+    -- ** CampaignsListResponse
+    CampaignsListResponse (..),
+    newCampaignsListResponse,
+
+    -- ** CartData
+    CartData (..),
+    newCartData,
+
+    -- ** CartDataItem
+    CartDataItem (..),
+    newCartDataItem,
+
+    -- ** ChangeLog
+    ChangeLog (..),
+    newChangeLog,
+
+    -- ** ChangeLogsListResponse
+    ChangeLogsListResponse (..),
+    newChangeLogsListResponse,
+
+    -- ** CitiesListResponse
+    CitiesListResponse (..),
+    newCitiesListResponse,
+
+    -- ** City
+    City (..),
+    newCity,
+
+    -- ** ClickTag
+    ClickTag (..),
+    newClickTag,
+
+    -- ** ClickThroughUrl
+    ClickThroughUrl (..),
+    newClickThroughUrl,
+
+    -- ** ClickThroughUrlSuffixProperties
+    ClickThroughUrlSuffixProperties (..),
+    newClickThroughUrlSuffixProperties,
+
+    -- ** CompanionClickThroughOverride
+    CompanionClickThroughOverride (..),
+    newCompanionClickThroughOverride,
+
+    -- ** CompanionSetting
+    CompanionSetting (..),
+    newCompanionSetting,
+
+    -- ** CompatibleFields
+    CompatibleFields (..),
+    newCompatibleFields,
+
+    -- ** ConnectionType
+    ConnectionType (..),
+    newConnectionType,
+
+    -- ** ConnectionTypesListResponse
+    ConnectionTypesListResponse (..),
+    newConnectionTypesListResponse,
+
+    -- ** ContentCategoriesListResponse
+    ContentCategoriesListResponse (..),
+    newContentCategoriesListResponse,
+
+    -- ** ContentCategory
+    ContentCategory (..),
+    newContentCategory,
+
+    -- ** Conversion
+    Conversion (..),
+    newConversion,
+
+    -- ** Conversion_AdUserDataConsent
+    Conversion_AdUserDataConsent (..),
+
+    -- ** ConversionError
+    ConversionError (..),
+    newConversionError,
+
+    -- ** ConversionError_Code
+    ConversionError_Code (..),
+
+    -- ** ConversionStatus
+    ConversionStatus (..),
+    newConversionStatus,
+
+    -- ** ConversionsBatchInsertRequest
+    ConversionsBatchInsertRequest (..),
+    newConversionsBatchInsertRequest,
+
+    -- ** ConversionsBatchInsertResponse
+    ConversionsBatchInsertResponse (..),
+    newConversionsBatchInsertResponse,
+
+    -- ** ConversionsBatchUpdateRequest
+    ConversionsBatchUpdateRequest (..),
+    newConversionsBatchUpdateRequest,
+
+    -- ** ConversionsBatchUpdateResponse
+    ConversionsBatchUpdateResponse (..),
+    newConversionsBatchUpdateResponse,
+
+    -- ** CountriesListResponse
+    CountriesListResponse (..),
+    newCountriesListResponse,
+
+    -- ** Country
+    Country (..),
+    newCountry,
+
+    -- ** Creative
+    Creative (..),
+    newCreative,
+
+    -- ** Creative_ArtworkType
+    Creative_ArtworkType (..),
+
+    -- ** Creative_AuthoringSource
+    Creative_AuthoringSource (..),
+
+    -- ** Creative_AuthoringTool
+    Creative_AuthoringTool (..),
+
+    -- ** Creative_BackupImageFeaturesItem
+    Creative_BackupImageFeaturesItem (..),
+
+    -- ** Creative_CompatibilityItem
+    Creative_CompatibilityItem (..),
+
+    -- ** Creative_Type
+    Creative_Type (..),
+
+    -- ** CreativeAsset
+    CreativeAsset (..),
+    newCreativeAsset,
+
+    -- ** CreativeAsset_Alignment
+    CreativeAsset_Alignment (..),
+
+    -- ** CreativeAsset_ArtworkType
+    CreativeAsset_ArtworkType (..),
+
+    -- ** CreativeAsset_ChildAssetType
+    CreativeAsset_ChildAssetType (..),
+
+    -- ** CreativeAsset_DetectedFeaturesItem
+    CreativeAsset_DetectedFeaturesItem (..),
+
+    -- ** CreativeAsset_DisplayType
+    CreativeAsset_DisplayType (..),
+
+    -- ** CreativeAsset_DurationType
+    CreativeAsset_DurationType (..),
+
+    -- ** CreativeAsset_Orientation
+    CreativeAsset_Orientation (..),
+
+    -- ** CreativeAsset_PositionLeftUnit
+    CreativeAsset_PositionLeftUnit (..),
+
+    -- ** CreativeAsset_PositionTopUnit
+    CreativeAsset_PositionTopUnit (..),
+
+    -- ** CreativeAsset_Role
+    CreativeAsset_Role (..),
+
+    -- ** CreativeAsset_StartTimeType
+    CreativeAsset_StartTimeType (..),
+
+    -- ** CreativeAsset_WindowMode
+    CreativeAsset_WindowMode (..),
+
+    -- ** CreativeAssetId
+    CreativeAssetId (..),
+    newCreativeAssetId,
+
+    -- ** CreativeAssetId_Type
+    CreativeAssetId_Type (..),
+
+    -- ** CreativeAssetMetadata
+    CreativeAssetMetadata (..),
+    newCreativeAssetMetadata,
+
+    -- ** CreativeAssetMetadata_DetectedFeaturesItem
+    CreativeAssetMetadata_DetectedFeaturesItem (..),
+
+    -- ** CreativeAssetMetadata_WarnedValidationRulesItem
+    CreativeAssetMetadata_WarnedValidationRulesItem (..),
+
+    -- ** CreativeAssetSelection
+    CreativeAssetSelection (..),
+    newCreativeAssetSelection,
+
+    -- ** CreativeAssignment
+    CreativeAssignment (..),
+    newCreativeAssignment,
+
+    -- ** CreativeClickThroughUrl
+    CreativeClickThroughUrl (..),
+    newCreativeClickThroughUrl,
+
+    -- ** CreativeCustomEvent
+    CreativeCustomEvent (..),
+    newCreativeCustomEvent,
+
+    -- ** CreativeCustomEvent_AdvertiserCustomEventType
+    CreativeCustomEvent_AdvertiserCustomEventType (..),
+
+    -- ** CreativeCustomEvent_ArtworkType
+    CreativeCustomEvent_ArtworkType (..),
+
+    -- ** CreativeCustomEvent_TargetType
+    CreativeCustomEvent_TargetType (..),
+
+    -- ** CreativeField
+    CreativeField (..),
+    newCreativeField,
+
+    -- ** CreativeFieldAssignment
+    CreativeFieldAssignment (..),
+    newCreativeFieldAssignment,
+
+    -- ** CreativeFieldValue
+    CreativeFieldValue (..),
+    newCreativeFieldValue,
+
+    -- ** CreativeFieldValuesListResponse
+    CreativeFieldValuesListResponse (..),
+    newCreativeFieldValuesListResponse,
+
+    -- ** CreativeFieldsListResponse
+    CreativeFieldsListResponse (..),
+    newCreativeFieldsListResponse,
+
+    -- ** CreativeGroup
+    CreativeGroup (..),
+    newCreativeGroup,
+
+    -- ** CreativeGroupAssignment
+    CreativeGroupAssignment (..),
+    newCreativeGroupAssignment,
+
+    -- ** CreativeGroupAssignment_CreativeGroupNumber
+    CreativeGroupAssignment_CreativeGroupNumber (..),
+
+    -- ** CreativeGroupsListResponse
+    CreativeGroupsListResponse (..),
+    newCreativeGroupsListResponse,
+
+    -- ** CreativeOptimizationConfiguration
+    CreativeOptimizationConfiguration (..),
+    newCreativeOptimizationConfiguration,
+
+    -- ** CreativeOptimizationConfiguration_OptimizationModel
+    CreativeOptimizationConfiguration_OptimizationModel (..),
+
+    -- ** CreativeRotation
+    CreativeRotation (..),
+    newCreativeRotation,
+
+    -- ** CreativeRotation_Type
+    CreativeRotation_Type (..),
+
+    -- ** CreativeRotation_WeightCalculationStrategy
+    CreativeRotation_WeightCalculationStrategy (..),
+
+    -- ** CreativesListResponse
+    CreativesListResponse (..),
+    newCreativesListResponse,
+
+    -- ** CrossDimensionReachReportCompatibleFields
+    CrossDimensionReachReportCompatibleFields (..),
+    newCrossDimensionReachReportCompatibleFields,
+
+    -- ** CrossMediaReachReportCompatibleFields
+    CrossMediaReachReportCompatibleFields (..),
+    newCrossMediaReachReportCompatibleFields,
+
+    -- ** CustomFloodlightVariable
+    CustomFloodlightVariable (..),
+    newCustomFloodlightVariable,
+
+    -- ** CustomFloodlightVariable_Type
+    CustomFloodlightVariable_Type (..),
+
+    -- ** CustomRichMediaEvents
+    CustomRichMediaEvents (..),
+    newCustomRichMediaEvents,
+
+    -- ** CustomViewabilityMetric
+    CustomViewabilityMetric (..),
+    newCustomViewabilityMetric,
+
+    -- ** CustomViewabilityMetricConfiguration
+    CustomViewabilityMetricConfiguration (..),
+    newCustomViewabilityMetricConfiguration,
+
+    -- ** DateRange
+    DateRange (..),
+    newDateRange,
+
+    -- ** DateRange_RelativeDateRange
+    DateRange_RelativeDateRange (..),
+
+    -- ** DayPartTargeting
+    DayPartTargeting (..),
+    newDayPartTargeting,
+
+    -- ** DayPartTargeting_DaysOfWeekItem
+    DayPartTargeting_DaysOfWeekItem (..),
+
+    -- ** DeepLink
+    DeepLink (..),
+    newDeepLink,
+
+    -- ** DefaultClickThroughEventTagProperties
+    DefaultClickThroughEventTagProperties (..),
+    newDefaultClickThroughEventTagProperties,
+
+    -- ** DeliverySchedule
+    DeliverySchedule (..),
+    newDeliverySchedule,
+
+    -- ** DeliverySchedule_Priority
+    DeliverySchedule_Priority (..),
+
+    -- ** DfpSettings
+    DfpSettings (..),
+    newDfpSettings,
+
+    -- ** Dimension
+    Dimension (..),
+    newDimension,
+
+    -- ** DimensionFilter
+    DimensionFilter (..),
+    newDimensionFilter,
+
+    -- ** DimensionValue
+    DimensionValue (..),
+    newDimensionValue,
+
+    -- ** DimensionValue_MatchType
+    DimensionValue_MatchType (..),
+
+    -- ** DimensionValueList
+    DimensionValueList (..),
+    newDimensionValueList,
+
+    -- ** DimensionValueRequest
+    DimensionValueRequest (..),
+    newDimensionValueRequest,
+
+    -- ** DirectorySite
+    DirectorySite (..),
+    newDirectorySite,
+
+    -- ** DirectorySite_InpageTagFormatsItem
+    DirectorySite_InpageTagFormatsItem (..),
+
+    -- ** DirectorySite_InterstitialTagFormatsItem
+    DirectorySite_InterstitialTagFormatsItem (..),
+
+    -- ** DirectorySiteSettings
+    DirectorySiteSettings (..),
+    newDirectorySiteSettings,
+
+    -- ** DirectorySitesListResponse
+    DirectorySitesListResponse (..),
+    newDirectorySitesListResponse,
+
+    -- ** DynamicTargetingKey
+    DynamicTargetingKey (..),
+    newDynamicTargetingKey,
+
+    -- ** DynamicTargetingKey_ObjectType
+    DynamicTargetingKey_ObjectType (..),
+
+    -- ** DynamicTargetingKeysListResponse
+    DynamicTargetingKeysListResponse (..),
+    newDynamicTargetingKeysListResponse,
+
+    -- ** EncryptionInfo
+    EncryptionInfo (..),
+    newEncryptionInfo,
+
+    -- ** EncryptionInfo_EncryptionEntityType
+    EncryptionInfo_EncryptionEntityType (..),
+
+    -- ** EncryptionInfo_EncryptionSource
+    EncryptionInfo_EncryptionSource (..),
+
+    -- ** EventTag
+    EventTag (..),
+    newEventTag,
+
+    -- ** EventTag_SiteFilterType
+    EventTag_SiteFilterType (..),
+
+    -- ** EventTag_Status
+    EventTag_Status (..),
+
+    -- ** EventTag_Type
+    EventTag_Type (..),
+
+    -- ** EventTagOverride
+    EventTagOverride (..),
+    newEventTagOverride,
+
+    -- ** EventTagsListResponse
+    EventTagsListResponse (..),
+    newEventTagsListResponse,
+
+    -- ** File
+    File (..),
+    newFile,
+
+    -- ** File_Format
+    File_Format (..),
+
+    -- ** File_Status
+    File_Status (..),
+
+    -- ** File_Urls
+    File_Urls (..),
+    newFile_Urls,
+
+    -- ** FileList
+    FileList (..),
+    newFileList,
+
+    -- ** Flight
+    Flight (..),
+    newFlight,
+
+    -- ** FloodlightActivitiesGenerateTagResponse
+    FloodlightActivitiesGenerateTagResponse (..),
+    newFloodlightActivitiesGenerateTagResponse,
+
+    -- ** FloodlightActivitiesListResponse
+    FloodlightActivitiesListResponse (..),
+    newFloodlightActivitiesListResponse,
+
+    -- ** FloodlightActivity
+    FloodlightActivity (..),
+    newFloodlightActivity,
+
+    -- ** FloodlightActivity_CacheBustingType
+    FloodlightActivity_CacheBustingType (..),
+
+    -- ** FloodlightActivity_CountingMethod
+    FloodlightActivity_CountingMethod (..),
+
+    -- ** FloodlightActivity_FloodlightActivityGroupType
+    FloodlightActivity_FloodlightActivityGroupType (..),
+
+    -- ** FloodlightActivity_FloodlightTagType
+    FloodlightActivity_FloodlightTagType (..),
+
+    -- ** FloodlightActivity_Status
+    FloodlightActivity_Status (..),
+
+    -- ** FloodlightActivity_TagFormat
+    FloodlightActivity_TagFormat (..),
+
+    -- ** FloodlightActivity_UserDefinedVariableTypesItem
+    FloodlightActivity_UserDefinedVariableTypesItem (..),
+
+    -- ** FloodlightActivityDynamicTag
+    FloodlightActivityDynamicTag (..),
+    newFloodlightActivityDynamicTag,
+
+    -- ** FloodlightActivityGroup
+    FloodlightActivityGroup (..),
+    newFloodlightActivityGroup,
+
+    -- ** FloodlightActivityGroup_Type
+    FloodlightActivityGroup_Type (..),
+
+    -- ** FloodlightActivityGroupsListResponse
+    FloodlightActivityGroupsListResponse (..),
+    newFloodlightActivityGroupsListResponse,
+
+    -- ** FloodlightActivityPublisherDynamicTag
+    FloodlightActivityPublisherDynamicTag (..),
+    newFloodlightActivityPublisherDynamicTag,
+
+    -- ** FloodlightConfiguration
+    FloodlightConfiguration (..),
+    newFloodlightConfiguration,
+
+    -- ** FloodlightConfiguration_FirstDayOfWeek
+    FloodlightConfiguration_FirstDayOfWeek (..),
+
+    -- ** FloodlightConfiguration_NaturalSearchConversionAttributionOption
+    FloodlightConfiguration_NaturalSearchConversionAttributionOption (..),
+
+    -- ** FloodlightConfigurationsListResponse
+    FloodlightConfigurationsListResponse (..),
+    newFloodlightConfigurationsListResponse,
+
+    -- ** FloodlightReportCompatibleFields
+    FloodlightReportCompatibleFields (..),
+    newFloodlightReportCompatibleFields,
+
+    -- ** FrequencyCap
+    FrequencyCap (..),
+    newFrequencyCap,
+
+    -- ** FsCommand
+    FsCommand (..),
+    newFsCommand,
+
+    -- ** FsCommand_PositionOption
+    FsCommand_PositionOption (..),
+
+    -- ** GeoTargeting
+    GeoTargeting (..),
+    newGeoTargeting,
+
+    -- ** InventoryItem
+    InventoryItem (..),
+    newInventoryItem,
+
+    -- ** InventoryItem_Type
+    InventoryItem_Type (..),
+
+    -- ** InventoryItemsListResponse
+    InventoryItemsListResponse (..),
+    newInventoryItemsListResponse,
+
+    -- ** Invoice
+    Invoice (..),
+    newInvoice,
+
+    -- ** Invoice_InvoiceType
+    Invoice_InvoiceType (..),
+
+    -- ** KeyValueTargetingExpression
+    KeyValueTargetingExpression (..),
+    newKeyValueTargetingExpression,
+
+    -- ** LandingPage
+    LandingPage (..),
+    newLandingPage,
+
+    -- ** Language
+    Language (..),
+    newLanguage,
+
+    -- ** LanguageTargeting
+    LanguageTargeting (..),
+    newLanguageTargeting,
+
+    -- ** LanguagesListResponse
+    LanguagesListResponse (..),
+    newLanguagesListResponse,
+
+    -- ** LastModifiedInfo
+    LastModifiedInfo (..),
+    newLastModifiedInfo,
+
+    -- ** ListPopulationClause
+    ListPopulationClause (..),
+    newListPopulationClause,
+
+    -- ** ListPopulationRule
+    ListPopulationRule (..),
+    newListPopulationRule,
+
+    -- ** ListPopulationTerm
+    ListPopulationTerm (..),
+    newListPopulationTerm,
+
+    -- ** ListPopulationTerm_Operator
+    ListPopulationTerm_Operator (..),
+
+    -- ** ListPopulationTerm_Type
+    ListPopulationTerm_Type (..),
+
+    -- ** ListTargetingExpression
+    ListTargetingExpression (..),
+    newListTargetingExpression,
+
+    -- ** LookbackConfiguration
+    LookbackConfiguration (..),
+    newLookbackConfiguration,
+
+    -- ** MeasurementPartnerAdvertiserLink
+    MeasurementPartnerAdvertiserLink (..),
+    newMeasurementPartnerAdvertiserLink,
+
+    -- ** MeasurementPartnerAdvertiserLink_LinkStatus
+    MeasurementPartnerAdvertiserLink_LinkStatus (..),
+
+    -- ** MeasurementPartnerAdvertiserLink_MeasurementPartner
+    MeasurementPartnerAdvertiserLink_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerCampaignLink
+    MeasurementPartnerCampaignLink (..),
+    newMeasurementPartnerCampaignLink,
+
+    -- ** MeasurementPartnerCampaignLink_LinkStatus
+    MeasurementPartnerCampaignLink_LinkStatus (..),
+
+    -- ** MeasurementPartnerCampaignLink_MeasurementPartner
+    MeasurementPartnerCampaignLink_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerWrappingData
+    MeasurementPartnerWrappingData (..),
+    newMeasurementPartnerWrappingData,
+
+    -- ** MeasurementPartnerWrappingData_LinkStatus
+    MeasurementPartnerWrappingData_LinkStatus (..),
+
+    -- ** MeasurementPartnerWrappingData_MeasurementPartner
+    MeasurementPartnerWrappingData_MeasurementPartner (..),
+
+    -- ** MeasurementPartnerWrappingData_TagWrappingMode
+    MeasurementPartnerWrappingData_TagWrappingMode (..),
+
+    -- ** Metric
+    Metric (..),
+    newMetric,
+
+    -- ** Metro
+    Metro (..),
+    newMetro,
+
+    -- ** MetrosListResponse
+    MetrosListResponse (..),
+    newMetrosListResponse,
+
+    -- ** MobileApp
+    MobileApp (..),
+    newMobileApp,
+
+    -- ** MobileApp_Directory
+    MobileApp_Directory (..),
+
+    -- ** MobileAppsListResponse
+    MobileAppsListResponse (..),
+    newMobileAppsListResponse,
+
+    -- ** MobileCarrier
+    MobileCarrier (..),
+    newMobileCarrier,
+
+    -- ** MobileCarriersListResponse
+    MobileCarriersListResponse (..),
+    newMobileCarriersListResponse,
+
+    -- ** ObaIcon
+    ObaIcon (..),
+    newObaIcon,
+
+    -- ** ObjectFilter
+    ObjectFilter (..),
+    newObjectFilter,
+
+    -- ** ObjectFilter_Status
+    ObjectFilter_Status (..),
+
+    -- ** OfflineUserAddressInfo
+    OfflineUserAddressInfo (..),
+    newOfflineUserAddressInfo,
+
+    -- ** OffsetPosition
+    OffsetPosition (..),
+    newOffsetPosition,
+
+    -- ** OmnitureSettings
+    OmnitureSettings (..),
+    newOmnitureSettings,
+
+    -- ** OperatingSystem
+    OperatingSystem (..),
+    newOperatingSystem,
+
+    -- ** OperatingSystemVersion
+    OperatingSystemVersion (..),
+    newOperatingSystemVersion,
+
+    -- ** OperatingSystemVersionsListResponse
+    OperatingSystemVersionsListResponse (..),
+    newOperatingSystemVersionsListResponse,
+
+    -- ** OperatingSystemsListResponse
+    OperatingSystemsListResponse (..),
+    newOperatingSystemsListResponse,
+
+    -- ** OptimizationActivity
+    OptimizationActivity (..),
+    newOptimizationActivity,
+
+    -- ** Order
+    Order (..),
+    newOrder,
+
+    -- ** OrderContact
+    OrderContact (..),
+    newOrderContact,
+
+    -- ** OrderContact_ContactType
+    OrderContact_ContactType (..),
+
+    -- ** OrdersListResponse
+    OrdersListResponse (..),
+    newOrdersListResponse,
+
+    -- ** PathToConversionReportCompatibleFields
+    PathToConversionReportCompatibleFields (..),
+    newPathToConversionReportCompatibleFields,
+
+    -- ** Placement
+    Placement (..),
+    newPlacement,
+
+    -- ** Placement_ActiveStatus
+    Placement_ActiveStatus (..),
+
+    -- ** Placement_Compatibility
+    Placement_Compatibility (..),
+
+    -- ** Placement_PaymentSource
+    Placement_PaymentSource (..),
+
+    -- ** Placement_Status
+    Placement_Status (..),
+
+    -- ** Placement_TagFormatsItem
+    Placement_TagFormatsItem (..),
+
+    -- ** Placement_VpaidAdapterChoice
+    Placement_VpaidAdapterChoice (..),
+
+    -- ** PlacementAssignment
+    PlacementAssignment (..),
+    newPlacementAssignment,
+
+    -- ** PlacementConversionDomainOverride
+    PlacementConversionDomainOverride (..),
+    newPlacementConversionDomainOverride,
+
+    -- ** PlacementGroup
+    PlacementGroup (..),
+    newPlacementGroup,
+
+    -- ** PlacementGroup_ActiveStatus
+    PlacementGroup_ActiveStatus (..),
+
+    -- ** PlacementGroup_PlacementGroupType
+    PlacementGroup_PlacementGroupType (..),
+
+    -- ** PlacementGroupsListResponse
+    PlacementGroupsListResponse (..),
+    newPlacementGroupsListResponse,
+
+    -- ** PlacementSingleConversionDomain
+    PlacementSingleConversionDomain (..),
+    newPlacementSingleConversionDomain,
+
+    -- ** PlacementStrategiesListResponse
+    PlacementStrategiesListResponse (..),
+    newPlacementStrategiesListResponse,
+
+    -- ** PlacementStrategy
+    PlacementStrategy (..),
+    newPlacementStrategy,
+
+    -- ** PlacementTag
+    PlacementTag (..),
+    newPlacementTag,
+
+    -- ** PlacementsGenerateTagsResponse
+    PlacementsGenerateTagsResponse (..),
+    newPlacementsGenerateTagsResponse,
+
+    -- ** PlacementsListResponse
+    PlacementsListResponse (..),
+    newPlacementsListResponse,
+
+    -- ** PlatformType
+    PlatformType (..),
+    newPlatformType,
+
+    -- ** PlatformTypesListResponse
+    PlatformTypesListResponse (..),
+    newPlatformTypesListResponse,
+
+    -- ** PopupWindowProperties
+    PopupWindowProperties (..),
+    newPopupWindowProperties,
+
+    -- ** PopupWindowProperties_PositionType
+    PopupWindowProperties_PositionType (..),
+
+    -- ** PostalCode
+    PostalCode (..),
+    newPostalCode,
+
+    -- ** PostalCodesListResponse
+    PostalCodesListResponse (..),
+    newPostalCodesListResponse,
+
+    -- ** Pricing
+    Pricing (..),
+    newPricing,
+
+    -- ** Pricing_CapCostType
+    Pricing_CapCostType (..),
+
+    -- ** Pricing_GroupType
+    Pricing_GroupType (..),
+
+    -- ** Pricing_PricingType
+    Pricing_PricingType (..),
+
+    -- ** PricingSchedule
+    PricingSchedule (..),
+    newPricingSchedule,
+
+    -- ** PricingSchedule_CapCostOption
+    PricingSchedule_CapCostOption (..),
+
+    -- ** PricingSchedule_PricingType
+    PricingSchedule_PricingType (..),
+
+    -- ** PricingSchedulePricingPeriod
+    PricingSchedulePricingPeriod (..),
+    newPricingSchedulePricingPeriod,
+
+    -- ** Project
+    Project (..),
+    newProject,
+
+    -- ** Project_AudienceAgeGroup
+    Project_AudienceAgeGroup (..),
+
+    -- ** Project_AudienceGender
+    Project_AudienceGender (..),
+
+    -- ** ProjectsListResponse
+    ProjectsListResponse (..),
+    newProjectsListResponse,
+
+    -- ** ReachReportCompatibleFields
+    ReachReportCompatibleFields (..),
+    newReachReportCompatibleFields,
+
+    -- ** Recipient
+    Recipient (..),
+    newRecipient,
+
+    -- ** Recipient_DeliveryType
+    Recipient_DeliveryType (..),
+
+    -- ** Region
+    Region (..),
+    newRegion,
+
+    -- ** RegionsListResponse
+    RegionsListResponse (..),
+    newRegionsListResponse,
+
+    -- ** RemarketingList
+    RemarketingList (..),
+    newRemarketingList,
+
+    -- ** RemarketingList_ListSource
+    RemarketingList_ListSource (..),
+
+    -- ** RemarketingListShare
+    RemarketingListShare (..),
+    newRemarketingListShare,
+
+    -- ** RemarketingListsListResponse
+    RemarketingListsListResponse (..),
+    newRemarketingListsListResponse,
+
+    -- ** Report
+    Report (..),
+    newReport,
+
+    -- ** Report_Criteria
+    Report_Criteria (..),
+    newReport_Criteria,
+
+    -- ** Report_CrossDimensionReachCriteria
+    Report_CrossDimensionReachCriteria (..),
+    newReport_CrossDimensionReachCriteria,
+
+    -- ** Report_CrossDimensionReachCriteria_Dimension
+    Report_CrossDimensionReachCriteria_Dimension (..),
+
+    -- ** Report_CrossMediaReachCriteria
+    Report_CrossMediaReachCriteria (..),
+    newReport_CrossMediaReachCriteria,
+
+    -- ** Report_Delivery
+    Report_Delivery (..),
+    newReport_Delivery,
+
+    -- ** Report_Delivery_EmailOwnerDeliveryType
+    Report_Delivery_EmailOwnerDeliveryType (..),
+
+    -- ** Report_FloodlightCriteria
+    Report_FloodlightCriteria (..),
+    newReport_FloodlightCriteria,
+
+    -- ** Report_FloodlightCriteria_ReportProperties
+    Report_FloodlightCriteria_ReportProperties (..),
+    newReport_FloodlightCriteria_ReportProperties,
+
+    -- ** Report_Format
+    Report_Format (..),
+
+    -- ** Report_PathToConversionCriteria
+    Report_PathToConversionCriteria (..),
+    newReport_PathToConversionCriteria,
+
+    -- ** Report_PathToConversionCriteria_ReportProperties
+    Report_PathToConversionCriteria_ReportProperties (..),
+    newReport_PathToConversionCriteria_ReportProperties,
+
+    -- ** Report_ReachCriteria
+    Report_ReachCriteria (..),
+    newReport_ReachCriteria,
+
+    -- ** Report_Schedule
+    Report_Schedule (..),
+    newReport_Schedule,
+
+    -- ** Report_Schedule_RepeatsOnWeekDaysItem
+    Report_Schedule_RepeatsOnWeekDaysItem (..),
+
+    -- ** Report_Schedule_RunsOnDayOfMonth
+    Report_Schedule_RunsOnDayOfMonth (..),
+
+    -- ** Report_Type
+    Report_Type (..),
+
+    -- ** ReportCompatibleFields
+    ReportCompatibleFields (..),
+    newReportCompatibleFields,
+
+    -- ** ReportList
+    ReportList (..),
+    newReportList,
+
+    -- ** ReportsConfiguration
+    ReportsConfiguration (..),
+    newReportsConfiguration,
+
+    -- ** RichMediaExitOverride
+    RichMediaExitOverride (..),
+    newRichMediaExitOverride,
+
+    -- ** Rule
+    Rule (..),
+    newRule,
+
+    -- ** Site
+    Site (..),
+    newSite,
+
+    -- ** SiteCompanionSetting
+    SiteCompanionSetting (..),
+    newSiteCompanionSetting,
+
+    -- ** SiteContact
+    SiteContact (..),
+    newSiteContact,
+
+    -- ** SiteContact_ContactType
+    SiteContact_ContactType (..),
+
+    -- ** SiteSettings
+    SiteSettings (..),
+    newSiteSettings,
+
+    -- ** SiteSettings_VpaidAdapterChoiceTemplate
+    SiteSettings_VpaidAdapterChoiceTemplate (..),
+
+    -- ** SiteSkippableSetting
+    SiteSkippableSetting (..),
+    newSiteSkippableSetting,
+
+    -- ** SiteTranscodeSetting
+    SiteTranscodeSetting (..),
+    newSiteTranscodeSetting,
+
+    -- ** SiteVideoSettings
+    SiteVideoSettings (..),
+    newSiteVideoSettings,
+
+    -- ** SiteVideoSettings_Orientation
+    SiteVideoSettings_Orientation (..),
+
+    -- ** SitesListResponse
+    SitesListResponse (..),
+    newSitesListResponse,
+
+    -- ** Size
+    Size (..),
+    newSize,
+
+    -- ** SizesListResponse
+    SizesListResponse (..),
+    newSizesListResponse,
+
+    -- ** SkippableSetting
+    SkippableSetting (..),
+    newSkippableSetting,
+
+    -- ** SortedDimension
+    SortedDimension (..),
+    newSortedDimension,
+
+    -- ** SortedDimension_SortOrder
+    SortedDimension_SortOrder (..),
+
+    -- ** Subaccount
+    Subaccount (..),
+    newSubaccount,
+
+    -- ** SubaccountsListResponse
+    SubaccountsListResponse (..),
+    newSubaccountsListResponse,
+
+    -- ** TagData
+    TagData (..),
+    newTagData,
+
+    -- ** TagData_Format
+    TagData_Format (..),
+
+    -- ** TagSetting
+    TagSetting (..),
+    newTagSetting,
+
+    -- ** TagSetting_KeywordOption
+    TagSetting_KeywordOption (..),
+
+    -- ** TagSettings
+    TagSettings (..),
+    newTagSettings,
+
+    -- ** TargetWindow
+    TargetWindow (..),
+    newTargetWindow,
+
+    -- ** TargetWindow_TargetWindowOption
+    TargetWindow_TargetWindowOption (..),
+
+    -- ** TargetableRemarketingList
+    TargetableRemarketingList (..),
+    newTargetableRemarketingList,
+
+    -- ** TargetableRemarketingList_ListSource
+    TargetableRemarketingList_ListSource (..),
+
+    -- ** TargetableRemarketingListsListResponse
+    TargetableRemarketingListsListResponse (..),
+    newTargetableRemarketingListsListResponse,
+
+    -- ** TargetingTemplate
+    TargetingTemplate (..),
+    newTargetingTemplate,
+
+    -- ** TargetingTemplatesListResponse
+    TargetingTemplatesListResponse (..),
+    newTargetingTemplatesListResponse,
+
+    -- ** TechnologyTargeting
+    TechnologyTargeting (..),
+    newTechnologyTargeting,
+
+    -- ** ThirdPartyAuthenticationToken
+    ThirdPartyAuthenticationToken (..),
+    newThirdPartyAuthenticationToken,
+
+    -- ** ThirdPartyTrackingUrl
+    ThirdPartyTrackingUrl (..),
+    newThirdPartyTrackingUrl,
+
+    -- ** ThirdPartyTrackingUrl_ThirdPartyUrlType
+    ThirdPartyTrackingUrl_ThirdPartyUrlType (..),
+
+    -- ** TranscodeSetting
+    TranscodeSetting (..),
+    newTranscodeSetting,
+
+    -- ** TvCampaignDetail
+    TvCampaignDetail (..),
+    newTvCampaignDetail,
+
+    -- ** TvCampaignSummariesListResponse
+    TvCampaignSummariesListResponse (..),
+    newTvCampaignSummariesListResponse,
+
+    -- ** TvCampaignSummary
+    TvCampaignSummary (..),
+    newTvCampaignSummary,
+
+    -- ** TvCampaignSummary_Type
+    TvCampaignSummary_Type (..),
+
+    -- ** TvCampaignTimepoint
+    TvCampaignTimepoint (..),
+    newTvCampaignTimepoint,
+
+    -- ** TvCampaignTimepoint_DateWindow
+    TvCampaignTimepoint_DateWindow (..),
+
+    -- ** UniversalAdId
+    UniversalAdId (..),
+    newUniversalAdId,
+
+    -- ** UniversalAdId_Registry
+    UniversalAdId_Registry (..),
+
+    -- ** UserDefinedVariableConfiguration
+    UserDefinedVariableConfiguration (..),
+    newUserDefinedVariableConfiguration,
+
+    -- ** UserDefinedVariableConfiguration_DataType
+    UserDefinedVariableConfiguration_DataType (..),
+
+    -- ** UserDefinedVariableConfiguration_VariableType
+    UserDefinedVariableConfiguration_VariableType (..),
+
+    -- ** UserIdentifier
+    UserIdentifier (..),
+    newUserIdentifier,
+
+    -- ** UserProfile
+    UserProfile (..),
+    newUserProfile,
+
+    -- ** UserProfileList
+    UserProfileList (..),
+    newUserProfileList,
+
+    -- ** UserRole
+    UserRole (..),
+    newUserRole,
+
+    -- ** UserRolePermission
+    UserRolePermission (..),
+    newUserRolePermission,
+
+    -- ** UserRolePermission_Availability
+    UserRolePermission_Availability (..),
+
+    -- ** UserRolePermissionGroup
+    UserRolePermissionGroup (..),
+    newUserRolePermissionGroup,
+
+    -- ** UserRolePermissionGroupsListResponse
+    UserRolePermissionGroupsListResponse (..),
+    newUserRolePermissionGroupsListResponse,
+
+    -- ** UserRolePermissionsListResponse
+    UserRolePermissionsListResponse (..),
+    newUserRolePermissionsListResponse,
+
+    -- ** UserRolesListResponse
+    UserRolesListResponse (..),
+    newUserRolesListResponse,
+
+    -- ** VideoFormat
+    VideoFormat (..),
+    newVideoFormat,
+
+    -- ** VideoFormat_FileType
+    VideoFormat_FileType (..),
+
+    -- ** VideoFormatsListResponse
+    VideoFormatsListResponse (..),
+    newVideoFormatsListResponse,
+
+    -- ** VideoOffset
+    VideoOffset (..),
+    newVideoOffset,
+
+    -- ** VideoSettings
+    VideoSettings (..),
+    newVideoSettings,
+
+    -- ** VideoSettings_Orientation
+    VideoSettings_Orientation (..),
+
+    -- ** AccountUserProfilesListSortField
+    AccountUserProfilesListSortField (..),
+
+    -- ** AccountUserProfilesListSortOrder
+    AccountUserProfilesListSortOrder (..),
+
+    -- ** AccountsListSortField
+    AccountsListSortField (..),
+
+    -- ** AccountsListSortOrder
+    AccountsListSortOrder (..),
+
+    -- ** AdsListCompatibility
+    AdsListCompatibility (..),
+
+    -- ** AdsListSortField
+    AdsListSortField (..),
+
+    -- ** AdsListSortOrder
+    AdsListSortOrder (..),
+
+    -- ** AdsListType
+    AdsListType (..),
+
+    -- ** AdvertiserGroupsListSortField
+    AdvertiserGroupsListSortField (..),
+
+    -- ** AdvertiserGroupsListSortOrder
+    AdvertiserGroupsListSortOrder (..),
+
+    -- ** AdvertiserLandingPagesListSortField
+    AdvertiserLandingPagesListSortField (..),
+
+    -- ** AdvertiserLandingPagesListSortOrder
+    AdvertiserLandingPagesListSortOrder (..),
+
+    -- ** AdvertisersListSortField
+    AdvertisersListSortField (..),
+
+    -- ** AdvertisersListSortOrder
+    AdvertisersListSortOrder (..),
+
+    -- ** AdvertisersListStatus
+    AdvertisersListStatus (..),
+
+    -- ** BillingProfilesListSortField
+    BillingProfilesListSortField (..),
+
+    -- ** BillingProfilesListSortOrder
+    BillingProfilesListSortOrder (..),
+
+    -- ** BillingProfilesListStatus
+    BillingProfilesListStatus (..),
+
+    -- ** CampaignCreativeAssociationsListSortOrder
+    CampaignCreativeAssociationsListSortOrder (..),
+
+    -- ** CampaignsListSortField
+    CampaignsListSortField (..),
+
+    -- ** CampaignsListSortOrder
+    CampaignsListSortOrder (..),
+
+    -- ** ChangeLogsListAction
+    ChangeLogsListAction (..),
+
+    -- ** ChangeLogsListObjectType
+    ChangeLogsListObjectType (..),
+
+    -- ** ContentCategoriesListSortField
+    ContentCategoriesListSortField (..),
+
+    -- ** ContentCategoriesListSortOrder
+    ContentCategoriesListSortOrder (..),
+
+    -- ** CreativeFieldValuesListSortField
+    CreativeFieldValuesListSortField (..),
+
+    -- ** CreativeFieldValuesListSortOrder
+    CreativeFieldValuesListSortOrder (..),
+
+    -- ** CreativeFieldsListSortField
+    CreativeFieldsListSortField (..),
+
+    -- ** CreativeFieldsListSortOrder
+    CreativeFieldsListSortOrder (..),
+
+    -- ** CreativeGroupsListSortField
+    CreativeGroupsListSortField (..),
+
+    -- ** CreativeGroupsListSortOrder
+    CreativeGroupsListSortOrder (..),
+
+    -- ** CreativesListSortField
+    CreativesListSortField (..),
+
+    -- ** CreativesListSortOrder
+    CreativesListSortOrder (..),
+
+    -- ** CreativesListTypes
+    CreativesListTypes (..),
+
+    -- ** DirectorySitesListSortField
+    DirectorySitesListSortField (..),
+
+    -- ** DirectorySitesListSortOrder
+    DirectorySitesListSortOrder (..),
+
+    -- ** DynamicTargetingKeysDeleteObjectType
+    DynamicTargetingKeysDeleteObjectType (..),
+
+    -- ** DynamicTargetingKeysListObjectType
+    DynamicTargetingKeysListObjectType (..),
+
+    -- ** EventTagsListEventTagTypes
+    EventTagsListEventTagTypes (..),
+
+    -- ** EventTagsListSortField
+    EventTagsListSortField (..),
+
+    -- ** EventTagsListSortOrder
+    EventTagsListSortOrder (..),
+
+    -- ** FilesListScope
+    FilesListScope (..),
+
+    -- ** FilesListSortField
+    FilesListSortField (..),
+
+    -- ** FilesListSortOrder
+    FilesListSortOrder (..),
+
+    -- ** FloodlightActivitiesListFloodlightActivityGroupType
+    FloodlightActivitiesListFloodlightActivityGroupType (..),
+
+    -- ** FloodlightActivitiesListSortField
+    FloodlightActivitiesListSortField (..),
+
+    -- ** FloodlightActivitiesListSortOrder
+    FloodlightActivitiesListSortOrder (..),
+
+    -- ** FloodlightActivityGroupsListSortField
+    FloodlightActivityGroupsListSortField (..),
+
+    -- ** FloodlightActivityGroupsListSortOrder
+    FloodlightActivityGroupsListSortOrder (..),
+
+    -- ** FloodlightActivityGroupsListType
+    FloodlightActivityGroupsListType (..),
+
+    -- ** InventoryItemsListSortField
+    InventoryItemsListSortField (..),
+
+    -- ** InventoryItemsListSortOrder
+    InventoryItemsListSortOrder (..),
+
+    -- ** InventoryItemsListType
+    InventoryItemsListType (..),
+
+    -- ** MobileAppsListDirectories
+    MobileAppsListDirectories (..),
+
+    -- ** OrdersListSortField
+    OrdersListSortField (..),
+
+    -- ** OrdersListSortOrder
+    OrdersListSortOrder (..),
+
+    -- ** PlacementGroupsListActiveStatus
+    PlacementGroupsListActiveStatus (..),
+
+    -- ** PlacementGroupsListPlacementGroupType
+    PlacementGroupsListPlacementGroupType (..),
+
+    -- ** PlacementGroupsListPricingTypes
+    PlacementGroupsListPricingTypes (..),
+
+    -- ** PlacementGroupsListSortField
+    PlacementGroupsListSortField (..),
+
+    -- ** PlacementGroupsListSortOrder
+    PlacementGroupsListSortOrder (..),
+
+    -- ** PlacementStrategiesListSortField
+    PlacementStrategiesListSortField (..),
+
+    -- ** PlacementStrategiesListSortOrder
+    PlacementStrategiesListSortOrder (..),
+
+    -- ** PlacementsGeneratetagsTagFormats
+    PlacementsGeneratetagsTagFormats (..),
+
+    -- ** PlacementsListActiveStatus
+    PlacementsListActiveStatus (..),
+
+    -- ** PlacementsListCompatibilities
+    PlacementsListCompatibilities (..),
+
+    -- ** PlacementsListPaymentSource
+    PlacementsListPaymentSource (..),
+
+    -- ** PlacementsListPricingTypes
+    PlacementsListPricingTypes (..),
+
+    -- ** PlacementsListSortField
+    PlacementsListSortField (..),
+
+    -- ** PlacementsListSortOrder
+    PlacementsListSortOrder (..),
+
+    -- ** ProjectsListSortField
+    ProjectsListSortField (..),
+
+    -- ** ProjectsListSortOrder
+    ProjectsListSortOrder (..),
+
+    -- ** RemarketingListsListSortField
+    RemarketingListsListSortField (..),
+
+    -- ** RemarketingListsListSortOrder
+    RemarketingListsListSortOrder (..),
+
+    -- ** ReportsFilesListSortField
+    ReportsFilesListSortField (..),
+
+    -- ** ReportsFilesListSortOrder
+    ReportsFilesListSortOrder (..),
+
+    -- ** ReportsListScope
+    ReportsListScope (..),
+
+    -- ** ReportsListSortField
+    ReportsListSortField (..),
+
+    -- ** ReportsListSortOrder
+    ReportsListSortOrder (..),
+
+    -- ** SitesListSortField
+    SitesListSortField (..),
+
+    -- ** SitesListSortOrder
+    SitesListSortOrder (..),
+
+    -- ** SubaccountsListSortField
+    SubaccountsListSortField (..),
+
+    -- ** SubaccountsListSortOrder
+    SubaccountsListSortOrder (..),
+
+    -- ** TargetableRemarketingListsListSortField
+    TargetableRemarketingListsListSortField (..),
+
+    -- ** TargetableRemarketingListsListSortOrder
+    TargetableRemarketingListsListSortOrder (..),
+
+    -- ** TargetingTemplatesListSortField
+    TargetingTemplatesListSortField (..),
+
+    -- ** TargetingTemplatesListSortOrder
+    TargetingTemplatesListSortOrder (..),
+
+    -- ** UserRolesListSortField
+    UserRolesListSortField (..),
+
+    -- ** UserRolesListSortOrder
+    UserRolesListSortOrder (..),
+  )
+where
+
+import Gogol.DFAReporting.Internal.Product
+import Gogol.DFAReporting.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Default request referring to version @v4@ of the Campaign Manager 360 API. This contains the host and root path used as a starting point for constructing service requests.
+dFAReportingService :: Core.ServiceConfig
+dFAReportingService =
+  Core.defaultService
+    (Core.ServiceId "dfareporting:v4")
+    "dfareporting.googleapis.com"
+
+-- | Manage DoubleClick Digital Marketing conversions
+type Ddmconversions'FullControl =
+  "https://www.googleapis.com/auth/ddmconversions"
+
+-- | View and manage DoubleClick for Advertisers reports
+type Dfareporting'FullControl =
+  "https://www.googleapis.com/auth/dfareporting"
+
+-- | View and manage your DoubleClick Campaign Manager\'s (DCM) display ad campaigns
+type Dfatrafficking'FullControl =
+  "https://www.googleapis.com/auth/dfatrafficking"
diff --git a/gen/Gogol/DFAReporting/UserProfiles/Get.hs b/gen/Gogol/DFAReporting/UserProfiles/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserProfiles/Get.hs
@@ -0,0 +1,114 @@
+{-# 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.DFAReporting.UserProfiles.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one user profile by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userProfiles.get@.
+module Gogol.DFAReporting.UserProfiles.Get
+  ( -- * Resource
+    DFAReportingUserProfilesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserProfilesGet (..),
+    newDFAReportingUserProfilesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userProfiles.get@ method which the
+-- 'DFAReportingUserProfilesGet' request conforms to.
+type DFAReportingUserProfilesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" 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] UserProfile
+
+-- | Gets one user profile by ID.
+--
+-- /See:/ 'newDFAReportingUserProfilesGet' smart constructor.
+data DFAReportingUserProfilesGet = DFAReportingUserProfilesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The user profile ID.
+    profileId :: 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 'DFAReportingUserProfilesGet' with the minimum fields required to make a request.
+newDFAReportingUserProfilesGet ::
+  -- |  The user profile ID. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserProfilesGet
+newDFAReportingUserProfilesGet profileId =
+  DFAReportingUserProfilesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserProfilesGet where
+  type Rs DFAReportingUserProfilesGet = UserProfile
+  type
+    Scopes DFAReportingUserProfilesGet =
+      '[ Ddmconversions'FullControl,
+         Dfareporting'FullControl,
+         Dfatrafficking'FullControl
+       ]
+  requestClient DFAReportingUserProfilesGet {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserProfilesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserProfiles/List.hs b/gen/Gogol/DFAReporting/UserProfiles/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserProfiles/List.hs
@@ -0,0 +1,107 @@
+{-# 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.DFAReporting.UserProfiles.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)
+--
+-- Retrieves list of user profiles for a user.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userProfiles.list@.
+module Gogol.DFAReporting.UserProfiles.List
+  ( -- * Resource
+    DFAReportingUserProfilesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserProfilesList (..),
+    newDFAReportingUserProfilesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userProfiles.list@ method which the
+-- 'DFAReportingUserProfilesList' request conforms to.
+type DFAReportingUserProfilesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    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] UserProfileList
+
+-- | Retrieves list of user profiles for a user.
+--
+-- /See:/ 'newDFAReportingUserProfilesList' smart constructor.
+data DFAReportingUserProfilesList = DFAReportingUserProfilesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (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 'DFAReportingUserProfilesList' with the minimum fields required to make a request.
+newDFAReportingUserProfilesList ::
+  DFAReportingUserProfilesList
+newDFAReportingUserProfilesList =
+  DFAReportingUserProfilesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserProfilesList where
+  type Rs DFAReportingUserProfilesList = UserProfileList
+  type
+    Scopes DFAReportingUserProfilesList =
+      '[ Ddmconversions'FullControl,
+         Dfareporting'FullControl,
+         Dfatrafficking'FullControl
+       ]
+  requestClient DFAReportingUserProfilesList {..} =
+    go
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserProfilesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRolePermissionGroups/Get.hs b/gen/Gogol/DFAReporting/UserRolePermissionGroups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRolePermissionGroups/Get.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRolePermissionGroups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one user role permission group by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRolePermissionGroups.get@.
+module Gogol.DFAReporting.UserRolePermissionGroups.Get
+  ( -- * Resource
+    DFAReportingUserRolePermissionGroupsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolePermissionGroupsGet (..),
+    newDFAReportingUserRolePermissionGroupsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRolePermissionGroups.get@ method which the
+-- 'DFAReportingUserRolePermissionGroupsGet' request conforms to.
+type DFAReportingUserRolePermissionGroupsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRolePermissionGroups"
+    Core.:> Core.Capture "id" 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] UserRolePermissionGroup
+
+-- | Gets one user role permission group by ID.
+--
+-- /See:/ 'newDFAReportingUserRolePermissionGroupsGet' smart constructor.
+data DFAReportingUserRolePermissionGroupsGet = DFAReportingUserRolePermissionGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User role permission group ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolePermissionGroupsGet' with the minimum fields required to make a request.
+newDFAReportingUserRolePermissionGroupsGet ::
+  -- |  User role permission group ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolePermissionGroupsGet
+newDFAReportingUserRolePermissionGroupsGet id profileId =
+  DFAReportingUserRolePermissionGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolePermissionGroupsGet where
+  type
+    Rs DFAReportingUserRolePermissionGroupsGet =
+      UserRolePermissionGroup
+  type
+    Scopes DFAReportingUserRolePermissionGroupsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolePermissionGroupsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingUserRolePermissionGroupsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRolePermissionGroups/List.hs b/gen/Gogol/DFAReporting/UserRolePermissionGroups/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRolePermissionGroups/List.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRolePermissionGroups.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)
+--
+-- Gets a list of all supported user role permission groups.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRolePermissionGroups.list@.
+module Gogol.DFAReporting.UserRolePermissionGroups.List
+  ( -- * Resource
+    DFAReportingUserRolePermissionGroupsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolePermissionGroupsList (..),
+    newDFAReportingUserRolePermissionGroupsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRolePermissionGroups.list@ method which the
+-- 'DFAReportingUserRolePermissionGroupsList' request conforms to.
+type DFAReportingUserRolePermissionGroupsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRolePermissionGroups"
+    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] UserRolePermissionGroupsListResponse
+
+-- | Gets a list of all supported user role permission groups.
+--
+-- /See:/ 'newDFAReportingUserRolePermissionGroupsList' smart constructor.
+data DFAReportingUserRolePermissionGroupsList = DFAReportingUserRolePermissionGroupsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolePermissionGroupsList' with the minimum fields required to make a request.
+newDFAReportingUserRolePermissionGroupsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolePermissionGroupsList
+newDFAReportingUserRolePermissionGroupsList profileId =
+  DFAReportingUserRolePermissionGroupsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    DFAReportingUserRolePermissionGroupsList
+  where
+  type
+    Rs DFAReportingUserRolePermissionGroupsList =
+      UserRolePermissionGroupsListResponse
+  type
+    Scopes DFAReportingUserRolePermissionGroupsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolePermissionGroupsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingUserRolePermissionGroupsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRolePermissions/Get.hs b/gen/Gogol/DFAReporting/UserRolePermissions/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRolePermissions/Get.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRolePermissions.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one user role permission by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRolePermissions.get@.
+module Gogol.DFAReporting.UserRolePermissions.Get
+  ( -- * Resource
+    DFAReportingUserRolePermissionsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolePermissionsGet (..),
+    newDFAReportingUserRolePermissionsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRolePermissions.get@ method which the
+-- 'DFAReportingUserRolePermissionsGet' request conforms to.
+type DFAReportingUserRolePermissionsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRolePermissions"
+    Core.:> Core.Capture "id" 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] UserRolePermission
+
+-- | Gets one user role permission by ID.
+--
+-- /See:/ 'newDFAReportingUserRolePermissionsGet' smart constructor.
+data DFAReportingUserRolePermissionsGet = DFAReportingUserRolePermissionsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User role permission ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolePermissionsGet' with the minimum fields required to make a request.
+newDFAReportingUserRolePermissionsGet ::
+  -- |  User role permission ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolePermissionsGet
+newDFAReportingUserRolePermissionsGet id profileId =
+  DFAReportingUserRolePermissionsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolePermissionsGet where
+  type Rs DFAReportingUserRolePermissionsGet = UserRolePermission
+  type
+    Scopes DFAReportingUserRolePermissionsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolePermissionsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingUserRolePermissionsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRolePermissions/List.hs b/gen/Gogol/DFAReporting/UserRolePermissions/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRolePermissions/List.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRolePermissions.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)
+--
+-- Gets a list of user role permissions, possibly filtered.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRolePermissions.list@.
+module Gogol.DFAReporting.UserRolePermissions.List
+  ( -- * Resource
+    DFAReportingUserRolePermissionsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolePermissionsList (..),
+    newDFAReportingUserRolePermissionsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRolePermissions.list@ method which the
+-- 'DFAReportingUserRolePermissionsList' request conforms to.
+type DFAReportingUserRolePermissionsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRolePermissions"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] UserRolePermissionsListResponse
+
+-- | Gets a list of user role permissions, possibly filtered.
+--
+-- /See:/ 'newDFAReportingUserRolePermissionsList' smart constructor.
+data DFAReportingUserRolePermissionsList = DFAReportingUserRolePermissionsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only user role permissions with these IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolePermissionsList' with the minimum fields required to make a request.
+newDFAReportingUserRolePermissionsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolePermissionsList
+newDFAReportingUserRolePermissionsList profileId =
+  DFAReportingUserRolePermissionsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolePermissionsList where
+  type
+    Rs DFAReportingUserRolePermissionsList =
+      UserRolePermissionsListResponse
+  type
+    Scopes DFAReportingUserRolePermissionsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolePermissionsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      (ids Core.^. Core._Default)
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy DFAReportingUserRolePermissionsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/Delete.hs b/gen/Gogol/DFAReporting/UserRoles/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/Delete.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRoles.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 user role.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.delete@.
+module Gogol.DFAReporting.UserRoles.Delete
+  ( -- * Resource
+    DFAReportingUserRolesDeleteResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesDelete (..),
+    newDFAReportingUserRolesDelete,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.delete@ method which the
+-- 'DFAReportingUserRolesDelete' request conforms to.
+type DFAReportingUserRolesDeleteResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    Core.:> Core.Capture "id" 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 user role.
+--
+-- /See:/ 'newDFAReportingUserRolesDelete' smart constructor.
+data DFAReportingUserRolesDelete = DFAReportingUserRolesDelete
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User role ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolesDelete' with the minimum fields required to make a request.
+newDFAReportingUserRolesDelete ::
+  -- |  User role ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesDelete
+newDFAReportingUserRolesDelete id profileId =
+  DFAReportingUserRolesDelete
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesDelete where
+  type Rs DFAReportingUserRolesDelete = ()
+  type
+    Scopes DFAReportingUserRolesDelete =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesDelete {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesDeleteResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/Get.hs b/gen/Gogol/DFAReporting/UserRoles/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRoles.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one user role by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.get@.
+module Gogol.DFAReporting.UserRoles.Get
+  ( -- * Resource
+    DFAReportingUserRolesGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesGet (..),
+    newDFAReportingUserRolesGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.get@ method which the
+-- 'DFAReportingUserRolesGet' request conforms to.
+type DFAReportingUserRolesGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    Core.:> Core.Capture "id" 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] UserRole
+
+-- | Gets one user role by ID.
+--
+-- /See:/ 'newDFAReportingUserRolesGet' smart constructor.
+data DFAReportingUserRolesGet = DFAReportingUserRolesGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User role ID.
+    id :: Core.Int64,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolesGet' with the minimum fields required to make a request.
+newDFAReportingUserRolesGet ::
+  -- |  User role ID. See 'id'.
+  Core.Int64 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesGet
+newDFAReportingUserRolesGet id profileId =
+  DFAReportingUserRolesGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesGet where
+  type Rs DFAReportingUserRolesGet = UserRole
+  type
+    Scopes DFAReportingUserRolesGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/Insert.hs b/gen/Gogol/DFAReporting/UserRoles/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/Insert.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRoles.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Inserts a new user role.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.insert@.
+module Gogol.DFAReporting.UserRoles.Insert
+  ( -- * Resource
+    DFAReportingUserRolesInsertResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesInsert (..),
+    newDFAReportingUserRolesInsert,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.insert@ method which the
+-- 'DFAReportingUserRolesInsert' request conforms to.
+type DFAReportingUserRolesInsertResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    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] UserRole
+    Core.:> Core.Post '[Core.JSON] UserRole
+
+-- | Inserts a new user role.
+--
+-- /See:/ 'newDFAReportingUserRolesInsert' smart constructor.
+data DFAReportingUserRolesInsert = DFAReportingUserRolesInsert
+  { -- | 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 :: UserRole,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolesInsert' with the minimum fields required to make a request.
+newDFAReportingUserRolesInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  UserRole ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesInsert
+newDFAReportingUserRolesInsert payload profileId =
+  DFAReportingUserRolesInsert
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesInsert where
+  type Rs DFAReportingUserRolesInsert = UserRole
+  type
+    Scopes DFAReportingUserRolesInsert =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesInsert {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/List.hs b/gen/Gogol/DFAReporting/UserRoles/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/List.hs
@@ -0,0 +1,152 @@
+{-# 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.DFAReporting.UserRoles.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)
+--
+-- Retrieves a list of user roles, possibly filtered. This method supports paging.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.list@.
+module Gogol.DFAReporting.UserRoles.List
+  ( -- * Resource
+    DFAReportingUserRolesListResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesList (..),
+    newDFAReportingUserRolesList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.list@ method which the
+-- 'DFAReportingUserRolesList' request conforms to.
+type DFAReportingUserRolesListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "accountUserRoleOnly" Core.Bool
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "ids" Core.Int64
+    Core.:> Core.QueryParam "maxResults" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "searchString" Core.Text
+    Core.:> Core.QueryParam "sortField" UserRolesListSortField
+    Core.:> Core.QueryParam "sortOrder" UserRolesListSortOrder
+    Core.:> Core.QueryParam "subaccountId" Core.Int64
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] UserRolesListResponse
+
+-- | Retrieves a list of user roles, possibly filtered. This method supports paging.
+--
+-- /See:/ 'newDFAReportingUserRolesList' smart constructor.
+data DFAReportingUserRolesList = DFAReportingUserRolesList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Select only account level user roles not associated with any specific subaccount.
+    accountUserRoleOnly :: (Core.Maybe Core.Bool),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Select only user roles with the specified IDs.
+    ids :: (Core.Maybe [Core.Int64]),
+    -- | Maximum number of results to return.
+    maxResults :: Core.Int32,
+    -- | Value of the nextPageToken from the previous result page.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: Core.Int64,
+    -- | Allows searching for objects by name or ID. Wildcards (/) are allowed. For example, \"userrole/2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".
+    searchString :: (Core.Maybe Core.Text),
+    -- | Field by which to sort the list.
+    sortField :: UserRolesListSortField,
+    -- | Order of sorted results.
+    sortOrder :: UserRolesListSortOrder,
+    -- | Select only user roles that belong to this subaccount.
+    subaccountId :: (Core.Maybe 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 'DFAReportingUserRolesList' with the minimum fields required to make a request.
+newDFAReportingUserRolesList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesList
+newDFAReportingUserRolesList profileId =
+  DFAReportingUserRolesList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      accountUserRoleOnly = Core.Nothing,
+      callback = Core.Nothing,
+      ids = Core.Nothing,
+      maxResults = 1000,
+      pageToken = Core.Nothing,
+      profileId = profileId,
+      searchString = Core.Nothing,
+      sortField = UserRolesListSortField_ID,
+      sortOrder = UserRolesListSortOrder_Ascending,
+      subaccountId = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesList where
+  type Rs DFAReportingUserRolesList = UserRolesListResponse
+  type
+    Scopes DFAReportingUserRolesList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      accountUserRoleOnly
+      callback
+      (ids Core.^. Core._Default)
+      (Core.Just maxResults)
+      pageToken
+      searchString
+      (Core.Just sortField)
+      (Core.Just sortOrder)
+      subaccountId
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesListResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/Patch.hs b/gen/Gogol/DFAReporting/UserRoles/Patch.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/Patch.hs
@@ -0,0 +1,126 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRoles.Patch
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing user role. This method supports patch semantics.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.patch@.
+module Gogol.DFAReporting.UserRoles.Patch
+  ( -- * Resource
+    DFAReportingUserRolesPatchResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesPatch (..),
+    newDFAReportingUserRolesPatch,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.patch@ method which the
+-- 'DFAReportingUserRolesPatch' request conforms to.
+type DFAReportingUserRolesPatchResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    Core.:> Core.QueryParam "id" 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.ReqBody '[Core.JSON] UserRole
+    Core.:> Core.Patch '[Core.JSON] UserRole
+
+-- | Updates an existing user role. This method supports patch semantics.
+--
+-- /See:/ 'newDFAReportingUserRolesPatch' smart constructor.
+data DFAReportingUserRolesPatch = DFAReportingUserRolesPatch
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. UserRole ID.
+    id :: Core.Int64,
+    -- | Multipart request metadata.
+    payload :: UserRole,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolesPatch' with the minimum fields required to make a request.
+newDFAReportingUserRolesPatch ::
+  -- |  Required. UserRole ID. See 'id'.
+  Core.Int64 ->
+  -- |  Multipart request metadata. See 'payload'.
+  UserRole ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesPatch
+newDFAReportingUserRolesPatch id payload profileId =
+  DFAReportingUserRolesPatch
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesPatch where
+  type Rs DFAReportingUserRolesPatch = UserRole
+  type
+    Scopes DFAReportingUserRolesPatch =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesPatch {..} =
+    go
+      profileId
+      (Core.Just id)
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesPatchResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/UserRoles/Update.hs b/gen/Gogol/DFAReporting/UserRoles/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/UserRoles/Update.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.UserRoles.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates an existing user role.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.userRoles.update@.
+module Gogol.DFAReporting.UserRoles.Update
+  ( -- * Resource
+    DFAReportingUserRolesUpdateResource,
+
+    -- ** Constructing a Request
+    DFAReportingUserRolesUpdate (..),
+    newDFAReportingUserRolesUpdate,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.userRoles.update@ method which the
+-- 'DFAReportingUserRolesUpdate' request conforms to.
+type DFAReportingUserRolesUpdateResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "userRoles"
+    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] UserRole
+    Core.:> Core.Put '[Core.JSON] UserRole
+
+-- | Updates an existing user role.
+--
+-- /See:/ 'newDFAReportingUserRolesUpdate' smart constructor.
+data DFAReportingUserRolesUpdate = DFAReportingUserRolesUpdate
+  { -- | 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 :: UserRole,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingUserRolesUpdate' with the minimum fields required to make a request.
+newDFAReportingUserRolesUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  UserRole ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingUserRolesUpdate
+newDFAReportingUserRolesUpdate payload profileId =
+  DFAReportingUserRolesUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingUserRolesUpdate where
+  type Rs DFAReportingUserRolesUpdate = UserRole
+  type
+    Scopes DFAReportingUserRolesUpdate =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingUserRolesUpdate {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingUserRolesUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/VideoFormats/Get.hs b/gen/Gogol/DFAReporting/VideoFormats/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/VideoFormats/Get.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.DFAReporting.VideoFormats.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Gets one video format by ID.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.videoFormats.get@.
+module Gogol.DFAReporting.VideoFormats.Get
+  ( -- * Resource
+    DFAReportingVideoFormatsGetResource,
+
+    -- ** Constructing a Request
+    DFAReportingVideoFormatsGet (..),
+    newDFAReportingVideoFormatsGet,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.videoFormats.get@ method which the
+-- 'DFAReportingVideoFormatsGet' request conforms to.
+type DFAReportingVideoFormatsGetResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "videoFormats"
+    Core.:> Core.Capture "id" Core.Int32
+    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] VideoFormat
+
+-- | Gets one video format by ID.
+--
+-- /See:/ 'newDFAReportingVideoFormatsGet' smart constructor.
+data DFAReportingVideoFormatsGet = DFAReportingVideoFormatsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Video format ID.
+    id :: Core.Int32,
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingVideoFormatsGet' with the minimum fields required to make a request.
+newDFAReportingVideoFormatsGet ::
+  -- |  Video format ID. See 'id'.
+  Core.Int32 ->
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingVideoFormatsGet
+newDFAReportingVideoFormatsGet id profileId =
+  DFAReportingVideoFormatsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      id = id,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingVideoFormatsGet where
+  type Rs DFAReportingVideoFormatsGet = VideoFormat
+  type
+    Scopes DFAReportingVideoFormatsGet =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingVideoFormatsGet {..} =
+    go
+      profileId
+      id
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingVideoFormatsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/DFAReporting/VideoFormats/List.hs b/gen/Gogol/DFAReporting/VideoFormats/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/DFAReporting/VideoFormats/List.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.DFAReporting.VideoFormats.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 available video formats.
+--
+-- /See:/ <https://developers.google.com/doubleclick-advertisers/ Campaign Manager 360 API Reference> for @dfareporting.videoFormats.list@.
+module Gogol.DFAReporting.VideoFormats.List
+  ( -- * Resource
+    DFAReportingVideoFormatsListResource,
+
+    -- ** Constructing a Request
+    DFAReportingVideoFormatsList (..),
+    newDFAReportingVideoFormatsList,
+  )
+where
+
+import Gogol.DFAReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @dfareporting.videoFormats.list@ method which the
+-- 'DFAReportingVideoFormatsList' request conforms to.
+type DFAReportingVideoFormatsListResource =
+  "dfareporting"
+    Core.:> "v4"
+    Core.:> "userprofiles"
+    Core.:> Core.Capture "profileId" Core.Int64
+    Core.:> "videoFormats"
+    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] VideoFormatsListResponse
+
+-- | Lists available video formats.
+--
+-- /See:/ 'newDFAReportingVideoFormatsList' smart constructor.
+data DFAReportingVideoFormatsList = DFAReportingVideoFormatsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | User profile ID associated with this request.
+    profileId :: 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 'DFAReportingVideoFormatsList' with the minimum fields required to make a request.
+newDFAReportingVideoFormatsList ::
+  -- |  User profile ID associated with this request. See 'profileId'.
+  Core.Int64 ->
+  DFAReportingVideoFormatsList
+newDFAReportingVideoFormatsList profileId =
+  DFAReportingVideoFormatsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      profileId = profileId,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest DFAReportingVideoFormatsList where
+  type Rs DFAReportingVideoFormatsList = VideoFormatsListResponse
+  type
+    Scopes DFAReportingVideoFormatsList =
+      '[Dfatrafficking'FullControl]
+  requestClient DFAReportingVideoFormatsList {..} =
+    go
+      profileId
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      dFAReportingService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy DFAReportingVideoFormatsListResource)
+          Core.mempty
diff --git a/gen/Network/Google/DFAReporting.hs b/gen/Network/Google/DFAReporting.hs
deleted file mode 100644
--- a/gen/Network/Google/DFAReporting.hs
+++ /dev/null
@@ -1,3890 +0,0 @@
-{-# LANGUAGE DataKinds         #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TypeOperators     #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-
--- |
--- Module      : Network.Google.DFAReporting
--- 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)
---
--- Manages your DoubleClick Campaign Manager ad campaigns and reports.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference>
-module Network.Google.DFAReporting
-    (
-    -- * Service Configuration
-      dFAReportingService
-
-    -- * OAuth Scopes
-    , dFAReportingScope
-    , ddmconversionsScope
-    , dfatraffickingScope
-
-    -- * API Declaration
-    , DFAReportingAPI
-
-    -- * Resources
-
-    -- ** dfareporting.accountActiveAdSummaries.get
-    , module Network.Google.Resource.DFAReporting.AccountActiveAdSummaries.Get
-
-    -- ** dfareporting.accountPermissionGroups.get
-    , module Network.Google.Resource.DFAReporting.AccountPermissionGroups.Get
-
-    -- ** dfareporting.accountPermissionGroups.list
-    , module Network.Google.Resource.DFAReporting.AccountPermissionGroups.List
-
-    -- ** dfareporting.accountPermissions.get
-    , module Network.Google.Resource.DFAReporting.AccountPermissions.Get
-
-    -- ** dfareporting.accountPermissions.list
-    , module Network.Google.Resource.DFAReporting.AccountPermissions.List
-
-    -- ** dfareporting.accountUserProfiles.get
-    , module Network.Google.Resource.DFAReporting.AccountUserProFiles.Get
-
-    -- ** dfareporting.accountUserProfiles.insert
-    , module Network.Google.Resource.DFAReporting.AccountUserProFiles.Insert
-
-    -- ** dfareporting.accountUserProfiles.list
-    , module Network.Google.Resource.DFAReporting.AccountUserProFiles.List
-
-    -- ** dfareporting.accountUserProfiles.patch
-    , module Network.Google.Resource.DFAReporting.AccountUserProFiles.Patch
-
-    -- ** dfareporting.accountUserProfiles.update
-    , module Network.Google.Resource.DFAReporting.AccountUserProFiles.Update
-
-    -- ** dfareporting.accounts.get
-    , module Network.Google.Resource.DFAReporting.Accounts.Get
-
-    -- ** dfareporting.accounts.list
-    , module Network.Google.Resource.DFAReporting.Accounts.List
-
-    -- ** dfareporting.accounts.patch
-    , module Network.Google.Resource.DFAReporting.Accounts.Patch
-
-    -- ** dfareporting.accounts.update
-    , module Network.Google.Resource.DFAReporting.Accounts.Update
-
-    -- ** dfareporting.ads.get
-    , module Network.Google.Resource.DFAReporting.Ads.Get
-
-    -- ** dfareporting.ads.insert
-    , module Network.Google.Resource.DFAReporting.Ads.Insert
-
-    -- ** dfareporting.ads.list
-    , module Network.Google.Resource.DFAReporting.Ads.List
-
-    -- ** dfareporting.ads.patch
-    , module Network.Google.Resource.DFAReporting.Ads.Patch
-
-    -- ** dfareporting.ads.update
-    , module Network.Google.Resource.DFAReporting.Ads.Update
-
-    -- ** dfareporting.advertiserGroups.delete
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.Delete
-
-    -- ** dfareporting.advertiserGroups.get
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.Get
-
-    -- ** dfareporting.advertiserGroups.insert
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.Insert
-
-    -- ** dfareporting.advertiserGroups.list
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.List
-
-    -- ** dfareporting.advertiserGroups.patch
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.Patch
-
-    -- ** dfareporting.advertiserGroups.update
-    , module Network.Google.Resource.DFAReporting.AdvertiserGroups.Update
-
-    -- ** dfareporting.advertiserLandingPages.get
-    , module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Get
-
-    -- ** dfareporting.advertiserLandingPages.insert
-    , module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Insert
-
-    -- ** dfareporting.advertiserLandingPages.list
-    , module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.List
-
-    -- ** dfareporting.advertiserLandingPages.patch
-    , module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Patch
-
-    -- ** dfareporting.advertiserLandingPages.update
-    , module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Update
-
-    -- ** dfareporting.advertisers.get
-    , module Network.Google.Resource.DFAReporting.Advertisers.Get
-
-    -- ** dfareporting.advertisers.insert
-    , module Network.Google.Resource.DFAReporting.Advertisers.Insert
-
-    -- ** dfareporting.advertisers.list
-    , module Network.Google.Resource.DFAReporting.Advertisers.List
-
-    -- ** dfareporting.advertisers.patch
-    , module Network.Google.Resource.DFAReporting.Advertisers.Patch
-
-    -- ** dfareporting.advertisers.update
-    , module Network.Google.Resource.DFAReporting.Advertisers.Update
-
-    -- ** dfareporting.browsers.list
-    , module Network.Google.Resource.DFAReporting.Browsers.List
-
-    -- ** dfareporting.campaignCreativeAssociations.insert
-    , module Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.Insert
-
-    -- ** dfareporting.campaignCreativeAssociations.list
-    , module Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.List
-
-    -- ** dfareporting.campaigns.get
-    , module Network.Google.Resource.DFAReporting.Campaigns.Get
-
-    -- ** dfareporting.campaigns.insert
-    , module Network.Google.Resource.DFAReporting.Campaigns.Insert
-
-    -- ** dfareporting.campaigns.list
-    , module Network.Google.Resource.DFAReporting.Campaigns.List
-
-    -- ** dfareporting.campaigns.patch
-    , module Network.Google.Resource.DFAReporting.Campaigns.Patch
-
-    -- ** dfareporting.campaigns.update
-    , module Network.Google.Resource.DFAReporting.Campaigns.Update
-
-    -- ** dfareporting.changeLogs.get
-    , module Network.Google.Resource.DFAReporting.ChangeLogs.Get
-
-    -- ** dfareporting.changeLogs.list
-    , module Network.Google.Resource.DFAReporting.ChangeLogs.List
-
-    -- ** dfareporting.cities.list
-    , module Network.Google.Resource.DFAReporting.Cities.List
-
-    -- ** dfareporting.connectionTypes.get
-    , module Network.Google.Resource.DFAReporting.ConnectionTypes.Get
-
-    -- ** dfareporting.connectionTypes.list
-    , module Network.Google.Resource.DFAReporting.ConnectionTypes.List
-
-    -- ** dfareporting.contentCategories.delete
-    , module Network.Google.Resource.DFAReporting.ContentCategories.Delete
-
-    -- ** dfareporting.contentCategories.get
-    , module Network.Google.Resource.DFAReporting.ContentCategories.Get
-
-    -- ** dfareporting.contentCategories.insert
-    , module Network.Google.Resource.DFAReporting.ContentCategories.Insert
-
-    -- ** dfareporting.contentCategories.list
-    , module Network.Google.Resource.DFAReporting.ContentCategories.List
-
-    -- ** dfareporting.contentCategories.patch
-    , module Network.Google.Resource.DFAReporting.ContentCategories.Patch
-
-    -- ** dfareporting.contentCategories.update
-    , module Network.Google.Resource.DFAReporting.ContentCategories.Update
-
-    -- ** dfareporting.conversions.batchinsert
-    , module Network.Google.Resource.DFAReporting.Conversions.Batchinsert
-
-    -- ** dfareporting.conversions.batchupdate
-    , module Network.Google.Resource.DFAReporting.Conversions.Batchupdate
-
-    -- ** dfareporting.countries.get
-    , module Network.Google.Resource.DFAReporting.Countries.Get
-
-    -- ** dfareporting.countries.list
-    , module Network.Google.Resource.DFAReporting.Countries.List
-
-    -- ** dfareporting.creativeAssets.insert
-    , module Network.Google.Resource.DFAReporting.CreativeAssets.Insert
-
-    -- ** dfareporting.creativeFieldValues.delete
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.Delete
-
-    -- ** dfareporting.creativeFieldValues.get
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.Get
-
-    -- ** dfareporting.creativeFieldValues.insert
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.Insert
-
-    -- ** dfareporting.creativeFieldValues.list
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.List
-
-    -- ** dfareporting.creativeFieldValues.patch
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.Patch
-
-    -- ** dfareporting.creativeFieldValues.update
-    , module Network.Google.Resource.DFAReporting.CreativeFieldValues.Update
-
-    -- ** dfareporting.creativeFields.delete
-    , module Network.Google.Resource.DFAReporting.CreativeFields.Delete
-
-    -- ** dfareporting.creativeFields.get
-    , module Network.Google.Resource.DFAReporting.CreativeFields.Get
-
-    -- ** dfareporting.creativeFields.insert
-    , module Network.Google.Resource.DFAReporting.CreativeFields.Insert
-
-    -- ** dfareporting.creativeFields.list
-    , module Network.Google.Resource.DFAReporting.CreativeFields.List
-
-    -- ** dfareporting.creativeFields.patch
-    , module Network.Google.Resource.DFAReporting.CreativeFields.Patch
-
-    -- ** dfareporting.creativeFields.update
-    , module Network.Google.Resource.DFAReporting.CreativeFields.Update
-
-    -- ** dfareporting.creativeGroups.get
-    , module Network.Google.Resource.DFAReporting.CreativeGroups.Get
-
-    -- ** dfareporting.creativeGroups.insert
-    , module Network.Google.Resource.DFAReporting.CreativeGroups.Insert
-
-    -- ** dfareporting.creativeGroups.list
-    , module Network.Google.Resource.DFAReporting.CreativeGroups.List
-
-    -- ** dfareporting.creativeGroups.patch
-    , module Network.Google.Resource.DFAReporting.CreativeGroups.Patch
-
-    -- ** dfareporting.creativeGroups.update
-    , module Network.Google.Resource.DFAReporting.CreativeGroups.Update
-
-    -- ** dfareporting.creatives.get
-    , module Network.Google.Resource.DFAReporting.Creatives.Get
-
-    -- ** dfareporting.creatives.insert
-    , module Network.Google.Resource.DFAReporting.Creatives.Insert
-
-    -- ** dfareporting.creatives.list
-    , module Network.Google.Resource.DFAReporting.Creatives.List
-
-    -- ** dfareporting.creatives.patch
-    , module Network.Google.Resource.DFAReporting.Creatives.Patch
-
-    -- ** dfareporting.creatives.update
-    , module Network.Google.Resource.DFAReporting.Creatives.Update
-
-    -- ** dfareporting.dimensionValues.query
-    , module Network.Google.Resource.DFAReporting.DimensionValues.Query
-
-    -- ** dfareporting.directorySites.get
-    , module Network.Google.Resource.DFAReporting.DirectorySites.Get
-
-    -- ** dfareporting.directorySites.insert
-    , module Network.Google.Resource.DFAReporting.DirectorySites.Insert
-
-    -- ** dfareporting.directorySites.list
-    , module Network.Google.Resource.DFAReporting.DirectorySites.List
-
-    -- ** dfareporting.dynamicTargetingKeys.delete
-    , module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Delete
-
-    -- ** dfareporting.dynamicTargetingKeys.insert
-    , module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Insert
-
-    -- ** dfareporting.dynamicTargetingKeys.list
-    , module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.List
-
-    -- ** dfareporting.eventTags.delete
-    , module Network.Google.Resource.DFAReporting.EventTags.Delete
-
-    -- ** dfareporting.eventTags.get
-    , module Network.Google.Resource.DFAReporting.EventTags.Get
-
-    -- ** dfareporting.eventTags.insert
-    , module Network.Google.Resource.DFAReporting.EventTags.Insert
-
-    -- ** dfareporting.eventTags.list
-    , module Network.Google.Resource.DFAReporting.EventTags.List
-
-    -- ** dfareporting.eventTags.patch
-    , module Network.Google.Resource.DFAReporting.EventTags.Patch
-
-    -- ** dfareporting.eventTags.update
-    , module Network.Google.Resource.DFAReporting.EventTags.Update
-
-    -- ** dfareporting.files.get
-    , module Network.Google.Resource.DFAReporting.Files.Get
-
-    -- ** dfareporting.files.list
-    , module Network.Google.Resource.DFAReporting.Files.List
-
-    -- ** dfareporting.floodlightActivities.delete
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Delete
-
-    -- ** dfareporting.floodlightActivities.generatetag
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Generatetag
-
-    -- ** dfareporting.floodlightActivities.get
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Get
-
-    -- ** dfareporting.floodlightActivities.insert
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Insert
-
-    -- ** dfareporting.floodlightActivities.list
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.List
-
-    -- ** dfareporting.floodlightActivities.patch
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Patch
-
-    -- ** dfareporting.floodlightActivities.update
-    , module Network.Google.Resource.DFAReporting.FloodlightActivities.Update
-
-    -- ** dfareporting.floodlightActivityGroups.get
-    , module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Get
-
-    -- ** dfareporting.floodlightActivityGroups.insert
-    , module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Insert
-
-    -- ** dfareporting.floodlightActivityGroups.list
-    , module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.List
-
-    -- ** dfareporting.floodlightActivityGroups.patch
-    , module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Patch
-
-    -- ** dfareporting.floodlightActivityGroups.update
-    , module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Update
-
-    -- ** dfareporting.floodlightConfigurations.get
-    , module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Get
-
-    -- ** dfareporting.floodlightConfigurations.list
-    , module Network.Google.Resource.DFAReporting.FloodlightConfigurations.List
-
-    -- ** dfareporting.floodlightConfigurations.patch
-    , module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Patch
-
-    -- ** dfareporting.floodlightConfigurations.update
-    , module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Update
-
-    -- ** dfareporting.inventoryItems.get
-    , module Network.Google.Resource.DFAReporting.InventoryItems.Get
-
-    -- ** dfareporting.inventoryItems.list
-    , module Network.Google.Resource.DFAReporting.InventoryItems.List
-
-    -- ** dfareporting.languages.list
-    , module Network.Google.Resource.DFAReporting.Languages.List
-
-    -- ** dfareporting.metros.list
-    , module Network.Google.Resource.DFAReporting.Metros.List
-
-    -- ** dfareporting.mobileApps.get
-    , module Network.Google.Resource.DFAReporting.MobileApps.Get
-
-    -- ** dfareporting.mobileApps.list
-    , module Network.Google.Resource.DFAReporting.MobileApps.List
-
-    -- ** dfareporting.mobileCarriers.get
-    , module Network.Google.Resource.DFAReporting.MobileCarriers.Get
-
-    -- ** dfareporting.mobileCarriers.list
-    , module Network.Google.Resource.DFAReporting.MobileCarriers.List
-
-    -- ** dfareporting.operatingSystemVersions.get
-    , module Network.Google.Resource.DFAReporting.OperatingSystemVersions.Get
-
-    -- ** dfareporting.operatingSystemVersions.list
-    , module Network.Google.Resource.DFAReporting.OperatingSystemVersions.List
-
-    -- ** dfareporting.operatingSystems.get
-    , module Network.Google.Resource.DFAReporting.OperatingSystems.Get
-
-    -- ** dfareporting.operatingSystems.list
-    , module Network.Google.Resource.DFAReporting.OperatingSystems.List
-
-    -- ** dfareporting.orderDocuments.get
-    , module Network.Google.Resource.DFAReporting.OrderDocuments.Get
-
-    -- ** dfareporting.orderDocuments.list
-    , module Network.Google.Resource.DFAReporting.OrderDocuments.List
-
-    -- ** dfareporting.orders.get
-    , module Network.Google.Resource.DFAReporting.Orders.Get
-
-    -- ** dfareporting.orders.list
-    , module Network.Google.Resource.DFAReporting.Orders.List
-
-    -- ** dfareporting.placementGroups.get
-    , module Network.Google.Resource.DFAReporting.PlacementGroups.Get
-
-    -- ** dfareporting.placementGroups.insert
-    , module Network.Google.Resource.DFAReporting.PlacementGroups.Insert
-
-    -- ** dfareporting.placementGroups.list
-    , module Network.Google.Resource.DFAReporting.PlacementGroups.List
-
-    -- ** dfareporting.placementGroups.patch
-    , module Network.Google.Resource.DFAReporting.PlacementGroups.Patch
-
-    -- ** dfareporting.placementGroups.update
-    , module Network.Google.Resource.DFAReporting.PlacementGroups.Update
-
-    -- ** dfareporting.placementStrategies.delete
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.Delete
-
-    -- ** dfareporting.placementStrategies.get
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.Get
-
-    -- ** dfareporting.placementStrategies.insert
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.Insert
-
-    -- ** dfareporting.placementStrategies.list
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.List
-
-    -- ** dfareporting.placementStrategies.patch
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.Patch
-
-    -- ** dfareporting.placementStrategies.update
-    , module Network.Google.Resource.DFAReporting.PlacementStrategies.Update
-
-    -- ** dfareporting.placements.generatetags
-    , module Network.Google.Resource.DFAReporting.Placements.Generatetags
-
-    -- ** dfareporting.placements.get
-    , module Network.Google.Resource.DFAReporting.Placements.Get
-
-    -- ** dfareporting.placements.insert
-    , module Network.Google.Resource.DFAReporting.Placements.Insert
-
-    -- ** dfareporting.placements.list
-    , module Network.Google.Resource.DFAReporting.Placements.List
-
-    -- ** dfareporting.placements.patch
-    , module Network.Google.Resource.DFAReporting.Placements.Patch
-
-    -- ** dfareporting.placements.update
-    , module Network.Google.Resource.DFAReporting.Placements.Update
-
-    -- ** dfareporting.platformTypes.get
-    , module Network.Google.Resource.DFAReporting.PlatformTypes.Get
-
-    -- ** dfareporting.platformTypes.list
-    , module Network.Google.Resource.DFAReporting.PlatformTypes.List
-
-    -- ** dfareporting.postalCodes.get
-    , module Network.Google.Resource.DFAReporting.PostalCodes.Get
-
-    -- ** dfareporting.postalCodes.list
-    , module Network.Google.Resource.DFAReporting.PostalCodes.List
-
-    -- ** dfareporting.projects.get
-    , module Network.Google.Resource.DFAReporting.Projects.Get
-
-    -- ** dfareporting.projects.list
-    , module Network.Google.Resource.DFAReporting.Projects.List
-
-    -- ** dfareporting.regions.list
-    , module Network.Google.Resource.DFAReporting.Regions.List
-
-    -- ** dfareporting.remarketingListShares.get
-    , module Network.Google.Resource.DFAReporting.RemarketingListShares.Get
-
-    -- ** dfareporting.remarketingListShares.patch
-    , module Network.Google.Resource.DFAReporting.RemarketingListShares.Patch
-
-    -- ** dfareporting.remarketingListShares.update
-    , module Network.Google.Resource.DFAReporting.RemarketingListShares.Update
-
-    -- ** dfareporting.remarketingLists.get
-    , module Network.Google.Resource.DFAReporting.RemarketingLists.Get
-
-    -- ** dfareporting.remarketingLists.insert
-    , module Network.Google.Resource.DFAReporting.RemarketingLists.Insert
-
-    -- ** dfareporting.remarketingLists.list
-    , module Network.Google.Resource.DFAReporting.RemarketingLists.List
-
-    -- ** dfareporting.remarketingLists.patch
-    , module Network.Google.Resource.DFAReporting.RemarketingLists.Patch
-
-    -- ** dfareporting.remarketingLists.update
-    , module Network.Google.Resource.DFAReporting.RemarketingLists.Update
-
-    -- ** dfareporting.reports.compatibleFields.query
-    , module Network.Google.Resource.DFAReporting.Reports.CompatibleFields.Query
-
-    -- ** dfareporting.reports.delete
-    , module Network.Google.Resource.DFAReporting.Reports.Delete
-
-    -- ** dfareporting.reports.files.get
-    , module Network.Google.Resource.DFAReporting.Reports.Files.Get
-
-    -- ** dfareporting.reports.files.list
-    , module Network.Google.Resource.DFAReporting.Reports.Files.List
-
-    -- ** dfareporting.reports.get
-    , module Network.Google.Resource.DFAReporting.Reports.Get
-
-    -- ** dfareporting.reports.insert
-    , module Network.Google.Resource.DFAReporting.Reports.Insert
-
-    -- ** dfareporting.reports.list
-    , module Network.Google.Resource.DFAReporting.Reports.List
-
-    -- ** dfareporting.reports.patch
-    , module Network.Google.Resource.DFAReporting.Reports.Patch
-
-    -- ** dfareporting.reports.run
-    , module Network.Google.Resource.DFAReporting.Reports.Run
-
-    -- ** dfareporting.reports.update
-    , module Network.Google.Resource.DFAReporting.Reports.Update
-
-    -- ** dfareporting.sites.get
-    , module Network.Google.Resource.DFAReporting.Sites.Get
-
-    -- ** dfareporting.sites.insert
-    , module Network.Google.Resource.DFAReporting.Sites.Insert
-
-    -- ** dfareporting.sites.list
-    , module Network.Google.Resource.DFAReporting.Sites.List
-
-    -- ** dfareporting.sites.patch
-    , module Network.Google.Resource.DFAReporting.Sites.Patch
-
-    -- ** dfareporting.sites.update
-    , module Network.Google.Resource.DFAReporting.Sites.Update
-
-    -- ** dfareporting.sizes.get
-    , module Network.Google.Resource.DFAReporting.Sizes.Get
-
-    -- ** dfareporting.sizes.insert
-    , module Network.Google.Resource.DFAReporting.Sizes.Insert
-
-    -- ** dfareporting.sizes.list
-    , module Network.Google.Resource.DFAReporting.Sizes.List
-
-    -- ** dfareporting.subaccounts.get
-    , module Network.Google.Resource.DFAReporting.SubAccounts.Get
-
-    -- ** dfareporting.subaccounts.insert
-    , module Network.Google.Resource.DFAReporting.SubAccounts.Insert
-
-    -- ** dfareporting.subaccounts.list
-    , module Network.Google.Resource.DFAReporting.SubAccounts.List
-
-    -- ** dfareporting.subaccounts.patch
-    , module Network.Google.Resource.DFAReporting.SubAccounts.Patch
-
-    -- ** dfareporting.subaccounts.update
-    , module Network.Google.Resource.DFAReporting.SubAccounts.Update
-
-    -- ** dfareporting.targetableRemarketingLists.get
-    , module Network.Google.Resource.DFAReporting.TargetableRemarketingLists.Get
-
-    -- ** dfareporting.targetableRemarketingLists.list
-    , module Network.Google.Resource.DFAReporting.TargetableRemarketingLists.List
-
-    -- ** dfareporting.targetingTemplates.get
-    , module Network.Google.Resource.DFAReporting.TargetingTemplates.Get
-
-    -- ** dfareporting.targetingTemplates.insert
-    , module Network.Google.Resource.DFAReporting.TargetingTemplates.Insert
-
-    -- ** dfareporting.targetingTemplates.list
-    , module Network.Google.Resource.DFAReporting.TargetingTemplates.List
-
-    -- ** dfareporting.targetingTemplates.patch
-    , module Network.Google.Resource.DFAReporting.TargetingTemplates.Patch
-
-    -- ** dfareporting.targetingTemplates.update
-    , module Network.Google.Resource.DFAReporting.TargetingTemplates.Update
-
-    -- ** dfareporting.userProfiles.get
-    , module Network.Google.Resource.DFAReporting.UserProFiles.Get
-
-    -- ** dfareporting.userProfiles.list
-    , module Network.Google.Resource.DFAReporting.UserProFiles.List
-
-    -- ** dfareporting.userRolePermissionGroups.get
-    , module Network.Google.Resource.DFAReporting.UserRolePermissionGroups.Get
-
-    -- ** dfareporting.userRolePermissionGroups.list
-    , module Network.Google.Resource.DFAReporting.UserRolePermissionGroups.List
-
-    -- ** dfareporting.userRolePermissions.get
-    , module Network.Google.Resource.DFAReporting.UserRolePermissions.Get
-
-    -- ** dfareporting.userRolePermissions.list
-    , module Network.Google.Resource.DFAReporting.UserRolePermissions.List
-
-    -- ** dfareporting.userRoles.delete
-    , module Network.Google.Resource.DFAReporting.UserRoles.Delete
-
-    -- ** dfareporting.userRoles.get
-    , module Network.Google.Resource.DFAReporting.UserRoles.Get
-
-    -- ** dfareporting.userRoles.insert
-    , module Network.Google.Resource.DFAReporting.UserRoles.Insert
-
-    -- ** dfareporting.userRoles.list
-    , module Network.Google.Resource.DFAReporting.UserRoles.List
-
-    -- ** dfareporting.userRoles.patch
-    , module Network.Google.Resource.DFAReporting.UserRoles.Patch
-
-    -- ** dfareporting.userRoles.update
-    , module Network.Google.Resource.DFAReporting.UserRoles.Update
-
-    -- ** dfareporting.videoFormats.get
-    , module Network.Google.Resource.DFAReporting.VideoFormats.Get
-
-    -- ** dfareporting.videoFormats.list
-    , module Network.Google.Resource.DFAReporting.VideoFormats.List
-
-    -- * Types
-
-    -- ** VideoOffSet
-    , VideoOffSet
-    , videoOffSet
-    , vosOffSetPercentage
-    , vosOffSetSeconds
-
-    -- ** DeepLink
-    , DeepLink
-    , deepLink
-    , dlRemarketingListIds
-    , dlKind
-    , dlFallbackURL
-    , dlAppURL
-    , dlMobileApp
-
-    -- ** PlacementsListSortOrder
-    , PlacementsListSortOrder (..)
-
-    -- ** DateRangeRelativeDateRange
-    , DateRangeRelativeDateRange (..)
-
-    -- ** AdvertisersListSortField
-    , AdvertisersListSortField (..)
-
-    -- ** CreativeFieldsListSortOrder
-    , CreativeFieldsListSortOrder (..)
-
-    -- ** FileList
-    , FileList
-    , fileList
-    , flEtag
-    , flNextPageToken
-    , flKind
-    , flItems
-
-    -- ** TargetingTemplatesListSortOrder
-    , TargetingTemplatesListSortOrder (..)
-
-    -- ** OptimizationActivity
-    , OptimizationActivity
-    , optimizationActivity
-    , oaWeight
-    , oaFloodlightActivityId
-    , oaFloodlightActivityIdDimensionValue
-
-    -- ** ListPopulationClause
-    , ListPopulationClause
-    , listPopulationClause
-    , lpcTerms
-
-    -- ** AdBlockingConfiguration
-    , AdBlockingConfiguration
-    , adBlockingConfiguration
-    , abcCreativeBundleId
-    , abcOverrideClickThroughURL
-    , abcEnabled
-    , abcClickThroughURL
-
-    -- ** AdvertiserLandingPagesListSortOrder
-    , AdvertiserLandingPagesListSortOrder (..)
-
-    -- ** CreativeCustomEvent
-    , CreativeCustomEvent
-    , creativeCustomEvent
-    , cceAdvertiserCustomEventId
-    , cceAdvertiserCustomEventType
-    , cceAdvertiserCustomEventName
-    , cceExitClickThroughURL
-    , cceTargetType
-    , ccePopupWindowProperties
-    , cceVideoReportingId
-    , cceId
-    , cceArtworkLabel
-    , cceArtworkType
-
-    -- ** ClickTag
-    , ClickTag
-    , clickTag
-    , ctClickThroughURL
-    , ctName
-    , ctEventName
-
-    -- ** CampaignsListResponse
-    , CampaignsListResponse
-    , campaignsListResponse
-    , clrNextPageToken
-    , clrCampaigns
-    , clrKind
-
-    -- ** GeoTargeting
-    , GeoTargeting
-    , geoTargeting
-    , gtRegions
-    , gtCountries
-    , gtCities
-    , gtMetros
-    , gtExcludeCountries
-    , gtPostalCodes
-
-    -- ** UserRolesListSortField
-    , UserRolesListSortField (..)
-
-    -- ** VideoSettings
-    , VideoSettings
-    , videoSettings
-    , vsKind
-    , vsCompanionSettings
-    , vsTranscodeSettings
-    , vsOrientation
-    , vsSkippableSettings
-
-    -- ** ReachReportCompatibleFields
-    , ReachReportCompatibleFields
-    , reachReportCompatibleFields
-    , rrcfMetrics
-    , rrcfReachByFrequencyMetrics
-    , rrcfKind
-    , rrcfDimensionFilters
-    , rrcfPivotedActivityMetrics
-    , rrcfDimensions
-
-    -- ** Browser
-    , Browser
-    , browser
-    , bMinorVersion
-    , bKind
-    , bBrowserVersionId
-    , bMajorVersion
-    , bName
-    , bDartId
-
-    -- ** FloodlightActivityTagFormat
-    , FloodlightActivityTagFormat (..)
-
-    -- ** OrderDocumentsListSortOrder
-    , OrderDocumentsListSortOrder (..)
-
-    -- ** CreativeGroupAssignment
-    , CreativeGroupAssignment
-    , creativeGroupAssignment
-    , cgaCreativeGroupNumber
-    , cgaCreativeGroupId
-
-    -- ** CreativeAssetRole
-    , CreativeAssetRole (..)
-
-    -- ** DynamicTargetingKeysListObjectType
-    , DynamicTargetingKeysListObjectType (..)
-
-    -- ** RecipientDeliveryType
-    , RecipientDeliveryType (..)
-
-    -- ** ThirdPartyTrackingURLThirdPartyURLType
-    , ThirdPartyTrackingURLThirdPartyURLType (..)
-
-    -- ** DirectorySiteSettings
-    , DirectorySiteSettings
-    , directorySiteSettings
-    , dssInterstitialPlacementAccepted
-    , dssInstreamVideoPlacementAccepted
-    , dssActiveViewOptOut
-    , dssDfpSettings
-
-    -- ** TargetableRemarketingListsListSortOrder
-    , TargetableRemarketingListsListSortOrder (..)
-
-    -- ** CreativeAssetPositionLeftUnit
-    , CreativeAssetPositionLeftUnit (..)
-
-    -- ** PricingScheduleCapCostOption
-    , PricingScheduleCapCostOption (..)
-
-    -- ** ListPopulationRule
-    , ListPopulationRule
-    , listPopulationRule
-    , lprFloodlightActivityName
-    , lprFloodlightActivityId
-    , lprListPopulationClauses
-
-    -- ** UserRolePermissionAvailability
-    , UserRolePermissionAvailability (..)
-
-    -- ** PlacementVpaidAdapterChoice
-    , PlacementVpaidAdapterChoice (..)
-
-    -- ** SizesListResponse
-    , SizesListResponse
-    , sizesListResponse
-    , slrKind
-    , slrSizes
-
-    -- ** PlacementCompatibility
-    , PlacementCompatibility (..)
-
-    -- ** CreativeRotation
-    , CreativeRotation
-    , creativeRotation
-    , crWeightCalculationStrategy
-    , crCreativeAssignments
-    , crCreativeOptimizationConfigurationId
-    , crType
-
-    -- ** TechnologyTargeting
-    , TechnologyTargeting
-    , technologyTargeting
-    , ttMobileCarriers
-    , ttOperatingSystemVersions
-    , ttPlatformTypes
-    , ttBrowsers
-    , ttConnectionTypes
-    , ttOperatingSystems
-
-    -- ** ListPopulationTermOperator
-    , ListPopulationTermOperator (..)
-
-    -- ** PlacementsListPaymentSource
-    , PlacementsListPaymentSource (..)
-
-    -- ** InventoryItem
-    , InventoryItem
-    , inventoryItem
-    , iiPlacementStrategyId
-    , iiEstimatedClickThroughRate
-    , iiPricing
-    , iiKind
-    , iiAdvertiserId
-    , iiRfpId
-    , iiContentCategoryId
-    , iiInPlan
-    , iiAccountId
-    , iiName
-    , iiAdSlots
-    , iiNegotiationChannelId
-    , iiLastModifiedInfo
-    , iiId
-    , iiEstimatedConversionRate
-    , iiProjectId
-    , iiSubAccountId
-    , iiType
-    , iiOrderId
-    , iiSiteId
-
-    -- ** ProjectsListResponse
-    , ProjectsListResponse
-    , projectsListResponse
-    , plrNextPageToken
-    , plrKind
-    , plrProjects
-
-    -- ** AdsListResponse
-    , AdsListResponse
-    , adsListResponse
-    , alrNextPageToken
-    , alrKind
-    , alrAds
-
-    -- ** ReportsListSortField
-    , ReportsListSortField (..)
-
-    -- ** AdSlotCompatibility
-    , AdSlotCompatibility (..)
-
-    -- ** SiteVideoSettings
-    , SiteVideoSettings
-    , siteVideoSettings
-    , svsKind
-    , svsCompanionSettings
-    , svsTranscodeSettings
-    , svsOrientation
-    , svsSkippableSettings
-
-    -- ** ListPopulationTerm
-    , ListPopulationTerm
-    , listPopulationTerm
-    , lptOperator
-    , lptValue
-    , lptVariableFriendlyName
-    , lptNegation
-    , lptVariableName
-    , lptRemarketingListId
-    , lptType
-    , lptContains
-
-    -- ** TagSettings
-    , TagSettings
-    , tagSettings
-    , tsDynamicTagEnabled
-    , tsImageTagEnabled
-
-    -- ** SubAccountsListResponse
-    , SubAccountsListResponse
-    , subAccountsListResponse
-    , salrNextPageToken
-    , salrKind
-    , salrSubAccounts
-
-    -- ** CampaignsListSortField
-    , CampaignsListSortField (..)
-
-    -- ** VideoSettingsOrientation
-    , VideoSettingsOrientation (..)
-
-    -- ** RegionsListResponse
-    , RegionsListResponse
-    , regionsListResponse
-    , rlrKind
-    , rlrRegions
-
-    -- ** FloodlightActivityDynamicTag
-    , FloodlightActivityDynamicTag
-    , floodlightActivityDynamicTag
-    , fadtTag
-    , fadtName
-    , fadtId
-
-    -- ** VideoFormat
-    , VideoFormat
-    , videoFormat
-    , vfKind
-    , vfFileType
-    , vfResolution
-    , vfTargetBitRate
-    , vfId
-
-    -- ** AccountUserProFileTraffickerType
-    , AccountUserProFileTraffickerType (..)
-
-    -- ** DirectorySite
-    , DirectorySite
-    , directorySite
-    , dsSettings
-    , dsInterstitialTagFormats
-    , dsKind
-    , dsURL
-    , dsIdDimensionValue
-    , dsInpageTagFormats
-    , dsActive
-    , dsName
-    , dsId
-
-    -- ** CreativeAssetMetadataDetectedFeaturesItem
-    , CreativeAssetMetadataDetectedFeaturesItem (..)
-
-    -- ** ReportFloodlightCriteriaReportProperties
-    , ReportFloodlightCriteriaReportProperties
-    , reportFloodlightCriteriaReportProperties
-    , rfcrpIncludeUnattributedIPConversions
-    , rfcrpIncludeUnattributedCookieConversions
-    , rfcrpIncludeAttributedIPConversions
-
-    -- ** FloodlightActivityGroup
-    , FloodlightActivityGroup
-    , floodlightActivityGroup
-    , fagTagString
-    , fagFloodlightConfigurationId
-    , fagKind
-    , fagAdvertiserId
-    , fagAdvertiserIdDimensionValue
-    , fagIdDimensionValue
-    , fagAccountId
-    , fagName
-    , fagId
-    , fagSubAccountId
-    , fagType
-    , fagFloodlightConfigurationIdDimensionValue
-
-    -- ** AdsListCompatibility
-    , AdsListCompatibility (..)
-
-    -- ** CrossDimensionReachReportCompatibleFields
-    , CrossDimensionReachReportCompatibleFields
-    , crossDimensionReachReportCompatibleFields
-    , cdrrcfMetrics
-    , cdrrcfBreakdown
-    , cdrrcfKind
-    , cdrrcfDimensionFilters
-    , cdrrcfOverlapMetrics
-
-    -- ** FsCommand
-    , FsCommand
-    , fsCommand
-    , fcPositionOption
-    , fcLeft
-    , fcWindowHeight
-    , fcWindowWidth
-    , fcTop
-
-    -- ** PlacementAssignment
-    , PlacementAssignment
-    , placementAssignment
-    , paPlacementId
-    , paPlacementIdDimensionValue
-    , paActive
-    , paSSLRequired
-
-    -- ** CreativeFieldValue
-    , CreativeFieldValue
-    , creativeFieldValue
-    , cfvKind
-    , cfvValue
-    , cfvId
-
-    -- ** EventTagStatus
-    , EventTagStatus (..)
-
-    -- ** SitesListSortField
-    , SitesListSortField (..)
-
-    -- ** DimensionValueRequest
-    , DimensionValueRequest
-    , dimensionValueRequest
-    , dvrKind
-    , dvrEndDate
-    , dvrFilters
-    , dvrStartDate
-    , dvrDimensionName
-
-    -- ** EventTagsListEventTagTypes
-    , EventTagsListEventTagTypes (..)
-
-    -- ** FloodlightConfigurationsListResponse
-    , FloodlightConfigurationsListResponse
-    , floodlightConfigurationsListResponse
-    , fclrKind
-    , fclrFloodlightConfigurations
-
-    -- ** FloodlightActivitiesListResponse
-    , FloodlightActivitiesListResponse
-    , floodlightActivitiesListResponse
-    , falrNextPageToken
-    , falrKind
-    , falrFloodlightActivities
-
-    -- ** FileStatus
-    , FileStatus (..)
-
-    -- ** CreativeCustomEventArtworkType
-    , CreativeCustomEventArtworkType (..)
-
-    -- ** CreativeFieldAssignment
-    , CreativeFieldAssignment
-    , creativeFieldAssignment
-    , cfaCreativeFieldId
-    , cfaCreativeFieldValueId
-
-    -- ** AdvertiserGroup
-    , AdvertiserGroup
-    , advertiserGroup
-    , agKind
-    , agAccountId
-    , agName
-    , agId
-
-    -- ** TagData
-    , TagData
-    , tagData
-    , tdClickTag
-    , tdFormat
-    , tdCreativeId
-    , tdAdId
-    , tdImpressionTag
-
-    -- ** DayPartTargeting
-    , DayPartTargeting
-    , dayPartTargeting
-    , dptDaysOfWeek
-    , dptHoursOfDay
-    , dptUserLocalTime
-
-    -- ** CreativeOptimizationConfiguration
-    , CreativeOptimizationConfiguration
-    , creativeOptimizationConfiguration
-    , cocOptimizationModel
-    , cocName
-    , cocOptimizationActivitys
-    , cocId
-
-    -- ** SiteTranscodeSetting
-    , SiteTranscodeSetting
-    , siteTranscodeSetting
-    , stsKind
-    , stsEnabledVideoFormats
-
-    -- ** CreativeClickThroughURL
-    , CreativeClickThroughURL
-    , creativeClickThroughURL
-    , cctuComputedClickThroughURL
-    , cctuCustomClickThroughURL
-    , cctuLandingPageId
-
-    -- ** ReportCriteria
-    , ReportCriteria
-    , reportCriteria
-    , rcMetricNames
-    , rcCustomRichMediaEvents
-    , rcDimensionFilters
-    , rcActivities
-    , rcDateRange
-    , rcDimensions
-
-    -- ** FloodlightConfigurationNATuralSearchConversionAttributionOption
-    , FloodlightConfigurationNATuralSearchConversionAttributionOption (..)
-
-    -- ** PlacementStrategiesListResponse
-    , PlacementStrategiesListResponse
-    , placementStrategiesListResponse
-    , pslrPlacementStrategies
-    , pslrNextPageToken
-    , pslrKind
-
-    -- ** ConversionsBatchUpdateResponse
-    , ConversionsBatchUpdateResponse
-    , conversionsBatchUpdateResponse
-    , cburStatus
-    , cburKind
-    , cburHasFailures
-
-    -- ** CreativeAssetArtworkType
-    , CreativeAssetArtworkType (..)
-
-    -- ** SubAccount
-    , SubAccount
-    , subAccount
-    , saKind
-    , saAvailablePermissionIds
-    , saAccountId
-    , saName
-    , saId
-
-    -- ** InventoryItemsListResponse
-    , InventoryItemsListResponse
-    , inventoryItemsListResponse
-    , iilrInventoryItems
-    , iilrNextPageToken
-    , iilrKind
-
-    -- ** UniversalAdId
-    , UniversalAdId
-    , universalAdId
-    , uaiValue
-    , uaiRegistry
-
-    -- ** CustomFloodlightVariableType
-    , CustomFloodlightVariableType (..)
-
-    -- ** Ad
-    , Ad
-    , ad
-    , aTargetingTemplateId
-    , aCreativeGroupAssignments
-    , aGeoTargeting
-    , aCreativeRotation
-    , aTechnologyTargeting
-    , aAudienceSegmentId
-    , aDayPartTargeting
-    , aSize
-    , aStartTime
-    , aKind
-    , aClickThroughURLSuffixProperties
-    , aCampaignIdDimensionValue
-    , aAdvertiserId
-    , aAdvertiserIdDimensionValue
-    , aSSLCompliant
-    , aCampaignId
-    , aIdDimensionValue
-    , aClickThroughURL
-    , aDeliverySchedule
-    , aEventTagOverrides
-    , aActive
-    , aAccountId
-    , aName
-    , aKeyValueTargetingExpression
-    , aEndTime
-    , aCreateInfo
-    , aLastModifiedInfo
-    , aId
-    , aSSLRequired
-    , aComments
-    , aSubAccountId
-    , aType
-    , aRemarketingListExpression
-    , aLanguageTargeting
-    , aDynamicClickTracker
-    , aCompatibility
-    , aArchived
-    , aDefaultClickThroughEventTagProperties
-    , aPlacementAssignments
-
-    -- ** ConversionErrorCode
-    , ConversionErrorCode (..)
-
-    -- ** FloodlightActivitiesListSortOrder
-    , FloodlightActivitiesListSortOrder (..)
-
-    -- ** Project
-    , Project
-    , project
-    , pTargetClicks
-    , pClientBillingCode
-    , pTargetCpmNanos
-    , pTargetConversions
-    , pBudget
-    , pKind
-    , pAdvertiserId
-    , pEndDate
-    , pOverview
-    , pTargetImpressions
-    , pStartDate
-    , pTargetCpcNanos
-    , pAccountId
-    , pName
-    , pLastModifiedInfo
-    , pId
-    , pAudienceAgeGroup
-    , pSubAccountId
-    , pTargetCpmActiveViewNanos
-    , pAudienceGender
-    , pClientName
-    , pTargetCpaNanos
-
-    -- ** FileFormat
-    , FileFormat (..)
-
-    -- ** EncryptionInfoEncryptionEntityType
-    , EncryptionInfoEncryptionEntityType (..)
-
-    -- ** PricingSchedulePricingType
-    , PricingSchedulePricingType (..)
-
-    -- ** ReportFloodlightCriteria
-    , ReportFloodlightCriteria
-    , reportFloodlightCriteria
-    , rfcReportProperties
-    , rfcMetricNames
-    , rfcCustomRichMediaEvents
-    , rfcDimensionFilters
-    , rfcDateRange
-    , rfcFloodlightConfigId
-    , rfcDimensions
-
-    -- ** CreativeCustomEventTargetType
-    , CreativeCustomEventTargetType (..)
-
-    -- ** ReportsListScope
-    , ReportsListScope (..)
-
-    -- ** Size
-    , Size
-    , size
-    , sHeight
-    , sKind
-    , sWidth
-    , sIab
-    , sId
-
-    -- ** CreativeAssetOrientation
-    , CreativeAssetOrientation (..)
-
-    -- ** CreativeAssetDurationType
-    , CreativeAssetDurationType (..)
-
-    -- ** TargetableRemarketingListListSource
-    , TargetableRemarketingListListSource (..)
-
-    -- ** ObjectFilter
-    , ObjectFilter
-    , objectFilter
-    , ofStatus
-    , ofKind
-    , ofObjectIds
-
-    -- ** SkippableSetting
-    , SkippableSetting
-    , skippableSetting
-    , ssSkipOffSet
-    , ssProgressOffSet
-    , ssKind
-    , ssSkippable
-
-    -- ** CreativeGroupsListSortField
-    , CreativeGroupsListSortField (..)
-
-    -- ** ReportsConfiguration
-    , ReportsConfiguration
-    , reportsConfiguration
-    , rcExposureToConversionEnabled
-    , rcReportGenerationTimeZoneId
-    , rcLookbackConfiguration
-
-    -- ** PricingSchedule
-    , PricingSchedule
-    , pricingSchedule
-    , psTestingStartDate
-    , psFloodlightActivityId
-    , psEndDate
-    , psDisregardOverdelivery
-    , psStartDate
-    , psCapCostOption
-    , psPricingType
-    , psPricingPeriods
-    , psFlighted
-
-    -- ** PostalCode
-    , PostalCode
-    , postalCode
-    , pcKind
-    , pcCode
-    , pcCountryCode
-    , pcId
-    , pcCountryDartId
-
-    -- ** AccountPermissionsListResponse
-    , AccountPermissionsListResponse
-    , accountPermissionsListResponse
-    , aplrKind
-    , aplrAccountPermissions
-
-    -- ** Country
-    , Country
-    , country
-    , cKind
-    , cName
-    , cCountryCode
-    , cDartId
-    , cSSLEnabled
-
-    -- ** PlacementsListSortField
-    , PlacementsListSortField (..)
-
-    -- ** CreativeBackupImageFeaturesItem
-    , CreativeBackupImageFeaturesItem (..)
-
-    -- ** OperatingSystemVersionsListResponse
-    , OperatingSystemVersionsListResponse
-    , operatingSystemVersionsListResponse
-    , osvlrKind
-    , osvlrOperatingSystemVersions
-
-    -- ** ClickThroughURLSuffixProperties
-    , ClickThroughURLSuffixProperties
-    , clickThroughURLSuffixProperties
-    , ctuspOverrideInheritedSuffix
-    , ctuspClickThroughURLSuffix
-
-    -- ** AdvertisersListSortOrder
-    , AdvertisersListSortOrder (..)
-
-    -- ** TargetingTemplatesListSortField
-    , TargetingTemplatesListSortField (..)
-
-    -- ** CreativeFieldsListSortField
-    , CreativeFieldsListSortField (..)
-
-    -- ** Pricing
-    , Pricing
-    , pricing
-    , priEndDate
-    , priStartDate
-    , priGroupType
-    , priPricingType
-    , priFlights
-    , priCapCostType
-
-    -- ** AudienceSegmentGroup
-    , AudienceSegmentGroup
-    , audienceSegmentGroup
-    , asgAudienceSegments
-    , asgName
-    , asgId
-
-    -- ** OperatingSystem
-    , OperatingSystem
-    , operatingSystem
-    , osDesktop
-    , osKind
-    , osName
-    , osMobile
-    , osDartId
-
-    -- ** Flight
-    , Flight
-    , flight
-    , fRateOrCost
-    , fEndDate
-    , fStartDate
-    , fUnits
-
-    -- ** UserDefinedVariableConfigurationVariableType
-    , UserDefinedVariableConfigurationVariableType (..)
-
-    -- ** FsCommandPositionOption
-    , FsCommandPositionOption (..)
-
-    -- ** CitiesListResponse
-    , CitiesListResponse
-    , citiesListResponse
-    , citKind
-    , citCities
-
-    -- ** AdvertiserLandingPagesListSortField
-    , AdvertiserLandingPagesListSortField (..)
-
-    -- ** Dimension
-    , Dimension
-    , dimension
-    , dKind
-    , dName
-
-    -- ** ReportReachCriteria
-    , ReportReachCriteria
-    , reportReachCriteria
-    , rrcReachByFrequencyMetricNames
-    , rrcEnableAllDimensionCombinations
-    , rrcMetricNames
-    , rrcCustomRichMediaEvents
-    , rrcDimensionFilters
-    , rrcActivities
-    , rrcDateRange
-    , rrcDimensions
-
-    -- ** CustomRichMediaEvents
-    , CustomRichMediaEvents
-    , customRichMediaEvents
-    , crmeKind
-    , crmeFilteredEventIds
-
-    -- ** LanguagesListResponse
-    , LanguagesListResponse
-    , languagesListResponse
-    , llrKind
-    , llrLanguages
-
-    -- ** CustomViewabilityMetricConfiguration
-    , CustomViewabilityMetricConfiguration
-    , customViewabilityMetricConfiguration
-    , cvmcViewabilityPercent
-    , cvmcTimePercent
-    , cvmcAudible
-    , cvmcTimeMillis
-
-    -- ** UserRolesListSortOrder
-    , UserRolesListSortOrder (..)
-
-    -- ** PlacementsListCompatibilities
-    , PlacementsListCompatibilities (..)
-
-    -- ** TargetableRemarketingListsListResponse
-    , TargetableRemarketingListsListResponse
-    , targetableRemarketingListsListResponse
-    , trllrNextPageToken
-    , trllrKind
-    , trllrTargetableRemarketingLists
-
-    -- ** OrderDocumentsListSortField
-    , OrderDocumentsListSortField (..)
-
-    -- ** CreativeCompatibilityItem
-    , CreativeCompatibilityItem (..)
-
-    -- ** ChangeLogsListResponse
-    , ChangeLogsListResponse
-    , changeLogsListResponse
-    , cllrNextPageToken
-    , cllrKind
-    , cllrChangeLogs
-
-    -- ** ReportDeliveryEmailOwnerDeliveryType
-    , ReportDeliveryEmailOwnerDeliveryType (..)
-
-    -- ** SiteContactContactType
-    , SiteContactContactType (..)
-
-    -- ** AccountUserProFile
-    , AccountUserProFile
-    , accountUserProFile
-    , aupfEmail
-    , aupfUserRoleFilter
-    , aupfAdvertiserFilter
-    , aupfUserRoleId
-    , aupfKind
-    , aupfLocale
-    , aupfSiteFilter
-    , aupfTraffickerType
-    , aupfActive
-    , aupfAccountId
-    , aupfName
-    , aupfId
-    , aupfUserAccessType
-    , aupfComments
-    , aupfSubAccountId
-    , aupfCampaignFilter
-
-    -- ** ReportsListSortOrder
-    , ReportsListSortOrder (..)
-
-    -- ** DimensionValue
-    , DimensionValue
-    , dimensionValue
-    , dvEtag
-    , dvKind
-    , dvValue
-    , dvMatchType
-    , dvDimensionName
-    , dvId
-
-    -- ** TargetableRemarketingListsListSortField
-    , TargetableRemarketingListsListSortField (..)
-
-    -- ** CampaignsListSortOrder
-    , CampaignsListSortOrder (..)
-
-    -- ** Activities
-    , Activities
-    , activities
-    , actKind
-    , actMetricNames
-    , actFilters
-
-    -- ** FloodlightActivityGroupsListType
-    , FloodlightActivityGroupsListType (..)
-
-    -- ** FloodlightConfigurationFirstDayOfWeek
-    , FloodlightConfigurationFirstDayOfWeek (..)
-
-    -- ** UserRolePermissionGroupsListResponse
-    , UserRolePermissionGroupsListResponse
-    , userRolePermissionGroupsListResponse
-    , urpglrUserRolePermissionGroups
-    , urpglrKind
-
-    -- ** PlacementTag
-    , PlacementTag
-    , placementTag
-    , ptPlacementId
-    , ptTagDatas
-
-    -- ** DeliverySchedulePriority
-    , DeliverySchedulePriority (..)
-
-    -- ** FloodlightActivitiesListFloodlightActivityGroupType
-    , FloodlightActivitiesListFloodlightActivityGroupType (..)
-
-    -- ** RemarketingListsListResponse
-    , RemarketingListsListResponse
-    , remarketingListsListResponse
-    , rllrNextPageToken
-    , rllrRemarketingLists
-    , rllrKind
-
-    -- ** DynamicTargetingKey
-    , DynamicTargetingKey
-    , dynamicTargetingKey
-    , dtkObjectType
-    , dtkKind
-    , dtkObjectId
-    , dtkName
-
-    -- ** Creative
-    , Creative
-    , creative
-    , creConvertFlashToHTML5
-    , creBackupImageTargetWindow
-    , creRenderingIdDimensionValue
-    , creCustomKeyValues
-    , creSkipOffSet
-    , creRenderingId
-    , creThirdPartyBackupImageImpressionsURL
-    , creFsCommand
-    , creAllowScriptAccess
-    , creHTMLCodeLocked
-    , creRequiredFlashPluginVersion
-    , creUniversalAdId
-    , creAuthoringTool
-    , creSize
-    , creThirdPartyURLs
-    , creProgressOffSet
-    , creCounterCustomEvents
-    , creKind
-    , creSSLOverride
-    , creHTMLCode
-    , creAdvertiserId
-    , creRequiredFlashVersion
-    , creBackgRoundColor
-    , creAdTagKeys
-    , creSkippable
-    , creSSLCompliant
-    , creIdDimensionValue
-    , creBackupImageReportingLabel
-    , creCommercialId
-    , creActive
-    , creExitCustomEvents
-    , creAccountId
-    , creBackupImageClickThroughURL
-    , creName
-    , creOverrideCss
-    , creAdditionalSizes
-    , creClickTags
-    , creAdParameters
-    , creVersion
-    , creMediaDescription
-    , creMediaDuration
-    , creLatestTraffickedCreativeId
-    , creThirdPartyRichMediaImpressionsURL
-    , creDynamicAssetSelection
-    , creLastModifiedInfo
-    , creId
-    , creAuthoringSource
-    , creStudioAdvertiserId
-    , creCreativeAssets
-    , creSubAccountId
-    , creType
-    , creTimerCustomEvents
-    , creCreativeAssetSelection
-    , creStudioCreativeId
-    , creCompatibility
-    , creBackupImageFeatures
-    , creArtworkType
-    , creArchived
-    , creCompanionCreatives
-    , creTotalFileSize
-    , creStudioTraffickedCreativeId
-    , creAutoAdvanceImages
-    , creRedirectURL
-    , creCreativeFieldAssignments
-
-    -- ** SiteCompanionSetting
-    , SiteCompanionSetting
-    , siteCompanionSetting
-    , scsKind
-    , scsImageOnly
-    , scsCompanionsDisabled
-    , scsEnabledSizes
-
-    -- ** SiteContact
-    , SiteContact
-    , siteContact
-    , scEmail
-    , scPhone
-    , scLastName
-    , scAddress
-    , scFirstName
-    , scId
-    , scTitle
-    , scContactType
-
-    -- ** CreativeAuthoringSource
-    , CreativeAuthoringSource (..)
-
-    -- ** AccountsListResponse
-    , AccountsListResponse
-    , accountsListResponse
-    , accNextPageToken
-    , accAccounts
-    , accKind
-
-    -- ** DateRange
-    , DateRange
-    , dateRange
-    , drKind
-    , drEndDate
-    , drStartDate
-    , drRelativeDateRange
-
-    -- ** Report
-    , Report
-    , report
-    , rDelivery
-    , rEtag
-    , rOwnerProFileId
-    , rSchedule
-    , rPathToConversionCriteria
-    , rKind
-    , rFormat
-    , rReachCriteria
-    , rLastModifiedTime
-    , rAccountId
-    , rName
-    , rId
-    , rCrossDimensionReachCriteria
-    , rType
-    , rSubAccountId
-    , rFloodlightCriteria
-    , rCriteria
-    , rFileName
-
-    -- ** PlacementPaymentSource
-    , PlacementPaymentSource (..)
-
-    -- ** SiteSkippableSetting
-    , SiteSkippableSetting
-    , siteSkippableSetting
-    , sssSkipOffSet
-    , sssProgressOffSet
-    , sssKind
-    , sssSkippable
-
-    -- ** Rule
-    , Rule
-    , rule
-    , rulTargetingTemplateId
-    , rulName
-    , rulAssetId
-
-    -- ** ReportsFilesListSortOrder
-    , ReportsFilesListSortOrder (..)
-
-    -- ** Campaign
-    , Campaign
-    , campaign
-    , camAdBlockingConfiguration
-    , camCreativeOptimizationConfiguration
-    , camCreativeGroupIds
-    , camNielsenOCREnabled
-    , camKind
-    , camClickThroughURLSuffixProperties
-    , camAdvertiserId
-    , camEndDate
-    , camAdvertiserIdDimensionValue
-    , camIdDimensionValue
-    , camEventTagOverrides
-    , camStartDate
-    , camAccountId
-    , camName
-    , camAdvertiserGroupId
-    , camBillingInvoiceCode
-    , camDefaultLandingPageId
-    , camCreateInfo
-    , camLastModifiedInfo
-    , camId
-    , camSubAccountId
-    , camAdditionalCreativeOptimizationConfigurations
-    , camExternalId
-    , camComment
-    , camAudienceSegmentGroups
-    , camArchived
-    , camTraffickerEmails
-    , camDefaultClickThroughEventTagProperties
-
-    -- ** InventoryItemsListSortField
-    , InventoryItemsListSortField (..)
-
-    -- ** EventTagType
-    , EventTagType (..)
-
-    -- ** CreativesListSortOrder
-    , CreativesListSortOrder (..)
-
-    -- ** InventoryItemsListType
-    , InventoryItemsListType (..)
-
-    -- ** ThirdPartyAuthenticationToken
-    , ThirdPartyAuthenticationToken
-    , thirdPartyAuthenticationToken
-    , tpatValue
-    , tpatName
-
-    -- ** PopupWindowPropertiesPositionType
-    , PopupWindowPropertiesPositionType (..)
-
-    -- ** ClickThroughURL
-    , ClickThroughURL
-    , clickThroughURL
-    , ctuDefaultLandingPage
-    , ctuComputedClickThroughURL
-    , ctuCustomClickThroughURL
-    , ctuLandingPageId
-
-    -- ** TagSettingKeywordOption
-    , TagSettingKeywordOption (..)
-
-    -- ** CreativeAuthoringTool
-    , CreativeAuthoringTool (..)
-
-    -- ** OrderContactContactType
-    , OrderContactContactType (..)
-
-    -- ** CreativeAssetIdType
-    , CreativeAssetIdType (..)
-
-    -- ** AccountUserProFilesListSortOrder
-    , AccountUserProFilesListSortOrder (..)
-
-    -- ** RemarketingListListSource
-    , RemarketingListListSource (..)
-
-    -- ** BrowsersListResponse
-    , BrowsersListResponse
-    , browsersListResponse
-    , blrKind
-    , blrBrowsers
-
-    -- ** AccountUserProFileUserAccessType
-    , AccountUserProFileUserAccessType (..)
-
-    -- ** CreativeAssetStartTimeType
-    , CreativeAssetStartTimeType (..)
-
-    -- ** ProjectAudienceGender
-    , ProjectAudienceGender (..)
-
-    -- ** SiteSettings
-    , SiteSettings
-    , siteSettings
-    , ssDisableNewCookie
-    , ssVideoActiveViewOptOutTemplate
-    , ssAdBlockingOptOut
-    , ssTagSetting
-    , ssActiveViewOptOut
-    , ssVpaidAdapterChoiceTemplate
-
-    -- ** PlacementStrategiesListSortField
-    , PlacementStrategiesListSortField (..)
-
-    -- ** ContentCategoriesListResponse
-    , ContentCategoriesListResponse
-    , contentCategoriesListResponse
-    , cclrNextPageToken
-    , cclrKind
-    , cclrContentCategories
-
-    -- ** UserDefinedVariableConfigurationDataType
-    , UserDefinedVariableConfigurationDataType (..)
-
-    -- ** FloodlightActivityCacheBustingType
-    , FloodlightActivityCacheBustingType (..)
-
-    -- ** CreativesListResponse
-    , CreativesListResponse
-    , creativesListResponse
-    , clrlNextPageToken
-    , clrlKind
-    , clrlCreatives
-
-    -- ** CreativeGroupsListSortOrder
-    , CreativeGroupsListSortOrder (..)
-
-    -- ** OrderDocumentType
-    , OrderDocumentType (..)
-
-    -- ** TagDataFormat
-    , TagDataFormat (..)
-
-    -- ** Account
-    , Account
-    , account
-    , aaAccountPermissionIds
-    , aaMaximumImageSize
-    , aaCurrencyId
-    , aaReportsConfiguration
-    , aaNielsenOCREnabled
-    , aaKind
-    , aaLocale
-    , aaActive
-    , aaAvailablePermissionIds
-    , aaTeaserSizeLimit
-    , aaActiveViewOptOut
-    , aaShareReportsWithTwitter
-    , aaName
-    , aaAccountProFile
-    , aaId
-    , aaCountryId
-    , aaActiveAdsLimitTier
-    , aaDefaultCreativeSizeId
-    , aaDescription
-
-    -- ** ConversionsBatchInsertRequest
-    , ConversionsBatchInsertRequest
-    , conversionsBatchInsertRequest
-    , cbirKind
-    , cbirConversions
-    , cbirEncryptionInfo
-
-    -- ** AccountActiveAdSummaryActiveAdsLimitTier
-    , AccountActiveAdSummaryActiveAdsLimitTier (..)
-
-    -- ** CreativeAssetChildAssetType
-    , CreativeAssetChildAssetType (..)
-
-    -- ** PlacementGroupsListPlacementGroupType
-    , PlacementGroupsListPlacementGroupType (..)
-
-    -- ** AccountUserProFilesListResponse
-    , AccountUserProFilesListResponse
-    , accountUserProFilesListResponse
-    , aupflrNextPageToken
-    , aupflrAccountUserProFiles
-    , aupflrKind
-
-    -- ** ContentCategory
-    , ContentCategory
-    , contentCategory
-    , conKind
-    , conAccountId
-    , conName
-    , conId
-
-    -- ** ObjectFilterStatus
-    , ObjectFilterStatus (..)
-
-    -- ** ReportCompatibleFields
-    , ReportCompatibleFields
-    , reportCompatibleFields
-    , rcfMetrics
-    , rcfKind
-    , rcfDimensionFilters
-    , rcfPivotedActivityMetrics
-    , rcfDimensions
-
-    -- ** CampaignCreativeAssociationsListSortOrder
-    , CampaignCreativeAssociationsListSortOrder (..)
-
-    -- ** DeliverySchedule
-    , DeliverySchedule
-    , deliverySchedule
-    , dsHardCutoff
-    , dsPriority
-    , dsImpressionRatio
-    , dsFrequencyCap
-
-    -- ** RemarketingList
-    , RemarketingList
-    , remarketingList
-    , rlListSize
-    , rlListPopulationRule
-    , rlLifeSpan
-    , rlKind
-    , rlAdvertiserId
-    , rlAdvertiserIdDimensionValue
-    , rlActive
-    , rlAccountId
-    , rlName
-    , rlListSource
-    , rlId
-    , rlSubAccountId
-    , rlDescription
-
-    -- ** FloodlightActivitiesListSortField
-    , FloodlightActivitiesListSortField (..)
-
-    -- ** DynamicTargetingKeysListResponse
-    , DynamicTargetingKeysListResponse
-    , dynamicTargetingKeysListResponse
-    , dtklrKind
-    , dtklrDynamicTargetingKeys
-
-    -- ** DimensionValueList
-    , DimensionValueList
-    , dimensionValueList
-    , dvlEtag
-    , dvlNextPageToken
-    , dvlKind
-    , dvlItems
-
-    -- ** FloodlightReportCompatibleFields
-    , FloodlightReportCompatibleFields
-    , floodlightReportCompatibleFields
-    , frcfMetrics
-    , frcfKind
-    , frcfDimensionFilters
-    , frcfDimensions
-
-    -- ** UserRolePermissionGroup
-    , UserRolePermissionGroup
-    , userRolePermissionGroup
-    , urpgKind
-    , urpgName
-    , urpgId
-
-    -- ** CreativesListTypes
-    , CreativesListTypes (..)
-
-    -- ** DirectorySiteInpageTagFormatsItem
-    , DirectorySiteInpageTagFormatsItem (..)
-
-    -- ** TagSetting
-    , TagSetting
-    , tagSetting
-    , tsKeywordOption
-    , tsIncludeClickThroughURLs
-    , tsIncludeClickTracking
-    , tsAdditionalKeyValues
-
-    -- ** CreativeAssetWindowMode
-    , CreativeAssetWindowMode (..)
-
-    -- ** CreativeAssetAlignment
-    , CreativeAssetAlignment (..)
-
-    -- ** RemarketingListsListSortOrder
-    , RemarketingListsListSortOrder (..)
-
-    -- ** ReportPathToConversionCriteriaReportProperties
-    , ReportPathToConversionCriteriaReportProperties
-    , reportPathToConversionCriteriaReportProperties
-    , rptccrpMaximumInteractionGap
-    , rptccrpMaximumClickInteractions
-    , rptccrpPivotOnInteractionPath
-    , rptccrpMaximumImpressionInteractions
-    , rptccrpIncludeUnattributedIPConversions
-    , rptccrpImpressionsLookbackWindow
-    , rptccrpClicksLookbackWindow
-    , rptccrpIncludeUnattributedCookieConversions
-    , rptccrpIncludeAttributedIPConversions
-
-    -- ** UserRolePermissionsListResponse
-    , UserRolePermissionsListResponse
-    , userRolePermissionsListResponse
-    , urplrKind
-    , urplrUserRolePermissions
-
-    -- ** PlacementGroupsListPricingTypes
-    , PlacementGroupsListPricingTypes (..)
-
-    -- ** DynamicTargetingKeysDeleteObjectType
-    , DynamicTargetingKeysDeleteObjectType (..)
-
-    -- ** AccountActiveAdsLimitTier
-    , AccountActiveAdsLimitTier (..)
-
-    -- ** AccountsListSortOrder
-    , AccountsListSortOrder (..)
-
-    -- ** PlacementGroupsListResponse
-    , PlacementGroupsListResponse
-    , placementGroupsListResponse
-    , pglrNextPageToken
-    , pglrKind
-    , pglrPlacementGroups
-
-    -- ** MobileCarrier
-    , MobileCarrier
-    , mobileCarrier
-    , mcKind
-    , mcName
-    , mcCountryCode
-    , mcId
-    , mcCountryDartId
-
-    -- ** LandingPage
-    , LandingPage
-    , landingPage
-    , lpKind
-    , lpAdvertiserId
-    , lpURL
-    , lpName
-    , lpDeepLinks
-    , lpId
-    , lpArchived
-
-    -- ** ConnectionTypesListResponse
-    , ConnectionTypesListResponse
-    , connectionTypesListResponse
-    , ctlrKind
-    , ctlrConnectionTypes
-
-    -- ** OrdersListResponse
-    , OrdersListResponse
-    , ordersListResponse
-    , olrNextPageToken
-    , olrKind
-    , olrOrders
-
-    -- ** ReportList
-    , ReportList
-    , reportList
-    , repEtag
-    , repNextPageToken
-    , repKind
-    , repItems
-
-    -- ** CreativeGroup
-    , CreativeGroup
-    , creativeGroup
-    , cgKind
-    , cgAdvertiserId
-    , cgAdvertiserIdDimensionValue
-    , cgGroupNumber
-    , cgAccountId
-    , cgName
-    , cgId
-    , cgSubAccountId
-
-    -- ** SubAccountsListSortField
-    , SubAccountsListSortField (..)
-
-    -- ** CampaignCreativeAssociation
-    , CampaignCreativeAssociation
-    , campaignCreativeAssociation
-    , ccaKind
-    , ccaCreativeId
-
-    -- ** ConversionStatus
-    , ConversionStatus
-    , conversionStatus
-    , csKind
-    , csConversion
-    , csErrors
-
-    -- ** LookbackConfiguration
-    , LookbackConfiguration
-    , lookbackConfiguration
-    , lcClickDuration
-    , lcPostImpressionActivitiesDuration
-
-    -- ** VideoFormatFileType
-    , VideoFormatFileType (..)
-
-    -- ** AdsListSortField
-    , AdsListSortField (..)
-
-    -- ** ProjectsListSortField
-    , ProjectsListSortField (..)
-
-    -- ** FloodlightActivityPublisherDynamicTag
-    , FloodlightActivityPublisherDynamicTag
-    , floodlightActivityPublisherDynamicTag
-    , fapdtClickThrough
-    , fapdtSiteIdDimensionValue
-    , fapdtDynamicTag
-    , fapdtDirectorySiteId
-    , fapdtSiteId
-    , fapdtViewThrough
-
-    -- ** AdsListType
-    , AdsListType (..)
-
-    -- ** AccountActiveAdSummary
-    , AccountActiveAdSummary
-    , accountActiveAdSummary
-    , aaasAvailableAds
-    , aaasKind
-    , aaasAccountId
-    , aaasActiveAds
-    , aaasActiveAdsLimitTier
-
-    -- ** CreativeOptimizationConfigurationOptimizationModel
-    , CreativeOptimizationConfigurationOptimizationModel (..)
-
-    -- ** AccountPermissionLevel
-    , AccountPermissionLevel (..)
-
-    -- ** OffSetPosition
-    , OffSetPosition
-    , offSetPosition
-    , ospLeft
-    , ospTop
-
-    -- ** Metric
-    , Metric
-    , metric
-    , mKind
-    , mName
-
-    -- ** RemarketingListShare
-    , RemarketingListShare
-    , remarketingListShare
-    , rlsSharedAdvertiserIds
-    , rlsKind
-    , rlsRemarketingListId
-    , rlsSharedAccountIds
-
-    -- ** EventTagsListResponse
-    , EventTagsListResponse
-    , eventTagsListResponse
-    , etlrKind
-    , etlrEventTags
-
-    -- ** UserRolesListResponse
-    , UserRolesListResponse
-    , userRolesListResponse
-    , urlrNextPageToken
-    , urlrKind
-    , urlrUserRoles
-
-    -- ** ListPopulationTermType
-    , ListPopulationTermType (..)
-
-    -- ** AdvertiserGroupsListSortOrder
-    , AdvertiserGroupsListSortOrder (..)
-
-    -- ** CreativeFieldValuesListSortOrder
-    , CreativeFieldValuesListSortOrder (..)
-
-    -- ** SortedDimensionSortOrder
-    , SortedDimensionSortOrder (..)
-
-    -- ** MobileAppsListDirectories
-    , MobileAppsListDirectories (..)
-
-    -- ** CompatibleFields
-    , CompatibleFields
-    , compatibleFields
-    , cfReachReportCompatibleFields
-    , cfCrossDimensionReachReportCompatibleFields
-    , cfKind
-    , cfFloodlightReportCompatibleFields
-    , cfReportCompatibleFields
-    , cfPathToConversionReportCompatibleFields
-
-    -- ** AudienceSegment
-    , AudienceSegment
-    , audienceSegment
-    , asName
-    , asId
-    , asAllocation
-
-    -- ** FilesListSortField
-    , FilesListSortField (..)
-
-    -- ** ConversionsBatchUpdateRequest
-    , ConversionsBatchUpdateRequest
-    , conversionsBatchUpdateRequest
-    , cburbKind
-    , cburbConversions
-    , cburbEncryptionInfo
-
-    -- ** DirectorySiteInterstitialTagFormatsItem
-    , DirectorySiteInterstitialTagFormatsItem (..)
-
-    -- ** DfpSettings
-    , DfpSettings
-    , dfpSettings
-    , dsPubPaidPlacementAccepted
-    , dsDfpNetworkName
-    , dsPublisherPortalOnly
-    , dsProgrammaticPlacementAccepted
-    , dsDfpNetworkCode
-
-    -- ** EventTagsListSortField
-    , EventTagsListSortField (..)
-
-    -- ** PathToConversionReportCompatibleFields
-    , PathToConversionReportCompatibleFields
-    , pathToConversionReportCompatibleFields
-    , ptcrcfMetrics
-    , ptcrcfKind
-    , ptcrcfConversionDimensions
-    , ptcrcfCustomFloodlightVariables
-    , ptcrcfPerInteractionDimensions
-
-    -- ** InventoryItemType
-    , InventoryItemType (..)
-
-    -- ** CreativeAssetPositionTopUnit
-    , CreativeAssetPositionTopUnit (..)
-
-    -- ** City
-    , City
-    , city
-    , ccMetroCode
-    , ccRegionCode
-    , ccKind
-    , ccRegionDartId
-    , ccMetroDmaId
-    , ccName
-    , ccCountryCode
-    , ccCountryDartId
-    , ccDartId
-
-    -- ** PlatformType
-    , PlatformType
-    , platformType
-    , ptKind
-    , ptName
-    , ptId
-
-    -- ** FloodlightActivityFloodlightActivityGroupType
-    , FloodlightActivityFloodlightActivityGroupType (..)
-
-    -- ** PricingGroupType
-    , PricingGroupType (..)
-
-    -- ** KeyValueTargetingExpression
-    , KeyValueTargetingExpression
-    , keyValueTargetingExpression
-    , kvteExpression
-
-    -- ** CompanionClickThroughOverride
-    , CompanionClickThroughOverride
-    , companionClickThroughOverride
-    , cctoCreativeId
-    , cctoClickThroughURL
-
-    -- ** FloodlightActivityFloodlightTagType
-    , FloodlightActivityFloodlightTagType (..)
-
-    -- ** FloodlightActivityGroupsListSortOrder
-    , FloodlightActivityGroupsListSortOrder (..)
-
-    -- ** CreativeRotationType
-    , CreativeRotationType (..)
-
-    -- ** OrdersListSortField
-    , OrdersListSortField (..)
-
-    -- ** PlacementGroupsListSortField
-    , PlacementGroupsListSortField (..)
-
-    -- ** DirectorySitesListSortOrder
-    , DirectorySitesListSortOrder (..)
-
-    -- ** AdvertisersListResponse
-    , AdvertisersListResponse
-    , advertisersListResponse
-    , advNextPageToken
-    , advKind
-    , advAdvertisers
-
-    -- ** CountriesListResponse
-    , CountriesListResponse
-    , countriesListResponse
-    , couKind
-    , couCountries
-
-    -- ** AccountPermissionGroupsListResponse
-    , AccountPermissionGroupsListResponse
-    , accountPermissionGroupsListResponse
-    , apglrKind
-    , apglrAccountPermissionGroups
-
-    -- ** PopupWindowProperties
-    , PopupWindowProperties
-    , popupWindowProperties
-    , pwpOffSet
-    , pwpDimension
-    , pwpShowStatusBar
-    , pwpShowMenuBar
-    , pwpPositionType
-    , pwpShowAddressBar
-    , pwpShowScrollBar
-    , pwpShowToolBar
-    , pwpTitle
-
-    -- ** CreativeAssetDetectedFeaturesItem
-    , CreativeAssetDetectedFeaturesItem (..)
-
-    -- ** FloodlightActivityGroupType
-    , FloodlightActivityGroupType (..)
-
-    -- ** EventTagOverride
-    , EventTagOverride
-    , eventTagOverride
-    , etoEnabled
-    , etoId
-
-    -- ** PlacementsGeneratetagsTagFormats
-    , PlacementsGeneratetagsTagFormats (..)
-
-    -- ** AccountUserProFilesListSortField
-    , AccountUserProFilesListSortField (..)
-
-    -- ** OperatingSystemVersion
-    , OperatingSystemVersion
-    , operatingSystemVersion
-    , osvMinorVersion
-    , osvKind
-    , osvOperatingSystem
-    , osvMajorVersion
-    , osvName
-    , osvId
-
-    -- ** InventoryItemsListSortOrder
-    , InventoryItemsListSortOrder (..)
-
-    -- ** PlacementStrategiesListSortOrder
-    , PlacementStrategiesListSortOrder (..)
-
-    -- ** AccountPermission
-    , AccountPermission
-    , accountPermission
-    , acccKind
-    , acccAccountProFiles
-    , acccName
-    , acccId
-    , acccLevel
-    , acccPermissionGroupId
-
-    -- ** UserProFile
-    , UserProFile
-    , userProFile
-    , upfEtag
-    , upfKind
-    , upfAccountName
-    , upfProFileId
-    , upfUserName
-    , upfAccountId
-    , upfSubAccountName
-    , upfSubAccountId
-
-    -- ** OperatingSystemsListResponse
-    , OperatingSystemsListResponse
-    , operatingSystemsListResponse
-    , oslrKind
-    , oslrOperatingSystems
-
-    -- ** ReportDelivery
-    , ReportDelivery
-    , reportDelivery
-    , rdEmailOwner
-    , rdRecipients
-    , rdMessage
-    , rdEmailOwnerDeliveryType
-
-    -- ** TargetableRemarketingList
-    , TargetableRemarketingList
-    , targetableRemarketingList
-    , trlListSize
-    , trlLifeSpan
-    , trlKind
-    , trlAdvertiserId
-    , trlAdvertiserIdDimensionValue
-    , trlActive
-    , trlAccountId
-    , trlName
-    , trlListSource
-    , trlId
-    , trlSubAccountId
-    , trlDescription
-
-    -- ** ReportsFilesListSortField
-    , ReportsFilesListSortField (..)
-
-    -- ** PostalCodesListResponse
-    , PostalCodesListResponse
-    , postalCodesListResponse
-    , pclrKind
-    , pclrPostalCodes
-
-    -- ** ChangeLog
-    , ChangeLog
-    , changeLog
-    , chaUserProFileId
-    , chaObjectType
-    , chaUserProFileName
-    , chaKind
-    , chaObjectId
-    , chaAction
-    , chaTransactionId
-    , chaOldValue
-    , chaAccountId
-    , chaNewValue
-    , chaFieldName
-    , chaId
-    , chaSubAccountId
-    , chaChangeTime
-
-    -- ** Language
-    , Language
-    , language
-    , lLanguageCode
-    , lKind
-    , lName
-    , lId
-
-    -- ** CreativesListSortField
-    , CreativesListSortField (..)
-
-    -- ** PlacementStrategy
-    , PlacementStrategy
-    , placementStrategy
-    , psKind
-    , psAccountId
-    , psName
-    , psId
-
-    -- ** FloodlightActivity
-    , FloodlightActivity
-    , floodlightActivity
-    , faCountingMethod
-    , faTagString
-    , faSecure
-    , faExpectedURL
-    , faFloodlightActivityGroupTagString
-    , faFloodlightConfigurationId
-    , faKind
-    , faAdvertiserId
-    , faAdvertiserIdDimensionValue
-    , faSSLCompliant
-    , faIdDimensionValue
-    , faTagFormat
-    , faCacheBustingType
-    , faAccountId
-    , faName
-    , faPublisherTags
-    , faFloodlightActivityGroupId
-    , faHidden
-    , faFloodlightActivityGroupType
-    , faDefaultTags
-    , faFloodlightTagType
-    , faFloodlightActivityGroupName
-    , faId
-    , faSSLRequired
-    , faUserDefinedVariableTypes
-    , faSubAccountId
-    , faNotes
-    , faFloodlightConfigurationIdDimensionValue
-
-    -- ** DayPartTargetingDaysOfWeekItem
-    , DayPartTargetingDaysOfWeekItem (..)
-
-    -- ** CustomFloodlightVariable
-    , CustomFloodlightVariable
-    , customFloodlightVariable
-    , cusKind
-    , cusValue
-    , cusType
-
-    -- ** CreativeRotationWeightCalculationStrategy
-    , CreativeRotationWeightCalculationStrategy (..)
-
-    -- ** FilesListScope
-    , FilesListScope (..)
-
-    -- ** ContentCategoriesListSortField
-    , ContentCategoriesListSortField (..)
-
-    -- ** ProjectAudienceAgeGroup
-    , ProjectAudienceAgeGroup (..)
-
-    -- ** PlatformTypesListResponse
-    , PlatformTypesListResponse
-    , platformTypesListResponse
-    , ptlrKind
-    , ptlrPlatformTypes
-
-    -- ** AdType
-    , AdType (..)
-
-    -- ** LastModifiedInfo
-    , LastModifiedInfo
-    , lastModifiedInfo
-    , lmiTime
-
-    -- ** TargetWindow
-    , TargetWindow
-    , targetWindow
-    , twCustomHTML
-    , twTargetWindowOption
-
-    -- ** ChangeLogsListAction
-    , ChangeLogsListAction (..)
-
-    -- ** CreativeArtworkType
-    , CreativeArtworkType (..)
-
-    -- ** PlacementStatus
-    , PlacementStatus (..)
-
-    -- ** AccountPermissionGroup
-    , AccountPermissionGroup
-    , accountPermissionGroup
-    , apgpKind
-    , apgpName
-    , apgpId
-
-    -- ** Advertiser
-    , Advertiser
-    , advertiser
-    , advdOriginalFloodlightConfigurationId
-    , advdStatus
-    , advdFloodlightConfigurationId
-    , advdKind
-    , advdSuspended
-    , advdIdDimensionValue
-    , advdAccountId
-    , advdDefaultEmail
-    , advdName
-    , advdAdvertiserGroupId
-    , advdDefaultClickThroughEventTagId
-    , advdId
-    , advdSubAccountId
-    , advdFloodlightConfigurationIdDimensionValue
-    , advdClickThroughURLSuffix
-
-    -- ** ReportScheduleRunsOnDayOfMonth
-    , ReportScheduleRunsOnDayOfMonth (..)
-
-    -- ** UserRole
-    , UserRole
-    , userRole
-    , urParentUserRoleId
-    , urKind
-    , urDefaultUserRole
-    , urAccountId
-    , urName
-    , urId
-    , urPermissions
-    , urSubAccountId
-
-    -- ** FloodlightActivityUserDefinedVariableTypesItem
-    , FloodlightActivityUserDefinedVariableTypesItem (..)
-
-    -- ** EventTagSiteFilterType
-    , EventTagSiteFilterType (..)
-
-    -- ** ReportFormat
-    , ReportFormat (..)
-
-    -- ** PlacementGroupPlacementGroupType
-    , PlacementGroupPlacementGroupType (..)
-
-    -- ** VideoFormatsListResponse
-    , VideoFormatsListResponse
-    , videoFormatsListResponse
-    , vflrKind
-    , vflrVideoFormats
-
-    -- ** DirectorySitesListResponse
-    , DirectorySitesListResponse
-    , directorySitesListResponse
-    , dslrNextPageToken
-    , dslrKind
-    , dslrDirectorySites
-
-    -- ** ConversionError
-    , ConversionError
-    , conversionError
-    , ceKind
-    , ceCode
-    , ceMessage
-
-    -- ** PricingPricingType
-    , PricingPricingType (..)
-
-    -- ** PricingSchedulePricingPeriod
-    , PricingSchedulePricingPeriod
-    , pricingSchedulePricingPeriod
-    , psppEndDate
-    , psppRateOrCostNanos
-    , psppStartDate
-    , psppUnits
-    , psppPricingComment
-
-    -- ** SubAccountsListSortOrder
-    , SubAccountsListSortOrder (..)
-
-    -- ** Region
-    , Region
-    , region
-    , regRegionCode
-    , regKind
-    , regName
-    , regCountryCode
-    , regCountryDartId
-    , regDartId
-
-    -- ** UniversalAdIdRegistry
-    , UniversalAdIdRegistry (..)
-
-    -- ** AdvertiserGroupsListResponse
-    , AdvertiserGroupsListResponse
-    , advertiserGroupsListResponse
-    , aglrNextPageToken
-    , aglrKind
-    , aglrAdvertiserGroups
-
-    -- ** AdsListSortOrder
-    , AdsListSortOrder (..)
-
-    -- ** ProjectsListSortOrder
-    , ProjectsListSortOrder (..)
-
-    -- ** CreativeAssignment
-    , CreativeAssignment
-    , creativeAssignment
-    , caCreativeGroupAssignments
-    , caStartTime
-    , caWeight
-    , caRichMediaExitOverrides
-    , caSSLCompliant
-    , caCreativeId
-    , caClickThroughURL
-    , caApplyEventTags
-    , caActive
-    , caSequence
-    , caEndTime
-    , caCompanionCreativeOverrides
-    , caCreativeIdDimensionValue
-
-    -- ** DimensionFilter
-    , DimensionFilter
-    , dimensionFilter
-    , dfKind
-    , dfValue
-    , dfDimensionName
-
-    -- ** UserProFileList
-    , UserProFileList
-    , userProFileList
-    , upflEtag
-    , upflKind
-    , upflItems
-
-    -- ** RemarketingListsListSortField
-    , RemarketingListsListSortField (..)
-
-    -- ** FloodlightConfiguration
-    , FloodlightConfiguration
-    , floodlightConfiguration
-    , fcTagSettings
-    , fcExposureToConversionEnabled
-    , fcInAppAttributionTrackingEnabled
-    , fcThirdPartyAuthenticationTokens
-    , fcKind
-    , fcAdvertiserId
-    , fcAnalyticsDataSharingEnabled
-    , fcAdvertiserIdDimensionValue
-    , fcIdDimensionValue
-    , fcLookbackConfiguration
-    , fcAccountId
-    , fcId
-    , fcNATuralSearchConversionAttributionOption
-    , fcUserDefinedVariableConfigurations
-    , fcSubAccountId
-    , fcCustomViewabilityMetric
-    , fcFirstDayOfWeek
-    , fcOmnitureSettings
-
-    -- ** MobileAppDirectory
-    , MobileAppDirectory (..)
-
-    -- ** CompanionSetting
-    , CompanionSetting
-    , companionSetting
-    , comKind
-    , comImageOnly
-    , comCompanionsDisabled
-    , comEnabledSizes
-
-    -- ** ReportScheduleRepeatsOnWeekDaysItem
-    , ReportScheduleRepeatsOnWeekDaysItem (..)
-
-    -- ** FloodlightActivityGroupsListResponse
-    , FloodlightActivityGroupsListResponse
-    , floodlightActivityGroupsListResponse
-    , faglrNextPageToken
-    , faglrKind
-    , faglrFloodlightActivityGroups
-
-    -- ** CreativeGroupAssignmentCreativeGroupNumber
-    , CreativeGroupAssignmentCreativeGroupNumber (..)
-
-    -- ** Conversion
-    , Conversion
-    , conversion
-    , conoTreatmentForUnderage
-    , conoEncryptedUserIdCandidates
-    , conoTimestampMicros
-    , conoLimitAdTracking
-    , conoEncryptedUserId
-    , conoMobileDeviceId
-    , conoFloodlightConfigurationId
-    , conoKind
-    , conoFloodlightActivityId
-    , conoNonPersonalizedAd
-    , conoQuantity
-    , conoValue
-    , conoCustomVariables
-    , conoChildDirectedTreatment
-    , conoGclid
-    , conoOrdinal
-
-    -- ** CreativeFieldValuesListResponse
-    , CreativeFieldValuesListResponse
-    , creativeFieldValuesListResponse
-    , cfvlrNextPageToken
-    , cfvlrKind
-    , cfvlrCreativeFieldValues
-
-    -- ** SiteSettingsVpaidAdapterChoiceTemplate
-    , SiteSettingsVpaidAdapterChoiceTemplate (..)
-
-    -- ** AccountsListSortField
-    , AccountsListSortField (..)
-
-    -- ** RichMediaExitOverride
-    , RichMediaExitOverride
-    , richMediaExitOverride
-    , rmeoEnabled
-    , rmeoClickThroughURL
-    , rmeoExitId
-
-    -- ** AdvertisersListStatus
-    , AdvertisersListStatus (..)
-
-    -- ** CustomViewabilityMetric
-    , CustomViewabilityMetric
-    , customViewabilityMetric
-    , cvmName
-    , cvmId
-    , cvmConfiguration
-
-    -- ** DimensionValueMatchType
-    , DimensionValueMatchType (..)
-
-    -- ** AdvertiserLandingPagesListResponse
-    , AdvertiserLandingPagesListResponse
-    , advertiserLandingPagesListResponse
-    , alplrLandingPages
-    , alplrNextPageToken
-    , alplrKind
-
-    -- ** MobileAppsListResponse
-    , MobileAppsListResponse
-    , mobileAppsListResponse
-    , malrNextPageToken
-    , malrKind
-    , malrMobileApps
-
-    -- ** SortedDimension
-    , SortedDimension
-    , sortedDimension
-    , sdKind
-    , sdSortOrder
-    , sdName
-
-    -- ** PlacementGroupsListSortOrder
-    , PlacementGroupsListSortOrder (..)
-
-    -- ** CreativeFieldsListResponse
-    , CreativeFieldsListResponse
-    , creativeFieldsListResponse
-    , cflrNextPageToken
-    , cflrKind
-    , cflrCreativeFields
-
-    -- ** TargetingTemplatesListResponse
-    , TargetingTemplatesListResponse
-    , targetingTemplatesListResponse
-    , ttlrNextPageToken
-    , ttlrKind
-    , ttlrTargetingTemplates
-
-    -- ** PlacementsGenerateTagsResponse
-    , PlacementsGenerateTagsResponse
-    , placementsGenerateTagsResponse
-    , pgtrKind
-    , pgtrPlacementTags
-
-    -- ** CreativeAsset
-    , CreativeAsset
-    , creativeAsset
-    , caaZIndex
-    , caaPushdown
-    , caaFrameRate
-    , caaOriginalBackup
-    , caaWindowMode
-    , caaFlashVersion
-    , caaPushdownDuration
-    , caaSize
-    , caaVerticallyLocked
-    , caaOffSet
-    , caaStreamingServingURL
-    , caaZipFilesize
-    , caaTransparency
-    , caaHideSelectionBoxes
-    , caaSSLCompliant
-    , caaFileSize
-    , caaAssetIdentifier
-    , caaCompanionCreativeIds
-    , caaDurationType
-    , caaProgressiveServingURL
-    , caaIdDimensionValue
-    , caaActive
-    , caaRole
-    , caaMimeType
-    , caaPositionTopUnit
-    , caaPositionLeftUnit
-    , caaAlignment
-    , caaExpandedDimension
-    , caaAdditionalSizes
-    , caaZipFilename
-    , caaMediaDuration
-    , caaActionScript3
-    , caaDisplayType
-    , caaChildAssetType
-    , caaCollapsedSize
-    , caaAudioSampleRate
-    , caaId
-    , caaBitRate
-    , caaPoliteLoad
-    , caaCustomStartTimeValue
-    , caaStartTimeType
-    , caaAudioBitRate
-    , caaDuration
-    , caaOrientation
-    , caaArtworkType
-    , caaHideFlashObjects
-    , caaDetectedFeatures
-    , caaBackupImageExit
-    , caaPosition
-    , caaHorizontallyLocked
-
-    -- ** AdCompatibility
-    , AdCompatibility (..)
-
-    -- ** CreativeFieldValuesListSortField
-    , CreativeFieldValuesListSortField (..)
-
-    -- ** LanguageTargeting
-    , LanguageTargeting
-    , languageTargeting
-    , ltLanguages
-
-    -- ** CreativeAssetSelection
-    , CreativeAssetSelection
-    , creativeAssetSelection
-    , casRules
-    , casDefaultAssetId
-
-    -- ** PlacementsListResponse
-    , PlacementsListResponse
-    , placementsListResponse
-    , plaNextPageToken
-    , plaKind
-    , plaPlacements
-
-    -- ** FloodlightActivityGroupsListSortField
-    , FloodlightActivityGroupsListSortField (..)
-
-    -- ** OrdersListSortOrder
-    , OrdersListSortOrder (..)
-
-    -- ** ReportSchedule
-    , ReportSchedule
-    , reportSchedule
-    , rsEvery
-    , rsActive
-    , rsRepeats
-    , rsStartDate
-    , rsExpirationDate
-    , rsRunsOnDayOfMonth
-    , rsRepeatsOnWeekDays
-
-    -- ** ReportPathToConversionCriteria
-    , ReportPathToConversionCriteria
-    , reportPathToConversionCriteria
-    , rptccReportProperties
-    , rptccMetricNames
-    , rptccCustomRichMediaEvents
-    , rptccDateRange
-    , rptccConversionDimensions
-    , rptccCustomFloodlightVariables
-    , rptccFloodlightConfigId
-    , rptccActivityFilters
-    , rptccPerInteractionDimensions
-
-    -- ** MetrosListResponse
-    , MetrosListResponse
-    , metrosListResponse
-    , mlrKind
-    , mlrMetros
-
-    -- ** AccountAccountProFile
-    , AccountAccountProFile (..)
-
-    -- ** ConversionsBatchInsertResponse
-    , ConversionsBatchInsertResponse
-    , conversionsBatchInsertResponse
-    , cbirbStatus
-    , cbirbKind
-    , cbirbHasFailures
-
-    -- ** OrderDocumentsListResponse
-    , OrderDocumentsListResponse
-    , orderDocumentsListResponse
-    , odlrNextPageToken
-    , odlrKind
-    , odlrOrderDocuments
-
-    -- ** Recipient
-    , Recipient
-    , recipient
-    , recEmail
-    , recKind
-    , recDeliveryType
-
-    -- ** CreativeType
-    , CreativeType (..)
-
-    -- ** FilesListSortOrder
-    , FilesListSortOrder (..)
-
-    -- ** AdvertiserGroupsListSortField
-    , AdvertiserGroupsListSortField (..)
-
-    -- ** TargetWindowTargetWindowOption
-    , TargetWindowTargetWindowOption (..)
-
-    -- ** PlacementsListPricingTypes
-    , PlacementsListPricingTypes (..)
-
-    -- ** EventTagsListSortOrder
-    , EventTagsListSortOrder (..)
-
-    -- ** EncryptionInfoEncryptionSource
-    , EncryptionInfoEncryptionSource (..)
-
-    -- ** DirectorySitesListSortField
-    , DirectorySitesListSortField (..)
-
-    -- ** Site
-    , Site
-    , site
-    , sitiVideoSettings
-    , sitiKind
-    , sitiKeyName
-    , sitiSiteContacts
-    , sitiSiteSettings
-    , sitiIdDimensionValue
-    , sitiDirectorySiteIdDimensionValue
-    , sitiAccountId
-    , sitiName
-    , sitiDirectorySiteId
-    , sitiId
-    , sitiSubAccountId
-    , sitiApproved
-
-    -- ** ReportCrossDimensionReachCriteriaDimension
-    , ReportCrossDimensionReachCriteriaDimension (..)
-
-    -- ** SitesListSortOrder
-    , SitesListSortOrder (..)
-
-    -- ** UserDefinedVariableConfiguration
-    , UserDefinedVariableConfiguration
-    , userDefinedVariableConfiguration
-    , udvcReportName
-    , udvcDataType
-    , udvcVariableType
-
-    -- ** ReportCrossDimensionReachCriteria
-    , ReportCrossDimensionReachCriteria
-    , reportCrossDimensionReachCriteria
-    , rcdrcPivoted
-    , rcdrcBreakdown
-    , rcdrcDimension
-    , rcdrcMetricNames
-    , rcdrcDimensionFilters
-    , rcdrcDateRange
-    , rcdrcOverlapMetricNames
-
-    -- ** FileURLs
-    , FileURLs
-    , fileURLs
-    , fuBrowserURL
-    , fuAPIURL
-
-    -- ** CampaignCreativeAssociationsListResponse
-    , CampaignCreativeAssociationsListResponse
-    , campaignCreativeAssociationsListResponse
-    , ccalrCampaignCreativeAssociations
-    , ccalrNextPageToken
-    , ccalrKind
-
-    -- ** PlacementTagFormatsItem
-    , PlacementTagFormatsItem (..)
-
-    -- ** Order
-    , Order
-    , order
-    , oSellerOrderId
-    , oSellerOrganizationName
-    , oKind
-    , oAdvertiserId
-    , oPlanningTermId
-    , oAccountId
-    , oName
-    , oSiteNames
-    , oLastModifiedInfo
-    , oBuyerOrganizationName
-    , oId
-    , oBuyerInvoiceId
-    , oComments
-    , oProjectId
-    , oSubAccountId
-    , oNotes
-    , oContacts
-    , oSiteId
-    , oTermsAndConditions
-    , oApproverUserProFileIds
-
-    -- ** CreativeAssetId
-    , CreativeAssetId
-    , creativeAssetId
-    , caiName
-    , caiType
-
-    -- ** FrequencyCap
-    , FrequencyCap
-    , frequencyCap
-    , fcImpressions
-    , fcDuration
-
-    -- ** File
-    , File
-    , file
-    , filStatus
-    , filEtag
-    , filKind
-    , filURLs
-    , filReportId
-    , filDateRange
-    , filFormat
-    , filLastModifiedTime
-    , filId
-    , filFileName
-
-    -- ** DynamicTargetingKeyObjectType
-    , DynamicTargetingKeyObjectType (..)
-
-    -- ** ReportType
-    , ReportType (..)
-
-    -- ** CreativeAssetMetadataWarnedValidationRulesItem
-    , CreativeAssetMetadataWarnedValidationRulesItem (..)
-
-    -- ** CreativeGroupsListResponse
-    , CreativeGroupsListResponse
-    , creativeGroupsListResponse
-    , cglrCreativeGroups
-    , cglrNextPageToken
-    , cglrKind
-
-    -- ** AdSlotPaymentSourceType
-    , AdSlotPaymentSourceType (..)
-
-    -- ** MobileCarriersListResponse
-    , MobileCarriersListResponse
-    , mobileCarriersListResponse
-    , mclrMobileCarriers
-    , mclrKind
-
-    -- ** AccountPermissionAccountProFilesItem
-    , AccountPermissionAccountProFilesItem (..)
-
-    -- ** CreativeAssetMetadata
-    , CreativeAssetMetadata
-    , creativeAssetMetadata
-    , camaKind
-    , camaAssetIdentifier
-    , camaIdDimensionValue
-    , camaClickTags
-    , camaWarnedValidationRules
-    , camaId
-    , camaDetectedFeatures
-
-    -- ** OmnitureSettings
-    , OmnitureSettings
-    , omnitureSettings
-    , osOmnitureCostDataEnabled
-    , osOmnitureIntegrationEnabled
-
-    -- ** ConnectionType
-    , ConnectionType
-    , connectionType
-    , cttKind
-    , cttName
-    , cttId
-
-    -- ** CreativeCustomEventAdvertiserCustomEventType
-    , CreativeCustomEventAdvertiserCustomEventType (..)
-
-    -- ** PlacementGroup
-    , PlacementGroup
-    , placementGroup
-    , plalPlacementStrategyId
-    , plalSiteIdDimensionValue
-    , plalPricingSchedule
-    , plalKind
-    , plalCampaignIdDimensionValue
-    , plalAdvertiserId
-    , plalAdvertiserIdDimensionValue
-    , plalCampaignId
-    , plalIdDimensionValue
-    , plalPlacementGroupType
-    , plalContentCategoryId
-    , plalDirectorySiteIdDimensionValue
-    , plalAccountId
-    , plalName
-    , plalDirectorySiteId
-    , plalCreateInfo
-    , plalChildPlacementIds
-    , plalLastModifiedInfo
-    , plalId
-    , plalPrimaryPlacementId
-    , plalSubAccountId
-    , plalExternalId
-    , plalComment
-    , plalPrimaryPlacementIdDimensionValue
-    , plalSiteId
-    , plalArchived
-
-    -- ** EventTag
-    , EventTag
-    , eventTag
-    , etStatus
-    , etExcludeFromAdxRequests
-    , etEnabledByDefault
-    , etKind
-    , etCampaignIdDimensionValue
-    , etAdvertiserId
-    , etURL
-    , etAdvertiserIdDimensionValue
-    , etSSLCompliant
-    , etCampaignId
-    , etAccountId
-    , etName
-    , etURLEscapeLevels
-    , etSiteIds
-    , etId
-    , etSubAccountId
-    , etType
-    , etSiteFilterType
-
-    -- ** UserRolePermission
-    , UserRolePermission
-    , userRolePermission
-    , useKind
-    , useAvailability
-    , useName
-    , useId
-    , usePermissionGroupId
-
-    -- ** ChangeLogsListObjectType
-    , ChangeLogsListObjectType (..)
-
-    -- ** OrderContact
-    , OrderContact
-    , orderContact
-    , ocSignatureUserProFileId
-    , ocContactName
-    , ocContactTitle
-    , ocContactType
-    , ocContactInfo
-
-    -- ** TranscodeSetting
-    , TranscodeSetting
-    , transcodeSetting
-    , tsKind
-    , tsEnabledVideoFormats
-
-    -- ** FloodlightActivitiesGenerateTagResponse
-    , FloodlightActivitiesGenerateTagResponse
-    , floodlightActivitiesGenerateTagResponse
-    , fagtrGlobalSiteTagGlobalSnippet
-    , fagtrFloodlightActivityTag
-    , fagtrKind
-
-    -- ** AdSlot
-    , AdSlot
-    , adSlot
-    , assHeight
-    , assPaymentSourceType
-    , assLinkedPlacementId
-    , assWidth
-    , assPrimary
-    , assName
-    , assComment
-    , assCompatibility
-
-    -- ** ThirdPartyTrackingURL
-    , ThirdPartyTrackingURL
-    , thirdPartyTrackingURL
-    , tptuURL
-    , tptuThirdPartyURLType
-
-    -- ** SiteVideoSettingsOrientation
-    , SiteVideoSettingsOrientation (..)
-
-    -- ** PricingCapCostType
-    , PricingCapCostType (..)
-
-    -- ** OrderDocument
-    , OrderDocument
-    , orderDocument
-    , odSigned
-    , odKind
-    , odAdvertiserId
-    , odLastSentTime
-    , odAmendedOrderDocumentId
-    , odLastSentRecipients
-    , odEffectiveDate
-    , odApprovedByUserProFileIds
-    , odAccountId
-    , odId
-    , odProjectId
-    , odTitle
-    , odSubAccountId
-    , odType
-    , odOrderId
-    , odCancelled
-    , odCreatedInfo
-
-    -- ** Metro
-    , Metro
-    , metro
-    , metMetroCode
-    , metKind
-    , metName
-    , metCountryCode
-    , metDmaId
-    , metCountryDartId
-    , metDartId
-
-    -- ** MobileApp
-    , MobileApp
-    , mobileApp
-    , maKind
-    , maId
-    , maTitle
-    , maPublisherName
-    , maDirectory
-
-    -- ** CreativeAssetDisplayType
-    , CreativeAssetDisplayType (..)
-
-    -- ** Placement
-    , Placement
-    , placement
-    , p1Status
-    , p1VideoSettings
-    , p1PlacementStrategyId
-    , p1TagFormats
-    , p1SiteIdDimensionValue
-    , p1PricingSchedule
-    , p1Size
-    , p1Kind
-    , p1KeyName
-    , p1CampaignIdDimensionValue
-    , p1AdvertiserId
-    , p1AdvertiserIdDimensionValue
-    , p1CampaignId
-    , p1IdDimensionValue
-    , p1VpaidAdapterChoice
-    , p1AdBlockingOptOut
-    , p1Primary
-    , p1LookbackConfiguration
-    , p1TagSetting
-    , p1ContentCategoryId
-    , p1DirectorySiteIdDimensionValue
-    , p1AccountId
-    , p1PaymentSource
-    , p1Name
-    , p1AdditionalSizes
-    , p1DirectorySiteId
-    , p1CreateInfo
-    , p1VideoActiveViewOptOut
-    , p1LastModifiedInfo
-    , p1Id
-    , p1SSLRequired
-    , p1SubAccountId
-    , p1PlacementGroupIdDimensionValue
-    , p1ExternalId
-    , p1PlacementGroupId
-    , p1Comment
-    , p1SiteId
-    , p1Compatibility
-    , p1Archived
-    , p1PaymentApproved
-    , p1PublisherUpdateInfo
-
-    -- ** FloodlightActivityCountingMethod
-    , FloodlightActivityCountingMethod (..)
-
-    -- ** EncryptionInfo
-    , EncryptionInfo
-    , encryptionInfo
-    , eiEncryptionSource
-    , eiKind
-    , eiEncryptionEntityType
-    , eiEncryptionEntityId
-
-    -- ** SitesListResponse
-    , SitesListResponse
-    , sitesListResponse
-    , sitNextPageToken
-    , sitKind
-    , sitSites
-
-    -- ** ContentCategoriesListSortOrder
-    , ContentCategoriesListSortOrder (..)
-
-    -- ** TargetingTemplate
-    , TargetingTemplate
-    , targetingTemplate
-    , ttGeoTargeting
-    , ttTechnologyTargeting
-    , ttDayPartTargeting
-    , ttKind
-    , ttAdvertiserId
-    , ttAdvertiserIdDimensionValue
-    , ttAccountId
-    , ttName
-    , ttKeyValueTargetingExpression
-    , ttId
-    , ttSubAccountId
-    , ttLanguageTargeting
-    , ttListTargetingExpression
-
-    -- ** CreativeField
-    , CreativeField
-    , creativeField
-    , cffKind
-    , cffAdvertiserId
-    , cffAdvertiserIdDimensionValue
-    , cffAccountId
-    , cffName
-    , cffId
-    , cffSubAccountId
-
-    -- ** AdvertiserStatus
-    , AdvertiserStatus (..)
-
-    -- ** DefaultClickThroughEventTagProperties
-    , DefaultClickThroughEventTagProperties
-    , defaultClickThroughEventTagProperties
-    , dctetpOverrideInheritedEventTag
-    , dctetpDefaultClickThroughEventTagId
-
-    -- ** ListTargetingExpression
-    , ListTargetingExpression
-    , listTargetingExpression
-    , lteExpression
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-import           Network.Google.Resource.DFAReporting.AccountActiveAdSummaries.Get
-import           Network.Google.Resource.DFAReporting.AccountPermissionGroups.Get
-import           Network.Google.Resource.DFAReporting.AccountPermissionGroups.List
-import           Network.Google.Resource.DFAReporting.AccountPermissions.Get
-import           Network.Google.Resource.DFAReporting.AccountPermissions.List
-import           Network.Google.Resource.DFAReporting.Accounts.Get
-import           Network.Google.Resource.DFAReporting.Accounts.List
-import           Network.Google.Resource.DFAReporting.Accounts.Patch
-import           Network.Google.Resource.DFAReporting.Accounts.Update
-import           Network.Google.Resource.DFAReporting.AccountUserProFiles.Get
-import           Network.Google.Resource.DFAReporting.AccountUserProFiles.Insert
-import           Network.Google.Resource.DFAReporting.AccountUserProFiles.List
-import           Network.Google.Resource.DFAReporting.AccountUserProFiles.Patch
-import           Network.Google.Resource.DFAReporting.AccountUserProFiles.Update
-import           Network.Google.Resource.DFAReporting.Ads.Get
-import           Network.Google.Resource.DFAReporting.Ads.Insert
-import           Network.Google.Resource.DFAReporting.Ads.List
-import           Network.Google.Resource.DFAReporting.Ads.Patch
-import           Network.Google.Resource.DFAReporting.Ads.Update
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.Delete
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.Get
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.Insert
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.List
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.Patch
-import           Network.Google.Resource.DFAReporting.AdvertiserGroups.Update
-import           Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Get
-import           Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Insert
-import           Network.Google.Resource.DFAReporting.AdvertiserLandingPages.List
-import           Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Patch
-import           Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Update
-import           Network.Google.Resource.DFAReporting.Advertisers.Get
-import           Network.Google.Resource.DFAReporting.Advertisers.Insert
-import           Network.Google.Resource.DFAReporting.Advertisers.List
-import           Network.Google.Resource.DFAReporting.Advertisers.Patch
-import           Network.Google.Resource.DFAReporting.Advertisers.Update
-import           Network.Google.Resource.DFAReporting.Browsers.List
-import           Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.Insert
-import           Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.List
-import           Network.Google.Resource.DFAReporting.Campaigns.Get
-import           Network.Google.Resource.DFAReporting.Campaigns.Insert
-import           Network.Google.Resource.DFAReporting.Campaigns.List
-import           Network.Google.Resource.DFAReporting.Campaigns.Patch
-import           Network.Google.Resource.DFAReporting.Campaigns.Update
-import           Network.Google.Resource.DFAReporting.ChangeLogs.Get
-import           Network.Google.Resource.DFAReporting.ChangeLogs.List
-import           Network.Google.Resource.DFAReporting.Cities.List
-import           Network.Google.Resource.DFAReporting.ConnectionTypes.Get
-import           Network.Google.Resource.DFAReporting.ConnectionTypes.List
-import           Network.Google.Resource.DFAReporting.ContentCategories.Delete
-import           Network.Google.Resource.DFAReporting.ContentCategories.Get
-import           Network.Google.Resource.DFAReporting.ContentCategories.Insert
-import           Network.Google.Resource.DFAReporting.ContentCategories.List
-import           Network.Google.Resource.DFAReporting.ContentCategories.Patch
-import           Network.Google.Resource.DFAReporting.ContentCategories.Update
-import           Network.Google.Resource.DFAReporting.Conversions.Batchinsert
-import           Network.Google.Resource.DFAReporting.Conversions.Batchupdate
-import           Network.Google.Resource.DFAReporting.Countries.Get
-import           Network.Google.Resource.DFAReporting.Countries.List
-import           Network.Google.Resource.DFAReporting.CreativeAssets.Insert
-import           Network.Google.Resource.DFAReporting.CreativeFields.Delete
-import           Network.Google.Resource.DFAReporting.CreativeFields.Get
-import           Network.Google.Resource.DFAReporting.CreativeFields.Insert
-import           Network.Google.Resource.DFAReporting.CreativeFields.List
-import           Network.Google.Resource.DFAReporting.CreativeFields.Patch
-import           Network.Google.Resource.DFAReporting.CreativeFields.Update
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.Delete
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.Get
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.Insert
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.List
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.Patch
-import           Network.Google.Resource.DFAReporting.CreativeFieldValues.Update
-import           Network.Google.Resource.DFAReporting.CreativeGroups.Get
-import           Network.Google.Resource.DFAReporting.CreativeGroups.Insert
-import           Network.Google.Resource.DFAReporting.CreativeGroups.List
-import           Network.Google.Resource.DFAReporting.CreativeGroups.Patch
-import           Network.Google.Resource.DFAReporting.CreativeGroups.Update
-import           Network.Google.Resource.DFAReporting.Creatives.Get
-import           Network.Google.Resource.DFAReporting.Creatives.Insert
-import           Network.Google.Resource.DFAReporting.Creatives.List
-import           Network.Google.Resource.DFAReporting.Creatives.Patch
-import           Network.Google.Resource.DFAReporting.Creatives.Update
-import           Network.Google.Resource.DFAReporting.DimensionValues.Query
-import           Network.Google.Resource.DFAReporting.DirectorySites.Get
-import           Network.Google.Resource.DFAReporting.DirectorySites.Insert
-import           Network.Google.Resource.DFAReporting.DirectorySites.List
-import           Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Delete
-import           Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Insert
-import           Network.Google.Resource.DFAReporting.DynamicTargetingKeys.List
-import           Network.Google.Resource.DFAReporting.EventTags.Delete
-import           Network.Google.Resource.DFAReporting.EventTags.Get
-import           Network.Google.Resource.DFAReporting.EventTags.Insert
-import           Network.Google.Resource.DFAReporting.EventTags.List
-import           Network.Google.Resource.DFAReporting.EventTags.Patch
-import           Network.Google.Resource.DFAReporting.EventTags.Update
-import           Network.Google.Resource.DFAReporting.Files.Get
-import           Network.Google.Resource.DFAReporting.Files.List
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Delete
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Generatetag
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Get
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Insert
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.List
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Patch
-import           Network.Google.Resource.DFAReporting.FloodlightActivities.Update
-import           Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Get
-import           Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Insert
-import           Network.Google.Resource.DFAReporting.FloodlightActivityGroups.List
-import           Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Patch
-import           Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Update
-import           Network.Google.Resource.DFAReporting.FloodlightConfigurations.Get
-import           Network.Google.Resource.DFAReporting.FloodlightConfigurations.List
-import           Network.Google.Resource.DFAReporting.FloodlightConfigurations.Patch
-import           Network.Google.Resource.DFAReporting.FloodlightConfigurations.Update
-import           Network.Google.Resource.DFAReporting.InventoryItems.Get
-import           Network.Google.Resource.DFAReporting.InventoryItems.List
-import           Network.Google.Resource.DFAReporting.Languages.List
-import           Network.Google.Resource.DFAReporting.Metros.List
-import           Network.Google.Resource.DFAReporting.MobileApps.Get
-import           Network.Google.Resource.DFAReporting.MobileApps.List
-import           Network.Google.Resource.DFAReporting.MobileCarriers.Get
-import           Network.Google.Resource.DFAReporting.MobileCarriers.List
-import           Network.Google.Resource.DFAReporting.OperatingSystems.Get
-import           Network.Google.Resource.DFAReporting.OperatingSystems.List
-import           Network.Google.Resource.DFAReporting.OperatingSystemVersions.Get
-import           Network.Google.Resource.DFAReporting.OperatingSystemVersions.List
-import           Network.Google.Resource.DFAReporting.OrderDocuments.Get
-import           Network.Google.Resource.DFAReporting.OrderDocuments.List
-import           Network.Google.Resource.DFAReporting.Orders.Get
-import           Network.Google.Resource.DFAReporting.Orders.List
-import           Network.Google.Resource.DFAReporting.PlacementGroups.Get
-import           Network.Google.Resource.DFAReporting.PlacementGroups.Insert
-import           Network.Google.Resource.DFAReporting.PlacementGroups.List
-import           Network.Google.Resource.DFAReporting.PlacementGroups.Patch
-import           Network.Google.Resource.DFAReporting.PlacementGroups.Update
-import           Network.Google.Resource.DFAReporting.Placements.Generatetags
-import           Network.Google.Resource.DFAReporting.Placements.Get
-import           Network.Google.Resource.DFAReporting.Placements.Insert
-import           Network.Google.Resource.DFAReporting.Placements.List
-import           Network.Google.Resource.DFAReporting.Placements.Patch
-import           Network.Google.Resource.DFAReporting.Placements.Update
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.Delete
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.Get
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.Insert
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.List
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.Patch
-import           Network.Google.Resource.DFAReporting.PlacementStrategies.Update
-import           Network.Google.Resource.DFAReporting.PlatformTypes.Get
-import           Network.Google.Resource.DFAReporting.PlatformTypes.List
-import           Network.Google.Resource.DFAReporting.PostalCodes.Get
-import           Network.Google.Resource.DFAReporting.PostalCodes.List
-import           Network.Google.Resource.DFAReporting.Projects.Get
-import           Network.Google.Resource.DFAReporting.Projects.List
-import           Network.Google.Resource.DFAReporting.Regions.List
-import           Network.Google.Resource.DFAReporting.RemarketingLists.Get
-import           Network.Google.Resource.DFAReporting.RemarketingLists.Insert
-import           Network.Google.Resource.DFAReporting.RemarketingLists.List
-import           Network.Google.Resource.DFAReporting.RemarketingLists.Patch
-import           Network.Google.Resource.DFAReporting.RemarketingLists.Update
-import           Network.Google.Resource.DFAReporting.RemarketingListShares.Get
-import           Network.Google.Resource.DFAReporting.RemarketingListShares.Patch
-import           Network.Google.Resource.DFAReporting.RemarketingListShares.Update
-import           Network.Google.Resource.DFAReporting.Reports.CompatibleFields.Query
-import           Network.Google.Resource.DFAReporting.Reports.Delete
-import           Network.Google.Resource.DFAReporting.Reports.Files.Get
-import           Network.Google.Resource.DFAReporting.Reports.Files.List
-import           Network.Google.Resource.DFAReporting.Reports.Get
-import           Network.Google.Resource.DFAReporting.Reports.Insert
-import           Network.Google.Resource.DFAReporting.Reports.List
-import           Network.Google.Resource.DFAReporting.Reports.Patch
-import           Network.Google.Resource.DFAReporting.Reports.Run
-import           Network.Google.Resource.DFAReporting.Reports.Update
-import           Network.Google.Resource.DFAReporting.Sites.Get
-import           Network.Google.Resource.DFAReporting.Sites.Insert
-import           Network.Google.Resource.DFAReporting.Sites.List
-import           Network.Google.Resource.DFAReporting.Sites.Patch
-import           Network.Google.Resource.DFAReporting.Sites.Update
-import           Network.Google.Resource.DFAReporting.Sizes.Get
-import           Network.Google.Resource.DFAReporting.Sizes.Insert
-import           Network.Google.Resource.DFAReporting.Sizes.List
-import           Network.Google.Resource.DFAReporting.SubAccounts.Get
-import           Network.Google.Resource.DFAReporting.SubAccounts.Insert
-import           Network.Google.Resource.DFAReporting.SubAccounts.List
-import           Network.Google.Resource.DFAReporting.SubAccounts.Patch
-import           Network.Google.Resource.DFAReporting.SubAccounts.Update
-import           Network.Google.Resource.DFAReporting.TargetableRemarketingLists.Get
-import           Network.Google.Resource.DFAReporting.TargetableRemarketingLists.List
-import           Network.Google.Resource.DFAReporting.TargetingTemplates.Get
-import           Network.Google.Resource.DFAReporting.TargetingTemplates.Insert
-import           Network.Google.Resource.DFAReporting.TargetingTemplates.List
-import           Network.Google.Resource.DFAReporting.TargetingTemplates.Patch
-import           Network.Google.Resource.DFAReporting.TargetingTemplates.Update
-import           Network.Google.Resource.DFAReporting.UserProFiles.Get
-import           Network.Google.Resource.DFAReporting.UserProFiles.List
-import           Network.Google.Resource.DFAReporting.UserRolePermissionGroups.Get
-import           Network.Google.Resource.DFAReporting.UserRolePermissionGroups.List
-import           Network.Google.Resource.DFAReporting.UserRolePermissions.Get
-import           Network.Google.Resource.DFAReporting.UserRolePermissions.List
-import           Network.Google.Resource.DFAReporting.UserRoles.Delete
-import           Network.Google.Resource.DFAReporting.UserRoles.Get
-import           Network.Google.Resource.DFAReporting.UserRoles.Insert
-import           Network.Google.Resource.DFAReporting.UserRoles.List
-import           Network.Google.Resource.DFAReporting.UserRoles.Patch
-import           Network.Google.Resource.DFAReporting.UserRoles.Update
-import           Network.Google.Resource.DFAReporting.VideoFormats.Get
-import           Network.Google.Resource.DFAReporting.VideoFormats.List
-
-{- $resources
-TODO
--}
-
--- | Represents the entirety of the methods and resources available for the DCM/DFA Reporting And Trafficking API service.
-type DFAReportingAPI =
-     InventoryItemsListResource :<|>
-       InventoryItemsGetResource
-       :<|> PlacementStrategiesInsertResource
-       :<|> PlacementStrategiesListResource
-       :<|> PlacementStrategiesPatchResource
-       :<|> PlacementStrategiesGetResource
-       :<|> PlacementStrategiesDeleteResource
-       :<|> PlacementStrategiesUpdateResource
-       :<|> CampaignCreativeAssociationsInsertResource
-       :<|> CampaignCreativeAssociationsListResource
-       :<|> RemarketingListSharesPatchResource
-       :<|> RemarketingListSharesGetResource
-       :<|> RemarketingListSharesUpdateResource
-       :<|> MobileCarriersListResource
-       :<|> MobileCarriersGetResource
-       :<|> CreativeGroupsInsertResource
-       :<|> CreativeGroupsListResource
-       :<|> CreativeGroupsPatchResource
-       :<|> CreativeGroupsGetResource
-       :<|> CreativeGroupsUpdateResource
-       :<|> RemarketingListsInsertResource
-       :<|> RemarketingListsListResource
-       :<|> RemarketingListsPatchResource
-       :<|> RemarketingListsGetResource
-       :<|> RemarketingListsUpdateResource
-       :<|> AccountActiveAdSummariesGetResource
-       :<|> UserRolePermissionGroupsListResource
-       :<|> UserRolePermissionGroupsGetResource
-       :<|> AccountsListResource
-       :<|> AccountsPatchResource
-       :<|> AccountsGetResource
-       :<|> AccountsUpdateResource
-       :<|> ReportsCompatibleFieldsQueryResource
-       :<|> ReportsFilesListResource
-       :<|> ReportsFilesGetResource
-       :<|> ReportsInsertResource
-       :<|> ReportsListResource
-       :<|> ReportsPatchResource
-       :<|> ReportsGetResource
-       :<|> ReportsRunResource
-       :<|> ReportsDeleteResource
-       :<|> ReportsUpdateResource
-       :<|> CampaignsInsertResource
-       :<|> CampaignsListResource
-       :<|> CampaignsPatchResource
-       :<|> CampaignsGetResource
-       :<|> CampaignsUpdateResource
-       :<|> DynamicTargetingKeysInsertResource
-       :<|> DynamicTargetingKeysListResource
-       :<|> DynamicTargetingKeysDeleteResource
-       :<|> AccountUserProFilesInsertResource
-       :<|> AccountUserProFilesListResource
-       :<|> AccountUserProFilesPatchResource
-       :<|> AccountUserProFilesGetResource
-       :<|> AccountUserProFilesUpdateResource
-       :<|> CreativesInsertResource
-       :<|> CreativesListResource
-       :<|> CreativesPatchResource
-       :<|> CreativesGetResource
-       :<|> CreativesUpdateResource
-       :<|> DimensionValuesQueryResource
-       :<|> RegionsListResource
-       :<|> FloodlightConfigurationsListResource
-       :<|> FloodlightConfigurationsPatchResource
-       :<|> FloodlightConfigurationsGetResource
-       :<|> FloodlightConfigurationsUpdateResource
-       :<|> ConversionsBatchinsertResource
-       :<|> ConversionsBatchupdateResource
-       :<|> FloodlightActivitiesInsertResource
-       :<|> FloodlightActivitiesListResource
-       :<|> FloodlightActivitiesPatchResource
-       :<|> FloodlightActivitiesGetResource
-       :<|> FloodlightActivitiesGeneratetagResource
-       :<|> FloodlightActivitiesDeleteResource
-       :<|> FloodlightActivitiesUpdateResource
-       :<|> UserRolesInsertResource
-       :<|> UserRolesListResource
-       :<|> UserRolesPatchResource
-       :<|> UserRolesGetResource
-       :<|> UserRolesDeleteResource
-       :<|> UserRolesUpdateResource
-       :<|> AccountPermissionGroupsListResource
-       :<|> AccountPermissionGroupsGetResource
-       :<|> AdvertisersInsertResource
-       :<|> AdvertisersListResource
-       :<|> AdvertisersPatchResource
-       :<|> AdvertisersGetResource
-       :<|> AdvertisersUpdateResource
-       :<|> CountriesListResource
-       :<|> CountriesGetResource
-       :<|> AccountPermissionsListResource
-       :<|> AccountPermissionsGetResource
-       :<|> UserProFilesListResource
-       :<|> UserProFilesGetResource
-       :<|> OperatingSystemVersionsListResource
-       :<|> OperatingSystemVersionsGetResource
-       :<|> ChangeLogsListResource
-       :<|> ChangeLogsGetResource
-       :<|> CitiesListResource
-       :<|> LanguagesListResource
-       :<|> TargetableRemarketingListsListResource
-       :<|> TargetableRemarketingListsGetResource
-       :<|> PlatformTypesListResource
-       :<|> PlatformTypesGetResource
-       :<|> BrowsersListResource
-       :<|> ContentCategoriesInsertResource
-       :<|> ContentCategoriesListResource
-       :<|> ContentCategoriesPatchResource
-       :<|> ContentCategoriesGetResource
-       :<|> ContentCategoriesDeleteResource
-       :<|> ContentCategoriesUpdateResource
-       :<|> PlacementsInsertResource
-       :<|> PlacementsGeneratetagsResource
-       :<|> PlacementsListResource
-       :<|> PlacementsPatchResource
-       :<|> PlacementsGetResource
-       :<|> PlacementsUpdateResource
-       :<|> MetrosListResource
-       :<|> OrderDocumentsListResource
-       :<|> OrderDocumentsGetResource
-       :<|> AdvertiserLandingPagesInsertResource
-       :<|> AdvertiserLandingPagesListResource
-       :<|> AdvertiserLandingPagesPatchResource
-       :<|> AdvertiserLandingPagesGetResource
-       :<|> AdvertiserLandingPagesUpdateResource
-       :<|> MobileAppsListResource
-       :<|> MobileAppsGetResource
-       :<|> CreativeFieldsInsertResource
-       :<|> CreativeFieldsListResource
-       :<|> CreativeFieldsPatchResource
-       :<|> CreativeFieldsGetResource
-       :<|> CreativeFieldsDeleteResource
-       :<|> CreativeFieldsUpdateResource
-       :<|> TargetingTemplatesInsertResource
-       :<|> TargetingTemplatesListResource
-       :<|> TargetingTemplatesPatchResource
-       :<|> TargetingTemplatesGetResource
-       :<|> TargetingTemplatesUpdateResource
-       :<|> EventTagsInsertResource
-       :<|> EventTagsListResource
-       :<|> EventTagsPatchResource
-       :<|> EventTagsGetResource
-       :<|> EventTagsDeleteResource
-       :<|> EventTagsUpdateResource
-       :<|> FilesListResource
-       :<|> FilesGetResource
-       :<|> UserRolePermissionsListResource
-       :<|> UserRolePermissionsGetResource
-       :<|> PlacementGroupsInsertResource
-       :<|> PlacementGroupsListResource
-       :<|> PlacementGroupsPatchResource
-       :<|> PlacementGroupsGetResource
-       :<|> PlacementGroupsUpdateResource
-       :<|> OrdersListResource
-       :<|> OrdersGetResource
-       :<|> ConnectionTypesListResource
-       :<|> ConnectionTypesGetResource
-       :<|> CreativeAssetsInsertResource
-       :<|> SitesInsertResource
-       :<|> SitesListResource
-       :<|> SitesPatchResource
-       :<|> SitesGetResource
-       :<|> SitesUpdateResource
-       :<|> PostalCodesListResource
-       :<|> PostalCodesGetResource
-       :<|> OperatingSystemsListResource
-       :<|> OperatingSystemsGetResource
-       :<|> SizesInsertResource
-       :<|> SizesListResource
-       :<|> SizesGetResource
-       :<|> AdsInsertResource
-       :<|> AdsListResource
-       :<|> AdsPatchResource
-       :<|> AdsGetResource
-       :<|> AdsUpdateResource
-       :<|> ProjectsListResource
-       :<|> ProjectsGetResource
-       :<|> SubAccountsInsertResource
-       :<|> SubAccountsListResource
-       :<|> SubAccountsPatchResource
-       :<|> SubAccountsGetResource
-       :<|> SubAccountsUpdateResource
-       :<|> VideoFormatsListResource
-       :<|> VideoFormatsGetResource
-       :<|> CreativeFieldValuesInsertResource
-       :<|> CreativeFieldValuesListResource
-       :<|> CreativeFieldValuesPatchResource
-       :<|> CreativeFieldValuesGetResource
-       :<|> CreativeFieldValuesDeleteResource
-       :<|> CreativeFieldValuesUpdateResource
-       :<|> DirectorySitesInsertResource
-       :<|> DirectorySitesListResource
-       :<|> DirectorySitesGetResource
-       :<|> AdvertiserGroupsInsertResource
-       :<|> AdvertiserGroupsListResource
-       :<|> AdvertiserGroupsPatchResource
-       :<|> AdvertiserGroupsGetResource
-       :<|> AdvertiserGroupsDeleteResource
-       :<|> AdvertiserGroupsUpdateResource
-       :<|> FloodlightActivityGroupsInsertResource
-       :<|> FloodlightActivityGroupsListResource
-       :<|> FloodlightActivityGroupsPatchResource
-       :<|> FloodlightActivityGroupsGetResource
-       :<|> FloodlightActivityGroupsUpdateResource
diff --git a/gen/Network/Google/DFAReporting/Types.hs b/gen/Network/Google/DFAReporting/Types.hs
deleted file mode 100644
--- a/gen/Network/Google/DFAReporting/Types.hs
+++ /dev/null
@@ -1,2874 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DFAReporting.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.DFAReporting.Types
-    (
-    -- * Service Configuration
-      dFAReportingService
-
-    -- * OAuth Scopes
-    , dFAReportingScope
-    , ddmconversionsScope
-    , dfatraffickingScope
-
-    -- * VideoOffSet
-    , VideoOffSet
-    , videoOffSet
-    , vosOffSetPercentage
-    , vosOffSetSeconds
-
-    -- * DeepLink
-    , DeepLink
-    , deepLink
-    , dlRemarketingListIds
-    , dlKind
-    , dlFallbackURL
-    , dlAppURL
-    , dlMobileApp
-
-    -- * PlacementsListSortOrder
-    , PlacementsListSortOrder (..)
-
-    -- * DateRangeRelativeDateRange
-    , DateRangeRelativeDateRange (..)
-
-    -- * AdvertisersListSortField
-    , AdvertisersListSortField (..)
-
-    -- * CreativeFieldsListSortOrder
-    , CreativeFieldsListSortOrder (..)
-
-    -- * FileList
-    , FileList
-    , fileList
-    , flEtag
-    , flNextPageToken
-    , flKind
-    , flItems
-
-    -- * TargetingTemplatesListSortOrder
-    , TargetingTemplatesListSortOrder (..)
-
-    -- * OptimizationActivity
-    , OptimizationActivity
-    , optimizationActivity
-    , oaWeight
-    , oaFloodlightActivityId
-    , oaFloodlightActivityIdDimensionValue
-
-    -- * ListPopulationClause
-    , ListPopulationClause
-    , listPopulationClause
-    , lpcTerms
-
-    -- * AdBlockingConfiguration
-    , AdBlockingConfiguration
-    , adBlockingConfiguration
-    , abcCreativeBundleId
-    , abcOverrideClickThroughURL
-    , abcEnabled
-    , abcClickThroughURL
-
-    -- * AdvertiserLandingPagesListSortOrder
-    , AdvertiserLandingPagesListSortOrder (..)
-
-    -- * CreativeCustomEvent
-    , CreativeCustomEvent
-    , creativeCustomEvent
-    , cceAdvertiserCustomEventId
-    , cceAdvertiserCustomEventType
-    , cceAdvertiserCustomEventName
-    , cceExitClickThroughURL
-    , cceTargetType
-    , ccePopupWindowProperties
-    , cceVideoReportingId
-    , cceId
-    , cceArtworkLabel
-    , cceArtworkType
-
-    -- * ClickTag
-    , ClickTag
-    , clickTag
-    , ctClickThroughURL
-    , ctName
-    , ctEventName
-
-    -- * CampaignsListResponse
-    , CampaignsListResponse
-    , campaignsListResponse
-    , clrNextPageToken
-    , clrCampaigns
-    , clrKind
-
-    -- * GeoTargeting
-    , GeoTargeting
-    , geoTargeting
-    , gtRegions
-    , gtCountries
-    , gtCities
-    , gtMetros
-    , gtExcludeCountries
-    , gtPostalCodes
-
-    -- * UserRolesListSortField
-    , UserRolesListSortField (..)
-
-    -- * VideoSettings
-    , VideoSettings
-    , videoSettings
-    , vsKind
-    , vsCompanionSettings
-    , vsTranscodeSettings
-    , vsOrientation
-    , vsSkippableSettings
-
-    -- * ReachReportCompatibleFields
-    , ReachReportCompatibleFields
-    , reachReportCompatibleFields
-    , rrcfMetrics
-    , rrcfReachByFrequencyMetrics
-    , rrcfKind
-    , rrcfDimensionFilters
-    , rrcfPivotedActivityMetrics
-    , rrcfDimensions
-
-    -- * Browser
-    , Browser
-    , browser
-    , bMinorVersion
-    , bKind
-    , bBrowserVersionId
-    , bMajorVersion
-    , bName
-    , bDartId
-
-    -- * FloodlightActivityTagFormat
-    , FloodlightActivityTagFormat (..)
-
-    -- * OrderDocumentsListSortOrder
-    , OrderDocumentsListSortOrder (..)
-
-    -- * CreativeGroupAssignment
-    , CreativeGroupAssignment
-    , creativeGroupAssignment
-    , cgaCreativeGroupNumber
-    , cgaCreativeGroupId
-
-    -- * CreativeAssetRole
-    , CreativeAssetRole (..)
-
-    -- * DynamicTargetingKeysListObjectType
-    , DynamicTargetingKeysListObjectType (..)
-
-    -- * RecipientDeliveryType
-    , RecipientDeliveryType (..)
-
-    -- * ThirdPartyTrackingURLThirdPartyURLType
-    , ThirdPartyTrackingURLThirdPartyURLType (..)
-
-    -- * DirectorySiteSettings
-    , DirectorySiteSettings
-    , directorySiteSettings
-    , dssInterstitialPlacementAccepted
-    , dssInstreamVideoPlacementAccepted
-    , dssActiveViewOptOut
-    , dssDfpSettings
-
-    -- * TargetableRemarketingListsListSortOrder
-    , TargetableRemarketingListsListSortOrder (..)
-
-    -- * CreativeAssetPositionLeftUnit
-    , CreativeAssetPositionLeftUnit (..)
-
-    -- * PricingScheduleCapCostOption
-    , PricingScheduleCapCostOption (..)
-
-    -- * ListPopulationRule
-    , ListPopulationRule
-    , listPopulationRule
-    , lprFloodlightActivityName
-    , lprFloodlightActivityId
-    , lprListPopulationClauses
-
-    -- * UserRolePermissionAvailability
-    , UserRolePermissionAvailability (..)
-
-    -- * PlacementVpaidAdapterChoice
-    , PlacementVpaidAdapterChoice (..)
-
-    -- * SizesListResponse
-    , SizesListResponse
-    , sizesListResponse
-    , slrKind
-    , slrSizes
-
-    -- * PlacementCompatibility
-    , PlacementCompatibility (..)
-
-    -- * CreativeRotation
-    , CreativeRotation
-    , creativeRotation
-    , crWeightCalculationStrategy
-    , crCreativeAssignments
-    , crCreativeOptimizationConfigurationId
-    , crType
-
-    -- * TechnologyTargeting
-    , TechnologyTargeting
-    , technologyTargeting
-    , ttMobileCarriers
-    , ttOperatingSystemVersions
-    , ttPlatformTypes
-    , ttBrowsers
-    , ttConnectionTypes
-    , ttOperatingSystems
-
-    -- * ListPopulationTermOperator
-    , ListPopulationTermOperator (..)
-
-    -- * PlacementsListPaymentSource
-    , PlacementsListPaymentSource (..)
-
-    -- * InventoryItem
-    , InventoryItem
-    , inventoryItem
-    , iiPlacementStrategyId
-    , iiEstimatedClickThroughRate
-    , iiPricing
-    , iiKind
-    , iiAdvertiserId
-    , iiRfpId
-    , iiContentCategoryId
-    , iiInPlan
-    , iiAccountId
-    , iiName
-    , iiAdSlots
-    , iiNegotiationChannelId
-    , iiLastModifiedInfo
-    , iiId
-    , iiEstimatedConversionRate
-    , iiProjectId
-    , iiSubAccountId
-    , iiType
-    , iiOrderId
-    , iiSiteId
-
-    -- * ProjectsListResponse
-    , ProjectsListResponse
-    , projectsListResponse
-    , plrNextPageToken
-    , plrKind
-    , plrProjects
-
-    -- * AdsListResponse
-    , AdsListResponse
-    , adsListResponse
-    , alrNextPageToken
-    , alrKind
-    , alrAds
-
-    -- * ReportsListSortField
-    , ReportsListSortField (..)
-
-    -- * AdSlotCompatibility
-    , AdSlotCompatibility (..)
-
-    -- * SiteVideoSettings
-    , SiteVideoSettings
-    , siteVideoSettings
-    , svsKind
-    , svsCompanionSettings
-    , svsTranscodeSettings
-    , svsOrientation
-    , svsSkippableSettings
-
-    -- * ListPopulationTerm
-    , ListPopulationTerm
-    , listPopulationTerm
-    , lptOperator
-    , lptValue
-    , lptVariableFriendlyName
-    , lptNegation
-    , lptVariableName
-    , lptRemarketingListId
-    , lptType
-    , lptContains
-
-    -- * TagSettings
-    , TagSettings
-    , tagSettings
-    , tsDynamicTagEnabled
-    , tsImageTagEnabled
-
-    -- * SubAccountsListResponse
-    , SubAccountsListResponse
-    , subAccountsListResponse
-    , salrNextPageToken
-    , salrKind
-    , salrSubAccounts
-
-    -- * CampaignsListSortField
-    , CampaignsListSortField (..)
-
-    -- * VideoSettingsOrientation
-    , VideoSettingsOrientation (..)
-
-    -- * RegionsListResponse
-    , RegionsListResponse
-    , regionsListResponse
-    , rlrKind
-    , rlrRegions
-
-    -- * FloodlightActivityDynamicTag
-    , FloodlightActivityDynamicTag
-    , floodlightActivityDynamicTag
-    , fadtTag
-    , fadtName
-    , fadtId
-
-    -- * VideoFormat
-    , VideoFormat
-    , videoFormat
-    , vfKind
-    , vfFileType
-    , vfResolution
-    , vfTargetBitRate
-    , vfId
-
-    -- * AccountUserProFileTraffickerType
-    , AccountUserProFileTraffickerType (..)
-
-    -- * DirectorySite
-    , DirectorySite
-    , directorySite
-    , dsSettings
-    , dsInterstitialTagFormats
-    , dsKind
-    , dsURL
-    , dsIdDimensionValue
-    , dsInpageTagFormats
-    , dsActive
-    , dsName
-    , dsId
-
-    -- * CreativeAssetMetadataDetectedFeaturesItem
-    , CreativeAssetMetadataDetectedFeaturesItem (..)
-
-    -- * ReportFloodlightCriteriaReportProperties
-    , ReportFloodlightCriteriaReportProperties
-    , reportFloodlightCriteriaReportProperties
-    , rfcrpIncludeUnattributedIPConversions
-    , rfcrpIncludeUnattributedCookieConversions
-    , rfcrpIncludeAttributedIPConversions
-
-    -- * FloodlightActivityGroup
-    , FloodlightActivityGroup
-    , floodlightActivityGroup
-    , fagTagString
-    , fagFloodlightConfigurationId
-    , fagKind
-    , fagAdvertiserId
-    , fagAdvertiserIdDimensionValue
-    , fagIdDimensionValue
-    , fagAccountId
-    , fagName
-    , fagId
-    , fagSubAccountId
-    , fagType
-    , fagFloodlightConfigurationIdDimensionValue
-
-    -- * AdsListCompatibility
-    , AdsListCompatibility (..)
-
-    -- * CrossDimensionReachReportCompatibleFields
-    , CrossDimensionReachReportCompatibleFields
-    , crossDimensionReachReportCompatibleFields
-    , cdrrcfMetrics
-    , cdrrcfBreakdown
-    , cdrrcfKind
-    , cdrrcfDimensionFilters
-    , cdrrcfOverlapMetrics
-
-    -- * FsCommand
-    , FsCommand
-    , fsCommand
-    , fcPositionOption
-    , fcLeft
-    , fcWindowHeight
-    , fcWindowWidth
-    , fcTop
-
-    -- * PlacementAssignment
-    , PlacementAssignment
-    , placementAssignment
-    , paPlacementId
-    , paPlacementIdDimensionValue
-    , paActive
-    , paSSLRequired
-
-    -- * CreativeFieldValue
-    , CreativeFieldValue
-    , creativeFieldValue
-    , cfvKind
-    , cfvValue
-    , cfvId
-
-    -- * EventTagStatus
-    , EventTagStatus (..)
-
-    -- * SitesListSortField
-    , SitesListSortField (..)
-
-    -- * DimensionValueRequest
-    , DimensionValueRequest
-    , dimensionValueRequest
-    , dvrKind
-    , dvrEndDate
-    , dvrFilters
-    , dvrStartDate
-    , dvrDimensionName
-
-    -- * EventTagsListEventTagTypes
-    , EventTagsListEventTagTypes (..)
-
-    -- * FloodlightConfigurationsListResponse
-    , FloodlightConfigurationsListResponse
-    , floodlightConfigurationsListResponse
-    , fclrKind
-    , fclrFloodlightConfigurations
-
-    -- * FloodlightActivitiesListResponse
-    , FloodlightActivitiesListResponse
-    , floodlightActivitiesListResponse
-    , falrNextPageToken
-    , falrKind
-    , falrFloodlightActivities
-
-    -- * FileStatus
-    , FileStatus (..)
-
-    -- * CreativeCustomEventArtworkType
-    , CreativeCustomEventArtworkType (..)
-
-    -- * CreativeFieldAssignment
-    , CreativeFieldAssignment
-    , creativeFieldAssignment
-    , cfaCreativeFieldId
-    , cfaCreativeFieldValueId
-
-    -- * AdvertiserGroup
-    , AdvertiserGroup
-    , advertiserGroup
-    , agKind
-    , agAccountId
-    , agName
-    , agId
-
-    -- * TagData
-    , TagData
-    , tagData
-    , tdClickTag
-    , tdFormat
-    , tdCreativeId
-    , tdAdId
-    , tdImpressionTag
-
-    -- * DayPartTargeting
-    , DayPartTargeting
-    , dayPartTargeting
-    , dptDaysOfWeek
-    , dptHoursOfDay
-    , dptUserLocalTime
-
-    -- * CreativeOptimizationConfiguration
-    , CreativeOptimizationConfiguration
-    , creativeOptimizationConfiguration
-    , cocOptimizationModel
-    , cocName
-    , cocOptimizationActivitys
-    , cocId
-
-    -- * SiteTranscodeSetting
-    , SiteTranscodeSetting
-    , siteTranscodeSetting
-    , stsKind
-    , stsEnabledVideoFormats
-
-    -- * CreativeClickThroughURL
-    , CreativeClickThroughURL
-    , creativeClickThroughURL
-    , cctuComputedClickThroughURL
-    , cctuCustomClickThroughURL
-    , cctuLandingPageId
-
-    -- * ReportCriteria
-    , ReportCriteria
-    , reportCriteria
-    , rcMetricNames
-    , rcCustomRichMediaEvents
-    , rcDimensionFilters
-    , rcActivities
-    , rcDateRange
-    , rcDimensions
-
-    -- * FloodlightConfigurationNATuralSearchConversionAttributionOption
-    , FloodlightConfigurationNATuralSearchConversionAttributionOption (..)
-
-    -- * PlacementStrategiesListResponse
-    , PlacementStrategiesListResponse
-    , placementStrategiesListResponse
-    , pslrPlacementStrategies
-    , pslrNextPageToken
-    , pslrKind
-
-    -- * ConversionsBatchUpdateResponse
-    , ConversionsBatchUpdateResponse
-    , conversionsBatchUpdateResponse
-    , cburStatus
-    , cburKind
-    , cburHasFailures
-
-    -- * CreativeAssetArtworkType
-    , CreativeAssetArtworkType (..)
-
-    -- * SubAccount
-    , SubAccount
-    , subAccount
-    , saKind
-    , saAvailablePermissionIds
-    , saAccountId
-    , saName
-    , saId
-
-    -- * InventoryItemsListResponse
-    , InventoryItemsListResponse
-    , inventoryItemsListResponse
-    , iilrInventoryItems
-    , iilrNextPageToken
-    , iilrKind
-
-    -- * UniversalAdId
-    , UniversalAdId
-    , universalAdId
-    , uaiValue
-    , uaiRegistry
-
-    -- * CustomFloodlightVariableType
-    , CustomFloodlightVariableType (..)
-
-    -- * Ad
-    , Ad
-    , ad
-    , aTargetingTemplateId
-    , aCreativeGroupAssignments
-    , aGeoTargeting
-    , aCreativeRotation
-    , aTechnologyTargeting
-    , aAudienceSegmentId
-    , aDayPartTargeting
-    , aSize
-    , aStartTime
-    , aKind
-    , aClickThroughURLSuffixProperties
-    , aCampaignIdDimensionValue
-    , aAdvertiserId
-    , aAdvertiserIdDimensionValue
-    , aSSLCompliant
-    , aCampaignId
-    , aIdDimensionValue
-    , aClickThroughURL
-    , aDeliverySchedule
-    , aEventTagOverrides
-    , aActive
-    , aAccountId
-    , aName
-    , aKeyValueTargetingExpression
-    , aEndTime
-    , aCreateInfo
-    , aLastModifiedInfo
-    , aId
-    , aSSLRequired
-    , aComments
-    , aSubAccountId
-    , aType
-    , aRemarketingListExpression
-    , aLanguageTargeting
-    , aDynamicClickTracker
-    , aCompatibility
-    , aArchived
-    , aDefaultClickThroughEventTagProperties
-    , aPlacementAssignments
-
-    -- * ConversionErrorCode
-    , ConversionErrorCode (..)
-
-    -- * FloodlightActivitiesListSortOrder
-    , FloodlightActivitiesListSortOrder (..)
-
-    -- * Project
-    , Project
-    , project
-    , pTargetClicks
-    , pClientBillingCode
-    , pTargetCpmNanos
-    , pTargetConversions
-    , pBudget
-    , pKind
-    , pAdvertiserId
-    , pEndDate
-    , pOverview
-    , pTargetImpressions
-    , pStartDate
-    , pTargetCpcNanos
-    , pAccountId
-    , pName
-    , pLastModifiedInfo
-    , pId
-    , pAudienceAgeGroup
-    , pSubAccountId
-    , pTargetCpmActiveViewNanos
-    , pAudienceGender
-    , pClientName
-    , pTargetCpaNanos
-
-    -- * FileFormat
-    , FileFormat (..)
-
-    -- * EncryptionInfoEncryptionEntityType
-    , EncryptionInfoEncryptionEntityType (..)
-
-    -- * PricingSchedulePricingType
-    , PricingSchedulePricingType (..)
-
-    -- * ReportFloodlightCriteria
-    , ReportFloodlightCriteria
-    , reportFloodlightCriteria
-    , rfcReportProperties
-    , rfcMetricNames
-    , rfcCustomRichMediaEvents
-    , rfcDimensionFilters
-    , rfcDateRange
-    , rfcFloodlightConfigId
-    , rfcDimensions
-
-    -- * CreativeCustomEventTargetType
-    , CreativeCustomEventTargetType (..)
-
-    -- * ReportsListScope
-    , ReportsListScope (..)
-
-    -- * Size
-    , Size
-    , size
-    , sHeight
-    , sKind
-    , sWidth
-    , sIab
-    , sId
-
-    -- * CreativeAssetOrientation
-    , CreativeAssetOrientation (..)
-
-    -- * CreativeAssetDurationType
-    , CreativeAssetDurationType (..)
-
-    -- * TargetableRemarketingListListSource
-    , TargetableRemarketingListListSource (..)
-
-    -- * ObjectFilter
-    , ObjectFilter
-    , objectFilter
-    , ofStatus
-    , ofKind
-    , ofObjectIds
-
-    -- * SkippableSetting
-    , SkippableSetting
-    , skippableSetting
-    , ssSkipOffSet
-    , ssProgressOffSet
-    , ssKind
-    , ssSkippable
-
-    -- * CreativeGroupsListSortField
-    , CreativeGroupsListSortField (..)
-
-    -- * ReportsConfiguration
-    , ReportsConfiguration
-    , reportsConfiguration
-    , rcExposureToConversionEnabled
-    , rcReportGenerationTimeZoneId
-    , rcLookbackConfiguration
-
-    -- * PricingSchedule
-    , PricingSchedule
-    , pricingSchedule
-    , psTestingStartDate
-    , psFloodlightActivityId
-    , psEndDate
-    , psDisregardOverdelivery
-    , psStartDate
-    , psCapCostOption
-    , psPricingType
-    , psPricingPeriods
-    , psFlighted
-
-    -- * PostalCode
-    , PostalCode
-    , postalCode
-    , pcKind
-    , pcCode
-    , pcCountryCode
-    , pcId
-    , pcCountryDartId
-
-    -- * AccountPermissionsListResponse
-    , AccountPermissionsListResponse
-    , accountPermissionsListResponse
-    , aplrKind
-    , aplrAccountPermissions
-
-    -- * Country
-    , Country
-    , country
-    , cKind
-    , cName
-    , cCountryCode
-    , cDartId
-    , cSSLEnabled
-
-    -- * PlacementsListSortField
-    , PlacementsListSortField (..)
-
-    -- * CreativeBackupImageFeaturesItem
-    , CreativeBackupImageFeaturesItem (..)
-
-    -- * OperatingSystemVersionsListResponse
-    , OperatingSystemVersionsListResponse
-    , operatingSystemVersionsListResponse
-    , osvlrKind
-    , osvlrOperatingSystemVersions
-
-    -- * ClickThroughURLSuffixProperties
-    , ClickThroughURLSuffixProperties
-    , clickThroughURLSuffixProperties
-    , ctuspOverrideInheritedSuffix
-    , ctuspClickThroughURLSuffix
-
-    -- * AdvertisersListSortOrder
-    , AdvertisersListSortOrder (..)
-
-    -- * TargetingTemplatesListSortField
-    , TargetingTemplatesListSortField (..)
-
-    -- * CreativeFieldsListSortField
-    , CreativeFieldsListSortField (..)
-
-    -- * Pricing
-    , Pricing
-    , pricing
-    , priEndDate
-    , priStartDate
-    , priGroupType
-    , priPricingType
-    , priFlights
-    , priCapCostType
-
-    -- * AudienceSegmentGroup
-    , AudienceSegmentGroup
-    , audienceSegmentGroup
-    , asgAudienceSegments
-    , asgName
-    , asgId
-
-    -- * OperatingSystem
-    , OperatingSystem
-    , operatingSystem
-    , osDesktop
-    , osKind
-    , osName
-    , osMobile
-    , osDartId
-
-    -- * Flight
-    , Flight
-    , flight
-    , fRateOrCost
-    , fEndDate
-    , fStartDate
-    , fUnits
-
-    -- * UserDefinedVariableConfigurationVariableType
-    , UserDefinedVariableConfigurationVariableType (..)
-
-    -- * FsCommandPositionOption
-    , FsCommandPositionOption (..)
-
-    -- * CitiesListResponse
-    , CitiesListResponse
-    , citiesListResponse
-    , citKind
-    , citCities
-
-    -- * AdvertiserLandingPagesListSortField
-    , AdvertiserLandingPagesListSortField (..)
-
-    -- * Dimension
-    , Dimension
-    , dimension
-    , dKind
-    , dName
-
-    -- * ReportReachCriteria
-    , ReportReachCriteria
-    , reportReachCriteria
-    , rrcReachByFrequencyMetricNames
-    , rrcEnableAllDimensionCombinations
-    , rrcMetricNames
-    , rrcCustomRichMediaEvents
-    , rrcDimensionFilters
-    , rrcActivities
-    , rrcDateRange
-    , rrcDimensions
-
-    -- * CustomRichMediaEvents
-    , CustomRichMediaEvents
-    , customRichMediaEvents
-    , crmeKind
-    , crmeFilteredEventIds
-
-    -- * LanguagesListResponse
-    , LanguagesListResponse
-    , languagesListResponse
-    , llrKind
-    , llrLanguages
-
-    -- * CustomViewabilityMetricConfiguration
-    , CustomViewabilityMetricConfiguration
-    , customViewabilityMetricConfiguration
-    , cvmcViewabilityPercent
-    , cvmcTimePercent
-    , cvmcAudible
-    , cvmcTimeMillis
-
-    -- * UserRolesListSortOrder
-    , UserRolesListSortOrder (..)
-
-    -- * PlacementsListCompatibilities
-    , PlacementsListCompatibilities (..)
-
-    -- * TargetableRemarketingListsListResponse
-    , TargetableRemarketingListsListResponse
-    , targetableRemarketingListsListResponse
-    , trllrNextPageToken
-    , trllrKind
-    , trllrTargetableRemarketingLists
-
-    -- * OrderDocumentsListSortField
-    , OrderDocumentsListSortField (..)
-
-    -- * CreativeCompatibilityItem
-    , CreativeCompatibilityItem (..)
-
-    -- * ChangeLogsListResponse
-    , ChangeLogsListResponse
-    , changeLogsListResponse
-    , cllrNextPageToken
-    , cllrKind
-    , cllrChangeLogs
-
-    -- * ReportDeliveryEmailOwnerDeliveryType
-    , ReportDeliveryEmailOwnerDeliveryType (..)
-
-    -- * SiteContactContactType
-    , SiteContactContactType (..)
-
-    -- * AccountUserProFile
-    , AccountUserProFile
-    , accountUserProFile
-    , aupfEmail
-    , aupfUserRoleFilter
-    , aupfAdvertiserFilter
-    , aupfUserRoleId
-    , aupfKind
-    , aupfLocale
-    , aupfSiteFilter
-    , aupfTraffickerType
-    , aupfActive
-    , aupfAccountId
-    , aupfName
-    , aupfId
-    , aupfUserAccessType
-    , aupfComments
-    , aupfSubAccountId
-    , aupfCampaignFilter
-
-    -- * ReportsListSortOrder
-    , ReportsListSortOrder (..)
-
-    -- * DimensionValue
-    , DimensionValue
-    , dimensionValue
-    , dvEtag
-    , dvKind
-    , dvValue
-    , dvMatchType
-    , dvDimensionName
-    , dvId
-
-    -- * TargetableRemarketingListsListSortField
-    , TargetableRemarketingListsListSortField (..)
-
-    -- * CampaignsListSortOrder
-    , CampaignsListSortOrder (..)
-
-    -- * Activities
-    , Activities
-    , activities
-    , actKind
-    , actMetricNames
-    , actFilters
-
-    -- * FloodlightActivityGroupsListType
-    , FloodlightActivityGroupsListType (..)
-
-    -- * FloodlightConfigurationFirstDayOfWeek
-    , FloodlightConfigurationFirstDayOfWeek (..)
-
-    -- * UserRolePermissionGroupsListResponse
-    , UserRolePermissionGroupsListResponse
-    , userRolePermissionGroupsListResponse
-    , urpglrUserRolePermissionGroups
-    , urpglrKind
-
-    -- * PlacementTag
-    , PlacementTag
-    , placementTag
-    , ptPlacementId
-    , ptTagDatas
-
-    -- * DeliverySchedulePriority
-    , DeliverySchedulePriority (..)
-
-    -- * FloodlightActivitiesListFloodlightActivityGroupType
-    , FloodlightActivitiesListFloodlightActivityGroupType (..)
-
-    -- * RemarketingListsListResponse
-    , RemarketingListsListResponse
-    , remarketingListsListResponse
-    , rllrNextPageToken
-    , rllrRemarketingLists
-    , rllrKind
-
-    -- * DynamicTargetingKey
-    , DynamicTargetingKey
-    , dynamicTargetingKey
-    , dtkObjectType
-    , dtkKind
-    , dtkObjectId
-    , dtkName
-
-    -- * Creative
-    , Creative
-    , creative
-    , creConvertFlashToHTML5
-    , creBackupImageTargetWindow
-    , creRenderingIdDimensionValue
-    , creCustomKeyValues
-    , creSkipOffSet
-    , creRenderingId
-    , creThirdPartyBackupImageImpressionsURL
-    , creFsCommand
-    , creAllowScriptAccess
-    , creHTMLCodeLocked
-    , creRequiredFlashPluginVersion
-    , creUniversalAdId
-    , creAuthoringTool
-    , creSize
-    , creThirdPartyURLs
-    , creProgressOffSet
-    , creCounterCustomEvents
-    , creKind
-    , creSSLOverride
-    , creHTMLCode
-    , creAdvertiserId
-    , creRequiredFlashVersion
-    , creBackgRoundColor
-    , creAdTagKeys
-    , creSkippable
-    , creSSLCompliant
-    , creIdDimensionValue
-    , creBackupImageReportingLabel
-    , creCommercialId
-    , creActive
-    , creExitCustomEvents
-    , creAccountId
-    , creBackupImageClickThroughURL
-    , creName
-    , creOverrideCss
-    , creAdditionalSizes
-    , creClickTags
-    , creAdParameters
-    , creVersion
-    , creMediaDescription
-    , creMediaDuration
-    , creLatestTraffickedCreativeId
-    , creThirdPartyRichMediaImpressionsURL
-    , creDynamicAssetSelection
-    , creLastModifiedInfo
-    , creId
-    , creAuthoringSource
-    , creStudioAdvertiserId
-    , creCreativeAssets
-    , creSubAccountId
-    , creType
-    , creTimerCustomEvents
-    , creCreativeAssetSelection
-    , creStudioCreativeId
-    , creCompatibility
-    , creBackupImageFeatures
-    , creArtworkType
-    , creArchived
-    , creCompanionCreatives
-    , creTotalFileSize
-    , creStudioTraffickedCreativeId
-    , creAutoAdvanceImages
-    , creRedirectURL
-    , creCreativeFieldAssignments
-
-    -- * SiteCompanionSetting
-    , SiteCompanionSetting
-    , siteCompanionSetting
-    , scsKind
-    , scsImageOnly
-    , scsCompanionsDisabled
-    , scsEnabledSizes
-
-    -- * SiteContact
-    , SiteContact
-    , siteContact
-    , scEmail
-    , scPhone
-    , scLastName
-    , scAddress
-    , scFirstName
-    , scId
-    , scTitle
-    , scContactType
-
-    -- * CreativeAuthoringSource
-    , CreativeAuthoringSource (..)
-
-    -- * AccountsListResponse
-    , AccountsListResponse
-    , accountsListResponse
-    , accNextPageToken
-    , accAccounts
-    , accKind
-
-    -- * DateRange
-    , DateRange
-    , dateRange
-    , drKind
-    , drEndDate
-    , drStartDate
-    , drRelativeDateRange
-
-    -- * Report
-    , Report
-    , report
-    , rDelivery
-    , rEtag
-    , rOwnerProFileId
-    , rSchedule
-    , rPathToConversionCriteria
-    , rKind
-    , rFormat
-    , rReachCriteria
-    , rLastModifiedTime
-    , rAccountId
-    , rName
-    , rId
-    , rCrossDimensionReachCriteria
-    , rType
-    , rSubAccountId
-    , rFloodlightCriteria
-    , rCriteria
-    , rFileName
-
-    -- * PlacementPaymentSource
-    , PlacementPaymentSource (..)
-
-    -- * SiteSkippableSetting
-    , SiteSkippableSetting
-    , siteSkippableSetting
-    , sssSkipOffSet
-    , sssProgressOffSet
-    , sssKind
-    , sssSkippable
-
-    -- * Rule
-    , Rule
-    , rule
-    , rulTargetingTemplateId
-    , rulName
-    , rulAssetId
-
-    -- * ReportsFilesListSortOrder
-    , ReportsFilesListSortOrder (..)
-
-    -- * Campaign
-    , Campaign
-    , campaign
-    , camAdBlockingConfiguration
-    , camCreativeOptimizationConfiguration
-    , camCreativeGroupIds
-    , camNielsenOCREnabled
-    , camKind
-    , camClickThroughURLSuffixProperties
-    , camAdvertiserId
-    , camEndDate
-    , camAdvertiserIdDimensionValue
-    , camIdDimensionValue
-    , camEventTagOverrides
-    , camStartDate
-    , camAccountId
-    , camName
-    , camAdvertiserGroupId
-    , camBillingInvoiceCode
-    , camDefaultLandingPageId
-    , camCreateInfo
-    , camLastModifiedInfo
-    , camId
-    , camSubAccountId
-    , camAdditionalCreativeOptimizationConfigurations
-    , camExternalId
-    , camComment
-    , camAudienceSegmentGroups
-    , camArchived
-    , camTraffickerEmails
-    , camDefaultClickThroughEventTagProperties
-
-    -- * InventoryItemsListSortField
-    , InventoryItemsListSortField (..)
-
-    -- * EventTagType
-    , EventTagType (..)
-
-    -- * CreativesListSortOrder
-    , CreativesListSortOrder (..)
-
-    -- * InventoryItemsListType
-    , InventoryItemsListType (..)
-
-    -- * ThirdPartyAuthenticationToken
-    , ThirdPartyAuthenticationToken
-    , thirdPartyAuthenticationToken
-    , tpatValue
-    , tpatName
-
-    -- * PopupWindowPropertiesPositionType
-    , PopupWindowPropertiesPositionType (..)
-
-    -- * ClickThroughURL
-    , ClickThroughURL
-    , clickThroughURL
-    , ctuDefaultLandingPage
-    , ctuComputedClickThroughURL
-    , ctuCustomClickThroughURL
-    , ctuLandingPageId
-
-    -- * TagSettingKeywordOption
-    , TagSettingKeywordOption (..)
-
-    -- * CreativeAuthoringTool
-    , CreativeAuthoringTool (..)
-
-    -- * OrderContactContactType
-    , OrderContactContactType (..)
-
-    -- * CreativeAssetIdType
-    , CreativeAssetIdType (..)
-
-    -- * AccountUserProFilesListSortOrder
-    , AccountUserProFilesListSortOrder (..)
-
-    -- * RemarketingListListSource
-    , RemarketingListListSource (..)
-
-    -- * BrowsersListResponse
-    , BrowsersListResponse
-    , browsersListResponse
-    , blrKind
-    , blrBrowsers
-
-    -- * AccountUserProFileUserAccessType
-    , AccountUserProFileUserAccessType (..)
-
-    -- * CreativeAssetStartTimeType
-    , CreativeAssetStartTimeType (..)
-
-    -- * ProjectAudienceGender
-    , ProjectAudienceGender (..)
-
-    -- * SiteSettings
-    , SiteSettings
-    , siteSettings
-    , ssDisableNewCookie
-    , ssVideoActiveViewOptOutTemplate
-    , ssAdBlockingOptOut
-    , ssTagSetting
-    , ssActiveViewOptOut
-    , ssVpaidAdapterChoiceTemplate
-
-    -- * PlacementStrategiesListSortField
-    , PlacementStrategiesListSortField (..)
-
-    -- * ContentCategoriesListResponse
-    , ContentCategoriesListResponse
-    , contentCategoriesListResponse
-    , cclrNextPageToken
-    , cclrKind
-    , cclrContentCategories
-
-    -- * UserDefinedVariableConfigurationDataType
-    , UserDefinedVariableConfigurationDataType (..)
-
-    -- * FloodlightActivityCacheBustingType
-    , FloodlightActivityCacheBustingType (..)
-
-    -- * CreativesListResponse
-    , CreativesListResponse
-    , creativesListResponse
-    , clrlNextPageToken
-    , clrlKind
-    , clrlCreatives
-
-    -- * CreativeGroupsListSortOrder
-    , CreativeGroupsListSortOrder (..)
-
-    -- * OrderDocumentType
-    , OrderDocumentType (..)
-
-    -- * TagDataFormat
-    , TagDataFormat (..)
-
-    -- * Account
-    , Account
-    , account
-    , aaAccountPermissionIds
-    , aaMaximumImageSize
-    , aaCurrencyId
-    , aaReportsConfiguration
-    , aaNielsenOCREnabled
-    , aaKind
-    , aaLocale
-    , aaActive
-    , aaAvailablePermissionIds
-    , aaTeaserSizeLimit
-    , aaActiveViewOptOut
-    , aaShareReportsWithTwitter
-    , aaName
-    , aaAccountProFile
-    , aaId
-    , aaCountryId
-    , aaActiveAdsLimitTier
-    , aaDefaultCreativeSizeId
-    , aaDescription
-
-    -- * ConversionsBatchInsertRequest
-    , ConversionsBatchInsertRequest
-    , conversionsBatchInsertRequest
-    , cbirKind
-    , cbirConversions
-    , cbirEncryptionInfo
-
-    -- * AccountActiveAdSummaryActiveAdsLimitTier
-    , AccountActiveAdSummaryActiveAdsLimitTier (..)
-
-    -- * CreativeAssetChildAssetType
-    , CreativeAssetChildAssetType (..)
-
-    -- * PlacementGroupsListPlacementGroupType
-    , PlacementGroupsListPlacementGroupType (..)
-
-    -- * AccountUserProFilesListResponse
-    , AccountUserProFilesListResponse
-    , accountUserProFilesListResponse
-    , aupflrNextPageToken
-    , aupflrAccountUserProFiles
-    , aupflrKind
-
-    -- * ContentCategory
-    , ContentCategory
-    , contentCategory
-    , conKind
-    , conAccountId
-    , conName
-    , conId
-
-    -- * ObjectFilterStatus
-    , ObjectFilterStatus (..)
-
-    -- * ReportCompatibleFields
-    , ReportCompatibleFields
-    , reportCompatibleFields
-    , rcfMetrics
-    , rcfKind
-    , rcfDimensionFilters
-    , rcfPivotedActivityMetrics
-    , rcfDimensions
-
-    -- * CampaignCreativeAssociationsListSortOrder
-    , CampaignCreativeAssociationsListSortOrder (..)
-
-    -- * DeliverySchedule
-    , DeliverySchedule
-    , deliverySchedule
-    , dsHardCutoff
-    , dsPriority
-    , dsImpressionRatio
-    , dsFrequencyCap
-
-    -- * RemarketingList
-    , RemarketingList
-    , remarketingList
-    , rlListSize
-    , rlListPopulationRule
-    , rlLifeSpan
-    , rlKind
-    , rlAdvertiserId
-    , rlAdvertiserIdDimensionValue
-    , rlActive
-    , rlAccountId
-    , rlName
-    , rlListSource
-    , rlId
-    , rlSubAccountId
-    , rlDescription
-
-    -- * FloodlightActivitiesListSortField
-    , FloodlightActivitiesListSortField (..)
-
-    -- * DynamicTargetingKeysListResponse
-    , DynamicTargetingKeysListResponse
-    , dynamicTargetingKeysListResponse
-    , dtklrKind
-    , dtklrDynamicTargetingKeys
-
-    -- * DimensionValueList
-    , DimensionValueList
-    , dimensionValueList
-    , dvlEtag
-    , dvlNextPageToken
-    , dvlKind
-    , dvlItems
-
-    -- * FloodlightReportCompatibleFields
-    , FloodlightReportCompatibleFields
-    , floodlightReportCompatibleFields
-    , frcfMetrics
-    , frcfKind
-    , frcfDimensionFilters
-    , frcfDimensions
-
-    -- * UserRolePermissionGroup
-    , UserRolePermissionGroup
-    , userRolePermissionGroup
-    , urpgKind
-    , urpgName
-    , urpgId
-
-    -- * CreativesListTypes
-    , CreativesListTypes (..)
-
-    -- * DirectorySiteInpageTagFormatsItem
-    , DirectorySiteInpageTagFormatsItem (..)
-
-    -- * TagSetting
-    , TagSetting
-    , tagSetting
-    , tsKeywordOption
-    , tsIncludeClickThroughURLs
-    , tsIncludeClickTracking
-    , tsAdditionalKeyValues
-
-    -- * CreativeAssetWindowMode
-    , CreativeAssetWindowMode (..)
-
-    -- * CreativeAssetAlignment
-    , CreativeAssetAlignment (..)
-
-    -- * RemarketingListsListSortOrder
-    , RemarketingListsListSortOrder (..)
-
-    -- * ReportPathToConversionCriteriaReportProperties
-    , ReportPathToConversionCriteriaReportProperties
-    , reportPathToConversionCriteriaReportProperties
-    , rptccrpMaximumInteractionGap
-    , rptccrpMaximumClickInteractions
-    , rptccrpPivotOnInteractionPath
-    , rptccrpMaximumImpressionInteractions
-    , rptccrpIncludeUnattributedIPConversions
-    , rptccrpImpressionsLookbackWindow
-    , rptccrpClicksLookbackWindow
-    , rptccrpIncludeUnattributedCookieConversions
-    , rptccrpIncludeAttributedIPConversions
-
-    -- * UserRolePermissionsListResponse
-    , UserRolePermissionsListResponse
-    , userRolePermissionsListResponse
-    , urplrKind
-    , urplrUserRolePermissions
-
-    -- * PlacementGroupsListPricingTypes
-    , PlacementGroupsListPricingTypes (..)
-
-    -- * DynamicTargetingKeysDeleteObjectType
-    , DynamicTargetingKeysDeleteObjectType (..)
-
-    -- * AccountActiveAdsLimitTier
-    , AccountActiveAdsLimitTier (..)
-
-    -- * AccountsListSortOrder
-    , AccountsListSortOrder (..)
-
-    -- * PlacementGroupsListResponse
-    , PlacementGroupsListResponse
-    , placementGroupsListResponse
-    , pglrNextPageToken
-    , pglrKind
-    , pglrPlacementGroups
-
-    -- * MobileCarrier
-    , MobileCarrier
-    , mobileCarrier
-    , mcKind
-    , mcName
-    , mcCountryCode
-    , mcId
-    , mcCountryDartId
-
-    -- * LandingPage
-    , LandingPage
-    , landingPage
-    , lpKind
-    , lpAdvertiserId
-    , lpURL
-    , lpName
-    , lpDeepLinks
-    , lpId
-    , lpArchived
-
-    -- * ConnectionTypesListResponse
-    , ConnectionTypesListResponse
-    , connectionTypesListResponse
-    , ctlrKind
-    , ctlrConnectionTypes
-
-    -- * OrdersListResponse
-    , OrdersListResponse
-    , ordersListResponse
-    , olrNextPageToken
-    , olrKind
-    , olrOrders
-
-    -- * ReportList
-    , ReportList
-    , reportList
-    , repEtag
-    , repNextPageToken
-    , repKind
-    , repItems
-
-    -- * CreativeGroup
-    , CreativeGroup
-    , creativeGroup
-    , cgKind
-    , cgAdvertiserId
-    , cgAdvertiserIdDimensionValue
-    , cgGroupNumber
-    , cgAccountId
-    , cgName
-    , cgId
-    , cgSubAccountId
-
-    -- * SubAccountsListSortField
-    , SubAccountsListSortField (..)
-
-    -- * CampaignCreativeAssociation
-    , CampaignCreativeAssociation
-    , campaignCreativeAssociation
-    , ccaKind
-    , ccaCreativeId
-
-    -- * ConversionStatus
-    , ConversionStatus
-    , conversionStatus
-    , csKind
-    , csConversion
-    , csErrors
-
-    -- * LookbackConfiguration
-    , LookbackConfiguration
-    , lookbackConfiguration
-    , lcClickDuration
-    , lcPostImpressionActivitiesDuration
-
-    -- * VideoFormatFileType
-    , VideoFormatFileType (..)
-
-    -- * AdsListSortField
-    , AdsListSortField (..)
-
-    -- * ProjectsListSortField
-    , ProjectsListSortField (..)
-
-    -- * FloodlightActivityPublisherDynamicTag
-    , FloodlightActivityPublisherDynamicTag
-    , floodlightActivityPublisherDynamicTag
-    , fapdtClickThrough
-    , fapdtSiteIdDimensionValue
-    , fapdtDynamicTag
-    , fapdtDirectorySiteId
-    , fapdtSiteId
-    , fapdtViewThrough
-
-    -- * AdsListType
-    , AdsListType (..)
-
-    -- * AccountActiveAdSummary
-    , AccountActiveAdSummary
-    , accountActiveAdSummary
-    , aaasAvailableAds
-    , aaasKind
-    , aaasAccountId
-    , aaasActiveAds
-    , aaasActiveAdsLimitTier
-
-    -- * CreativeOptimizationConfigurationOptimizationModel
-    , CreativeOptimizationConfigurationOptimizationModel (..)
-
-    -- * AccountPermissionLevel
-    , AccountPermissionLevel (..)
-
-    -- * OffSetPosition
-    , OffSetPosition
-    , offSetPosition
-    , ospLeft
-    , ospTop
-
-    -- * Metric
-    , Metric
-    , metric
-    , mKind
-    , mName
-
-    -- * RemarketingListShare
-    , RemarketingListShare
-    , remarketingListShare
-    , rlsSharedAdvertiserIds
-    , rlsKind
-    , rlsRemarketingListId
-    , rlsSharedAccountIds
-
-    -- * EventTagsListResponse
-    , EventTagsListResponse
-    , eventTagsListResponse
-    , etlrKind
-    , etlrEventTags
-
-    -- * UserRolesListResponse
-    , UserRolesListResponse
-    , userRolesListResponse
-    , urlrNextPageToken
-    , urlrKind
-    , urlrUserRoles
-
-    -- * ListPopulationTermType
-    , ListPopulationTermType (..)
-
-    -- * AdvertiserGroupsListSortOrder
-    , AdvertiserGroupsListSortOrder (..)
-
-    -- * CreativeFieldValuesListSortOrder
-    , CreativeFieldValuesListSortOrder (..)
-
-    -- * SortedDimensionSortOrder
-    , SortedDimensionSortOrder (..)
-
-    -- * MobileAppsListDirectories
-    , MobileAppsListDirectories (..)
-
-    -- * CompatibleFields
-    , CompatibleFields
-    , compatibleFields
-    , cfReachReportCompatibleFields
-    , cfCrossDimensionReachReportCompatibleFields
-    , cfKind
-    , cfFloodlightReportCompatibleFields
-    , cfReportCompatibleFields
-    , cfPathToConversionReportCompatibleFields
-
-    -- * AudienceSegment
-    , AudienceSegment
-    , audienceSegment
-    , asName
-    , asId
-    , asAllocation
-
-    -- * FilesListSortField
-    , FilesListSortField (..)
-
-    -- * ConversionsBatchUpdateRequest
-    , ConversionsBatchUpdateRequest
-    , conversionsBatchUpdateRequest
-    , cburbKind
-    , cburbConversions
-    , cburbEncryptionInfo
-
-    -- * DirectorySiteInterstitialTagFormatsItem
-    , DirectorySiteInterstitialTagFormatsItem (..)
-
-    -- * DfpSettings
-    , DfpSettings
-    , dfpSettings
-    , dsPubPaidPlacementAccepted
-    , dsDfpNetworkName
-    , dsPublisherPortalOnly
-    , dsProgrammaticPlacementAccepted
-    , dsDfpNetworkCode
-
-    -- * EventTagsListSortField
-    , EventTagsListSortField (..)
-
-    -- * PathToConversionReportCompatibleFields
-    , PathToConversionReportCompatibleFields
-    , pathToConversionReportCompatibleFields
-    , ptcrcfMetrics
-    , ptcrcfKind
-    , ptcrcfConversionDimensions
-    , ptcrcfCustomFloodlightVariables
-    , ptcrcfPerInteractionDimensions
-
-    -- * InventoryItemType
-    , InventoryItemType (..)
-
-    -- * CreativeAssetPositionTopUnit
-    , CreativeAssetPositionTopUnit (..)
-
-    -- * City
-    , City
-    , city
-    , ccMetroCode
-    , ccRegionCode
-    , ccKind
-    , ccRegionDartId
-    , ccMetroDmaId
-    , ccName
-    , ccCountryCode
-    , ccCountryDartId
-    , ccDartId
-
-    -- * PlatformType
-    , PlatformType
-    , platformType
-    , ptKind
-    , ptName
-    , ptId
-
-    -- * FloodlightActivityFloodlightActivityGroupType
-    , FloodlightActivityFloodlightActivityGroupType (..)
-
-    -- * PricingGroupType
-    , PricingGroupType (..)
-
-    -- * KeyValueTargetingExpression
-    , KeyValueTargetingExpression
-    , keyValueTargetingExpression
-    , kvteExpression
-
-    -- * CompanionClickThroughOverride
-    , CompanionClickThroughOverride
-    , companionClickThroughOverride
-    , cctoCreativeId
-    , cctoClickThroughURL
-
-    -- * FloodlightActivityFloodlightTagType
-    , FloodlightActivityFloodlightTagType (..)
-
-    -- * FloodlightActivityGroupsListSortOrder
-    , FloodlightActivityGroupsListSortOrder (..)
-
-    -- * CreativeRotationType
-    , CreativeRotationType (..)
-
-    -- * OrdersListSortField
-    , OrdersListSortField (..)
-
-    -- * PlacementGroupsListSortField
-    , PlacementGroupsListSortField (..)
-
-    -- * DirectorySitesListSortOrder
-    , DirectorySitesListSortOrder (..)
-
-    -- * AdvertisersListResponse
-    , AdvertisersListResponse
-    , advertisersListResponse
-    , advNextPageToken
-    , advKind
-    , advAdvertisers
-
-    -- * CountriesListResponse
-    , CountriesListResponse
-    , countriesListResponse
-    , couKind
-    , couCountries
-
-    -- * AccountPermissionGroupsListResponse
-    , AccountPermissionGroupsListResponse
-    , accountPermissionGroupsListResponse
-    , apglrKind
-    , apglrAccountPermissionGroups
-
-    -- * PopupWindowProperties
-    , PopupWindowProperties
-    , popupWindowProperties
-    , pwpOffSet
-    , pwpDimension
-    , pwpShowStatusBar
-    , pwpShowMenuBar
-    , pwpPositionType
-    , pwpShowAddressBar
-    , pwpShowScrollBar
-    , pwpShowToolBar
-    , pwpTitle
-
-    -- * CreativeAssetDetectedFeaturesItem
-    , CreativeAssetDetectedFeaturesItem (..)
-
-    -- * FloodlightActivityGroupType
-    , FloodlightActivityGroupType (..)
-
-    -- * EventTagOverride
-    , EventTagOverride
-    , eventTagOverride
-    , etoEnabled
-    , etoId
-
-    -- * PlacementsGeneratetagsTagFormats
-    , PlacementsGeneratetagsTagFormats (..)
-
-    -- * AccountUserProFilesListSortField
-    , AccountUserProFilesListSortField (..)
-
-    -- * OperatingSystemVersion
-    , OperatingSystemVersion
-    , operatingSystemVersion
-    , osvMinorVersion
-    , osvKind
-    , osvOperatingSystem
-    , osvMajorVersion
-    , osvName
-    , osvId
-
-    -- * InventoryItemsListSortOrder
-    , InventoryItemsListSortOrder (..)
-
-    -- * PlacementStrategiesListSortOrder
-    , PlacementStrategiesListSortOrder (..)
-
-    -- * AccountPermission
-    , AccountPermission
-    , accountPermission
-    , acccKind
-    , acccAccountProFiles
-    , acccName
-    , acccId
-    , acccLevel
-    , acccPermissionGroupId
-
-    -- * UserProFile
-    , UserProFile
-    , userProFile
-    , upfEtag
-    , upfKind
-    , upfAccountName
-    , upfProFileId
-    , upfUserName
-    , upfAccountId
-    , upfSubAccountName
-    , upfSubAccountId
-
-    -- * OperatingSystemsListResponse
-    , OperatingSystemsListResponse
-    , operatingSystemsListResponse
-    , oslrKind
-    , oslrOperatingSystems
-
-    -- * ReportDelivery
-    , ReportDelivery
-    , reportDelivery
-    , rdEmailOwner
-    , rdRecipients
-    , rdMessage
-    , rdEmailOwnerDeliveryType
-
-    -- * TargetableRemarketingList
-    , TargetableRemarketingList
-    , targetableRemarketingList
-    , trlListSize
-    , trlLifeSpan
-    , trlKind
-    , trlAdvertiserId
-    , trlAdvertiserIdDimensionValue
-    , trlActive
-    , trlAccountId
-    , trlName
-    , trlListSource
-    , trlId
-    , trlSubAccountId
-    , trlDescription
-
-    -- * ReportsFilesListSortField
-    , ReportsFilesListSortField (..)
-
-    -- * PostalCodesListResponse
-    , PostalCodesListResponse
-    , postalCodesListResponse
-    , pclrKind
-    , pclrPostalCodes
-
-    -- * ChangeLog
-    , ChangeLog
-    , changeLog
-    , chaUserProFileId
-    , chaObjectType
-    , chaUserProFileName
-    , chaKind
-    , chaObjectId
-    , chaAction
-    , chaTransactionId
-    , chaOldValue
-    , chaAccountId
-    , chaNewValue
-    , chaFieldName
-    , chaId
-    , chaSubAccountId
-    , chaChangeTime
-
-    -- * Language
-    , Language
-    , language
-    , lLanguageCode
-    , lKind
-    , lName
-    , lId
-
-    -- * CreativesListSortField
-    , CreativesListSortField (..)
-
-    -- * PlacementStrategy
-    , PlacementStrategy
-    , placementStrategy
-    , psKind
-    , psAccountId
-    , psName
-    , psId
-
-    -- * FloodlightActivity
-    , FloodlightActivity
-    , floodlightActivity
-    , faCountingMethod
-    , faTagString
-    , faSecure
-    , faExpectedURL
-    , faFloodlightActivityGroupTagString
-    , faFloodlightConfigurationId
-    , faKind
-    , faAdvertiserId
-    , faAdvertiserIdDimensionValue
-    , faSSLCompliant
-    , faIdDimensionValue
-    , faTagFormat
-    , faCacheBustingType
-    , faAccountId
-    , faName
-    , faPublisherTags
-    , faFloodlightActivityGroupId
-    , faHidden
-    , faFloodlightActivityGroupType
-    , faDefaultTags
-    , faFloodlightTagType
-    , faFloodlightActivityGroupName
-    , faId
-    , faSSLRequired
-    , faUserDefinedVariableTypes
-    , faSubAccountId
-    , faNotes
-    , faFloodlightConfigurationIdDimensionValue
-
-    -- * DayPartTargetingDaysOfWeekItem
-    , DayPartTargetingDaysOfWeekItem (..)
-
-    -- * CustomFloodlightVariable
-    , CustomFloodlightVariable
-    , customFloodlightVariable
-    , cusKind
-    , cusValue
-    , cusType
-
-    -- * CreativeRotationWeightCalculationStrategy
-    , CreativeRotationWeightCalculationStrategy (..)
-
-    -- * FilesListScope
-    , FilesListScope (..)
-
-    -- * ContentCategoriesListSortField
-    , ContentCategoriesListSortField (..)
-
-    -- * ProjectAudienceAgeGroup
-    , ProjectAudienceAgeGroup (..)
-
-    -- * PlatformTypesListResponse
-    , PlatformTypesListResponse
-    , platformTypesListResponse
-    , ptlrKind
-    , ptlrPlatformTypes
-
-    -- * AdType
-    , AdType (..)
-
-    -- * LastModifiedInfo
-    , LastModifiedInfo
-    , lastModifiedInfo
-    , lmiTime
-
-    -- * TargetWindow
-    , TargetWindow
-    , targetWindow
-    , twCustomHTML
-    , twTargetWindowOption
-
-    -- * ChangeLogsListAction
-    , ChangeLogsListAction (..)
-
-    -- * CreativeArtworkType
-    , CreativeArtworkType (..)
-
-    -- * PlacementStatus
-    , PlacementStatus (..)
-
-    -- * AccountPermissionGroup
-    , AccountPermissionGroup
-    , accountPermissionGroup
-    , apgpKind
-    , apgpName
-    , apgpId
-
-    -- * Advertiser
-    , Advertiser
-    , advertiser
-    , advdOriginalFloodlightConfigurationId
-    , advdStatus
-    , advdFloodlightConfigurationId
-    , advdKind
-    , advdSuspended
-    , advdIdDimensionValue
-    , advdAccountId
-    , advdDefaultEmail
-    , advdName
-    , advdAdvertiserGroupId
-    , advdDefaultClickThroughEventTagId
-    , advdId
-    , advdSubAccountId
-    , advdFloodlightConfigurationIdDimensionValue
-    , advdClickThroughURLSuffix
-
-    -- * ReportScheduleRunsOnDayOfMonth
-    , ReportScheduleRunsOnDayOfMonth (..)
-
-    -- * UserRole
-    , UserRole
-    , userRole
-    , urParentUserRoleId
-    , urKind
-    , urDefaultUserRole
-    , urAccountId
-    , urName
-    , urId
-    , urPermissions
-    , urSubAccountId
-
-    -- * FloodlightActivityUserDefinedVariableTypesItem
-    , FloodlightActivityUserDefinedVariableTypesItem (..)
-
-    -- * EventTagSiteFilterType
-    , EventTagSiteFilterType (..)
-
-    -- * ReportFormat
-    , ReportFormat (..)
-
-    -- * PlacementGroupPlacementGroupType
-    , PlacementGroupPlacementGroupType (..)
-
-    -- * VideoFormatsListResponse
-    , VideoFormatsListResponse
-    , videoFormatsListResponse
-    , vflrKind
-    , vflrVideoFormats
-
-    -- * DirectorySitesListResponse
-    , DirectorySitesListResponse
-    , directorySitesListResponse
-    , dslrNextPageToken
-    , dslrKind
-    , dslrDirectorySites
-
-    -- * ConversionError
-    , ConversionError
-    , conversionError
-    , ceKind
-    , ceCode
-    , ceMessage
-
-    -- * PricingPricingType
-    , PricingPricingType (..)
-
-    -- * PricingSchedulePricingPeriod
-    , PricingSchedulePricingPeriod
-    , pricingSchedulePricingPeriod
-    , psppEndDate
-    , psppRateOrCostNanos
-    , psppStartDate
-    , psppUnits
-    , psppPricingComment
-
-    -- * SubAccountsListSortOrder
-    , SubAccountsListSortOrder (..)
-
-    -- * Region
-    , Region
-    , region
-    , regRegionCode
-    , regKind
-    , regName
-    , regCountryCode
-    , regCountryDartId
-    , regDartId
-
-    -- * UniversalAdIdRegistry
-    , UniversalAdIdRegistry (..)
-
-    -- * AdvertiserGroupsListResponse
-    , AdvertiserGroupsListResponse
-    , advertiserGroupsListResponse
-    , aglrNextPageToken
-    , aglrKind
-    , aglrAdvertiserGroups
-
-    -- * AdsListSortOrder
-    , AdsListSortOrder (..)
-
-    -- * ProjectsListSortOrder
-    , ProjectsListSortOrder (..)
-
-    -- * CreativeAssignment
-    , CreativeAssignment
-    , creativeAssignment
-    , caCreativeGroupAssignments
-    , caStartTime
-    , caWeight
-    , caRichMediaExitOverrides
-    , caSSLCompliant
-    , caCreativeId
-    , caClickThroughURL
-    , caApplyEventTags
-    , caActive
-    , caSequence
-    , caEndTime
-    , caCompanionCreativeOverrides
-    , caCreativeIdDimensionValue
-
-    -- * DimensionFilter
-    , DimensionFilter
-    , dimensionFilter
-    , dfKind
-    , dfValue
-    , dfDimensionName
-
-    -- * UserProFileList
-    , UserProFileList
-    , userProFileList
-    , upflEtag
-    , upflKind
-    , upflItems
-
-    -- * RemarketingListsListSortField
-    , RemarketingListsListSortField (..)
-
-    -- * FloodlightConfiguration
-    , FloodlightConfiguration
-    , floodlightConfiguration
-    , fcTagSettings
-    , fcExposureToConversionEnabled
-    , fcInAppAttributionTrackingEnabled
-    , fcThirdPartyAuthenticationTokens
-    , fcKind
-    , fcAdvertiserId
-    , fcAnalyticsDataSharingEnabled
-    , fcAdvertiserIdDimensionValue
-    , fcIdDimensionValue
-    , fcLookbackConfiguration
-    , fcAccountId
-    , fcId
-    , fcNATuralSearchConversionAttributionOption
-    , fcUserDefinedVariableConfigurations
-    , fcSubAccountId
-    , fcCustomViewabilityMetric
-    , fcFirstDayOfWeek
-    , fcOmnitureSettings
-
-    -- * MobileAppDirectory
-    , MobileAppDirectory (..)
-
-    -- * CompanionSetting
-    , CompanionSetting
-    , companionSetting
-    , comKind
-    , comImageOnly
-    , comCompanionsDisabled
-    , comEnabledSizes
-
-    -- * ReportScheduleRepeatsOnWeekDaysItem
-    , ReportScheduleRepeatsOnWeekDaysItem (..)
-
-    -- * FloodlightActivityGroupsListResponse
-    , FloodlightActivityGroupsListResponse
-    , floodlightActivityGroupsListResponse
-    , faglrNextPageToken
-    , faglrKind
-    , faglrFloodlightActivityGroups
-
-    -- * CreativeGroupAssignmentCreativeGroupNumber
-    , CreativeGroupAssignmentCreativeGroupNumber (..)
-
-    -- * Conversion
-    , Conversion
-    , conversion
-    , conoTreatmentForUnderage
-    , conoEncryptedUserIdCandidates
-    , conoTimestampMicros
-    , conoLimitAdTracking
-    , conoEncryptedUserId
-    , conoMobileDeviceId
-    , conoFloodlightConfigurationId
-    , conoKind
-    , conoFloodlightActivityId
-    , conoNonPersonalizedAd
-    , conoQuantity
-    , conoValue
-    , conoCustomVariables
-    , conoChildDirectedTreatment
-    , conoGclid
-    , conoOrdinal
-
-    -- * CreativeFieldValuesListResponse
-    , CreativeFieldValuesListResponse
-    , creativeFieldValuesListResponse
-    , cfvlrNextPageToken
-    , cfvlrKind
-    , cfvlrCreativeFieldValues
-
-    -- * SiteSettingsVpaidAdapterChoiceTemplate
-    , SiteSettingsVpaidAdapterChoiceTemplate (..)
-
-    -- * AccountsListSortField
-    , AccountsListSortField (..)
-
-    -- * RichMediaExitOverride
-    , RichMediaExitOverride
-    , richMediaExitOverride
-    , rmeoEnabled
-    , rmeoClickThroughURL
-    , rmeoExitId
-
-    -- * AdvertisersListStatus
-    , AdvertisersListStatus (..)
-
-    -- * CustomViewabilityMetric
-    , CustomViewabilityMetric
-    , customViewabilityMetric
-    , cvmName
-    , cvmId
-    , cvmConfiguration
-
-    -- * DimensionValueMatchType
-    , DimensionValueMatchType (..)
-
-    -- * AdvertiserLandingPagesListResponse
-    , AdvertiserLandingPagesListResponse
-    , advertiserLandingPagesListResponse
-    , alplrLandingPages
-    , alplrNextPageToken
-    , alplrKind
-
-    -- * MobileAppsListResponse
-    , MobileAppsListResponse
-    , mobileAppsListResponse
-    , malrNextPageToken
-    , malrKind
-    , malrMobileApps
-
-    -- * SortedDimension
-    , SortedDimension
-    , sortedDimension
-    , sdKind
-    , sdSortOrder
-    , sdName
-
-    -- * PlacementGroupsListSortOrder
-    , PlacementGroupsListSortOrder (..)
-
-    -- * CreativeFieldsListResponse
-    , CreativeFieldsListResponse
-    , creativeFieldsListResponse
-    , cflrNextPageToken
-    , cflrKind
-    , cflrCreativeFields
-
-    -- * TargetingTemplatesListResponse
-    , TargetingTemplatesListResponse
-    , targetingTemplatesListResponse
-    , ttlrNextPageToken
-    , ttlrKind
-    , ttlrTargetingTemplates
-
-    -- * PlacementsGenerateTagsResponse
-    , PlacementsGenerateTagsResponse
-    , placementsGenerateTagsResponse
-    , pgtrKind
-    , pgtrPlacementTags
-
-    -- * CreativeAsset
-    , CreativeAsset
-    , creativeAsset
-    , caaZIndex
-    , caaPushdown
-    , caaFrameRate
-    , caaOriginalBackup
-    , caaWindowMode
-    , caaFlashVersion
-    , caaPushdownDuration
-    , caaSize
-    , caaVerticallyLocked
-    , caaOffSet
-    , caaStreamingServingURL
-    , caaZipFilesize
-    , caaTransparency
-    , caaHideSelectionBoxes
-    , caaSSLCompliant
-    , caaFileSize
-    , caaAssetIdentifier
-    , caaCompanionCreativeIds
-    , caaDurationType
-    , caaProgressiveServingURL
-    , caaIdDimensionValue
-    , caaActive
-    , caaRole
-    , caaMimeType
-    , caaPositionTopUnit
-    , caaPositionLeftUnit
-    , caaAlignment
-    , caaExpandedDimension
-    , caaAdditionalSizes
-    , caaZipFilename
-    , caaMediaDuration
-    , caaActionScript3
-    , caaDisplayType
-    , caaChildAssetType
-    , caaCollapsedSize
-    , caaAudioSampleRate
-    , caaId
-    , caaBitRate
-    , caaPoliteLoad
-    , caaCustomStartTimeValue
-    , caaStartTimeType
-    , caaAudioBitRate
-    , caaDuration
-    , caaOrientation
-    , caaArtworkType
-    , caaHideFlashObjects
-    , caaDetectedFeatures
-    , caaBackupImageExit
-    , caaPosition
-    , caaHorizontallyLocked
-
-    -- * AdCompatibility
-    , AdCompatibility (..)
-
-    -- * CreativeFieldValuesListSortField
-    , CreativeFieldValuesListSortField (..)
-
-    -- * LanguageTargeting
-    , LanguageTargeting
-    , languageTargeting
-    , ltLanguages
-
-    -- * CreativeAssetSelection
-    , CreativeAssetSelection
-    , creativeAssetSelection
-    , casRules
-    , casDefaultAssetId
-
-    -- * PlacementsListResponse
-    , PlacementsListResponse
-    , placementsListResponse
-    , plaNextPageToken
-    , plaKind
-    , plaPlacements
-
-    -- * FloodlightActivityGroupsListSortField
-    , FloodlightActivityGroupsListSortField (..)
-
-    -- * OrdersListSortOrder
-    , OrdersListSortOrder (..)
-
-    -- * ReportSchedule
-    , ReportSchedule
-    , reportSchedule
-    , rsEvery
-    , rsActive
-    , rsRepeats
-    , rsStartDate
-    , rsExpirationDate
-    , rsRunsOnDayOfMonth
-    , rsRepeatsOnWeekDays
-
-    -- * ReportPathToConversionCriteria
-    , ReportPathToConversionCriteria
-    , reportPathToConversionCriteria
-    , rptccReportProperties
-    , rptccMetricNames
-    , rptccCustomRichMediaEvents
-    , rptccDateRange
-    , rptccConversionDimensions
-    , rptccCustomFloodlightVariables
-    , rptccFloodlightConfigId
-    , rptccActivityFilters
-    , rptccPerInteractionDimensions
-
-    -- * MetrosListResponse
-    , MetrosListResponse
-    , metrosListResponse
-    , mlrKind
-    , mlrMetros
-
-    -- * AccountAccountProFile
-    , AccountAccountProFile (..)
-
-    -- * ConversionsBatchInsertResponse
-    , ConversionsBatchInsertResponse
-    , conversionsBatchInsertResponse
-    , cbirbStatus
-    , cbirbKind
-    , cbirbHasFailures
-
-    -- * OrderDocumentsListResponse
-    , OrderDocumentsListResponse
-    , orderDocumentsListResponse
-    , odlrNextPageToken
-    , odlrKind
-    , odlrOrderDocuments
-
-    -- * Recipient
-    , Recipient
-    , recipient
-    , recEmail
-    , recKind
-    , recDeliveryType
-
-    -- * CreativeType
-    , CreativeType (..)
-
-    -- * FilesListSortOrder
-    , FilesListSortOrder (..)
-
-    -- * AdvertiserGroupsListSortField
-    , AdvertiserGroupsListSortField (..)
-
-    -- * TargetWindowTargetWindowOption
-    , TargetWindowTargetWindowOption (..)
-
-    -- * PlacementsListPricingTypes
-    , PlacementsListPricingTypes (..)
-
-    -- * EventTagsListSortOrder
-    , EventTagsListSortOrder (..)
-
-    -- * EncryptionInfoEncryptionSource
-    , EncryptionInfoEncryptionSource (..)
-
-    -- * DirectorySitesListSortField
-    , DirectorySitesListSortField (..)
-
-    -- * Site
-    , Site
-    , site
-    , sitiVideoSettings
-    , sitiKind
-    , sitiKeyName
-    , sitiSiteContacts
-    , sitiSiteSettings
-    , sitiIdDimensionValue
-    , sitiDirectorySiteIdDimensionValue
-    , sitiAccountId
-    , sitiName
-    , sitiDirectorySiteId
-    , sitiId
-    , sitiSubAccountId
-    , sitiApproved
-
-    -- * ReportCrossDimensionReachCriteriaDimension
-    , ReportCrossDimensionReachCriteriaDimension (..)
-
-    -- * SitesListSortOrder
-    , SitesListSortOrder (..)
-
-    -- * UserDefinedVariableConfiguration
-    , UserDefinedVariableConfiguration
-    , userDefinedVariableConfiguration
-    , udvcReportName
-    , udvcDataType
-    , udvcVariableType
-
-    -- * ReportCrossDimensionReachCriteria
-    , ReportCrossDimensionReachCriteria
-    , reportCrossDimensionReachCriteria
-    , rcdrcPivoted
-    , rcdrcBreakdown
-    , rcdrcDimension
-    , rcdrcMetricNames
-    , rcdrcDimensionFilters
-    , rcdrcDateRange
-    , rcdrcOverlapMetricNames
-
-    -- * FileURLs
-    , FileURLs
-    , fileURLs
-    , fuBrowserURL
-    , fuAPIURL
-
-    -- * CampaignCreativeAssociationsListResponse
-    , CampaignCreativeAssociationsListResponse
-    , campaignCreativeAssociationsListResponse
-    , ccalrCampaignCreativeAssociations
-    , ccalrNextPageToken
-    , ccalrKind
-
-    -- * PlacementTagFormatsItem
-    , PlacementTagFormatsItem (..)
-
-    -- * Order
-    , Order
-    , order
-    , oSellerOrderId
-    , oSellerOrganizationName
-    , oKind
-    , oAdvertiserId
-    , oPlanningTermId
-    , oAccountId
-    , oName
-    , oSiteNames
-    , oLastModifiedInfo
-    , oBuyerOrganizationName
-    , oId
-    , oBuyerInvoiceId
-    , oComments
-    , oProjectId
-    , oSubAccountId
-    , oNotes
-    , oContacts
-    , oSiteId
-    , oTermsAndConditions
-    , oApproverUserProFileIds
-
-    -- * CreativeAssetId
-    , CreativeAssetId
-    , creativeAssetId
-    , caiName
-    , caiType
-
-    -- * FrequencyCap
-    , FrequencyCap
-    , frequencyCap
-    , fcImpressions
-    , fcDuration
-
-    -- * File
-    , File
-    , file
-    , filStatus
-    , filEtag
-    , filKind
-    , filURLs
-    , filReportId
-    , filDateRange
-    , filFormat
-    , filLastModifiedTime
-    , filId
-    , filFileName
-
-    -- * DynamicTargetingKeyObjectType
-    , DynamicTargetingKeyObjectType (..)
-
-    -- * ReportType
-    , ReportType (..)
-
-    -- * CreativeAssetMetadataWarnedValidationRulesItem
-    , CreativeAssetMetadataWarnedValidationRulesItem (..)
-
-    -- * CreativeGroupsListResponse
-    , CreativeGroupsListResponse
-    , creativeGroupsListResponse
-    , cglrCreativeGroups
-    , cglrNextPageToken
-    , cglrKind
-
-    -- * AdSlotPaymentSourceType
-    , AdSlotPaymentSourceType (..)
-
-    -- * MobileCarriersListResponse
-    , MobileCarriersListResponse
-    , mobileCarriersListResponse
-    , mclrMobileCarriers
-    , mclrKind
-
-    -- * AccountPermissionAccountProFilesItem
-    , AccountPermissionAccountProFilesItem (..)
-
-    -- * CreativeAssetMetadata
-    , CreativeAssetMetadata
-    , creativeAssetMetadata
-    , camaKind
-    , camaAssetIdentifier
-    , camaIdDimensionValue
-    , camaClickTags
-    , camaWarnedValidationRules
-    , camaId
-    , camaDetectedFeatures
-
-    -- * OmnitureSettings
-    , OmnitureSettings
-    , omnitureSettings
-    , osOmnitureCostDataEnabled
-    , osOmnitureIntegrationEnabled
-
-    -- * ConnectionType
-    , ConnectionType
-    , connectionType
-    , cttKind
-    , cttName
-    , cttId
-
-    -- * CreativeCustomEventAdvertiserCustomEventType
-    , CreativeCustomEventAdvertiserCustomEventType (..)
-
-    -- * PlacementGroup
-    , PlacementGroup
-    , placementGroup
-    , plalPlacementStrategyId
-    , plalSiteIdDimensionValue
-    , plalPricingSchedule
-    , plalKind
-    , plalCampaignIdDimensionValue
-    , plalAdvertiserId
-    , plalAdvertiserIdDimensionValue
-    , plalCampaignId
-    , plalIdDimensionValue
-    , plalPlacementGroupType
-    , plalContentCategoryId
-    , plalDirectorySiteIdDimensionValue
-    , plalAccountId
-    , plalName
-    , plalDirectorySiteId
-    , plalCreateInfo
-    , plalChildPlacementIds
-    , plalLastModifiedInfo
-    , plalId
-    , plalPrimaryPlacementId
-    , plalSubAccountId
-    , plalExternalId
-    , plalComment
-    , plalPrimaryPlacementIdDimensionValue
-    , plalSiteId
-    , plalArchived
-
-    -- * EventTag
-    , EventTag
-    , eventTag
-    , etStatus
-    , etExcludeFromAdxRequests
-    , etEnabledByDefault
-    , etKind
-    , etCampaignIdDimensionValue
-    , etAdvertiserId
-    , etURL
-    , etAdvertiserIdDimensionValue
-    , etSSLCompliant
-    , etCampaignId
-    , etAccountId
-    , etName
-    , etURLEscapeLevels
-    , etSiteIds
-    , etId
-    , etSubAccountId
-    , etType
-    , etSiteFilterType
-
-    -- * UserRolePermission
-    , UserRolePermission
-    , userRolePermission
-    , useKind
-    , useAvailability
-    , useName
-    , useId
-    , usePermissionGroupId
-
-    -- * ChangeLogsListObjectType
-    , ChangeLogsListObjectType (..)
-
-    -- * OrderContact
-    , OrderContact
-    , orderContact
-    , ocSignatureUserProFileId
-    , ocContactName
-    , ocContactTitle
-    , ocContactType
-    , ocContactInfo
-
-    -- * TranscodeSetting
-    , TranscodeSetting
-    , transcodeSetting
-    , tsKind
-    , tsEnabledVideoFormats
-
-    -- * FloodlightActivitiesGenerateTagResponse
-    , FloodlightActivitiesGenerateTagResponse
-    , floodlightActivitiesGenerateTagResponse
-    , fagtrGlobalSiteTagGlobalSnippet
-    , fagtrFloodlightActivityTag
-    , fagtrKind
-
-    -- * AdSlot
-    , AdSlot
-    , adSlot
-    , assHeight
-    , assPaymentSourceType
-    , assLinkedPlacementId
-    , assWidth
-    , assPrimary
-    , assName
-    , assComment
-    , assCompatibility
-
-    -- * ThirdPartyTrackingURL
-    , ThirdPartyTrackingURL
-    , thirdPartyTrackingURL
-    , tptuURL
-    , tptuThirdPartyURLType
-
-    -- * SiteVideoSettingsOrientation
-    , SiteVideoSettingsOrientation (..)
-
-    -- * PricingCapCostType
-    , PricingCapCostType (..)
-
-    -- * OrderDocument
-    , OrderDocument
-    , orderDocument
-    , odSigned
-    , odKind
-    , odAdvertiserId
-    , odLastSentTime
-    , odAmendedOrderDocumentId
-    , odLastSentRecipients
-    , odEffectiveDate
-    , odApprovedByUserProFileIds
-    , odAccountId
-    , odId
-    , odProjectId
-    , odTitle
-    , odSubAccountId
-    , odType
-    , odOrderId
-    , odCancelled
-    , odCreatedInfo
-
-    -- * Metro
-    , Metro
-    , metro
-    , metMetroCode
-    , metKind
-    , metName
-    , metCountryCode
-    , metDmaId
-    , metCountryDartId
-    , metDartId
-
-    -- * MobileApp
-    , MobileApp
-    , mobileApp
-    , maKind
-    , maId
-    , maTitle
-    , maPublisherName
-    , maDirectory
-
-    -- * CreativeAssetDisplayType
-    , CreativeAssetDisplayType (..)
-
-    -- * Placement
-    , Placement
-    , placement
-    , p1Status
-    , p1VideoSettings
-    , p1PlacementStrategyId
-    , p1TagFormats
-    , p1SiteIdDimensionValue
-    , p1PricingSchedule
-    , p1Size
-    , p1Kind
-    , p1KeyName
-    , p1CampaignIdDimensionValue
-    , p1AdvertiserId
-    , p1AdvertiserIdDimensionValue
-    , p1CampaignId
-    , p1IdDimensionValue
-    , p1VpaidAdapterChoice
-    , p1AdBlockingOptOut
-    , p1Primary
-    , p1LookbackConfiguration
-    , p1TagSetting
-    , p1ContentCategoryId
-    , p1DirectorySiteIdDimensionValue
-    , p1AccountId
-    , p1PaymentSource
-    , p1Name
-    , p1AdditionalSizes
-    , p1DirectorySiteId
-    , p1CreateInfo
-    , p1VideoActiveViewOptOut
-    , p1LastModifiedInfo
-    , p1Id
-    , p1SSLRequired
-    , p1SubAccountId
-    , p1PlacementGroupIdDimensionValue
-    , p1ExternalId
-    , p1PlacementGroupId
-    , p1Comment
-    , p1SiteId
-    , p1Compatibility
-    , p1Archived
-    , p1PaymentApproved
-    , p1PublisherUpdateInfo
-
-    -- * FloodlightActivityCountingMethod
-    , FloodlightActivityCountingMethod (..)
-
-    -- * EncryptionInfo
-    , EncryptionInfo
-    , encryptionInfo
-    , eiEncryptionSource
-    , eiKind
-    , eiEncryptionEntityType
-    , eiEncryptionEntityId
-
-    -- * SitesListResponse
-    , SitesListResponse
-    , sitesListResponse
-    , sitNextPageToken
-    , sitKind
-    , sitSites
-
-    -- * ContentCategoriesListSortOrder
-    , ContentCategoriesListSortOrder (..)
-
-    -- * TargetingTemplate
-    , TargetingTemplate
-    , targetingTemplate
-    , ttGeoTargeting
-    , ttTechnologyTargeting
-    , ttDayPartTargeting
-    , ttKind
-    , ttAdvertiserId
-    , ttAdvertiserIdDimensionValue
-    , ttAccountId
-    , ttName
-    , ttKeyValueTargetingExpression
-    , ttId
-    , ttSubAccountId
-    , ttLanguageTargeting
-    , ttListTargetingExpression
-
-    -- * CreativeField
-    , CreativeField
-    , creativeField
-    , cffKind
-    , cffAdvertiserId
-    , cffAdvertiserIdDimensionValue
-    , cffAccountId
-    , cffName
-    , cffId
-    , cffSubAccountId
-
-    -- * AdvertiserStatus
-    , AdvertiserStatus (..)
-
-    -- * DefaultClickThroughEventTagProperties
-    , DefaultClickThroughEventTagProperties
-    , defaultClickThroughEventTagProperties
-    , dctetpOverrideInheritedEventTag
-    , dctetpDefaultClickThroughEventTagId
-
-    -- * ListTargetingExpression
-    , ListTargetingExpression
-    , listTargetingExpression
-    , lteExpression
-    ) where
-
-import           Network.Google.DFAReporting.Types.Product
-import           Network.Google.DFAReporting.Types.Sum
-import           Network.Google.Prelude
-
--- | Default request referring to version 'v3.3' of the DCM/DFA Reporting And Trafficking API. This contains the host and root path used as a starting point for constructing service requests.
-dFAReportingService :: ServiceConfig
-dFAReportingService
-  = defaultService (ServiceId "dfareporting:v3.3")
-      "www.googleapis.com"
-
--- | View and manage DoubleClick for Advertisers reports
-dFAReportingScope :: Proxy '["https://www.googleapis.com/auth/dfareporting"]
-dFAReportingScope = Proxy
-
--- | Manage DoubleClick Digital Marketing conversions
-ddmconversionsScope :: Proxy '["https://www.googleapis.com/auth/ddmconversions"]
-ddmconversionsScope = Proxy
-
--- | View and manage your DoubleClick Campaign Manager\'s (DCM) display ad
--- campaigns
-dfatraffickingScope :: Proxy '["https://www.googleapis.com/auth/dfatrafficking"]
-dfatraffickingScope = Proxy
diff --git a/gen/Network/Google/DFAReporting/Types/Product.hs b/gen/Network/Google/DFAReporting/Types/Product.hs
deleted file mode 100644
--- a/gen/Network/Google/DFAReporting/Types/Product.hs
+++ /dev/null
@@ -1,24194 +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.DFAReporting.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.DFAReporting.Types.Product where
-
-import           Network.Google.DFAReporting.Types.Sum
-import           Network.Google.Prelude
-
--- | Video Offset
---
--- /See:/ 'videoOffSet' smart constructor.
-data VideoOffSet =
-  VideoOffSet'
-    { _vosOffSetPercentage :: !(Maybe (Textual Int32))
-    , _vosOffSetSeconds    :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoOffSet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vosOffSetPercentage'
---
--- * 'vosOffSetSeconds'
-videoOffSet
-    :: VideoOffSet
-videoOffSet =
-  VideoOffSet' {_vosOffSetPercentage = Nothing, _vosOffSetSeconds = Nothing}
-
-
--- | Duration, as a percentage of video duration. Do not set when
--- offsetSeconds is set. Acceptable values are 0 to 100, inclusive.
-vosOffSetPercentage :: Lens' VideoOffSet (Maybe Int32)
-vosOffSetPercentage
-  = lens _vosOffSetPercentage
-      (\ s a -> s{_vosOffSetPercentage = a})
-      . mapping _Coerce
-
--- | Duration, in seconds. Do not set when offsetPercentage is set.
--- Acceptable values are 0 to 86399, inclusive.
-vosOffSetSeconds :: Lens' VideoOffSet (Maybe Int32)
-vosOffSetSeconds
-  = lens _vosOffSetSeconds
-      (\ s a -> s{_vosOffSetSeconds = a})
-      . mapping _Coerce
-
-instance FromJSON VideoOffSet where
-        parseJSON
-          = withObject "VideoOffSet"
-              (\ o ->
-                 VideoOffSet' <$>
-                   (o .:? "offsetPercentage") <*>
-                     (o .:? "offsetSeconds"))
-
-instance ToJSON VideoOffSet where
-        toJSON VideoOffSet'{..}
-          = object
-              (catMaybes
-                 [("offsetPercentage" .=) <$> _vosOffSetPercentage,
-                  ("offsetSeconds" .=) <$> _vosOffSetSeconds])
-
--- | Contains information about a landing page deep link.
---
--- /See:/ 'deepLink' smart constructor.
-data DeepLink =
-  DeepLink'
-    { _dlRemarketingListIds :: !(Maybe [Textual Int64])
-    , _dlKind               :: !Text
-    , _dlFallbackURL        :: !(Maybe Text)
-    , _dlAppURL             :: !(Maybe Text)
-    , _dlMobileApp          :: !(Maybe MobileApp)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DeepLink' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dlRemarketingListIds'
---
--- * 'dlKind'
---
--- * 'dlFallbackURL'
---
--- * 'dlAppURL'
---
--- * 'dlMobileApp'
-deepLink
-    :: DeepLink
-deepLink =
-  DeepLink'
-    { _dlRemarketingListIds = Nothing
-    , _dlKind = "dfareporting#deepLink"
-    , _dlFallbackURL = Nothing
-    , _dlAppURL = Nothing
-    , _dlMobileApp = Nothing
-    }
-
-
--- | Ads served to users on these remarketing lists will use this deep link.
--- Applicable when mobileApp.directory is APPLE_APP_STORE.
-dlRemarketingListIds :: Lens' DeepLink [Int64]
-dlRemarketingListIds
-  = lens _dlRemarketingListIds
-      (\ s a -> s{_dlRemarketingListIds = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#deepLink\".
-dlKind :: Lens' DeepLink Text
-dlKind = lens _dlKind (\ s a -> s{_dlKind = a})
-
--- | The fallback URL. This URL will be served to users who do not have the
--- mobile app installed.
-dlFallbackURL :: Lens' DeepLink (Maybe Text)
-dlFallbackURL
-  = lens _dlFallbackURL
-      (\ s a -> s{_dlFallbackURL = a})
-
--- | The URL of the mobile app being linked to.
-dlAppURL :: Lens' DeepLink (Maybe Text)
-dlAppURL = lens _dlAppURL (\ s a -> s{_dlAppURL = a})
-
--- | The mobile app targeted by this deep link.
-dlMobileApp :: Lens' DeepLink (Maybe MobileApp)
-dlMobileApp
-  = lens _dlMobileApp (\ s a -> s{_dlMobileApp = a})
-
-instance FromJSON DeepLink where
-        parseJSON
-          = withObject "DeepLink"
-              (\ o ->
-                 DeepLink' <$>
-                   (o .:? "remarketingListIds" .!= mempty) <*>
-                     (o .:? "kind" .!= "dfareporting#deepLink")
-                     <*> (o .:? "fallbackUrl")
-                     <*> (o .:? "appUrl")
-                     <*> (o .:? "mobileApp"))
-
-instance ToJSON DeepLink where
-        toJSON DeepLink'{..}
-          = object
-              (catMaybes
-                 [("remarketingListIds" .=) <$> _dlRemarketingListIds,
-                  Just ("kind" .= _dlKind),
-                  ("fallbackUrl" .=) <$> _dlFallbackURL,
-                  ("appUrl" .=) <$> _dlAppURL,
-                  ("mobileApp" .=) <$> _dlMobileApp])
-
--- | Represents the list of File resources.
---
--- /See:/ 'fileList' smart constructor.
-data FileList =
-  FileList'
-    { _flEtag          :: !(Maybe Text)
-    , _flNextPageToken :: !(Maybe Text)
-    , _flKind          :: !Text
-    , _flItems         :: !(Maybe [File])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FileList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'flEtag'
---
--- * 'flNextPageToken'
---
--- * 'flKind'
---
--- * 'flItems'
-fileList
-    :: FileList
-fileList =
-  FileList'
-    { _flEtag = Nothing
-    , _flNextPageToken = Nothing
-    , _flKind = "dfareporting#fileList"
-    , _flItems = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-flEtag :: Lens' FileList (Maybe Text)
-flEtag = lens _flEtag (\ s a -> s{_flEtag = a})
-
--- | Continuation token used to page through files. To retrieve the next page
--- of results, set the next request\'s \"pageToken\" to the value of this
--- field. The page token is only valid for a limited amount of time and
--- should not be persisted.
-flNextPageToken :: Lens' FileList (Maybe Text)
-flNextPageToken
-  = lens _flNextPageToken
-      (\ s a -> s{_flNextPageToken = a})
-
--- | The kind of list this is, in this case dfareporting#fileList.
-flKind :: Lens' FileList Text
-flKind = lens _flKind (\ s a -> s{_flKind = a})
-
--- | The files returned in this response.
-flItems :: Lens' FileList [File]
-flItems
-  = lens _flItems (\ s a -> s{_flItems = a}) . _Default
-      . _Coerce
-
-instance FromJSON FileList where
-        parseJSON
-          = withObject "FileList"
-              (\ o ->
-                 FileList' <$>
-                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#fileList")
-                     <*> (o .:? "items" .!= mempty))
-
-instance ToJSON FileList where
-        toJSON FileList'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _flEtag,
-                  ("nextPageToken" .=) <$> _flNextPageToken,
-                  Just ("kind" .= _flKind), ("items" .=) <$> _flItems])
-
--- | Creative optimization activity.
---
--- /See:/ 'optimizationActivity' smart constructor.
-data OptimizationActivity =
-  OptimizationActivity'
-    { _oaWeight                             :: !(Maybe (Textual Int32))
-    , _oaFloodlightActivityId               :: !(Maybe (Textual Int64))
-    , _oaFloodlightActivityIdDimensionValue :: !(Maybe DimensionValue)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OptimizationActivity' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'oaWeight'
---
--- * 'oaFloodlightActivityId'
---
--- * 'oaFloodlightActivityIdDimensionValue'
-optimizationActivity
-    :: OptimizationActivity
-optimizationActivity =
-  OptimizationActivity'
-    { _oaWeight = Nothing
-    , _oaFloodlightActivityId = Nothing
-    , _oaFloodlightActivityIdDimensionValue = Nothing
-    }
-
-
--- | Weight associated with this optimization. The weight assigned will be
--- understood in proportion to the weights assigned to the other
--- optimization activities. Value must be greater than or equal to 1.
-oaWeight :: Lens' OptimizationActivity (Maybe Int32)
-oaWeight
-  = lens _oaWeight (\ s a -> s{_oaWeight = a}) .
-      mapping _Coerce
-
--- | Floodlight activity ID of this optimization activity. This is a required
--- field.
-oaFloodlightActivityId :: Lens' OptimizationActivity (Maybe Int64)
-oaFloodlightActivityId
-  = lens _oaFloodlightActivityId
-      (\ s a -> s{_oaFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the floodlight activity. This is a
--- read-only, auto-generated field.
-oaFloodlightActivityIdDimensionValue :: Lens' OptimizationActivity (Maybe DimensionValue)
-oaFloodlightActivityIdDimensionValue
-  = lens _oaFloodlightActivityIdDimensionValue
-      (\ s a ->
-         s{_oaFloodlightActivityIdDimensionValue = a})
-
-instance FromJSON OptimizationActivity where
-        parseJSON
-          = withObject "OptimizationActivity"
-              (\ o ->
-                 OptimizationActivity' <$>
-                   (o .:? "weight") <*> (o .:? "floodlightActivityId")
-                     <*> (o .:? "floodlightActivityIdDimensionValue"))
-
-instance ToJSON OptimizationActivity where
-        toJSON OptimizationActivity'{..}
-          = object
-              (catMaybes
-                 [("weight" .=) <$> _oaWeight,
-                  ("floodlightActivityId" .=) <$>
-                    _oaFloodlightActivityId,
-                  ("floodlightActivityIdDimensionValue" .=) <$>
-                    _oaFloodlightActivityIdDimensionValue])
-
--- | A group clause made up of list population terms representing constraints
--- joined by ORs.
---
--- /See:/ 'listPopulationClause' smart constructor.
-newtype ListPopulationClause =
-  ListPopulationClause'
-    { _lpcTerms :: Maybe [ListPopulationTerm]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListPopulationClause' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lpcTerms'
-listPopulationClause
-    :: ListPopulationClause
-listPopulationClause = ListPopulationClause' {_lpcTerms = Nothing}
-
-
--- | Terms of this list population clause. Each clause is made up of list
--- population terms representing constraints and are joined by ORs.
-lpcTerms :: Lens' ListPopulationClause [ListPopulationTerm]
-lpcTerms
-  = lens _lpcTerms (\ s a -> s{_lpcTerms = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ListPopulationClause where
-        parseJSON
-          = withObject "ListPopulationClause"
-              (\ o ->
-                 ListPopulationClause' <$> (o .:? "terms" .!= mempty))
-
-instance ToJSON ListPopulationClause where
-        toJSON ListPopulationClause'{..}
-          = object (catMaybes [("terms" .=) <$> _lpcTerms])
-
--- | Campaign ad blocking settings.
---
--- /See:/ 'adBlockingConfiguration' smart constructor.
-data AdBlockingConfiguration =
-  AdBlockingConfiguration'
-    { _abcCreativeBundleId        :: !(Maybe (Textual Int64))
-    , _abcOverrideClickThroughURL :: !(Maybe Bool)
-    , _abcEnabled                 :: !(Maybe Bool)
-    , _abcClickThroughURL         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdBlockingConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'abcCreativeBundleId'
---
--- * 'abcOverrideClickThroughURL'
---
--- * 'abcEnabled'
---
--- * 'abcClickThroughURL'
-adBlockingConfiguration
-    :: AdBlockingConfiguration
-adBlockingConfiguration =
-  AdBlockingConfiguration'
-    { _abcCreativeBundleId = Nothing
-    , _abcOverrideClickThroughURL = Nothing
-    , _abcEnabled = Nothing
-    , _abcClickThroughURL = Nothing
-    }
-
-
--- | ID of a creative bundle to use for this campaign. If set, brand-neutral
--- ads will select creatives from this bundle. Otherwise, a default
--- transparent pixel will be used.
-abcCreativeBundleId :: Lens' AdBlockingConfiguration (Maybe Int64)
-abcCreativeBundleId
-  = lens _abcCreativeBundleId
-      (\ s a -> s{_abcCreativeBundleId = a})
-      . mapping _Coerce
-
--- | Whether the brand-neutral ad\'s click-through URL comes from the
--- campaign\'s creative bundle or the override URL. Must be set to true if
--- ad blocking is enabled and no creative bundle is configured.
-abcOverrideClickThroughURL :: Lens' AdBlockingConfiguration (Maybe Bool)
-abcOverrideClickThroughURL
-  = lens _abcOverrideClickThroughURL
-      (\ s a -> s{_abcOverrideClickThroughURL = a})
-
--- | Whether this campaign has enabled ad blocking. When true, ad blocking is
--- enabled for placements in the campaign, but this may be overridden by
--- site and placement settings. When false, ad blocking is disabled for all
--- placements under the campaign, regardless of site and placement
--- settings.
-abcEnabled :: Lens' AdBlockingConfiguration (Maybe Bool)
-abcEnabled
-  = lens _abcEnabled (\ s a -> s{_abcEnabled = a})
-
--- | Click-through URL used by brand-neutral ads. This is a required field
--- when overrideClickThroughUrl is set to true.
-abcClickThroughURL :: Lens' AdBlockingConfiguration (Maybe Text)
-abcClickThroughURL
-  = lens _abcClickThroughURL
-      (\ s a -> s{_abcClickThroughURL = a})
-
-instance FromJSON AdBlockingConfiguration where
-        parseJSON
-          = withObject "AdBlockingConfiguration"
-              (\ o ->
-                 AdBlockingConfiguration' <$>
-                   (o .:? "creativeBundleId") <*>
-                     (o .:? "overrideClickThroughUrl")
-                     <*> (o .:? "enabled")
-                     <*> (o .:? "clickThroughUrl"))
-
-instance ToJSON AdBlockingConfiguration where
-        toJSON AdBlockingConfiguration'{..}
-          = object
-              (catMaybes
-                 [("creativeBundleId" .=) <$> _abcCreativeBundleId,
-                  ("overrideClickThroughUrl" .=) <$>
-                    _abcOverrideClickThroughURL,
-                  ("enabled" .=) <$> _abcEnabled,
-                  ("clickThroughUrl" .=) <$> _abcClickThroughURL])
-
--- | Creative Custom Event.
---
--- /See:/ 'creativeCustomEvent' smart constructor.
-data CreativeCustomEvent =
-  CreativeCustomEvent'
-    { _cceAdvertiserCustomEventId   :: !(Maybe (Textual Int64))
-    , _cceAdvertiserCustomEventType :: !(Maybe CreativeCustomEventAdvertiserCustomEventType)
-    , _cceAdvertiserCustomEventName :: !(Maybe Text)
-    , _cceExitClickThroughURL       :: !(Maybe CreativeClickThroughURL)
-    , _cceTargetType                :: !(Maybe CreativeCustomEventTargetType)
-    , _ccePopupWindowProperties     :: !(Maybe PopupWindowProperties)
-    , _cceVideoReportingId          :: !(Maybe Text)
-    , _cceId                        :: !(Maybe (Textual Int64))
-    , _cceArtworkLabel              :: !(Maybe Text)
-    , _cceArtworkType               :: !(Maybe CreativeCustomEventArtworkType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeCustomEvent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cceAdvertiserCustomEventId'
---
--- * 'cceAdvertiserCustomEventType'
---
--- * 'cceAdvertiserCustomEventName'
---
--- * 'cceExitClickThroughURL'
---
--- * 'cceTargetType'
---
--- * 'ccePopupWindowProperties'
---
--- * 'cceVideoReportingId'
---
--- * 'cceId'
---
--- * 'cceArtworkLabel'
---
--- * 'cceArtworkType'
-creativeCustomEvent
-    :: CreativeCustomEvent
-creativeCustomEvent =
-  CreativeCustomEvent'
-    { _cceAdvertiserCustomEventId = Nothing
-    , _cceAdvertiserCustomEventType = Nothing
-    , _cceAdvertiserCustomEventName = Nothing
-    , _cceExitClickThroughURL = Nothing
-    , _cceTargetType = Nothing
-    , _ccePopupWindowProperties = Nothing
-    , _cceVideoReportingId = Nothing
-    , _cceId = Nothing
-    , _cceArtworkLabel = Nothing
-    , _cceArtworkType = Nothing
-    }
-
-
--- | Unique ID of this event used by Reporting and Data Transfer. This is a
--- read-only field.
-cceAdvertiserCustomEventId :: Lens' CreativeCustomEvent (Maybe Int64)
-cceAdvertiserCustomEventId
-  = lens _cceAdvertiserCustomEventId
-      (\ s a -> s{_cceAdvertiserCustomEventId = a})
-      . mapping _Coerce
-
--- | Type of the event. This is a read-only field.
-cceAdvertiserCustomEventType :: Lens' CreativeCustomEvent (Maybe CreativeCustomEventAdvertiserCustomEventType)
-cceAdvertiserCustomEventType
-  = lens _cceAdvertiserCustomEventType
-      (\ s a -> s{_cceAdvertiserCustomEventType = a})
-
--- | User-entered name for the event.
-cceAdvertiserCustomEventName :: Lens' CreativeCustomEvent (Maybe Text)
-cceAdvertiserCustomEventName
-  = lens _cceAdvertiserCustomEventName
-      (\ s a -> s{_cceAdvertiserCustomEventName = a})
-
--- | Exit click-through URL for the event. This field is used only for exit
--- events.
-cceExitClickThroughURL :: Lens' CreativeCustomEvent (Maybe CreativeClickThroughURL)
-cceExitClickThroughURL
-  = lens _cceExitClickThroughURL
-      (\ s a -> s{_cceExitClickThroughURL = a})
-
--- | Target type used by the event.
-cceTargetType :: Lens' CreativeCustomEvent (Maybe CreativeCustomEventTargetType)
-cceTargetType
-  = lens _cceTargetType
-      (\ s a -> s{_cceTargetType = a})
-
--- | Properties for rich media popup windows. This field is used only for
--- exit events.
-ccePopupWindowProperties :: Lens' CreativeCustomEvent (Maybe PopupWindowProperties)
-ccePopupWindowProperties
-  = lens _ccePopupWindowProperties
-      (\ s a -> s{_ccePopupWindowProperties = a})
-
--- | Video reporting ID, used to differentiate multiple videos in a single
--- creative. This is a read-only field.
-cceVideoReportingId :: Lens' CreativeCustomEvent (Maybe Text)
-cceVideoReportingId
-  = lens _cceVideoReportingId
-      (\ s a -> s{_cceVideoReportingId = a})
-
--- | ID of this event. This is a required field and should not be modified
--- after insertion.
-cceId :: Lens' CreativeCustomEvent (Maybe Int64)
-cceId
-  = lens _cceId (\ s a -> s{_cceId = a}) .
-      mapping _Coerce
-
--- | Artwork label column, used to link events in Campaign Manager back to
--- events in Studio. This is a required field and should not be modified
--- after insertion.
-cceArtworkLabel :: Lens' CreativeCustomEvent (Maybe Text)
-cceArtworkLabel
-  = lens _cceArtworkLabel
-      (\ s a -> s{_cceArtworkLabel = a})
-
--- | Artwork type used by the creative.This is a read-only field.
-cceArtworkType :: Lens' CreativeCustomEvent (Maybe CreativeCustomEventArtworkType)
-cceArtworkType
-  = lens _cceArtworkType
-      (\ s a -> s{_cceArtworkType = a})
-
-instance FromJSON CreativeCustomEvent where
-        parseJSON
-          = withObject "CreativeCustomEvent"
-              (\ o ->
-                 CreativeCustomEvent' <$>
-                   (o .:? "advertiserCustomEventId") <*>
-                     (o .:? "advertiserCustomEventType")
-                     <*> (o .:? "advertiserCustomEventName")
-                     <*> (o .:? "exitClickThroughUrl")
-                     <*> (o .:? "targetType")
-                     <*> (o .:? "popupWindowProperties")
-                     <*> (o .:? "videoReportingId")
-                     <*> (o .:? "id")
-                     <*> (o .:? "artworkLabel")
-                     <*> (o .:? "artworkType"))
-
-instance ToJSON CreativeCustomEvent where
-        toJSON CreativeCustomEvent'{..}
-          = object
-              (catMaybes
-                 [("advertiserCustomEventId" .=) <$>
-                    _cceAdvertiserCustomEventId,
-                  ("advertiserCustomEventType" .=) <$>
-                    _cceAdvertiserCustomEventType,
-                  ("advertiserCustomEventName" .=) <$>
-                    _cceAdvertiserCustomEventName,
-                  ("exitClickThroughUrl" .=) <$>
-                    _cceExitClickThroughURL,
-                  ("targetType" .=) <$> _cceTargetType,
-                  ("popupWindowProperties" .=) <$>
-                    _ccePopupWindowProperties,
-                  ("videoReportingId" .=) <$> _cceVideoReportingId,
-                  ("id" .=) <$> _cceId,
-                  ("artworkLabel" .=) <$> _cceArtworkLabel,
-                  ("artworkType" .=) <$> _cceArtworkType])
-
--- | Creative Click Tag.
---
--- /See:/ 'clickTag' smart constructor.
-data ClickTag =
-  ClickTag'
-    { _ctClickThroughURL :: !(Maybe CreativeClickThroughURL)
-    , _ctName            :: !(Maybe Text)
-    , _ctEventName       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ClickTag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctClickThroughURL'
---
--- * 'ctName'
---
--- * 'ctEventName'
-clickTag
-    :: ClickTag
-clickTag =
-  ClickTag'
-    {_ctClickThroughURL = Nothing, _ctName = Nothing, _ctEventName = Nothing}
-
-
--- | Parameter value for the specified click tag. This field contains a
--- click-through url.
-ctClickThroughURL :: Lens' ClickTag (Maybe CreativeClickThroughURL)
-ctClickThroughURL
-  = lens _ctClickThroughURL
-      (\ s a -> s{_ctClickThroughURL = a})
-
--- | Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY
--- creative assets, this field must match the value of the creative
--- asset\'s creativeAssetId.name field.
-ctName :: Lens' ClickTag (Maybe Text)
-ctName = lens _ctName (\ s a -> s{_ctName = a})
-
--- | Advertiser event name associated with the click tag. This field is used
--- by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to
--- DISPLAY when the primary asset type is not HTML_IMAGE.
-ctEventName :: Lens' ClickTag (Maybe Text)
-ctEventName
-  = lens _ctEventName (\ s a -> s{_ctEventName = a})
-
-instance FromJSON ClickTag where
-        parseJSON
-          = withObject "ClickTag"
-              (\ o ->
-                 ClickTag' <$>
-                   (o .:? "clickThroughUrl") <*> (o .:? "name") <*>
-                     (o .:? "eventName"))
-
-instance ToJSON ClickTag where
-        toJSON ClickTag'{..}
-          = object
-              (catMaybes
-                 [("clickThroughUrl" .=) <$> _ctClickThroughURL,
-                  ("name" .=) <$> _ctName,
-                  ("eventName" .=) <$> _ctEventName])
-
--- | Campaign List Response
---
--- /See:/ 'campaignsListResponse' smart constructor.
-data CampaignsListResponse =
-  CampaignsListResponse'
-    { _clrNextPageToken :: !(Maybe Text)
-    , _clrCampaigns     :: !(Maybe [Campaign])
-    , _clrKind          :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'clrNextPageToken'
---
--- * 'clrCampaigns'
---
--- * 'clrKind'
-campaignsListResponse
-    :: CampaignsListResponse
-campaignsListResponse =
-  CampaignsListResponse'
-    { _clrNextPageToken = Nothing
-    , _clrCampaigns = Nothing
-    , _clrKind = "dfareporting#campaignsListResponse"
-    }
-
-
--- | Pagination token to be used for the next list operation.
-clrNextPageToken :: Lens' CampaignsListResponse (Maybe Text)
-clrNextPageToken
-  = lens _clrNextPageToken
-      (\ s a -> s{_clrNextPageToken = a})
-
--- | Campaign collection.
-clrCampaigns :: Lens' CampaignsListResponse [Campaign]
-clrCampaigns
-  = lens _clrCampaigns (\ s a -> s{_clrCampaigns = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#campaignsListResponse\".
-clrKind :: Lens' CampaignsListResponse Text
-clrKind = lens _clrKind (\ s a -> s{_clrKind = a})
-
-instance FromJSON CampaignsListResponse where
-        parseJSON
-          = withObject "CampaignsListResponse"
-              (\ o ->
-                 CampaignsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "campaigns" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#campaignsListResponse"))
-
-instance ToJSON CampaignsListResponse where
-        toJSON CampaignsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _clrNextPageToken,
-                  ("campaigns" .=) <$> _clrCampaigns,
-                  Just ("kind" .= _clrKind)])
-
--- | Geographical Targeting.
---
--- /See:/ 'geoTargeting' smart constructor.
-data GeoTargeting =
-  GeoTargeting'
-    { _gtRegions          :: !(Maybe [Region])
-    , _gtCountries        :: !(Maybe [Country])
-    , _gtCities           :: !(Maybe [City])
-    , _gtMetros           :: !(Maybe [Metro])
-    , _gtExcludeCountries :: !(Maybe Bool)
-    , _gtPostalCodes      :: !(Maybe [PostalCode])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'GeoTargeting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'gtRegions'
---
--- * 'gtCountries'
---
--- * 'gtCities'
---
--- * 'gtMetros'
---
--- * 'gtExcludeCountries'
---
--- * 'gtPostalCodes'
-geoTargeting
-    :: GeoTargeting
-geoTargeting =
-  GeoTargeting'
-    { _gtRegions = Nothing
-    , _gtCountries = Nothing
-    , _gtCities = Nothing
-    , _gtMetros = Nothing
-    , _gtExcludeCountries = Nothing
-    , _gtPostalCodes = Nothing
-    }
-
-
--- | Regions to be targeted. For each region only dartId is required. The
--- other fields are populated automatically when the ad is inserted or
--- updated. If targeting a region, do not target or exclude the country of
--- the region.
-gtRegions :: Lens' GeoTargeting [Region]
-gtRegions
-  = lens _gtRegions (\ s a -> s{_gtRegions = a}) .
-      _Default
-      . _Coerce
-
--- | Countries to be targeted or excluded from targeting, depending on the
--- setting of the excludeCountries field. For each country only dartId is
--- required. The other fields are populated automatically when the ad is
--- inserted or updated. If targeting or excluding a country, do not target
--- regions, cities, metros, or postal codes in the same country.
-gtCountries :: Lens' GeoTargeting [Country]
-gtCountries
-  = lens _gtCountries (\ s a -> s{_gtCountries = a}) .
-      _Default
-      . _Coerce
-
--- | Cities to be targeted. For each city only dartId is required. The other
--- fields are populated automatically when the ad is inserted or updated.
--- If targeting a city, do not target or exclude the country of the city,
--- and do not target the metro or region of the city.
-gtCities :: Lens' GeoTargeting [City]
-gtCities
-  = lens _gtCities (\ s a -> s{_gtCities = a}) .
-      _Default
-      . _Coerce
-
--- | Metros to be targeted. For each metro only dmaId is required. The other
--- fields are populated automatically when the ad is inserted or updated.
--- If targeting a metro, do not target or exclude the country of the metro.
-gtMetros :: Lens' GeoTargeting [Metro]
-gtMetros
-  = lens _gtMetros (\ s a -> s{_gtMetros = a}) .
-      _Default
-      . _Coerce
-
--- | Whether or not to exclude the countries in the countries field from
--- targeting. If false, the countries field refers to countries which will
--- be targeted by the ad.
-gtExcludeCountries :: Lens' GeoTargeting (Maybe Bool)
-gtExcludeCountries
-  = lens _gtExcludeCountries
-      (\ s a -> s{_gtExcludeCountries = a})
-
--- | Postal codes to be targeted. For each postal code only id is required.
--- The other fields are populated automatically when the ad is inserted or
--- updated. If targeting a postal code, do not target or exclude the
--- country of the postal code.
-gtPostalCodes :: Lens' GeoTargeting [PostalCode]
-gtPostalCodes
-  = lens _gtPostalCodes
-      (\ s a -> s{_gtPostalCodes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON GeoTargeting where
-        parseJSON
-          = withObject "GeoTargeting"
-              (\ o ->
-                 GeoTargeting' <$>
-                   (o .:? "regions" .!= mempty) <*>
-                     (o .:? "countries" .!= mempty)
-                     <*> (o .:? "cities" .!= mempty)
-                     <*> (o .:? "metros" .!= mempty)
-                     <*> (o .:? "excludeCountries")
-                     <*> (o .:? "postalCodes" .!= mempty))
-
-instance ToJSON GeoTargeting where
-        toJSON GeoTargeting'{..}
-          = object
-              (catMaybes
-                 [("regions" .=) <$> _gtRegions,
-                  ("countries" .=) <$> _gtCountries,
-                  ("cities" .=) <$> _gtCities,
-                  ("metros" .=) <$> _gtMetros,
-                  ("excludeCountries" .=) <$> _gtExcludeCountries,
-                  ("postalCodes" .=) <$> _gtPostalCodes])
-
--- | Video Settings
---
--- /See:/ 'videoSettings' smart constructor.
-data VideoSettings =
-  VideoSettings'
-    { _vsKind              :: !Text
-    , _vsCompanionSettings :: !(Maybe CompanionSetting)
-    , _vsTranscodeSettings :: !(Maybe TranscodeSetting)
-    , _vsOrientation       :: !(Maybe VideoSettingsOrientation)
-    , _vsSkippableSettings :: !(Maybe SkippableSetting)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vsKind'
---
--- * 'vsCompanionSettings'
---
--- * 'vsTranscodeSettings'
---
--- * 'vsOrientation'
---
--- * 'vsSkippableSettings'
-videoSettings
-    :: VideoSettings
-videoSettings =
-  VideoSettings'
-    { _vsKind = "dfareporting#videoSettings"
-    , _vsCompanionSettings = Nothing
-    , _vsTranscodeSettings = Nothing
-    , _vsOrientation = Nothing
-    , _vsSkippableSettings = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#videoSettings\".
-vsKind :: Lens' VideoSettings Text
-vsKind = lens _vsKind (\ s a -> s{_vsKind = a})
-
--- | Settings for the companion creatives of video creatives served to this
--- placement.
-vsCompanionSettings :: Lens' VideoSettings (Maybe CompanionSetting)
-vsCompanionSettings
-  = lens _vsCompanionSettings
-      (\ s a -> s{_vsCompanionSettings = a})
-
--- | Settings for the transcodes of video creatives served to this placement.
--- If this object is provided, the creative-level transcode settings will
--- be overridden.
-vsTranscodeSettings :: Lens' VideoSettings (Maybe TranscodeSetting)
-vsTranscodeSettings
-  = lens _vsTranscodeSettings
-      (\ s a -> s{_vsTranscodeSettings = a})
-
--- | Orientation of a video placement. If this value is set, placement will
--- return assets matching the specified orientation.
-vsOrientation :: Lens' VideoSettings (Maybe VideoSettingsOrientation)
-vsOrientation
-  = lens _vsOrientation
-      (\ s a -> s{_vsOrientation = a})
-
--- | Settings for the skippability of video creatives served to this
--- placement. If this object is provided, the creative-level skippable
--- settings will be overridden.
-vsSkippableSettings :: Lens' VideoSettings (Maybe SkippableSetting)
-vsSkippableSettings
-  = lens _vsSkippableSettings
-      (\ s a -> s{_vsSkippableSettings = a})
-
-instance FromJSON VideoSettings where
-        parseJSON
-          = withObject "VideoSettings"
-              (\ o ->
-                 VideoSettings' <$>
-                   (o .:? "kind" .!= "dfareporting#videoSettings") <*>
-                     (o .:? "companionSettings")
-                     <*> (o .:? "transcodeSettings")
-                     <*> (o .:? "orientation")
-                     <*> (o .:? "skippableSettings"))
-
-instance ToJSON VideoSettings where
-        toJSON VideoSettings'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _vsKind),
-                  ("companionSettings" .=) <$> _vsCompanionSettings,
-                  ("transcodeSettings" .=) <$> _vsTranscodeSettings,
-                  ("orientation" .=) <$> _vsOrientation,
-                  ("skippableSettings" .=) <$> _vsSkippableSettings])
-
--- | Represents fields that are compatible to be selected for a report of
--- type \"REACH\".
---
--- /See:/ 'reachReportCompatibleFields' smart constructor.
-data ReachReportCompatibleFields =
-  ReachReportCompatibleFields'
-    { _rrcfMetrics                 :: !(Maybe [Metric])
-    , _rrcfReachByFrequencyMetrics :: !(Maybe [Metric])
-    , _rrcfKind                    :: !Text
-    , _rrcfDimensionFilters        :: !(Maybe [Dimension])
-    , _rrcfPivotedActivityMetrics  :: !(Maybe [Metric])
-    , _rrcfDimensions              :: !(Maybe [Dimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReachReportCompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rrcfMetrics'
---
--- * 'rrcfReachByFrequencyMetrics'
---
--- * 'rrcfKind'
---
--- * 'rrcfDimensionFilters'
---
--- * 'rrcfPivotedActivityMetrics'
---
--- * 'rrcfDimensions'
-reachReportCompatibleFields
-    :: ReachReportCompatibleFields
-reachReportCompatibleFields =
-  ReachReportCompatibleFields'
-    { _rrcfMetrics = Nothing
-    , _rrcfReachByFrequencyMetrics = Nothing
-    , _rrcfKind = "dfareporting#reachReportCompatibleFields"
-    , _rrcfDimensionFilters = Nothing
-    , _rrcfPivotedActivityMetrics = Nothing
-    , _rrcfDimensions = Nothing
-    }
-
-
--- | Metrics which are compatible to be selected in the \"metricNames\"
--- section of the report.
-rrcfMetrics :: Lens' ReachReportCompatibleFields [Metric]
-rrcfMetrics
-  = lens _rrcfMetrics (\ s a -> s{_rrcfMetrics = a}) .
-      _Default
-      . _Coerce
-
--- | Metrics which are compatible to be selected in the
--- \"reachByFrequencyMetricNames\" section of the report.
-rrcfReachByFrequencyMetrics :: Lens' ReachReportCompatibleFields [Metric]
-rrcfReachByFrequencyMetrics
-  = lens _rrcfReachByFrequencyMetrics
-      (\ s a -> s{_rrcfReachByFrequencyMetrics = a})
-      . _Default
-      . _Coerce
-
--- | The kind of resource this is, in this case
--- dfareporting#reachReportCompatibleFields.
-rrcfKind :: Lens' ReachReportCompatibleFields Text
-rrcfKind = lens _rrcfKind (\ s a -> s{_rrcfKind = a})
-
--- | Dimensions which are compatible to be selected in the
--- \"dimensionFilters\" section of the report.
-rrcfDimensionFilters :: Lens' ReachReportCompatibleFields [Dimension]
-rrcfDimensionFilters
-  = lens _rrcfDimensionFilters
-      (\ s a -> s{_rrcfDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Metrics which are compatible to be selected as activity metrics to pivot
--- on in the \"activities\" section of the report.
-rrcfPivotedActivityMetrics :: Lens' ReachReportCompatibleFields [Metric]
-rrcfPivotedActivityMetrics
-  = lens _rrcfPivotedActivityMetrics
-      (\ s a -> s{_rrcfPivotedActivityMetrics = a})
-      . _Default
-      . _Coerce
-
--- | Dimensions which are compatible to be selected in the \"dimensions\"
--- section of the report.
-rrcfDimensions :: Lens' ReachReportCompatibleFields [Dimension]
-rrcfDimensions
-  = lens _rrcfDimensions
-      (\ s a -> s{_rrcfDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReachReportCompatibleFields where
-        parseJSON
-          = withObject "ReachReportCompatibleFields"
-              (\ o ->
-                 ReachReportCompatibleFields' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "reachByFrequencyMetrics" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#reachReportCompatibleFields")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "pivotedActivityMetrics" .!= mempty)
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON ReachReportCompatibleFields where
-        toJSON ReachReportCompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _rrcfMetrics,
-                  ("reachByFrequencyMetrics" .=) <$>
-                    _rrcfReachByFrequencyMetrics,
-                  Just ("kind" .= _rrcfKind),
-                  ("dimensionFilters" .=) <$> _rrcfDimensionFilters,
-                  ("pivotedActivityMetrics" .=) <$>
-                    _rrcfPivotedActivityMetrics,
-                  ("dimensions" .=) <$> _rrcfDimensions])
-
--- | Contains information about a browser that can be targeted by ads.
---
--- /See:/ 'browser' smart constructor.
-data Browser =
-  Browser'
-    { _bMinorVersion     :: !(Maybe Text)
-    , _bKind             :: !Text
-    , _bBrowserVersionId :: !(Maybe (Textual Int64))
-    , _bMajorVersion     :: !(Maybe Text)
-    , _bName             :: !(Maybe Text)
-    , _bDartId           :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Browser' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'bMinorVersion'
---
--- * 'bKind'
---
--- * 'bBrowserVersionId'
---
--- * 'bMajorVersion'
---
--- * 'bName'
---
--- * 'bDartId'
-browser
-    :: Browser
-browser =
-  Browser'
-    { _bMinorVersion = Nothing
-    , _bKind = "dfareporting#browser"
-    , _bBrowserVersionId = Nothing
-    , _bMajorVersion = Nothing
-    , _bName = Nothing
-    , _bDartId = Nothing
-    }
-
-
--- | Minor version number (number after first dot on left) of this browser.
--- For example, for Chrome 5.0.375.86 beta, this field should be set to 0.
--- An asterisk (*) may be used to target any version number, and a question
--- mark (?) may be used to target cases where the version number cannot be
--- identified. For example, Chrome *.* targets any version of Chrome: 1.2,
--- 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0.
--- Firefox ?.? targets cases where the ad server knows the browser is
--- Firefox but can\'t tell which version it is.
-bMinorVersion :: Lens' Browser (Maybe Text)
-bMinorVersion
-  = lens _bMinorVersion
-      (\ s a -> s{_bMinorVersion = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#browser\".
-bKind :: Lens' Browser Text
-bKind = lens _bKind (\ s a -> s{_bKind = a})
-
--- | ID referring to this grouping of browser and version numbers. This is
--- the ID used for targeting.
-bBrowserVersionId :: Lens' Browser (Maybe Int64)
-bBrowserVersionId
-  = lens _bBrowserVersionId
-      (\ s a -> s{_bBrowserVersionId = a})
-      . mapping _Coerce
-
--- | Major version number (leftmost number) of this browser. For example, for
--- Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*)
--- may be used to target any version number, and a question mark (?) may be
--- used to target cases where the version number cannot be identified. For
--- example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so
--- on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets
--- cases where the ad server knows the browser is Firefox but can\'t tell
--- which version it is.
-bMajorVersion :: Lens' Browser (Maybe Text)
-bMajorVersion
-  = lens _bMajorVersion
-      (\ s a -> s{_bMajorVersion = a})
-
--- | Name of this browser.
-bName :: Lens' Browser (Maybe Text)
-bName = lens _bName (\ s a -> s{_bName = a})
-
--- | DART ID of this browser. This is the ID used when generating reports.
-bDartId :: Lens' Browser (Maybe Int64)
-bDartId
-  = lens _bDartId (\ s a -> s{_bDartId = a}) .
-      mapping _Coerce
-
-instance FromJSON Browser where
-        parseJSON
-          = withObject "Browser"
-              (\ o ->
-                 Browser' <$>
-                   (o .:? "minorVersion") <*>
-                     (o .:? "kind" .!= "dfareporting#browser")
-                     <*> (o .:? "browserVersionId")
-                     <*> (o .:? "majorVersion")
-                     <*> (o .:? "name")
-                     <*> (o .:? "dartId"))
-
-instance ToJSON Browser where
-        toJSON Browser'{..}
-          = object
-              (catMaybes
-                 [("minorVersion" .=) <$> _bMinorVersion,
-                  Just ("kind" .= _bKind),
-                  ("browserVersionId" .=) <$> _bBrowserVersionId,
-                  ("majorVersion" .=) <$> _bMajorVersion,
-                  ("name" .=) <$> _bName, ("dartId" .=) <$> _bDartId])
-
--- | Creative Group Assignment.
---
--- /See:/ 'creativeGroupAssignment' smart constructor.
-data CreativeGroupAssignment =
-  CreativeGroupAssignment'
-    { _cgaCreativeGroupNumber :: !(Maybe CreativeGroupAssignmentCreativeGroupNumber)
-    , _cgaCreativeGroupId     :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupAssignment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgaCreativeGroupNumber'
---
--- * 'cgaCreativeGroupId'
-creativeGroupAssignment
-    :: CreativeGroupAssignment
-creativeGroupAssignment =
-  CreativeGroupAssignment'
-    {_cgaCreativeGroupNumber = Nothing, _cgaCreativeGroupId = Nothing}
-
-
--- | Creative group number of the creative group assignment.
-cgaCreativeGroupNumber :: Lens' CreativeGroupAssignment (Maybe CreativeGroupAssignmentCreativeGroupNumber)
-cgaCreativeGroupNumber
-  = lens _cgaCreativeGroupNumber
-      (\ s a -> s{_cgaCreativeGroupNumber = a})
-
--- | ID of the creative group to be assigned.
-cgaCreativeGroupId :: Lens' CreativeGroupAssignment (Maybe Int64)
-cgaCreativeGroupId
-  = lens _cgaCreativeGroupId
-      (\ s a -> s{_cgaCreativeGroupId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeGroupAssignment where
-        parseJSON
-          = withObject "CreativeGroupAssignment"
-              (\ o ->
-                 CreativeGroupAssignment' <$>
-                   (o .:? "creativeGroupNumber") <*>
-                     (o .:? "creativeGroupId"))
-
-instance ToJSON CreativeGroupAssignment where
-        toJSON CreativeGroupAssignment'{..}
-          = object
-              (catMaybes
-                 [("creativeGroupNumber" .=) <$>
-                    _cgaCreativeGroupNumber,
-                  ("creativeGroupId" .=) <$> _cgaCreativeGroupId])
-
--- | Directory Site Settings
---
--- /See:/ 'directorySiteSettings' smart constructor.
-data DirectorySiteSettings =
-  DirectorySiteSettings'
-    { _dssInterstitialPlacementAccepted  :: !(Maybe Bool)
-    , _dssInstreamVideoPlacementAccepted :: !(Maybe Bool)
-    , _dssActiveViewOptOut               :: !(Maybe Bool)
-    , _dssDfpSettings                    :: !(Maybe DfpSettings)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySiteSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dssInterstitialPlacementAccepted'
---
--- * 'dssInstreamVideoPlacementAccepted'
---
--- * 'dssActiveViewOptOut'
---
--- * 'dssDfpSettings'
-directorySiteSettings
-    :: DirectorySiteSettings
-directorySiteSettings =
-  DirectorySiteSettings'
-    { _dssInterstitialPlacementAccepted = Nothing
-    , _dssInstreamVideoPlacementAccepted = Nothing
-    , _dssActiveViewOptOut = Nothing
-    , _dssDfpSettings = Nothing
-    }
-
-
--- | Whether this site accepts interstitial ads.
-dssInterstitialPlacementAccepted :: Lens' DirectorySiteSettings (Maybe Bool)
-dssInterstitialPlacementAccepted
-  = lens _dssInterstitialPlacementAccepted
-      (\ s a -> s{_dssInterstitialPlacementAccepted = a})
-
--- | Whether this site accepts in-stream video ads.
-dssInstreamVideoPlacementAccepted :: Lens' DirectorySiteSettings (Maybe Bool)
-dssInstreamVideoPlacementAccepted
-  = lens _dssInstreamVideoPlacementAccepted
-      (\ s a -> s{_dssInstreamVideoPlacementAccepted = a})
-
--- | Whether this directory site has disabled active view creatives.
-dssActiveViewOptOut :: Lens' DirectorySiteSettings (Maybe Bool)
-dssActiveViewOptOut
-  = lens _dssActiveViewOptOut
-      (\ s a -> s{_dssActiveViewOptOut = a})
-
--- | Directory site Ad Manager settings.
-dssDfpSettings :: Lens' DirectorySiteSettings (Maybe DfpSettings)
-dssDfpSettings
-  = lens _dssDfpSettings
-      (\ s a -> s{_dssDfpSettings = a})
-
-instance FromJSON DirectorySiteSettings where
-        parseJSON
-          = withObject "DirectorySiteSettings"
-              (\ o ->
-                 DirectorySiteSettings' <$>
-                   (o .:? "interstitialPlacementAccepted") <*>
-                     (o .:? "instreamVideoPlacementAccepted")
-                     <*> (o .:? "activeViewOptOut")
-                     <*> (o .:? "dfpSettings"))
-
-instance ToJSON DirectorySiteSettings where
-        toJSON DirectorySiteSettings'{..}
-          = object
-              (catMaybes
-                 [("interstitialPlacementAccepted" .=) <$>
-                    _dssInterstitialPlacementAccepted,
-                  ("instreamVideoPlacementAccepted" .=) <$>
-                    _dssInstreamVideoPlacementAccepted,
-                  ("activeViewOptOut" .=) <$> _dssActiveViewOptOut,
-                  ("dfpSettings" .=) <$> _dssDfpSettings])
-
--- | Remarketing List Population Rule.
---
--- /See:/ 'listPopulationRule' smart constructor.
-data ListPopulationRule =
-  ListPopulationRule'
-    { _lprFloodlightActivityName :: !(Maybe Text)
-    , _lprFloodlightActivityId   :: !(Maybe (Textual Int64))
-    , _lprListPopulationClauses  :: !(Maybe [ListPopulationClause])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListPopulationRule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lprFloodlightActivityName'
---
--- * 'lprFloodlightActivityId'
---
--- * 'lprListPopulationClauses'
-listPopulationRule
-    :: ListPopulationRule
-listPopulationRule =
-  ListPopulationRule'
-    { _lprFloodlightActivityName = Nothing
-    , _lprFloodlightActivityId = Nothing
-    , _lprListPopulationClauses = Nothing
-    }
-
-
--- | Name of floodlight activity associated with this rule. This is a
--- read-only, auto-generated field.
-lprFloodlightActivityName :: Lens' ListPopulationRule (Maybe Text)
-lprFloodlightActivityName
-  = lens _lprFloodlightActivityName
-      (\ s a -> s{_lprFloodlightActivityName = a})
-
--- | Floodlight activity ID associated with this rule. This field can be left
--- blank.
-lprFloodlightActivityId :: Lens' ListPopulationRule (Maybe Int64)
-lprFloodlightActivityId
-  = lens _lprFloodlightActivityId
-      (\ s a -> s{_lprFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | Clauses that make up this list population rule. Clauses are joined by
--- ANDs, and the clauses themselves are made up of list population terms
--- which are joined by ORs.
-lprListPopulationClauses :: Lens' ListPopulationRule [ListPopulationClause]
-lprListPopulationClauses
-  = lens _lprListPopulationClauses
-      (\ s a -> s{_lprListPopulationClauses = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ListPopulationRule where
-        parseJSON
-          = withObject "ListPopulationRule"
-              (\ o ->
-                 ListPopulationRule' <$>
-                   (o .:? "floodlightActivityName") <*>
-                     (o .:? "floodlightActivityId")
-                     <*> (o .:? "listPopulationClauses" .!= mempty))
-
-instance ToJSON ListPopulationRule where
-        toJSON ListPopulationRule'{..}
-          = object
-              (catMaybes
-                 [("floodlightActivityName" .=) <$>
-                    _lprFloodlightActivityName,
-                  ("floodlightActivityId" .=) <$>
-                    _lprFloodlightActivityId,
-                  ("listPopulationClauses" .=) <$>
-                    _lprListPopulationClauses])
-
--- | Size List Response
---
--- /See:/ 'sizesListResponse' smart constructor.
-data SizesListResponse =
-  SizesListResponse'
-    { _slrKind  :: !Text
-    , _slrSizes :: !(Maybe [Size])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SizesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'slrKind'
---
--- * 'slrSizes'
-sizesListResponse
-    :: SizesListResponse
-sizesListResponse =
-  SizesListResponse'
-    {_slrKind = "dfareporting#sizesListResponse", _slrSizes = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#sizesListResponse\".
-slrKind :: Lens' SizesListResponse Text
-slrKind = lens _slrKind (\ s a -> s{_slrKind = a})
-
--- | Size collection.
-slrSizes :: Lens' SizesListResponse [Size]
-slrSizes
-  = lens _slrSizes (\ s a -> s{_slrSizes = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON SizesListResponse where
-        parseJSON
-          = withObject "SizesListResponse"
-              (\ o ->
-                 SizesListResponse' <$>
-                   (o .:? "kind" .!= "dfareporting#sizesListResponse")
-                     <*> (o .:? "sizes" .!= mempty))
-
-instance ToJSON SizesListResponse where
-        toJSON SizesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _slrKind),
-                  ("sizes" .=) <$> _slrSizes])
-
--- | Creative Rotation.
---
--- /See:/ 'creativeRotation' smart constructor.
-data CreativeRotation =
-  CreativeRotation'
-    { _crWeightCalculationStrategy           :: !(Maybe CreativeRotationWeightCalculationStrategy)
-    , _crCreativeAssignments                 :: !(Maybe [CreativeAssignment])
-    , _crCreativeOptimizationConfigurationId :: !(Maybe (Textual Int64))
-    , _crType                                :: !(Maybe CreativeRotationType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeRotation' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'crWeightCalculationStrategy'
---
--- * 'crCreativeAssignments'
---
--- * 'crCreativeOptimizationConfigurationId'
---
--- * 'crType'
-creativeRotation
-    :: CreativeRotation
-creativeRotation =
-  CreativeRotation'
-    { _crWeightCalculationStrategy = Nothing
-    , _crCreativeAssignments = Nothing
-    , _crCreativeOptimizationConfigurationId = Nothing
-    , _crType = Nothing
-    }
-
-
--- | Strategy for calculating weights. Used with
--- CREATIVE_ROTATION_TYPE_RANDOM.
-crWeightCalculationStrategy :: Lens' CreativeRotation (Maybe CreativeRotationWeightCalculationStrategy)
-crWeightCalculationStrategy
-  = lens _crWeightCalculationStrategy
-      (\ s a -> s{_crWeightCalculationStrategy = a})
-
--- | Creative assignments in this creative rotation.
-crCreativeAssignments :: Lens' CreativeRotation [CreativeAssignment]
-crCreativeAssignments
-  = lens _crCreativeAssignments
-      (\ s a -> s{_crCreativeAssignments = a})
-      . _Default
-      . _Coerce
-
--- | Creative optimization configuration that is used by this ad. It should
--- refer to one of the existing optimization configurations in the ad\'s
--- campaign. If it is unset or set to 0, then the campaign\'s default
--- optimization configuration will be used for this ad.
-crCreativeOptimizationConfigurationId :: Lens' CreativeRotation (Maybe Int64)
-crCreativeOptimizationConfigurationId
-  = lens _crCreativeOptimizationConfigurationId
-      (\ s a ->
-         s{_crCreativeOptimizationConfigurationId = a})
-      . mapping _Coerce
-
--- | Type of creative rotation. Can be used to specify whether to use
--- sequential or random rotation.
-crType :: Lens' CreativeRotation (Maybe CreativeRotationType)
-crType = lens _crType (\ s a -> s{_crType = a})
-
-instance FromJSON CreativeRotation where
-        parseJSON
-          = withObject "CreativeRotation"
-              (\ o ->
-                 CreativeRotation' <$>
-                   (o .:? "weightCalculationStrategy") <*>
-                     (o .:? "creativeAssignments" .!= mempty)
-                     <*> (o .:? "creativeOptimizationConfigurationId")
-                     <*> (o .:? "type"))
-
-instance ToJSON CreativeRotation where
-        toJSON CreativeRotation'{..}
-          = object
-              (catMaybes
-                 [("weightCalculationStrategy" .=) <$>
-                    _crWeightCalculationStrategy,
-                  ("creativeAssignments" .=) <$>
-                    _crCreativeAssignments,
-                  ("creativeOptimizationConfigurationId" .=) <$>
-                    _crCreativeOptimizationConfigurationId,
-                  ("type" .=) <$> _crType])
-
--- | Technology Targeting.
---
--- /See:/ 'technologyTargeting' smart constructor.
-data TechnologyTargeting =
-  TechnologyTargeting'
-    { _ttMobileCarriers          :: !(Maybe [MobileCarrier])
-    , _ttOperatingSystemVersions :: !(Maybe [OperatingSystemVersion])
-    , _ttPlatformTypes           :: !(Maybe [PlatformType])
-    , _ttBrowsers                :: !(Maybe [Browser])
-    , _ttConnectionTypes         :: !(Maybe [ConnectionType])
-    , _ttOperatingSystems        :: !(Maybe [OperatingSystem])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TechnologyTargeting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttMobileCarriers'
---
--- * 'ttOperatingSystemVersions'
---
--- * 'ttPlatformTypes'
---
--- * 'ttBrowsers'
---
--- * 'ttConnectionTypes'
---
--- * 'ttOperatingSystems'
-technologyTargeting
-    :: TechnologyTargeting
-technologyTargeting =
-  TechnologyTargeting'
-    { _ttMobileCarriers = Nothing
-    , _ttOperatingSystemVersions = Nothing
-    , _ttPlatformTypes = Nothing
-    , _ttBrowsers = Nothing
-    , _ttConnectionTypes = Nothing
-    , _ttOperatingSystems = Nothing
-    }
-
-
--- | Mobile carriers that this ad targets. For each mobile carrier only id is
--- required, and the other fields are populated automatically when the ad
--- is inserted or updated. If targeting a mobile carrier, do not set
--- targeting for any zip codes.
-ttMobileCarriers :: Lens' TechnologyTargeting [MobileCarrier]
-ttMobileCarriers
-  = lens _ttMobileCarriers
-      (\ s a -> s{_ttMobileCarriers = a})
-      . _Default
-      . _Coerce
-
--- | Operating system versions that this ad targets. To target all versions,
--- use operatingSystems. For each operating system version, only id is
--- required. The other fields are populated automatically when the ad is
--- inserted or updated. If targeting an operating system version, do not
--- set targeting for the corresponding operating system in
--- operatingSystems.
-ttOperatingSystemVersions :: Lens' TechnologyTargeting [OperatingSystemVersion]
-ttOperatingSystemVersions
-  = lens _ttOperatingSystemVersions
-      (\ s a -> s{_ttOperatingSystemVersions = a})
-      . _Default
-      . _Coerce
-
--- | Platform types that this ad targets. For example, desktop, mobile, or
--- tablet. For each platform type, only id is required, and the other
--- fields are populated automatically when the ad is inserted or updated.
-ttPlatformTypes :: Lens' TechnologyTargeting [PlatformType]
-ttPlatformTypes
-  = lens _ttPlatformTypes
-      (\ s a -> s{_ttPlatformTypes = a})
-      . _Default
-      . _Coerce
-
--- | Browsers that this ad targets. For each browser either set
--- browserVersionId or dartId along with the version numbers. If both are
--- specified, only browserVersionId will be used. The other fields are
--- populated automatically when the ad is inserted or updated.
-ttBrowsers :: Lens' TechnologyTargeting [Browser]
-ttBrowsers
-  = lens _ttBrowsers (\ s a -> s{_ttBrowsers = a}) .
-      _Default
-      . _Coerce
-
--- | Connection types that this ad targets. For each connection type only id
--- is required. The other fields are populated automatically when the ad is
--- inserted or updated.
-ttConnectionTypes :: Lens' TechnologyTargeting [ConnectionType]
-ttConnectionTypes
-  = lens _ttConnectionTypes
-      (\ s a -> s{_ttConnectionTypes = a})
-      . _Default
-      . _Coerce
-
--- | Operating systems that this ad targets. To target specific versions, use
--- operatingSystemVersions. For each operating system only dartId is
--- required. The other fields are populated automatically when the ad is
--- inserted or updated. If targeting an operating system, do not set
--- targeting for operating system versions for the same operating system.
-ttOperatingSystems :: Lens' TechnologyTargeting [OperatingSystem]
-ttOperatingSystems
-  = lens _ttOperatingSystems
-      (\ s a -> s{_ttOperatingSystems = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON TechnologyTargeting where
-        parseJSON
-          = withObject "TechnologyTargeting"
-              (\ o ->
-                 TechnologyTargeting' <$>
-                   (o .:? "mobileCarriers" .!= mempty) <*>
-                     (o .:? "operatingSystemVersions" .!= mempty)
-                     <*> (o .:? "platformTypes" .!= mempty)
-                     <*> (o .:? "browsers" .!= mempty)
-                     <*> (o .:? "connectionTypes" .!= mempty)
-                     <*> (o .:? "operatingSystems" .!= mempty))
-
-instance ToJSON TechnologyTargeting where
-        toJSON TechnologyTargeting'{..}
-          = object
-              (catMaybes
-                 [("mobileCarriers" .=) <$> _ttMobileCarriers,
-                  ("operatingSystemVersions" .=) <$>
-                    _ttOperatingSystemVersions,
-                  ("platformTypes" .=) <$> _ttPlatformTypes,
-                  ("browsers" .=) <$> _ttBrowsers,
-                  ("connectionTypes" .=) <$> _ttConnectionTypes,
-                  ("operatingSystems" .=) <$> _ttOperatingSystems])
-
--- | Represents a buy from the Planning inventory store.
---
--- /See:/ 'inventoryItem' smart constructor.
-data InventoryItem =
-  InventoryItem'
-    { _iiPlacementStrategyId       :: !(Maybe (Textual Int64))
-    , _iiEstimatedClickThroughRate :: !(Maybe (Textual Int64))
-    , _iiPricing                   :: !(Maybe Pricing)
-    , _iiKind                      :: !Text
-    , _iiAdvertiserId              :: !(Maybe (Textual Int64))
-    , _iiRfpId                     :: !(Maybe (Textual Int64))
-    , _iiContentCategoryId         :: !(Maybe (Textual Int64))
-    , _iiInPlan                    :: !(Maybe Bool)
-    , _iiAccountId                 :: !(Maybe (Textual Int64))
-    , _iiName                      :: !(Maybe Text)
-    , _iiAdSlots                   :: !(Maybe [AdSlot])
-    , _iiNegotiationChannelId      :: !(Maybe (Textual Int64))
-    , _iiLastModifiedInfo          :: !(Maybe LastModifiedInfo)
-    , _iiId                        :: !(Maybe (Textual Int64))
-    , _iiEstimatedConversionRate   :: !(Maybe (Textual Int64))
-    , _iiProjectId                 :: !(Maybe (Textual Int64))
-    , _iiSubAccountId              :: !(Maybe (Textual Int64))
-    , _iiType                      :: !(Maybe InventoryItemType)
-    , _iiOrderId                   :: !(Maybe (Textual Int64))
-    , _iiSiteId                    :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'InventoryItem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'iiPlacementStrategyId'
---
--- * 'iiEstimatedClickThroughRate'
---
--- * 'iiPricing'
---
--- * 'iiKind'
---
--- * 'iiAdvertiserId'
---
--- * 'iiRfpId'
---
--- * 'iiContentCategoryId'
---
--- * 'iiInPlan'
---
--- * 'iiAccountId'
---
--- * 'iiName'
---
--- * 'iiAdSlots'
---
--- * 'iiNegotiationChannelId'
---
--- * 'iiLastModifiedInfo'
---
--- * 'iiId'
---
--- * 'iiEstimatedConversionRate'
---
--- * 'iiProjectId'
---
--- * 'iiSubAccountId'
---
--- * 'iiType'
---
--- * 'iiOrderId'
---
--- * 'iiSiteId'
-inventoryItem
-    :: InventoryItem
-inventoryItem =
-  InventoryItem'
-    { _iiPlacementStrategyId = Nothing
-    , _iiEstimatedClickThroughRate = Nothing
-    , _iiPricing = Nothing
-    , _iiKind = "dfareporting#inventoryItem"
-    , _iiAdvertiserId = Nothing
-    , _iiRfpId = Nothing
-    , _iiContentCategoryId = Nothing
-    , _iiInPlan = Nothing
-    , _iiAccountId = Nothing
-    , _iiName = Nothing
-    , _iiAdSlots = Nothing
-    , _iiNegotiationChannelId = Nothing
-    , _iiLastModifiedInfo = Nothing
-    , _iiId = Nothing
-    , _iiEstimatedConversionRate = Nothing
-    , _iiProjectId = Nothing
-    , _iiSubAccountId = Nothing
-    , _iiType = Nothing
-    , _iiOrderId = Nothing
-    , _iiSiteId = Nothing
-    }
-
-
--- | Placement strategy ID of this inventory item.
-iiPlacementStrategyId :: Lens' InventoryItem (Maybe Int64)
-iiPlacementStrategyId
-  = lens _iiPlacementStrategyId
-      (\ s a -> s{_iiPlacementStrategyId = a})
-      . mapping _Coerce
-
--- | Estimated click-through rate of this inventory item.
-iiEstimatedClickThroughRate :: Lens' InventoryItem (Maybe Int64)
-iiEstimatedClickThroughRate
-  = lens _iiEstimatedClickThroughRate
-      (\ s a -> s{_iiEstimatedClickThroughRate = a})
-      . mapping _Coerce
-
--- | Pricing of this inventory item.
-iiPricing :: Lens' InventoryItem (Maybe Pricing)
-iiPricing
-  = lens _iiPricing (\ s a -> s{_iiPricing = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#inventoryItem\".
-iiKind :: Lens' InventoryItem Text
-iiKind = lens _iiKind (\ s a -> s{_iiKind = a})
-
--- | Advertiser ID of this inventory item.
-iiAdvertiserId :: Lens' InventoryItem (Maybe Int64)
-iiAdvertiserId
-  = lens _iiAdvertiserId
-      (\ s a -> s{_iiAdvertiserId = a})
-      . mapping _Coerce
-
--- | RFP ID of this inventory item.
-iiRfpId :: Lens' InventoryItem (Maybe Int64)
-iiRfpId
-  = lens _iiRfpId (\ s a -> s{_iiRfpId = a}) .
-      mapping _Coerce
-
--- | Content category ID of this inventory item.
-iiContentCategoryId :: Lens' InventoryItem (Maybe Int64)
-iiContentCategoryId
-  = lens _iiContentCategoryId
-      (\ s a -> s{_iiContentCategoryId = a})
-      . mapping _Coerce
-
--- | Whether this inventory item is in plan.
-iiInPlan :: Lens' InventoryItem (Maybe Bool)
-iiInPlan = lens _iiInPlan (\ s a -> s{_iiInPlan = a})
-
--- | Account ID of this inventory item.
-iiAccountId :: Lens' InventoryItem (Maybe Int64)
-iiAccountId
-  = lens _iiAccountId (\ s a -> s{_iiAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this inventory item. For standalone inventory items, this is the
--- same name as that of its only ad slot. For group inventory items, this
--- can differ from the name of any of its ad slots.
-iiName :: Lens' InventoryItem (Maybe Text)
-iiName = lens _iiName (\ s a -> s{_iiName = a})
-
--- | Ad slots of this inventory item. If this inventory item represents a
--- standalone placement, there will be exactly one ad slot. If this
--- inventory item represents a placement group, there will be more than one
--- ad slot, each representing one child placement in that placement group.
-iiAdSlots :: Lens' InventoryItem [AdSlot]
-iiAdSlots
-  = lens _iiAdSlots (\ s a -> s{_iiAdSlots = a}) .
-      _Default
-      . _Coerce
-
--- | Negotiation channel ID of this inventory item.
-iiNegotiationChannelId :: Lens' InventoryItem (Maybe Int64)
-iiNegotiationChannelId
-  = lens _iiNegotiationChannelId
-      (\ s a -> s{_iiNegotiationChannelId = a})
-      . mapping _Coerce
-
--- | Information about the most recent modification of this inventory item.
-iiLastModifiedInfo :: Lens' InventoryItem (Maybe LastModifiedInfo)
-iiLastModifiedInfo
-  = lens _iiLastModifiedInfo
-      (\ s a -> s{_iiLastModifiedInfo = a})
-
--- | ID of this inventory item.
-iiId :: Lens' InventoryItem (Maybe Int64)
-iiId
-  = lens _iiId (\ s a -> s{_iiId = a}) .
-      mapping _Coerce
-
--- | Estimated conversion rate of this inventory item.
-iiEstimatedConversionRate :: Lens' InventoryItem (Maybe Int64)
-iiEstimatedConversionRate
-  = lens _iiEstimatedConversionRate
-      (\ s a -> s{_iiEstimatedConversionRate = a})
-      . mapping _Coerce
-
--- | Project ID of this inventory item.
-iiProjectId :: Lens' InventoryItem (Maybe Int64)
-iiProjectId
-  = lens _iiProjectId (\ s a -> s{_iiProjectId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this inventory item.
-iiSubAccountId :: Lens' InventoryItem (Maybe Int64)
-iiSubAccountId
-  = lens _iiSubAccountId
-      (\ s a -> s{_iiSubAccountId = a})
-      . mapping _Coerce
-
--- | Type of inventory item.
-iiType :: Lens' InventoryItem (Maybe InventoryItemType)
-iiType = lens _iiType (\ s a -> s{_iiType = a})
-
--- | Order ID of this inventory item.
-iiOrderId :: Lens' InventoryItem (Maybe Int64)
-iiOrderId
-  = lens _iiOrderId (\ s a -> s{_iiOrderId = a}) .
-      mapping _Coerce
-
--- | ID of the site this inventory item is associated with.
-iiSiteId :: Lens' InventoryItem (Maybe Int64)
-iiSiteId
-  = lens _iiSiteId (\ s a -> s{_iiSiteId = a}) .
-      mapping _Coerce
-
-instance FromJSON InventoryItem where
-        parseJSON
-          = withObject "InventoryItem"
-              (\ o ->
-                 InventoryItem' <$>
-                   (o .:? "placementStrategyId") <*>
-                     (o .:? "estimatedClickThroughRate")
-                     <*> (o .:? "pricing")
-                     <*> (o .:? "kind" .!= "dfareporting#inventoryItem")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "rfpId")
-                     <*> (o .:? "contentCategoryId")
-                     <*> (o .:? "inPlan")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "adSlots" .!= mempty)
-                     <*> (o .:? "negotiationChannelId")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "estimatedConversionRate")
-                     <*> (o .:? "projectId")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "orderId")
-                     <*> (o .:? "siteId"))
-
-instance ToJSON InventoryItem where
-        toJSON InventoryItem'{..}
-          = object
-              (catMaybes
-                 [("placementStrategyId" .=) <$>
-                    _iiPlacementStrategyId,
-                  ("estimatedClickThroughRate" .=) <$>
-                    _iiEstimatedClickThroughRate,
-                  ("pricing" .=) <$> _iiPricing,
-                  Just ("kind" .= _iiKind),
-                  ("advertiserId" .=) <$> _iiAdvertiserId,
-                  ("rfpId" .=) <$> _iiRfpId,
-                  ("contentCategoryId" .=) <$> _iiContentCategoryId,
-                  ("inPlan" .=) <$> _iiInPlan,
-                  ("accountId" .=) <$> _iiAccountId,
-                  ("name" .=) <$> _iiName,
-                  ("adSlots" .=) <$> _iiAdSlots,
-                  ("negotiationChannelId" .=) <$>
-                    _iiNegotiationChannelId,
-                  ("lastModifiedInfo" .=) <$> _iiLastModifiedInfo,
-                  ("id" .=) <$> _iiId,
-                  ("estimatedConversionRate" .=) <$>
-                    _iiEstimatedConversionRate,
-                  ("projectId" .=) <$> _iiProjectId,
-                  ("subaccountId" .=) <$> _iiSubAccountId,
-                  ("type" .=) <$> _iiType,
-                  ("orderId" .=) <$> _iiOrderId,
-                  ("siteId" .=) <$> _iiSiteId])
-
--- | Project List Response
---
--- /See:/ 'projectsListResponse' smart constructor.
-data ProjectsListResponse =
-  ProjectsListResponse'
-    { _plrNextPageToken :: !(Maybe Text)
-    , _plrKind          :: !Text
-    , _plrProjects      :: !(Maybe [Project])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'plrNextPageToken'
---
--- * 'plrKind'
---
--- * 'plrProjects'
-projectsListResponse
-    :: ProjectsListResponse
-projectsListResponse =
-  ProjectsListResponse'
-    { _plrNextPageToken = Nothing
-    , _plrKind = "dfareporting#projectsListResponse"
-    , _plrProjects = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-plrNextPageToken :: Lens' ProjectsListResponse (Maybe Text)
-plrNextPageToken
-  = lens _plrNextPageToken
-      (\ s a -> s{_plrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#projectsListResponse\".
-plrKind :: Lens' ProjectsListResponse Text
-plrKind = lens _plrKind (\ s a -> s{_plrKind = a})
-
--- | Project collection.
-plrProjects :: Lens' ProjectsListResponse [Project]
-plrProjects
-  = lens _plrProjects (\ s a -> s{_plrProjects = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ProjectsListResponse where
-        parseJSON
-          = withObject "ProjectsListResponse"
-              (\ o ->
-                 ProjectsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#projectsListResponse")
-                     <*> (o .:? "projects" .!= mempty))
-
-instance ToJSON ProjectsListResponse where
-        toJSON ProjectsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _plrNextPageToken,
-                  Just ("kind" .= _plrKind),
-                  ("projects" .=) <$> _plrProjects])
-
--- | Ad List Response
---
--- /See:/ 'adsListResponse' smart constructor.
-data AdsListResponse =
-  AdsListResponse'
-    { _alrNextPageToken :: !(Maybe Text)
-    , _alrKind          :: !Text
-    , _alrAds           :: !(Maybe [Ad])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alrNextPageToken'
---
--- * 'alrKind'
---
--- * 'alrAds'
-adsListResponse
-    :: AdsListResponse
-adsListResponse =
-  AdsListResponse'
-    { _alrNextPageToken = Nothing
-    , _alrKind = "dfareporting#adsListResponse"
-    , _alrAds = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-alrNextPageToken :: Lens' AdsListResponse (Maybe Text)
-alrNextPageToken
-  = lens _alrNextPageToken
-      (\ s a -> s{_alrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#adsListResponse\".
-alrKind :: Lens' AdsListResponse Text
-alrKind = lens _alrKind (\ s a -> s{_alrKind = a})
-
--- | Ad collection.
-alrAds :: Lens' AdsListResponse [Ad]
-alrAds
-  = lens _alrAds (\ s a -> s{_alrAds = a}) . _Default .
-      _Coerce
-
-instance FromJSON AdsListResponse where
-        parseJSON
-          = withObject "AdsListResponse"
-              (\ o ->
-                 AdsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#adsListResponse")
-                     <*> (o .:? "ads" .!= mempty))
-
-instance ToJSON AdsListResponse where
-        toJSON AdsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _alrNextPageToken,
-                  Just ("kind" .= _alrKind), ("ads" .=) <$> _alrAds])
-
--- | Video Settings
---
--- /See:/ 'siteVideoSettings' smart constructor.
-data SiteVideoSettings =
-  SiteVideoSettings'
-    { _svsKind              :: !Text
-    , _svsCompanionSettings :: !(Maybe SiteCompanionSetting)
-    , _svsTranscodeSettings :: !(Maybe SiteTranscodeSetting)
-    , _svsOrientation       :: !(Maybe SiteVideoSettingsOrientation)
-    , _svsSkippableSettings :: !(Maybe SiteSkippableSetting)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteVideoSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'svsKind'
---
--- * 'svsCompanionSettings'
---
--- * 'svsTranscodeSettings'
---
--- * 'svsOrientation'
---
--- * 'svsSkippableSettings'
-siteVideoSettings
-    :: SiteVideoSettings
-siteVideoSettings =
-  SiteVideoSettings'
-    { _svsKind = "dfareporting#siteVideoSettings"
-    , _svsCompanionSettings = Nothing
-    , _svsTranscodeSettings = Nothing
-    , _svsOrientation = Nothing
-    , _svsSkippableSettings = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#siteVideoSettings\".
-svsKind :: Lens' SiteVideoSettings Text
-svsKind = lens _svsKind (\ s a -> s{_svsKind = a})
-
--- | Settings for the companion creatives of video creatives served to this
--- site.
-svsCompanionSettings :: Lens' SiteVideoSettings (Maybe SiteCompanionSetting)
-svsCompanionSettings
-  = lens _svsCompanionSettings
-      (\ s a -> s{_svsCompanionSettings = a})
-
--- | Settings for the transcodes of video creatives served to this site. This
--- will act as default for new placements created under this site.
-svsTranscodeSettings :: Lens' SiteVideoSettings (Maybe SiteTranscodeSetting)
-svsTranscodeSettings
-  = lens _svsTranscodeSettings
-      (\ s a -> s{_svsTranscodeSettings = a})
-
--- | Orientation of a site template used for video. This will act as default
--- for new placements created under this site.
-svsOrientation :: Lens' SiteVideoSettings (Maybe SiteVideoSettingsOrientation)
-svsOrientation
-  = lens _svsOrientation
-      (\ s a -> s{_svsOrientation = a})
-
--- | Settings for the skippability of video creatives served to this site.
--- This will act as default for new placements created under this site.
-svsSkippableSettings :: Lens' SiteVideoSettings (Maybe SiteSkippableSetting)
-svsSkippableSettings
-  = lens _svsSkippableSettings
-      (\ s a -> s{_svsSkippableSettings = a})
-
-instance FromJSON SiteVideoSettings where
-        parseJSON
-          = withObject "SiteVideoSettings"
-              (\ o ->
-                 SiteVideoSettings' <$>
-                   (o .:? "kind" .!= "dfareporting#siteVideoSettings")
-                     <*> (o .:? "companionSettings")
-                     <*> (o .:? "transcodeSettings")
-                     <*> (o .:? "orientation")
-                     <*> (o .:? "skippableSettings"))
-
-instance ToJSON SiteVideoSettings where
-        toJSON SiteVideoSettings'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _svsKind),
-                  ("companionSettings" .=) <$> _svsCompanionSettings,
-                  ("transcodeSettings" .=) <$> _svsTranscodeSettings,
-                  ("orientation" .=) <$> _svsOrientation,
-                  ("skippableSettings" .=) <$> _svsSkippableSettings])
-
--- | Remarketing List Population Rule Term.
---
--- /See:/ 'listPopulationTerm' smart constructor.
-data ListPopulationTerm =
-  ListPopulationTerm'
-    { _lptOperator             :: !(Maybe ListPopulationTermOperator)
-    , _lptValue                :: !(Maybe Text)
-    , _lptVariableFriendlyName :: !(Maybe Text)
-    , _lptNegation             :: !(Maybe Bool)
-    , _lptVariableName         :: !(Maybe Text)
-    , _lptRemarketingListId    :: !(Maybe (Textual Int64))
-    , _lptType                 :: !(Maybe ListPopulationTermType)
-    , _lptContains             :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListPopulationTerm' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lptOperator'
---
--- * 'lptValue'
---
--- * 'lptVariableFriendlyName'
---
--- * 'lptNegation'
---
--- * 'lptVariableName'
---
--- * 'lptRemarketingListId'
---
--- * 'lptType'
---
--- * 'lptContains'
-listPopulationTerm
-    :: ListPopulationTerm
-listPopulationTerm =
-  ListPopulationTerm'
-    { _lptOperator = Nothing
-    , _lptValue = Nothing
-    , _lptVariableFriendlyName = Nothing
-    , _lptNegation = Nothing
-    , _lptVariableName = Nothing
-    , _lptRemarketingListId = Nothing
-    , _lptType = Nothing
-    , _lptContains = Nothing
-    }
-
-
--- | Comparison operator of this term. This field is only relevant when type
--- is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
-lptOperator :: Lens' ListPopulationTerm (Maybe ListPopulationTermOperator)
-lptOperator
-  = lens _lptOperator (\ s a -> s{_lptOperator = a})
-
--- | Literal to compare the variable to. This field is only relevant when
--- type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
-lptValue :: Lens' ListPopulationTerm (Maybe Text)
-lptValue = lens _lptValue (\ s a -> s{_lptValue = a})
-
--- | Friendly name of this term\'s variable. This is a read-only,
--- auto-generated field. This field is only relevant when type is left
--- unset or set to CUSTOM_VARIABLE_TERM.
-lptVariableFriendlyName :: Lens' ListPopulationTerm (Maybe Text)
-lptVariableFriendlyName
-  = lens _lptVariableFriendlyName
-      (\ s a -> s{_lptVariableFriendlyName = a})
-
--- | Whether to negate the comparison result of this term during rule
--- evaluation. This field is only relevant when type is left unset or set
--- to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
-lptNegation :: Lens' ListPopulationTerm (Maybe Bool)
-lptNegation
-  = lens _lptNegation (\ s a -> s{_lptNegation = a})
-
--- | Name of the variable (U1, U2, etc.) being compared in this term. This
--- field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or
--- REFERRER_TERM.
-lptVariableName :: Lens' ListPopulationTerm (Maybe Text)
-lptVariableName
-  = lens _lptVariableName
-      (\ s a -> s{_lptVariableName = a})
-
--- | ID of the list in question. This field is only relevant when type is set
--- to LIST_MEMBERSHIP_TERM.
-lptRemarketingListId :: Lens' ListPopulationTerm (Maybe Int64)
-lptRemarketingListId
-  = lens _lptRemarketingListId
-      (\ s a -> s{_lptRemarketingListId = a})
-      . mapping _Coerce
-
--- | List population term type determines the applicable fields in this
--- object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName,
--- variableFriendlyName, operator, value, and negation are applicable. If
--- set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are
--- applicable. If set to REFERRER_TERM then operator, value, and negation
--- are applicable.
-lptType :: Lens' ListPopulationTerm (Maybe ListPopulationTermType)
-lptType = lens _lptType (\ s a -> s{_lptType = a})
-
--- | Will be true if the term should check if the user is in the list and
--- false if the term should check if the user is not in the list. This
--- field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False
--- by default.
-lptContains :: Lens' ListPopulationTerm (Maybe Bool)
-lptContains
-  = lens _lptContains (\ s a -> s{_lptContains = a})
-
-instance FromJSON ListPopulationTerm where
-        parseJSON
-          = withObject "ListPopulationTerm"
-              (\ o ->
-                 ListPopulationTerm' <$>
-                   (o .:? "operator") <*> (o .:? "value") <*>
-                     (o .:? "variableFriendlyName")
-                     <*> (o .:? "negation")
-                     <*> (o .:? "variableName")
-                     <*> (o .:? "remarketingListId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "contains"))
-
-instance ToJSON ListPopulationTerm where
-        toJSON ListPopulationTerm'{..}
-          = object
-              (catMaybes
-                 [("operator" .=) <$> _lptOperator,
-                  ("value" .=) <$> _lptValue,
-                  ("variableFriendlyName" .=) <$>
-                    _lptVariableFriendlyName,
-                  ("negation" .=) <$> _lptNegation,
-                  ("variableName" .=) <$> _lptVariableName,
-                  ("remarketingListId" .=) <$> _lptRemarketingListId,
-                  ("type" .=) <$> _lptType,
-                  ("contains" .=) <$> _lptContains])
-
--- | Dynamic and Image Tag Settings.
---
--- /See:/ 'tagSettings' smart constructor.
-data TagSettings =
-  TagSettings'
-    { _tsDynamicTagEnabled :: !(Maybe Bool)
-    , _tsImageTagEnabled   :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TagSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tsDynamicTagEnabled'
---
--- * 'tsImageTagEnabled'
-tagSettings
-    :: TagSettings
-tagSettings =
-  TagSettings' {_tsDynamicTagEnabled = Nothing, _tsImageTagEnabled = Nothing}
-
-
--- | Whether dynamic floodlight tags are enabled.
-tsDynamicTagEnabled :: Lens' TagSettings (Maybe Bool)
-tsDynamicTagEnabled
-  = lens _tsDynamicTagEnabled
-      (\ s a -> s{_tsDynamicTagEnabled = a})
-
--- | Whether image tags are enabled.
-tsImageTagEnabled :: Lens' TagSettings (Maybe Bool)
-tsImageTagEnabled
-  = lens _tsImageTagEnabled
-      (\ s a -> s{_tsImageTagEnabled = a})
-
-instance FromJSON TagSettings where
-        parseJSON
-          = withObject "TagSettings"
-              (\ o ->
-                 TagSettings' <$>
-                   (o .:? "dynamicTagEnabled") <*>
-                     (o .:? "imageTagEnabled"))
-
-instance ToJSON TagSettings where
-        toJSON TagSettings'{..}
-          = object
-              (catMaybes
-                 [("dynamicTagEnabled" .=) <$> _tsDynamicTagEnabled,
-                  ("imageTagEnabled" .=) <$> _tsImageTagEnabled])
-
--- | Subaccount List Response
---
--- /See:/ 'subAccountsListResponse' smart constructor.
-data SubAccountsListResponse =
-  SubAccountsListResponse'
-    { _salrNextPageToken :: !(Maybe Text)
-    , _salrKind          :: !Text
-    , _salrSubAccounts   :: !(Maybe [SubAccount])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'salrNextPageToken'
---
--- * 'salrKind'
---
--- * 'salrSubAccounts'
-subAccountsListResponse
-    :: SubAccountsListResponse
-subAccountsListResponse =
-  SubAccountsListResponse'
-    { _salrNextPageToken = Nothing
-    , _salrKind = "dfareporting#subaccountsListResponse"
-    , _salrSubAccounts = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-salrNextPageToken :: Lens' SubAccountsListResponse (Maybe Text)
-salrNextPageToken
-  = lens _salrNextPageToken
-      (\ s a -> s{_salrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#subaccountsListResponse\".
-salrKind :: Lens' SubAccountsListResponse Text
-salrKind = lens _salrKind (\ s a -> s{_salrKind = a})
-
--- | Subaccount collection.
-salrSubAccounts :: Lens' SubAccountsListResponse [SubAccount]
-salrSubAccounts
-  = lens _salrSubAccounts
-      (\ s a -> s{_salrSubAccounts = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON SubAccountsListResponse where
-        parseJSON
-          = withObject "SubAccountsListResponse"
-              (\ o ->
-                 SubAccountsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#subaccountsListResponse")
-                     <*> (o .:? "subaccounts" .!= mempty))
-
-instance ToJSON SubAccountsListResponse where
-        toJSON SubAccountsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _salrNextPageToken,
-                  Just ("kind" .= _salrKind),
-                  ("subaccounts" .=) <$> _salrSubAccounts])
-
--- | Region List Response
---
--- /See:/ 'regionsListResponse' smart constructor.
-data RegionsListResponse =
-  RegionsListResponse'
-    { _rlrKind    :: !Text
-    , _rlrRegions :: !(Maybe [Region])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RegionsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlrKind'
---
--- * 'rlrRegions'
-regionsListResponse
-    :: RegionsListResponse
-regionsListResponse =
-  RegionsListResponse'
-    {_rlrKind = "dfareporting#regionsListResponse", _rlrRegions = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#regionsListResponse\".
-rlrKind :: Lens' RegionsListResponse Text
-rlrKind = lens _rlrKind (\ s a -> s{_rlrKind = a})
-
--- | Region collection.
-rlrRegions :: Lens' RegionsListResponse [Region]
-rlrRegions
-  = lens _rlrRegions (\ s a -> s{_rlrRegions = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON RegionsListResponse where
-        parseJSON
-          = withObject "RegionsListResponse"
-              (\ o ->
-                 RegionsListResponse' <$>
-                   (o .:? "kind" .!= "dfareporting#regionsListResponse")
-                     <*> (o .:? "regions" .!= mempty))
-
-instance ToJSON RegionsListResponse where
-        toJSON RegionsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _rlrKind),
-                  ("regions" .=) <$> _rlrRegions])
-
--- | Dynamic Tag
---
--- /See:/ 'floodlightActivityDynamicTag' smart constructor.
-data FloodlightActivityDynamicTag =
-  FloodlightActivityDynamicTag'
-    { _fadtTag  :: !(Maybe Text)
-    , _fadtName :: !(Maybe Text)
-    , _fadtId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityDynamicTag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fadtTag'
---
--- * 'fadtName'
---
--- * 'fadtId'
-floodlightActivityDynamicTag
-    :: FloodlightActivityDynamicTag
-floodlightActivityDynamicTag =
-  FloodlightActivityDynamicTag'
-    {_fadtTag = Nothing, _fadtName = Nothing, _fadtId = Nothing}
-
-
--- | Tag code.
-fadtTag :: Lens' FloodlightActivityDynamicTag (Maybe Text)
-fadtTag = lens _fadtTag (\ s a -> s{_fadtTag = a})
-
--- | Name of this tag.
-fadtName :: Lens' FloodlightActivityDynamicTag (Maybe Text)
-fadtName = lens _fadtName (\ s a -> s{_fadtName = a})
-
--- | ID of this dynamic tag. This is a read-only, auto-generated field.
-fadtId :: Lens' FloodlightActivityDynamicTag (Maybe Int64)
-fadtId
-  = lens _fadtId (\ s a -> s{_fadtId = a}) .
-      mapping _Coerce
-
-instance FromJSON FloodlightActivityDynamicTag where
-        parseJSON
-          = withObject "FloodlightActivityDynamicTag"
-              (\ o ->
-                 FloodlightActivityDynamicTag' <$>
-                   (o .:? "tag") <*> (o .:? "name") <*> (o .:? "id"))
-
-instance ToJSON FloodlightActivityDynamicTag where
-        toJSON FloodlightActivityDynamicTag'{..}
-          = object
-              (catMaybes
-                 [("tag" .=) <$> _fadtTag, ("name" .=) <$> _fadtName,
-                  ("id" .=) <$> _fadtId])
-
--- | Contains information about supported video formats.
---
--- /See:/ 'videoFormat' smart constructor.
-data VideoFormat =
-  VideoFormat'
-    { _vfKind          :: !Text
-    , _vfFileType      :: !(Maybe VideoFormatFileType)
-    , _vfResolution    :: !(Maybe Size)
-    , _vfTargetBitRate :: !(Maybe (Textual Int32))
-    , _vfId            :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoFormat' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vfKind'
---
--- * 'vfFileType'
---
--- * 'vfResolution'
---
--- * 'vfTargetBitRate'
---
--- * 'vfId'
-videoFormat
-    :: VideoFormat
-videoFormat =
-  VideoFormat'
-    { _vfKind = "dfareporting#videoFormat"
-    , _vfFileType = Nothing
-    , _vfResolution = Nothing
-    , _vfTargetBitRate = Nothing
-    , _vfId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#videoFormat\".
-vfKind :: Lens' VideoFormat Text
-vfKind = lens _vfKind (\ s a -> s{_vfKind = a})
-
--- | File type of the video format.
-vfFileType :: Lens' VideoFormat (Maybe VideoFormatFileType)
-vfFileType
-  = lens _vfFileType (\ s a -> s{_vfFileType = a})
-
--- | The resolution of this video format.
-vfResolution :: Lens' VideoFormat (Maybe Size)
-vfResolution
-  = lens _vfResolution (\ s a -> s{_vfResolution = a})
-
--- | The target bit rate of this video format.
-vfTargetBitRate :: Lens' VideoFormat (Maybe Int32)
-vfTargetBitRate
-  = lens _vfTargetBitRate
-      (\ s a -> s{_vfTargetBitRate = a})
-      . mapping _Coerce
-
--- | ID of the video format.
-vfId :: Lens' VideoFormat (Maybe Int32)
-vfId
-  = lens _vfId (\ s a -> s{_vfId = a}) .
-      mapping _Coerce
-
-instance FromJSON VideoFormat where
-        parseJSON
-          = withObject "VideoFormat"
-              (\ o ->
-                 VideoFormat' <$>
-                   (o .:? "kind" .!= "dfareporting#videoFormat") <*>
-                     (o .:? "fileType")
-                     <*> (o .:? "resolution")
-                     <*> (o .:? "targetBitRate")
-                     <*> (o .:? "id"))
-
-instance ToJSON VideoFormat where
-        toJSON VideoFormat'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _vfKind),
-                  ("fileType" .=) <$> _vfFileType,
-                  ("resolution" .=) <$> _vfResolution,
-                  ("targetBitRate" .=) <$> _vfTargetBitRate,
-                  ("id" .=) <$> _vfId])
-
--- | DirectorySites contains properties of a website from the Site Directory.
--- Sites need to be added to an account via the Sites resource before they
--- can be assigned to a placement.
---
--- /See:/ 'directorySite' smart constructor.
-data DirectorySite =
-  DirectorySite'
-    { _dsSettings               :: !(Maybe DirectorySiteSettings)
-    , _dsInterstitialTagFormats :: !(Maybe [DirectorySiteInterstitialTagFormatsItem])
-    , _dsKind                   :: !Text
-    , _dsURL                    :: !(Maybe Text)
-    , _dsIdDimensionValue       :: !(Maybe DimensionValue)
-    , _dsInpageTagFormats       :: !(Maybe [DirectorySiteInpageTagFormatsItem])
-    , _dsActive                 :: !(Maybe Bool)
-    , _dsName                   :: !(Maybe Text)
-    , _dsId                     :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySite' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dsSettings'
---
--- * 'dsInterstitialTagFormats'
---
--- * 'dsKind'
---
--- * 'dsURL'
---
--- * 'dsIdDimensionValue'
---
--- * 'dsInpageTagFormats'
---
--- * 'dsActive'
---
--- * 'dsName'
---
--- * 'dsId'
-directorySite
-    :: DirectorySite
-directorySite =
-  DirectorySite'
-    { _dsSettings = Nothing
-    , _dsInterstitialTagFormats = Nothing
-    , _dsKind = "dfareporting#directorySite"
-    , _dsURL = Nothing
-    , _dsIdDimensionValue = Nothing
-    , _dsInpageTagFormats = Nothing
-    , _dsActive = Nothing
-    , _dsName = Nothing
-    , _dsId = Nothing
-    }
-
-
--- | Directory site settings.
-dsSettings :: Lens' DirectorySite (Maybe DirectorySiteSettings)
-dsSettings
-  = lens _dsSettings (\ s a -> s{_dsSettings = a})
-
--- | Tag types for interstitial placements. Acceptable values are: -
--- \"IFRAME_JAVASCRIPT_INTERSTITIAL\" - \"INTERNAL_REDIRECT_INTERSTITIAL\"
--- - \"JAVASCRIPT_INTERSTITIAL\"
-dsInterstitialTagFormats :: Lens' DirectorySite [DirectorySiteInterstitialTagFormatsItem]
-dsInterstitialTagFormats
-  = lens _dsInterstitialTagFormats
-      (\ s a -> s{_dsInterstitialTagFormats = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#directorySite\".
-dsKind :: Lens' DirectorySite Text
-dsKind = lens _dsKind (\ s a -> s{_dsKind = a})
-
--- | URL of this directory site.
-dsURL :: Lens' DirectorySite (Maybe Text)
-dsURL = lens _dsURL (\ s a -> s{_dsURL = a})
-
--- | Dimension value for the ID of this directory site. This is a read-only,
--- auto-generated field.
-dsIdDimensionValue :: Lens' DirectorySite (Maybe DimensionValue)
-dsIdDimensionValue
-  = lens _dsIdDimensionValue
-      (\ s a -> s{_dsIdDimensionValue = a})
-
--- | Tag types for regular placements. Acceptable values are: - \"STANDARD\"
--- - \"IFRAME_JAVASCRIPT_INPAGE\" - \"INTERNAL_REDIRECT_INPAGE\" -
--- \"JAVASCRIPT_INPAGE\"
-dsInpageTagFormats :: Lens' DirectorySite [DirectorySiteInpageTagFormatsItem]
-dsInpageTagFormats
-  = lens _dsInpageTagFormats
-      (\ s a -> s{_dsInpageTagFormats = a})
-      . _Default
-      . _Coerce
-
--- | Whether this directory site is active.
-dsActive :: Lens' DirectorySite (Maybe Bool)
-dsActive = lens _dsActive (\ s a -> s{_dsActive = a})
-
--- | Name of this directory site.
-dsName :: Lens' DirectorySite (Maybe Text)
-dsName = lens _dsName (\ s a -> s{_dsName = a})
-
--- | ID of this directory site. This is a read-only, auto-generated field.
-dsId :: Lens' DirectorySite (Maybe Int64)
-dsId
-  = lens _dsId (\ s a -> s{_dsId = a}) .
-      mapping _Coerce
-
-instance FromJSON DirectorySite where
-        parseJSON
-          = withObject "DirectorySite"
-              (\ o ->
-                 DirectorySite' <$>
-                   (o .:? "settings") <*>
-                     (o .:? "interstitialTagFormats" .!= mempty)
-                     <*> (o .:? "kind" .!= "dfareporting#directorySite")
-                     <*> (o .:? "url")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "inpageTagFormats" .!= mempty)
-                     <*> (o .:? "active")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON DirectorySite where
-        toJSON DirectorySite'{..}
-          = object
-              (catMaybes
-                 [("settings" .=) <$> _dsSettings,
-                  ("interstitialTagFormats" .=) <$>
-                    _dsInterstitialTagFormats,
-                  Just ("kind" .= _dsKind), ("url" .=) <$> _dsURL,
-                  ("idDimensionValue" .=) <$> _dsIdDimensionValue,
-                  ("inpageTagFormats" .=) <$> _dsInpageTagFormats,
-                  ("active" .=) <$> _dsActive, ("name" .=) <$> _dsName,
-                  ("id" .=) <$> _dsId])
-
--- | The properties of the report.
---
--- /See:/ 'reportFloodlightCriteriaReportProperties' smart constructor.
-data ReportFloodlightCriteriaReportProperties =
-  ReportFloodlightCriteriaReportProperties'
-    { _rfcrpIncludeUnattributedIPConversions     :: !(Maybe Bool)
-    , _rfcrpIncludeUnattributedCookieConversions :: !(Maybe Bool)
-    , _rfcrpIncludeAttributedIPConversions       :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportFloodlightCriteriaReportProperties' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rfcrpIncludeUnattributedIPConversions'
---
--- * 'rfcrpIncludeUnattributedCookieConversions'
---
--- * 'rfcrpIncludeAttributedIPConversions'
-reportFloodlightCriteriaReportProperties
-    :: ReportFloodlightCriteriaReportProperties
-reportFloodlightCriteriaReportProperties =
-  ReportFloodlightCriteriaReportProperties'
-    { _rfcrpIncludeUnattributedIPConversions = Nothing
-    , _rfcrpIncludeUnattributedCookieConversions = Nothing
-    , _rfcrpIncludeAttributedIPConversions = Nothing
-    }
-
-
--- | Include conversions that have no associated cookies and no exposures.
--- It’s therefore impossible to know how the user was exposed to your ads
--- during the lookback window prior to a conversion.
-rfcrpIncludeUnattributedIPConversions :: Lens' ReportFloodlightCriteriaReportProperties (Maybe Bool)
-rfcrpIncludeUnattributedIPConversions
-  = lens _rfcrpIncludeUnattributedIPConversions
-      (\ s a ->
-         s{_rfcrpIncludeUnattributedIPConversions = a})
-
--- | Include conversions of users with a DoubleClick cookie but without an
--- exposure. That means the user did not click or see an ad from the
--- advertiser within the Floodlight group, or that the interaction happened
--- outside the lookback window.
-rfcrpIncludeUnattributedCookieConversions :: Lens' ReportFloodlightCriteriaReportProperties (Maybe Bool)
-rfcrpIncludeUnattributedCookieConversions
-  = lens _rfcrpIncludeUnattributedCookieConversions
-      (\ s a ->
-         s{_rfcrpIncludeUnattributedCookieConversions = a})
-
--- | Include conversions that have no cookie, but do have an exposure path.
-rfcrpIncludeAttributedIPConversions :: Lens' ReportFloodlightCriteriaReportProperties (Maybe Bool)
-rfcrpIncludeAttributedIPConversions
-  = lens _rfcrpIncludeAttributedIPConversions
-      (\ s a ->
-         s{_rfcrpIncludeAttributedIPConversions = a})
-
-instance FromJSON
-           ReportFloodlightCriteriaReportProperties
-         where
-        parseJSON
-          = withObject
-              "ReportFloodlightCriteriaReportProperties"
-              (\ o ->
-                 ReportFloodlightCriteriaReportProperties' <$>
-                   (o .:? "includeUnattributedIPConversions") <*>
-                     (o .:? "includeUnattributedCookieConversions")
-                     <*> (o .:? "includeAttributedIPConversions"))
-
-instance ToJSON
-           ReportFloodlightCriteriaReportProperties
-         where
-        toJSON ReportFloodlightCriteriaReportProperties'{..}
-          = object
-              (catMaybes
-                 [("includeUnattributedIPConversions" .=) <$>
-                    _rfcrpIncludeUnattributedIPConversions,
-                  ("includeUnattributedCookieConversions" .=) <$>
-                    _rfcrpIncludeUnattributedCookieConversions,
-                  ("includeAttributedIPConversions" .=) <$>
-                    _rfcrpIncludeAttributedIPConversions])
-
--- | Contains properties of a Floodlight activity group.
---
--- /See:/ 'floodlightActivityGroup' smart constructor.
-data FloodlightActivityGroup =
-  FloodlightActivityGroup'
-    { _fagTagString                               :: !(Maybe Text)
-    , _fagFloodlightConfigurationId               :: !(Maybe (Textual Int64))
-    , _fagKind                                    :: !Text
-    , _fagAdvertiserId                            :: !(Maybe (Textual Int64))
-    , _fagAdvertiserIdDimensionValue              :: !(Maybe DimensionValue)
-    , _fagIdDimensionValue                        :: !(Maybe DimensionValue)
-    , _fagAccountId                               :: !(Maybe (Textual Int64))
-    , _fagName                                    :: !(Maybe Text)
-    , _fagId                                      :: !(Maybe (Textual Int64))
-    , _fagSubAccountId                            :: !(Maybe (Textual Int64))
-    , _fagType                                    :: !(Maybe FloodlightActivityGroupType)
-    , _fagFloodlightConfigurationIdDimensionValue :: !(Maybe DimensionValue)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fagTagString'
---
--- * 'fagFloodlightConfigurationId'
---
--- * 'fagKind'
---
--- * 'fagAdvertiserId'
---
--- * 'fagAdvertiserIdDimensionValue'
---
--- * 'fagIdDimensionValue'
---
--- * 'fagAccountId'
---
--- * 'fagName'
---
--- * 'fagId'
---
--- * 'fagSubAccountId'
---
--- * 'fagType'
---
--- * 'fagFloodlightConfigurationIdDimensionValue'
-floodlightActivityGroup
-    :: FloodlightActivityGroup
-floodlightActivityGroup =
-  FloodlightActivityGroup'
-    { _fagTagString = Nothing
-    , _fagFloodlightConfigurationId = Nothing
-    , _fagKind = "dfareporting#floodlightActivityGroup"
-    , _fagAdvertiserId = Nothing
-    , _fagAdvertiserIdDimensionValue = Nothing
-    , _fagIdDimensionValue = Nothing
-    , _fagAccountId = Nothing
-    , _fagName = Nothing
-    , _fagId = Nothing
-    , _fagSubAccountId = Nothing
-    , _fagType = Nothing
-    , _fagFloodlightConfigurationIdDimensionValue = Nothing
-    }
-
-
--- | Value of the type= parameter in the floodlight tag, which the ad servers
--- use to identify the activity group that the activity belongs to. This is
--- optional: if empty, a new tag string will be generated for you. This
--- string must be 1 to 8 characters long, with valid characters being
--- [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among
--- activity groups of the same floodlight configuration. This field is
--- read-only after insertion.
-fagTagString :: Lens' FloodlightActivityGroup (Maybe Text)
-fagTagString
-  = lens _fagTagString (\ s a -> s{_fagTagString = a})
-
--- | Floodlight configuration ID of this floodlight activity group. This is a
--- required field.
-fagFloodlightConfigurationId :: Lens' FloodlightActivityGroup (Maybe Int64)
-fagFloodlightConfigurationId
-  = lens _fagFloodlightConfigurationId
-      (\ s a -> s{_fagFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightActivityGroup\".
-fagKind :: Lens' FloodlightActivityGroup Text
-fagKind = lens _fagKind (\ s a -> s{_fagKind = a})
-
--- | Advertiser ID of this floodlight activity group. If this field is left
--- blank, the value will be copied over either from the floodlight
--- configuration\'s advertiser or from the existing activity group\'s
--- advertiser.
-fagAdvertiserId :: Lens' FloodlightActivityGroup (Maybe Int64)
-fagAdvertiserId
-  = lens _fagAdvertiserId
-      (\ s a -> s{_fagAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-fagAdvertiserIdDimensionValue :: Lens' FloodlightActivityGroup (Maybe DimensionValue)
-fagAdvertiserIdDimensionValue
-  = lens _fagAdvertiserIdDimensionValue
-      (\ s a -> s{_fagAdvertiserIdDimensionValue = a})
-
--- | Dimension value for the ID of this floodlight activity group. This is a
--- read-only, auto-generated field.
-fagIdDimensionValue :: Lens' FloodlightActivityGroup (Maybe DimensionValue)
-fagIdDimensionValue
-  = lens _fagIdDimensionValue
-      (\ s a -> s{_fagIdDimensionValue = a})
-
--- | Account ID of this floodlight activity group. This is a read-only field
--- that can be left blank.
-fagAccountId :: Lens' FloodlightActivityGroup (Maybe Int64)
-fagAccountId
-  = lens _fagAccountId (\ s a -> s{_fagAccountId = a})
-      . mapping _Coerce
-
--- | Name of this floodlight activity group. This is a required field. Must
--- be less than 65 characters long and cannot contain quotes.
-fagName :: Lens' FloodlightActivityGroup (Maybe Text)
-fagName = lens _fagName (\ s a -> s{_fagName = a})
-
--- | ID of this floodlight activity group. This is a read-only,
--- auto-generated field.
-fagId :: Lens' FloodlightActivityGroup (Maybe Int64)
-fagId
-  = lens _fagId (\ s a -> s{_fagId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this floodlight activity group. This is a read-only
--- field that can be left blank.
-fagSubAccountId :: Lens' FloodlightActivityGroup (Maybe Int64)
-fagSubAccountId
-  = lens _fagSubAccountId
-      (\ s a -> s{_fagSubAccountId = a})
-      . mapping _Coerce
-
--- | Type of the floodlight activity group. This is a required field that is
--- read-only after insertion.
-fagType :: Lens' FloodlightActivityGroup (Maybe FloodlightActivityGroupType)
-fagType = lens _fagType (\ s a -> s{_fagType = a})
-
--- | Dimension value for the ID of the floodlight configuration. This is a
--- read-only, auto-generated field.
-fagFloodlightConfigurationIdDimensionValue :: Lens' FloodlightActivityGroup (Maybe DimensionValue)
-fagFloodlightConfigurationIdDimensionValue
-  = lens _fagFloodlightConfigurationIdDimensionValue
-      (\ s a ->
-         s{_fagFloodlightConfigurationIdDimensionValue = a})
-
-instance FromJSON FloodlightActivityGroup where
-        parseJSON
-          = withObject "FloodlightActivityGroup"
-              (\ o ->
-                 FloodlightActivityGroup' <$>
-                   (o .:? "tagString") <*>
-                     (o .:? "floodlightConfigurationId")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightActivityGroup")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*>
-                     (o .:? "floodlightConfigurationIdDimensionValue"))
-
-instance ToJSON FloodlightActivityGroup where
-        toJSON FloodlightActivityGroup'{..}
-          = object
-              (catMaybes
-                 [("tagString" .=) <$> _fagTagString,
-                  ("floodlightConfigurationId" .=) <$>
-                    _fagFloodlightConfigurationId,
-                  Just ("kind" .= _fagKind),
-                  ("advertiserId" .=) <$> _fagAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _fagAdvertiserIdDimensionValue,
-                  ("idDimensionValue" .=) <$> _fagIdDimensionValue,
-                  ("accountId" .=) <$> _fagAccountId,
-                  ("name" .=) <$> _fagName, ("id" .=) <$> _fagId,
-                  ("subaccountId" .=) <$> _fagSubAccountId,
-                  ("type" .=) <$> _fagType,
-                  ("floodlightConfigurationIdDimensionValue" .=) <$>
-                    _fagFloodlightConfigurationIdDimensionValue])
-
--- | Represents fields that are compatible to be selected for a report of
--- type \"CROSS_DIMENSION_REACH\".
---
--- /See:/ 'crossDimensionReachReportCompatibleFields' smart constructor.
-data CrossDimensionReachReportCompatibleFields =
-  CrossDimensionReachReportCompatibleFields'
-    { _cdrrcfMetrics          :: !(Maybe [Metric])
-    , _cdrrcfBreakdown        :: !(Maybe [Dimension])
-    , _cdrrcfKind             :: !Text
-    , _cdrrcfDimensionFilters :: !(Maybe [Dimension])
-    , _cdrrcfOverlapMetrics   :: !(Maybe [Metric])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CrossDimensionReachReportCompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cdrrcfMetrics'
---
--- * 'cdrrcfBreakdown'
---
--- * 'cdrrcfKind'
---
--- * 'cdrrcfDimensionFilters'
---
--- * 'cdrrcfOverlapMetrics'
-crossDimensionReachReportCompatibleFields
-    :: CrossDimensionReachReportCompatibleFields
-crossDimensionReachReportCompatibleFields =
-  CrossDimensionReachReportCompatibleFields'
-    { _cdrrcfMetrics = Nothing
-    , _cdrrcfBreakdown = Nothing
-    , _cdrrcfKind = "dfareporting#crossDimensionReachReportCompatibleFields"
-    , _cdrrcfDimensionFilters = Nothing
-    , _cdrrcfOverlapMetrics = Nothing
-    }
-
-
--- | Metrics which are compatible to be selected in the \"metricNames\"
--- section of the report.
-cdrrcfMetrics :: Lens' CrossDimensionReachReportCompatibleFields [Metric]
-cdrrcfMetrics
-  = lens _cdrrcfMetrics
-      (\ s a -> s{_cdrrcfMetrics = a})
-      . _Default
-      . _Coerce
-
--- | Dimensions which are compatible to be selected in the \"breakdown\"
--- section of the report.
-cdrrcfBreakdown :: Lens' CrossDimensionReachReportCompatibleFields [Dimension]
-cdrrcfBreakdown
-  = lens _cdrrcfBreakdown
-      (\ s a -> s{_cdrrcfBreakdown = a})
-      . _Default
-      . _Coerce
-
--- | The kind of resource this is, in this case
--- dfareporting#crossDimensionReachReportCompatibleFields.
-cdrrcfKind :: Lens' CrossDimensionReachReportCompatibleFields Text
-cdrrcfKind
-  = lens _cdrrcfKind (\ s a -> s{_cdrrcfKind = a})
-
--- | Dimensions which are compatible to be selected in the
--- \"dimensionFilters\" section of the report.
-cdrrcfDimensionFilters :: Lens' CrossDimensionReachReportCompatibleFields [Dimension]
-cdrrcfDimensionFilters
-  = lens _cdrrcfDimensionFilters
-      (\ s a -> s{_cdrrcfDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Metrics which are compatible to be selected in the
--- \"overlapMetricNames\" section of the report.
-cdrrcfOverlapMetrics :: Lens' CrossDimensionReachReportCompatibleFields [Metric]
-cdrrcfOverlapMetrics
-  = lens _cdrrcfOverlapMetrics
-      (\ s a -> s{_cdrrcfOverlapMetrics = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           CrossDimensionReachReportCompatibleFields
-         where
-        parseJSON
-          = withObject
-              "CrossDimensionReachReportCompatibleFields"
-              (\ o ->
-                 CrossDimensionReachReportCompatibleFields' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "breakdown" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#crossDimensionReachReportCompatibleFields")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "overlapMetrics" .!= mempty))
-
-instance ToJSON
-           CrossDimensionReachReportCompatibleFields
-         where
-        toJSON CrossDimensionReachReportCompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _cdrrcfMetrics,
-                  ("breakdown" .=) <$> _cdrrcfBreakdown,
-                  Just ("kind" .= _cdrrcfKind),
-                  ("dimensionFilters" .=) <$> _cdrrcfDimensionFilters,
-                  ("overlapMetrics" .=) <$> _cdrrcfOverlapMetrics])
-
--- | FsCommand.
---
--- /See:/ 'fsCommand' smart constructor.
-data FsCommand =
-  FsCommand'
-    { _fcPositionOption :: !(Maybe FsCommandPositionOption)
-    , _fcLeft           :: !(Maybe (Textual Int32))
-    , _fcWindowHeight   :: !(Maybe (Textual Int32))
-    , _fcWindowWidth    :: !(Maybe (Textual Int32))
-    , _fcTop            :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FsCommand' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcPositionOption'
---
--- * 'fcLeft'
---
--- * 'fcWindowHeight'
---
--- * 'fcWindowWidth'
---
--- * 'fcTop'
-fsCommand
-    :: FsCommand
-fsCommand =
-  FsCommand'
-    { _fcPositionOption = Nothing
-    , _fcLeft = Nothing
-    , _fcWindowHeight = Nothing
-    , _fcWindowWidth = Nothing
-    , _fcTop = Nothing
-    }
-
-
--- | Position in the browser where the window will open.
-fcPositionOption :: Lens' FsCommand (Maybe FsCommandPositionOption)
-fcPositionOption
-  = lens _fcPositionOption
-      (\ s a -> s{_fcPositionOption = a})
-
--- | Distance from the left of the browser.Applicable when positionOption is
--- DISTANCE_FROM_TOP_LEFT_CORNER.
-fcLeft :: Lens' FsCommand (Maybe Int32)
-fcLeft
-  = lens _fcLeft (\ s a -> s{_fcLeft = a}) .
-      mapping _Coerce
-
--- | Height of the window.
-fcWindowHeight :: Lens' FsCommand (Maybe Int32)
-fcWindowHeight
-  = lens _fcWindowHeight
-      (\ s a -> s{_fcWindowHeight = a})
-      . mapping _Coerce
-
--- | Width of the window.
-fcWindowWidth :: Lens' FsCommand (Maybe Int32)
-fcWindowWidth
-  = lens _fcWindowWidth
-      (\ s a -> s{_fcWindowWidth = a})
-      . mapping _Coerce
-
--- | Distance from the top of the browser. Applicable when positionOption is
--- DISTANCE_FROM_TOP_LEFT_CORNER.
-fcTop :: Lens' FsCommand (Maybe Int32)
-fcTop
-  = lens _fcTop (\ s a -> s{_fcTop = a}) .
-      mapping _Coerce
-
-instance FromJSON FsCommand where
-        parseJSON
-          = withObject "FsCommand"
-              (\ o ->
-                 FsCommand' <$>
-                   (o .:? "positionOption") <*> (o .:? "left") <*>
-                     (o .:? "windowHeight")
-                     <*> (o .:? "windowWidth")
-                     <*> (o .:? "top"))
-
-instance ToJSON FsCommand where
-        toJSON FsCommand'{..}
-          = object
-              (catMaybes
-                 [("positionOption" .=) <$> _fcPositionOption,
-                  ("left" .=) <$> _fcLeft,
-                  ("windowHeight" .=) <$> _fcWindowHeight,
-                  ("windowWidth" .=) <$> _fcWindowWidth,
-                  ("top" .=) <$> _fcTop])
-
--- | Placement Assignment.
---
--- /See:/ 'placementAssignment' smart constructor.
-data PlacementAssignment =
-  PlacementAssignment'
-    { _paPlacementId               :: !(Maybe (Textual Int64))
-    , _paPlacementIdDimensionValue :: !(Maybe DimensionValue)
-    , _paActive                    :: !(Maybe Bool)
-    , _paSSLRequired               :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementAssignment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'paPlacementId'
---
--- * 'paPlacementIdDimensionValue'
---
--- * 'paActive'
---
--- * 'paSSLRequired'
-placementAssignment
-    :: PlacementAssignment
-placementAssignment =
-  PlacementAssignment'
-    { _paPlacementId = Nothing
-    , _paPlacementIdDimensionValue = Nothing
-    , _paActive = Nothing
-    , _paSSLRequired = Nothing
-    }
-
-
--- | ID of the placement to be assigned. This is a required field.
-paPlacementId :: Lens' PlacementAssignment (Maybe Int64)
-paPlacementId
-  = lens _paPlacementId
-      (\ s a -> s{_paPlacementId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the placement. This is a read-only,
--- auto-generated field.
-paPlacementIdDimensionValue :: Lens' PlacementAssignment (Maybe DimensionValue)
-paPlacementIdDimensionValue
-  = lens _paPlacementIdDimensionValue
-      (\ s a -> s{_paPlacementIdDimensionValue = a})
-
--- | Whether this placement assignment is active. When true, the placement
--- will be included in the ad\'s rotation.
-paActive :: Lens' PlacementAssignment (Maybe Bool)
-paActive = lens _paActive (\ s a -> s{_paActive = a})
-
--- | Whether the placement to be assigned requires SSL. This is a read-only
--- field that is auto-generated when the ad is inserted or updated.
-paSSLRequired :: Lens' PlacementAssignment (Maybe Bool)
-paSSLRequired
-  = lens _paSSLRequired
-      (\ s a -> s{_paSSLRequired = a})
-
-instance FromJSON PlacementAssignment where
-        parseJSON
-          = withObject "PlacementAssignment"
-              (\ o ->
-                 PlacementAssignment' <$>
-                   (o .:? "placementId") <*>
-                     (o .:? "placementIdDimensionValue")
-                     <*> (o .:? "active")
-                     <*> (o .:? "sslRequired"))
-
-instance ToJSON PlacementAssignment where
-        toJSON PlacementAssignment'{..}
-          = object
-              (catMaybes
-                 [("placementId" .=) <$> _paPlacementId,
-                  ("placementIdDimensionValue" .=) <$>
-                    _paPlacementIdDimensionValue,
-                  ("active" .=) <$> _paActive,
-                  ("sslRequired" .=) <$> _paSSLRequired])
-
--- | Contains properties of a creative field value.
---
--- /See:/ 'creativeFieldValue' smart constructor.
-data CreativeFieldValue =
-  CreativeFieldValue'
-    { _cfvKind  :: !Text
-    , _cfvValue :: !(Maybe Text)
-    , _cfvId    :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValue' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvKind'
---
--- * 'cfvValue'
---
--- * 'cfvId'
-creativeFieldValue
-    :: CreativeFieldValue
-creativeFieldValue =
-  CreativeFieldValue'
-    { _cfvKind = "dfareporting#creativeFieldValue"
-    , _cfvValue = Nothing
-    , _cfvId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeFieldValue\".
-cfvKind :: Lens' CreativeFieldValue Text
-cfvKind = lens _cfvKind (\ s a -> s{_cfvKind = a})
-
--- | Value of this creative field value. It needs to be less than 256
--- characters in length and unique per creative field.
-cfvValue :: Lens' CreativeFieldValue (Maybe Text)
-cfvValue = lens _cfvValue (\ s a -> s{_cfvValue = a})
-
--- | ID of this creative field value. This is a read-only, auto-generated
--- field.
-cfvId :: Lens' CreativeFieldValue (Maybe Int64)
-cfvId
-  = lens _cfvId (\ s a -> s{_cfvId = a}) .
-      mapping _Coerce
-
-instance FromJSON CreativeFieldValue where
-        parseJSON
-          = withObject "CreativeFieldValue"
-              (\ o ->
-                 CreativeFieldValue' <$>
-                   (o .:? "kind" .!= "dfareporting#creativeFieldValue")
-                     <*> (o .:? "value")
-                     <*> (o .:? "id"))
-
-instance ToJSON CreativeFieldValue where
-        toJSON CreativeFieldValue'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cfvKind),
-                  ("value" .=) <$> _cfvValue, ("id" .=) <$> _cfvId])
-
--- | Represents a DimensionValuesRequest.
---
--- /See:/ 'dimensionValueRequest' smart constructor.
-data DimensionValueRequest =
-  DimensionValueRequest'
-    { _dvrKind          :: !Text
-    , _dvrEndDate       :: !(Maybe Date')
-    , _dvrFilters       :: !(Maybe [DimensionFilter])
-    , _dvrStartDate     :: !(Maybe Date')
-    , _dvrDimensionName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DimensionValueRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dvrKind'
---
--- * 'dvrEndDate'
---
--- * 'dvrFilters'
---
--- * 'dvrStartDate'
---
--- * 'dvrDimensionName'
-dimensionValueRequest
-    :: DimensionValueRequest
-dimensionValueRequest =
-  DimensionValueRequest'
-    { _dvrKind = "dfareporting#dimensionValueRequest"
-    , _dvrEndDate = Nothing
-    , _dvrFilters = Nothing
-    , _dvrStartDate = Nothing
-    , _dvrDimensionName = Nothing
-    }
-
-
--- | The kind of request this is, in this case
--- dfareporting#dimensionValueRequest.
-dvrKind :: Lens' DimensionValueRequest Text
-dvrKind = lens _dvrKind (\ s a -> s{_dvrKind = a})
-
--- | The end date of the date range for which to retrieve dimension values. A
--- string of the format \"yyyy-MM-dd\".
-dvrEndDate :: Lens' DimensionValueRequest (Maybe Day)
-dvrEndDate
-  = lens _dvrEndDate (\ s a -> s{_dvrEndDate = a}) .
-      mapping _Date
-
--- | The list of filters by which to filter values. The filters are ANDed.
-dvrFilters :: Lens' DimensionValueRequest [DimensionFilter]
-dvrFilters
-  = lens _dvrFilters (\ s a -> s{_dvrFilters = a}) .
-      _Default
-      . _Coerce
-
--- | The start date of the date range for which to retrieve dimension values.
--- A string of the format \"yyyy-MM-dd\".
-dvrStartDate :: Lens' DimensionValueRequest (Maybe Day)
-dvrStartDate
-  = lens _dvrStartDate (\ s a -> s{_dvrStartDate = a})
-      . mapping _Date
-
--- | The name of the dimension for which values should be requested.
-dvrDimensionName :: Lens' DimensionValueRequest (Maybe Text)
-dvrDimensionName
-  = lens _dvrDimensionName
-      (\ s a -> s{_dvrDimensionName = a})
-
-instance FromJSON DimensionValueRequest where
-        parseJSON
-          = withObject "DimensionValueRequest"
-              (\ o ->
-                 DimensionValueRequest' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#dimensionValueRequest")
-                     <*> (o .:? "endDate")
-                     <*> (o .:? "filters" .!= mempty)
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "dimensionName"))
-
-instance ToJSON DimensionValueRequest where
-        toJSON DimensionValueRequest'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _dvrKind),
-                  ("endDate" .=) <$> _dvrEndDate,
-                  ("filters" .=) <$> _dvrFilters,
-                  ("startDate" .=) <$> _dvrStartDate,
-                  ("dimensionName" .=) <$> _dvrDimensionName])
-
--- | Floodlight Configuration List Response
---
--- /See:/ 'floodlightConfigurationsListResponse' smart constructor.
-data FloodlightConfigurationsListResponse =
-  FloodlightConfigurationsListResponse'
-    { _fclrKind                     :: !Text
-    , _fclrFloodlightConfigurations :: !(Maybe [FloodlightConfiguration])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfigurationsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fclrKind'
---
--- * 'fclrFloodlightConfigurations'
-floodlightConfigurationsListResponse
-    :: FloodlightConfigurationsListResponse
-floodlightConfigurationsListResponse =
-  FloodlightConfigurationsListResponse'
-    { _fclrKind = "dfareporting#floodlightConfigurationsListResponse"
-    , _fclrFloodlightConfigurations = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightConfigurationsListResponse\".
-fclrKind :: Lens' FloodlightConfigurationsListResponse Text
-fclrKind = lens _fclrKind (\ s a -> s{_fclrKind = a})
-
--- | Floodlight configuration collection.
-fclrFloodlightConfigurations :: Lens' FloodlightConfigurationsListResponse [FloodlightConfiguration]
-fclrFloodlightConfigurations
-  = lens _fclrFloodlightConfigurations
-      (\ s a -> s{_fclrFloodlightConfigurations = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           FloodlightConfigurationsListResponse
-         where
-        parseJSON
-          = withObject "FloodlightConfigurationsListResponse"
-              (\ o ->
-                 FloodlightConfigurationsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#floodlightConfigurationsListResponse")
-                     <*> (o .:? "floodlightConfigurations" .!= mempty))
-
-instance ToJSON FloodlightConfigurationsListResponse
-         where
-        toJSON FloodlightConfigurationsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _fclrKind),
-                  ("floodlightConfigurations" .=) <$>
-                    _fclrFloodlightConfigurations])
-
--- | Floodlight Activity List Response
---
--- /See:/ 'floodlightActivitiesListResponse' smart constructor.
-data FloodlightActivitiesListResponse =
-  FloodlightActivitiesListResponse'
-    { _falrNextPageToken        :: !(Maybe Text)
-    , _falrKind                 :: !Text
-    , _falrFloodlightActivities :: !(Maybe [FloodlightActivity])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'falrNextPageToken'
---
--- * 'falrKind'
---
--- * 'falrFloodlightActivities'
-floodlightActivitiesListResponse
-    :: FloodlightActivitiesListResponse
-floodlightActivitiesListResponse =
-  FloodlightActivitiesListResponse'
-    { _falrNextPageToken = Nothing
-    , _falrKind = "dfareporting#floodlightActivitiesListResponse"
-    , _falrFloodlightActivities = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-falrNextPageToken :: Lens' FloodlightActivitiesListResponse (Maybe Text)
-falrNextPageToken
-  = lens _falrNextPageToken
-      (\ s a -> s{_falrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightActivitiesListResponse\".
-falrKind :: Lens' FloodlightActivitiesListResponse Text
-falrKind = lens _falrKind (\ s a -> s{_falrKind = a})
-
--- | Floodlight activity collection.
-falrFloodlightActivities :: Lens' FloodlightActivitiesListResponse [FloodlightActivity]
-falrFloodlightActivities
-  = lens _falrFloodlightActivities
-      (\ s a -> s{_falrFloodlightActivities = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON FloodlightActivitiesListResponse
-         where
-        parseJSON
-          = withObject "FloodlightActivitiesListResponse"
-              (\ o ->
-                 FloodlightActivitiesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightActivitiesListResponse")
-                     <*> (o .:? "floodlightActivities" .!= mempty))
-
-instance ToJSON FloodlightActivitiesListResponse
-         where
-        toJSON FloodlightActivitiesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _falrNextPageToken,
-                  Just ("kind" .= _falrKind),
-                  ("floodlightActivities" .=) <$>
-                    _falrFloodlightActivities])
-
--- | Creative Field Assignment.
---
--- /See:/ 'creativeFieldAssignment' smart constructor.
-data CreativeFieldAssignment =
-  CreativeFieldAssignment'
-    { _cfaCreativeFieldId      :: !(Maybe (Textual Int64))
-    , _cfaCreativeFieldValueId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldAssignment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfaCreativeFieldId'
---
--- * 'cfaCreativeFieldValueId'
-creativeFieldAssignment
-    :: CreativeFieldAssignment
-creativeFieldAssignment =
-  CreativeFieldAssignment'
-    {_cfaCreativeFieldId = Nothing, _cfaCreativeFieldValueId = Nothing}
-
-
--- | ID of the creative field.
-cfaCreativeFieldId :: Lens' CreativeFieldAssignment (Maybe Int64)
-cfaCreativeFieldId
-  = lens _cfaCreativeFieldId
-      (\ s a -> s{_cfaCreativeFieldId = a})
-      . mapping _Coerce
-
--- | ID of the creative field value.
-cfaCreativeFieldValueId :: Lens' CreativeFieldAssignment (Maybe Int64)
-cfaCreativeFieldValueId
-  = lens _cfaCreativeFieldValueId
-      (\ s a -> s{_cfaCreativeFieldValueId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeFieldAssignment where
-        parseJSON
-          = withObject "CreativeFieldAssignment"
-              (\ o ->
-                 CreativeFieldAssignment' <$>
-                   (o .:? "creativeFieldId") <*>
-                     (o .:? "creativeFieldValueId"))
-
-instance ToJSON CreativeFieldAssignment where
-        toJSON CreativeFieldAssignment'{..}
-          = object
-              (catMaybes
-                 [("creativeFieldId" .=) <$> _cfaCreativeFieldId,
-                  ("creativeFieldValueId" .=) <$>
-                    _cfaCreativeFieldValueId])
-
--- | Groups advertisers together so that reports can be generated for the
--- entire group at once.
---
--- /See:/ 'advertiserGroup' smart constructor.
-data AdvertiserGroup =
-  AdvertiserGroup'
-    { _agKind      :: !Text
-    , _agAccountId :: !(Maybe (Textual Int64))
-    , _agName      :: !(Maybe Text)
-    , _agId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'agKind'
---
--- * 'agAccountId'
---
--- * 'agName'
---
--- * 'agId'
-advertiserGroup
-    :: AdvertiserGroup
-advertiserGroup =
-  AdvertiserGroup'
-    { _agKind = "dfareporting#advertiserGroup"
-    , _agAccountId = Nothing
-    , _agName = Nothing
-    , _agId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#advertiserGroup\".
-agKind :: Lens' AdvertiserGroup Text
-agKind = lens _agKind (\ s a -> s{_agKind = a})
-
--- | Account ID of this advertiser group. This is a read-only field that can
--- be left blank.
-agAccountId :: Lens' AdvertiserGroup (Maybe Int64)
-agAccountId
-  = lens _agAccountId (\ s a -> s{_agAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this advertiser group. This is a required field and must be less
--- than 256 characters long and unique among advertiser groups of the same
--- account.
-agName :: Lens' AdvertiserGroup (Maybe Text)
-agName = lens _agName (\ s a -> s{_agName = a})
-
--- | ID of this advertiser group. This is a read-only, auto-generated field.
-agId :: Lens' AdvertiserGroup (Maybe Int64)
-agId
-  = lens _agId (\ s a -> s{_agId = a}) .
-      mapping _Coerce
-
-instance FromJSON AdvertiserGroup where
-        parseJSON
-          = withObject "AdvertiserGroup"
-              (\ o ->
-                 AdvertiserGroup' <$>
-                   (o .:? "kind" .!= "dfareporting#advertiserGroup") <*>
-                     (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON AdvertiserGroup where
-        toJSON AdvertiserGroup'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _agKind),
-                  ("accountId" .=) <$> _agAccountId,
-                  ("name" .=) <$> _agName, ("id" .=) <$> _agId])
-
--- | Placement Tag Data
---
--- /See:/ 'tagData' smart constructor.
-data TagData =
-  TagData'
-    { _tdClickTag      :: !(Maybe Text)
-    , _tdFormat        :: !(Maybe TagDataFormat)
-    , _tdCreativeId    :: !(Maybe (Textual Int64))
-    , _tdAdId          :: !(Maybe (Textual Int64))
-    , _tdImpressionTag :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TagData' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tdClickTag'
---
--- * 'tdFormat'
---
--- * 'tdCreativeId'
---
--- * 'tdAdId'
---
--- * 'tdImpressionTag'
-tagData
-    :: TagData
-tagData =
-  TagData'
-    { _tdClickTag = Nothing
-    , _tdFormat = Nothing
-    , _tdCreativeId = Nothing
-    , _tdAdId = Nothing
-    , _tdImpressionTag = Nothing
-    }
-
-
--- | Tag string to record a click.
-tdClickTag :: Lens' TagData (Maybe Text)
-tdClickTag
-  = lens _tdClickTag (\ s a -> s{_tdClickTag = a})
-
--- | TagData tag format of this tag.
-tdFormat :: Lens' TagData (Maybe TagDataFormat)
-tdFormat = lens _tdFormat (\ s a -> s{_tdFormat = a})
-
--- | Creative associated with this placement tag. Applicable only when format
--- is PLACEMENT_TAG_TRACKING.
-tdCreativeId :: Lens' TagData (Maybe Int64)
-tdCreativeId
-  = lens _tdCreativeId (\ s a -> s{_tdCreativeId = a})
-      . mapping _Coerce
-
--- | Ad associated with this placement tag. Applicable only when format is
--- PLACEMENT_TAG_TRACKING.
-tdAdId :: Lens' TagData (Maybe Int64)
-tdAdId
-  = lens _tdAdId (\ s a -> s{_tdAdId = a}) .
-      mapping _Coerce
-
--- | Tag string for serving an ad.
-tdImpressionTag :: Lens' TagData (Maybe Text)
-tdImpressionTag
-  = lens _tdImpressionTag
-      (\ s a -> s{_tdImpressionTag = a})
-
-instance FromJSON TagData where
-        parseJSON
-          = withObject "TagData"
-              (\ o ->
-                 TagData' <$>
-                   (o .:? "clickTag") <*> (o .:? "format") <*>
-                     (o .:? "creativeId")
-                     <*> (o .:? "adId")
-                     <*> (o .:? "impressionTag"))
-
-instance ToJSON TagData where
-        toJSON TagData'{..}
-          = object
-              (catMaybes
-                 [("clickTag" .=) <$> _tdClickTag,
-                  ("format" .=) <$> _tdFormat,
-                  ("creativeId" .=) <$> _tdCreativeId,
-                  ("adId" .=) <$> _tdAdId,
-                  ("impressionTag" .=) <$> _tdImpressionTag])
-
--- | Day Part Targeting.
---
--- /See:/ 'dayPartTargeting' smart constructor.
-data DayPartTargeting =
-  DayPartTargeting'
-    { _dptDaysOfWeek    :: !(Maybe [DayPartTargetingDaysOfWeekItem])
-    , _dptHoursOfDay    :: !(Maybe [Textual Int32])
-    , _dptUserLocalTime :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DayPartTargeting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dptDaysOfWeek'
---
--- * 'dptHoursOfDay'
---
--- * 'dptUserLocalTime'
-dayPartTargeting
-    :: DayPartTargeting
-dayPartTargeting =
-  DayPartTargeting'
-    { _dptDaysOfWeek = Nothing
-    , _dptHoursOfDay = Nothing
-    , _dptUserLocalTime = Nothing
-    }
-
-
--- | Days of the week when the ad will serve. Acceptable values are: -
--- \"SUNDAY\" - \"MONDAY\" - \"TUESDAY\" - \"WEDNESDAY\" - \"THURSDAY\" -
--- \"FRIDAY\" - \"SATURDAY\"
-dptDaysOfWeek :: Lens' DayPartTargeting [DayPartTargetingDaysOfWeekItem]
-dptDaysOfWeek
-  = lens _dptDaysOfWeek
-      (\ s a -> s{_dptDaysOfWeek = a})
-      . _Default
-      . _Coerce
-
--- | Hours of the day when the ad will serve, where 0 is midnight to 1 AM and
--- 23 is 11 PM to midnight. Can be specified with days of week, in which
--- case the ad would serve during these hours on the specified days. For
--- example if Monday, Wednesday, Friday are the days of week specified and
--- 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve
--- Monday, Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values
--- are 0 to 23, inclusive.
-dptHoursOfDay :: Lens' DayPartTargeting [Int32]
-dptHoursOfDay
-  = lens _dptHoursOfDay
-      (\ s a -> s{_dptHoursOfDay = a})
-      . _Default
-      . _Coerce
-
--- | Whether or not to use the user\'s local time. If false, the America\/New
--- York time zone applies.
-dptUserLocalTime :: Lens' DayPartTargeting (Maybe Bool)
-dptUserLocalTime
-  = lens _dptUserLocalTime
-      (\ s a -> s{_dptUserLocalTime = a})
-
-instance FromJSON DayPartTargeting where
-        parseJSON
-          = withObject "DayPartTargeting"
-              (\ o ->
-                 DayPartTargeting' <$>
-                   (o .:? "daysOfWeek" .!= mempty) <*>
-                     (o .:? "hoursOfDay" .!= mempty)
-                     <*> (o .:? "userLocalTime"))
-
-instance ToJSON DayPartTargeting where
-        toJSON DayPartTargeting'{..}
-          = object
-              (catMaybes
-                 [("daysOfWeek" .=) <$> _dptDaysOfWeek,
-                  ("hoursOfDay" .=) <$> _dptHoursOfDay,
-                  ("userLocalTime" .=) <$> _dptUserLocalTime])
-
--- | Creative optimization settings.
---
--- /See:/ 'creativeOptimizationConfiguration' smart constructor.
-data CreativeOptimizationConfiguration =
-  CreativeOptimizationConfiguration'
-    { _cocOptimizationModel     :: !(Maybe CreativeOptimizationConfigurationOptimizationModel)
-    , _cocName                  :: !(Maybe Text)
-    , _cocOptimizationActivitys :: !(Maybe [OptimizationActivity])
-    , _cocId                    :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeOptimizationConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cocOptimizationModel'
---
--- * 'cocName'
---
--- * 'cocOptimizationActivitys'
---
--- * 'cocId'
-creativeOptimizationConfiguration
-    :: CreativeOptimizationConfiguration
-creativeOptimizationConfiguration =
-  CreativeOptimizationConfiguration'
-    { _cocOptimizationModel = Nothing
-    , _cocName = Nothing
-    , _cocOptimizationActivitys = Nothing
-    , _cocId = Nothing
-    }
-
-
--- | Optimization model for this configuration.
-cocOptimizationModel :: Lens' CreativeOptimizationConfiguration (Maybe CreativeOptimizationConfigurationOptimizationModel)
-cocOptimizationModel
-  = lens _cocOptimizationModel
-      (\ s a -> s{_cocOptimizationModel = a})
-
--- | Name of this creative optimization config. This is a required field and
--- must be less than 129 characters long.
-cocName :: Lens' CreativeOptimizationConfiguration (Maybe Text)
-cocName = lens _cocName (\ s a -> s{_cocName = a})
-
--- | List of optimization activities associated with this configuration.
-cocOptimizationActivitys :: Lens' CreativeOptimizationConfiguration [OptimizationActivity]
-cocOptimizationActivitys
-  = lens _cocOptimizationActivitys
-      (\ s a -> s{_cocOptimizationActivitys = a})
-      . _Default
-      . _Coerce
-
--- | ID of this creative optimization config. This field is auto-generated
--- when the campaign is inserted or updated. It can be null for existing
--- campaigns.
-cocId :: Lens' CreativeOptimizationConfiguration (Maybe Int64)
-cocId
-  = lens _cocId (\ s a -> s{_cocId = a}) .
-      mapping _Coerce
-
-instance FromJSON CreativeOptimizationConfiguration
-         where
-        parseJSON
-          = withObject "CreativeOptimizationConfiguration"
-              (\ o ->
-                 CreativeOptimizationConfiguration' <$>
-                   (o .:? "optimizationModel") <*> (o .:? "name") <*>
-                     (o .:? "optimizationActivitys" .!= mempty)
-                     <*> (o .:? "id"))
-
-instance ToJSON CreativeOptimizationConfiguration
-         where
-        toJSON CreativeOptimizationConfiguration'{..}
-          = object
-              (catMaybes
-                 [("optimizationModel" .=) <$> _cocOptimizationModel,
-                  ("name" .=) <$> _cocName,
-                  ("optimizationActivitys" .=) <$>
-                    _cocOptimizationActivitys,
-                  ("id" .=) <$> _cocId])
-
--- | Transcode Settings
---
--- /See:/ 'siteTranscodeSetting' smart constructor.
-data SiteTranscodeSetting =
-  SiteTranscodeSetting'
-    { _stsKind                :: !Text
-    , _stsEnabledVideoFormats :: !(Maybe [Textual Int32])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteTranscodeSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'stsKind'
---
--- * 'stsEnabledVideoFormats'
-siteTranscodeSetting
-    :: SiteTranscodeSetting
-siteTranscodeSetting =
-  SiteTranscodeSetting'
-    { _stsKind = "dfareporting#siteTranscodeSetting"
-    , _stsEnabledVideoFormats = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#siteTranscodeSetting\".
-stsKind :: Lens' SiteTranscodeSetting Text
-stsKind = lens _stsKind (\ s a -> s{_stsKind = a})
-
--- | Whitelist of video formats to be served to this site template. Set this
--- list to null or empty to serve all video formats.
-stsEnabledVideoFormats :: Lens' SiteTranscodeSetting [Int32]
-stsEnabledVideoFormats
-  = lens _stsEnabledVideoFormats
-      (\ s a -> s{_stsEnabledVideoFormats = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON SiteTranscodeSetting where
-        parseJSON
-          = withObject "SiteTranscodeSetting"
-              (\ o ->
-                 SiteTranscodeSetting' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#siteTranscodeSetting")
-                     <*> (o .:? "enabledVideoFormats" .!= mempty))
-
-instance ToJSON SiteTranscodeSetting where
-        toJSON SiteTranscodeSetting'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _stsKind),
-                  ("enabledVideoFormats" .=) <$>
-                    _stsEnabledVideoFormats])
-
--- | Click-through URL
---
--- /See:/ 'creativeClickThroughURL' smart constructor.
-data CreativeClickThroughURL =
-  CreativeClickThroughURL'
-    { _cctuComputedClickThroughURL :: !(Maybe Text)
-    , _cctuCustomClickThroughURL   :: !(Maybe Text)
-    , _cctuLandingPageId           :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeClickThroughURL' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cctuComputedClickThroughURL'
---
--- * 'cctuCustomClickThroughURL'
---
--- * 'cctuLandingPageId'
-creativeClickThroughURL
-    :: CreativeClickThroughURL
-creativeClickThroughURL =
-  CreativeClickThroughURL'
-    { _cctuComputedClickThroughURL = Nothing
-    , _cctuCustomClickThroughURL = Nothing
-    , _cctuLandingPageId = Nothing
-    }
-
-
--- | Read-only convenience field representing the actual URL that will be
--- used for this click-through. The URL is computed as follows: - If
--- landingPageId is specified then that landing page\'s URL is assigned to
--- this field. - Otherwise, the customClickThroughUrl is assigned to this
--- field.
-cctuComputedClickThroughURL :: Lens' CreativeClickThroughURL (Maybe Text)
-cctuComputedClickThroughURL
-  = lens _cctuComputedClickThroughURL
-      (\ s a -> s{_cctuComputedClickThroughURL = a})
-
--- | Custom click-through URL. Applicable if the landingPageId field is left
--- unset.
-cctuCustomClickThroughURL :: Lens' CreativeClickThroughURL (Maybe Text)
-cctuCustomClickThroughURL
-  = lens _cctuCustomClickThroughURL
-      (\ s a -> s{_cctuCustomClickThroughURL = a})
-
--- | ID of the landing page for the click-through URL.
-cctuLandingPageId :: Lens' CreativeClickThroughURL (Maybe Int64)
-cctuLandingPageId
-  = lens _cctuLandingPageId
-      (\ s a -> s{_cctuLandingPageId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeClickThroughURL where
-        parseJSON
-          = withObject "CreativeClickThroughURL"
-              (\ o ->
-                 CreativeClickThroughURL' <$>
-                   (o .:? "computedClickThroughUrl") <*>
-                     (o .:? "customClickThroughUrl")
-                     <*> (o .:? "landingPageId"))
-
-instance ToJSON CreativeClickThroughURL where
-        toJSON CreativeClickThroughURL'{..}
-          = object
-              (catMaybes
-                 [("computedClickThroughUrl" .=) <$>
-                    _cctuComputedClickThroughURL,
-                  ("customClickThroughUrl" .=) <$>
-                    _cctuCustomClickThroughURL,
-                  ("landingPageId" .=) <$> _cctuLandingPageId])
-
--- | The report criteria for a report of type \"STANDARD\".
---
--- /See:/ 'reportCriteria' smart constructor.
-data ReportCriteria =
-  ReportCriteria'
-    { _rcMetricNames           :: !(Maybe [Text])
-    , _rcCustomRichMediaEvents :: !(Maybe CustomRichMediaEvents)
-    , _rcDimensionFilters      :: !(Maybe [DimensionValue])
-    , _rcActivities            :: !(Maybe Activities)
-    , _rcDateRange             :: !(Maybe DateRange)
-    , _rcDimensions            :: !(Maybe [SortedDimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportCriteria' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rcMetricNames'
---
--- * 'rcCustomRichMediaEvents'
---
--- * 'rcDimensionFilters'
---
--- * 'rcActivities'
---
--- * 'rcDateRange'
---
--- * 'rcDimensions'
-reportCriteria
-    :: ReportCriteria
-reportCriteria =
-  ReportCriteria'
-    { _rcMetricNames = Nothing
-    , _rcCustomRichMediaEvents = Nothing
-    , _rcDimensionFilters = Nothing
-    , _rcActivities = Nothing
-    , _rcDateRange = Nothing
-    , _rcDimensions = Nothing
-    }
-
-
--- | The list of names of metrics the report should include.
-rcMetricNames :: Lens' ReportCriteria [Text]
-rcMetricNames
-  = lens _rcMetricNames
-      (\ s a -> s{_rcMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | Custom Rich Media Events group.
-rcCustomRichMediaEvents :: Lens' ReportCriteria (Maybe CustomRichMediaEvents)
-rcCustomRichMediaEvents
-  = lens _rcCustomRichMediaEvents
-      (\ s a -> s{_rcCustomRichMediaEvents = a})
-
--- | The list of filters on which dimensions are filtered. Filters for
--- different dimensions are ANDed, filters for the same dimension are
--- grouped together and ORed.
-rcDimensionFilters :: Lens' ReportCriteria [DimensionValue]
-rcDimensionFilters
-  = lens _rcDimensionFilters
-      (\ s a -> s{_rcDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Activity group.
-rcActivities :: Lens' ReportCriteria (Maybe Activities)
-rcActivities
-  = lens _rcActivities (\ s a -> s{_rcActivities = a})
-
--- | The date range for which this report should be run.
-rcDateRange :: Lens' ReportCriteria (Maybe DateRange)
-rcDateRange
-  = lens _rcDateRange (\ s a -> s{_rcDateRange = a})
-
--- | The list of standard dimensions the report should include.
-rcDimensions :: Lens' ReportCriteria [SortedDimension]
-rcDimensions
-  = lens _rcDimensions (\ s a -> s{_rcDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportCriteria where
-        parseJSON
-          = withObject "ReportCriteria"
-              (\ o ->
-                 ReportCriteria' <$>
-                   (o .:? "metricNames" .!= mempty) <*>
-                     (o .:? "customRichMediaEvents")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "activities")
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON ReportCriteria where
-        toJSON ReportCriteria'{..}
-          = object
-              (catMaybes
-                 [("metricNames" .=) <$> _rcMetricNames,
-                  ("customRichMediaEvents" .=) <$>
-                    _rcCustomRichMediaEvents,
-                  ("dimensionFilters" .=) <$> _rcDimensionFilters,
-                  ("activities" .=) <$> _rcActivities,
-                  ("dateRange" .=) <$> _rcDateRange,
-                  ("dimensions" .=) <$> _rcDimensions])
-
--- | Placement Strategy List Response
---
--- /See:/ 'placementStrategiesListResponse' smart constructor.
-data PlacementStrategiesListResponse =
-  PlacementStrategiesListResponse'
-    { _pslrPlacementStrategies :: !(Maybe [PlacementStrategy])
-    , _pslrNextPageToken       :: !(Maybe Text)
-    , _pslrKind                :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pslrPlacementStrategies'
---
--- * 'pslrNextPageToken'
---
--- * 'pslrKind'
-placementStrategiesListResponse
-    :: PlacementStrategiesListResponse
-placementStrategiesListResponse =
-  PlacementStrategiesListResponse'
-    { _pslrPlacementStrategies = Nothing
-    , _pslrNextPageToken = Nothing
-    , _pslrKind = "dfareporting#placementStrategiesListResponse"
-    }
-
-
--- | Placement strategy collection.
-pslrPlacementStrategies :: Lens' PlacementStrategiesListResponse [PlacementStrategy]
-pslrPlacementStrategies
-  = lens _pslrPlacementStrategies
-      (\ s a -> s{_pslrPlacementStrategies = a})
-      . _Default
-      . _Coerce
-
--- | Pagination token to be used for the next list operation.
-pslrNextPageToken :: Lens' PlacementStrategiesListResponse (Maybe Text)
-pslrNextPageToken
-  = lens _pslrNextPageToken
-      (\ s a -> s{_pslrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementStrategiesListResponse\".
-pslrKind :: Lens' PlacementStrategiesListResponse Text
-pslrKind = lens _pslrKind (\ s a -> s{_pslrKind = a})
-
-instance FromJSON PlacementStrategiesListResponse
-         where
-        parseJSON
-          = withObject "PlacementStrategiesListResponse"
-              (\ o ->
-                 PlacementStrategiesListResponse' <$>
-                   (o .:? "placementStrategies" .!= mempty) <*>
-                     (o .:? "nextPageToken")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#placementStrategiesListResponse"))
-
-instance ToJSON PlacementStrategiesListResponse where
-        toJSON PlacementStrategiesListResponse'{..}
-          = object
-              (catMaybes
-                 [("placementStrategies" .=) <$>
-                    _pslrPlacementStrategies,
-                  ("nextPageToken" .=) <$> _pslrNextPageToken,
-                  Just ("kind" .= _pslrKind)])
-
--- | Update Conversions Response.
---
--- /See:/ 'conversionsBatchUpdateResponse' smart constructor.
-data ConversionsBatchUpdateResponse =
-  ConversionsBatchUpdateResponse'
-    { _cburStatus      :: !(Maybe [ConversionStatus])
-    , _cburKind        :: !Text
-    , _cburHasFailures :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchUpdateResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cburStatus'
---
--- * 'cburKind'
---
--- * 'cburHasFailures'
-conversionsBatchUpdateResponse
-    :: ConversionsBatchUpdateResponse
-conversionsBatchUpdateResponse =
-  ConversionsBatchUpdateResponse'
-    { _cburStatus = Nothing
-    , _cburKind = "dfareporting#conversionsBatchUpdateResponse"
-    , _cburHasFailures = Nothing
-    }
-
-
--- | The update status of each conversion. Statuses are returned in the same
--- order that conversions are updated.
-cburStatus :: Lens' ConversionsBatchUpdateResponse [ConversionStatus]
-cburStatus
-  = lens _cburStatus (\ s a -> s{_cburStatus = a}) .
-      _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionsBatchUpdateResponse\".
-cburKind :: Lens' ConversionsBatchUpdateResponse Text
-cburKind = lens _cburKind (\ s a -> s{_cburKind = a})
-
--- | Indicates that some or all conversions failed to update.
-cburHasFailures :: Lens' ConversionsBatchUpdateResponse (Maybe Bool)
-cburHasFailures
-  = lens _cburHasFailures
-      (\ s a -> s{_cburHasFailures = a})
-
-instance FromJSON ConversionsBatchUpdateResponse
-         where
-        parseJSON
-          = withObject "ConversionsBatchUpdateResponse"
-              (\ o ->
-                 ConversionsBatchUpdateResponse' <$>
-                   (o .:? "status" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#conversionsBatchUpdateResponse")
-                     <*> (o .:? "hasFailures"))
-
-instance ToJSON ConversionsBatchUpdateResponse where
-        toJSON ConversionsBatchUpdateResponse'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _cburStatus,
-                  Just ("kind" .= _cburKind),
-                  ("hasFailures" .=) <$> _cburHasFailures])
-
--- | Contains properties of a Campaign Manager subaccount.
---
--- /See:/ 'subAccount' smart constructor.
-data SubAccount =
-  SubAccount'
-    { _saKind                   :: !Text
-    , _saAvailablePermissionIds :: !(Maybe [Textual Int64])
-    , _saAccountId              :: !(Maybe (Textual Int64))
-    , _saName                   :: !(Maybe Text)
-    , _saId                     :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccount' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'saKind'
---
--- * 'saAvailablePermissionIds'
---
--- * 'saAccountId'
---
--- * 'saName'
---
--- * 'saId'
-subAccount
-    :: SubAccount
-subAccount =
-  SubAccount'
-    { _saKind = "dfareporting#subaccount"
-    , _saAvailablePermissionIds = Nothing
-    , _saAccountId = Nothing
-    , _saName = Nothing
-    , _saId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#subaccount\".
-saKind :: Lens' SubAccount Text
-saKind = lens _saKind (\ s a -> s{_saKind = a})
-
--- | IDs of the available user role permissions for this subaccount.
-saAvailablePermissionIds :: Lens' SubAccount [Int64]
-saAvailablePermissionIds
-  = lens _saAvailablePermissionIds
-      (\ s a -> s{_saAvailablePermissionIds = a})
-      . _Default
-      . _Coerce
-
--- | ID of the account that contains this subaccount. This is a read-only
--- field that can be left blank.
-saAccountId :: Lens' SubAccount (Maybe Int64)
-saAccountId
-  = lens _saAccountId (\ s a -> s{_saAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this subaccount. This is a required field. Must be less than 128
--- characters long and be unique among subaccounts of the same account.
-saName :: Lens' SubAccount (Maybe Text)
-saName = lens _saName (\ s a -> s{_saName = a})
-
--- | ID of this subaccount. This is a read-only, auto-generated field.
-saId :: Lens' SubAccount (Maybe Int64)
-saId
-  = lens _saId (\ s a -> s{_saId = a}) .
-      mapping _Coerce
-
-instance FromJSON SubAccount where
-        parseJSON
-          = withObject "SubAccount"
-              (\ o ->
-                 SubAccount' <$>
-                   (o .:? "kind" .!= "dfareporting#subaccount") <*>
-                     (o .:? "availablePermissionIds" .!= mempty)
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON SubAccount where
-        toJSON SubAccount'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _saKind),
-                  ("availablePermissionIds" .=) <$>
-                    _saAvailablePermissionIds,
-                  ("accountId" .=) <$> _saAccountId,
-                  ("name" .=) <$> _saName, ("id" .=) <$> _saId])
-
--- | Inventory item List Response
---
--- /See:/ 'inventoryItemsListResponse' smart constructor.
-data InventoryItemsListResponse =
-  InventoryItemsListResponse'
-    { _iilrInventoryItems :: !(Maybe [InventoryItem])
-    , _iilrNextPageToken  :: !(Maybe Text)
-    , _iilrKind           :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'InventoryItemsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'iilrInventoryItems'
---
--- * 'iilrNextPageToken'
---
--- * 'iilrKind'
-inventoryItemsListResponse
-    :: InventoryItemsListResponse
-inventoryItemsListResponse =
-  InventoryItemsListResponse'
-    { _iilrInventoryItems = Nothing
-    , _iilrNextPageToken = Nothing
-    , _iilrKind = "dfareporting#inventoryItemsListResponse"
-    }
-
-
--- | Inventory item collection
-iilrInventoryItems :: Lens' InventoryItemsListResponse [InventoryItem]
-iilrInventoryItems
-  = lens _iilrInventoryItems
-      (\ s a -> s{_iilrInventoryItems = a})
-      . _Default
-      . _Coerce
-
--- | Pagination token to be used for the next list operation.
-iilrNextPageToken :: Lens' InventoryItemsListResponse (Maybe Text)
-iilrNextPageToken
-  = lens _iilrNextPageToken
-      (\ s a -> s{_iilrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#inventoryItemsListResponse\".
-iilrKind :: Lens' InventoryItemsListResponse Text
-iilrKind = lens _iilrKind (\ s a -> s{_iilrKind = a})
-
-instance FromJSON InventoryItemsListResponse where
-        parseJSON
-          = withObject "InventoryItemsListResponse"
-              (\ o ->
-                 InventoryItemsListResponse' <$>
-                   (o .:? "inventoryItems" .!= mempty) <*>
-                     (o .:? "nextPageToken")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#inventoryItemsListResponse"))
-
-instance ToJSON InventoryItemsListResponse where
-        toJSON InventoryItemsListResponse'{..}
-          = object
-              (catMaybes
-                 [("inventoryItems" .=) <$> _iilrInventoryItems,
-                  ("nextPageToken" .=) <$> _iilrNextPageToken,
-                  Just ("kind" .= _iilrKind)])
-
--- | A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following
--- creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and VPAID.
---
--- /See:/ 'universalAdId' smart constructor.
-data UniversalAdId =
-  UniversalAdId'
-    { _uaiValue    :: !(Maybe Text)
-    , _uaiRegistry :: !(Maybe UniversalAdIdRegistry)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UniversalAdId' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'uaiValue'
---
--- * 'uaiRegistry'
-universalAdId
-    :: UniversalAdId
-universalAdId = UniversalAdId' {_uaiValue = Nothing, _uaiRegistry = Nothing}
-
-
--- | ID value for this creative. Only alphanumeric characters and the
--- following symbols are valid: \"_\/\\-\". Maximum length is 64
--- characters. Read only when registry is DCM.
-uaiValue :: Lens' UniversalAdId (Maybe Text)
-uaiValue = lens _uaiValue (\ s a -> s{_uaiValue = a})
-
--- | Registry used for the Ad ID value.
-uaiRegistry :: Lens' UniversalAdId (Maybe UniversalAdIdRegistry)
-uaiRegistry
-  = lens _uaiRegistry (\ s a -> s{_uaiRegistry = a})
-
-instance FromJSON UniversalAdId where
-        parseJSON
-          = withObject "UniversalAdId"
-              (\ o ->
-                 UniversalAdId' <$>
-                   (o .:? "value") <*> (o .:? "registry"))
-
-instance ToJSON UniversalAdId where
-        toJSON UniversalAdId'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _uaiValue,
-                  ("registry" .=) <$> _uaiRegistry])
-
--- | Contains properties of a Campaign Manager ad.
---
--- /See:/ 'ad' smart constructor.
-data Ad =
-  Ad'
-    { _aTargetingTemplateId                   :: !(Maybe (Textual Int64))
-    , _aCreativeGroupAssignments              :: !(Maybe [CreativeGroupAssignment])
-    , _aGeoTargeting                          :: !(Maybe GeoTargeting)
-    , _aCreativeRotation                      :: !(Maybe CreativeRotation)
-    , _aTechnologyTargeting                   :: !(Maybe TechnologyTargeting)
-    , _aAudienceSegmentId                     :: !(Maybe (Textual Int64))
-    , _aDayPartTargeting                      :: !(Maybe DayPartTargeting)
-    , _aSize                                  :: !(Maybe Size)
-    , _aStartTime                             :: !(Maybe DateTime')
-    , _aKind                                  :: !Text
-    , _aClickThroughURLSuffixProperties       :: !(Maybe ClickThroughURLSuffixProperties)
-    , _aCampaignIdDimensionValue              :: !(Maybe DimensionValue)
-    , _aAdvertiserId                          :: !(Maybe (Textual Int64))
-    , _aAdvertiserIdDimensionValue            :: !(Maybe DimensionValue)
-    , _aSSLCompliant                          :: !(Maybe Bool)
-    , _aCampaignId                            :: !(Maybe (Textual Int64))
-    , _aIdDimensionValue                      :: !(Maybe DimensionValue)
-    , _aClickThroughURL                       :: !(Maybe ClickThroughURL)
-    , _aDeliverySchedule                      :: !(Maybe DeliverySchedule)
-    , _aEventTagOverrides                     :: !(Maybe [EventTagOverride])
-    , _aActive                                :: !(Maybe Bool)
-    , _aAccountId                             :: !(Maybe (Textual Int64))
-    , _aName                                  :: !(Maybe Text)
-    , _aKeyValueTargetingExpression           :: !(Maybe KeyValueTargetingExpression)
-    , _aEndTime                               :: !(Maybe DateTime')
-    , _aCreateInfo                            :: !(Maybe LastModifiedInfo)
-    , _aLastModifiedInfo                      :: !(Maybe LastModifiedInfo)
-    , _aId                                    :: !(Maybe (Textual Int64))
-    , _aSSLRequired                           :: !(Maybe Bool)
-    , _aComments                              :: !(Maybe Text)
-    , _aSubAccountId                          :: !(Maybe (Textual Int64))
-    , _aType                                  :: !(Maybe AdType)
-    , _aRemarketingListExpression             :: !(Maybe ListTargetingExpression)
-    , _aLanguageTargeting                     :: !(Maybe LanguageTargeting)
-    , _aDynamicClickTracker                   :: !(Maybe Bool)
-    , _aCompatibility                         :: !(Maybe AdCompatibility)
-    , _aArchived                              :: !(Maybe Bool)
-    , _aDefaultClickThroughEventTagProperties :: !(Maybe DefaultClickThroughEventTagProperties)
-    , _aPlacementAssignments                  :: !(Maybe [PlacementAssignment])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Ad' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aTargetingTemplateId'
---
--- * 'aCreativeGroupAssignments'
---
--- * 'aGeoTargeting'
---
--- * 'aCreativeRotation'
---
--- * 'aTechnologyTargeting'
---
--- * 'aAudienceSegmentId'
---
--- * 'aDayPartTargeting'
---
--- * 'aSize'
---
--- * 'aStartTime'
---
--- * 'aKind'
---
--- * 'aClickThroughURLSuffixProperties'
---
--- * 'aCampaignIdDimensionValue'
---
--- * 'aAdvertiserId'
---
--- * 'aAdvertiserIdDimensionValue'
---
--- * 'aSSLCompliant'
---
--- * 'aCampaignId'
---
--- * 'aIdDimensionValue'
---
--- * 'aClickThroughURL'
---
--- * 'aDeliverySchedule'
---
--- * 'aEventTagOverrides'
---
--- * 'aActive'
---
--- * 'aAccountId'
---
--- * 'aName'
---
--- * 'aKeyValueTargetingExpression'
---
--- * 'aEndTime'
---
--- * 'aCreateInfo'
---
--- * 'aLastModifiedInfo'
---
--- * 'aId'
---
--- * 'aSSLRequired'
---
--- * 'aComments'
---
--- * 'aSubAccountId'
---
--- * 'aType'
---
--- * 'aRemarketingListExpression'
---
--- * 'aLanguageTargeting'
---
--- * 'aDynamicClickTracker'
---
--- * 'aCompatibility'
---
--- * 'aArchived'
---
--- * 'aDefaultClickThroughEventTagProperties'
---
--- * 'aPlacementAssignments'
-ad
-    :: Ad
-ad =
-  Ad'
-    { _aTargetingTemplateId = Nothing
-    , _aCreativeGroupAssignments = Nothing
-    , _aGeoTargeting = Nothing
-    , _aCreativeRotation = Nothing
-    , _aTechnologyTargeting = Nothing
-    , _aAudienceSegmentId = Nothing
-    , _aDayPartTargeting = Nothing
-    , _aSize = Nothing
-    , _aStartTime = Nothing
-    , _aKind = "dfareporting#ad"
-    , _aClickThroughURLSuffixProperties = Nothing
-    , _aCampaignIdDimensionValue = Nothing
-    , _aAdvertiserId = Nothing
-    , _aAdvertiserIdDimensionValue = Nothing
-    , _aSSLCompliant = Nothing
-    , _aCampaignId = Nothing
-    , _aIdDimensionValue = Nothing
-    , _aClickThroughURL = Nothing
-    , _aDeliverySchedule = Nothing
-    , _aEventTagOverrides = Nothing
-    , _aActive = Nothing
-    , _aAccountId = Nothing
-    , _aName = Nothing
-    , _aKeyValueTargetingExpression = Nothing
-    , _aEndTime = Nothing
-    , _aCreateInfo = Nothing
-    , _aLastModifiedInfo = Nothing
-    , _aId = Nothing
-    , _aSSLRequired = Nothing
-    , _aComments = Nothing
-    , _aSubAccountId = Nothing
-    , _aType = Nothing
-    , _aRemarketingListExpression = Nothing
-    , _aLanguageTargeting = Nothing
-    , _aDynamicClickTracker = Nothing
-    , _aCompatibility = Nothing
-    , _aArchived = Nothing
-    , _aDefaultClickThroughEventTagProperties = Nothing
-    , _aPlacementAssignments = Nothing
-    }
-
-
--- | Targeting template ID, used to apply preconfigured targeting information
--- to this ad. This cannot be set while any of dayPartTargeting,
--- geoTargeting, keyValueTargetingExpression, languageTargeting,
--- remarketingListExpression, or technologyTargeting are set. Applicable
--- when type is AD_SERVING_STANDARD_AD.
-aTargetingTemplateId :: Lens' Ad (Maybe Int64)
-aTargetingTemplateId
-  = lens _aTargetingTemplateId
-      (\ s a -> s{_aTargetingTemplateId = a})
-      . mapping _Coerce
-
--- | Creative group assignments for this ad. Applicable when type is
--- AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number
--- is allowed for a maximum of two assignments.
-aCreativeGroupAssignments :: Lens' Ad [CreativeGroupAssignment]
-aCreativeGroupAssignments
-  = lens _aCreativeGroupAssignments
-      (\ s a -> s{_aCreativeGroupAssignments = a})
-      . _Default
-      . _Coerce
-
--- | Geographical targeting information for this ad. This field must be left
--- blank if the ad is using a targeting template. Applicable when type is
--- AD_SERVING_STANDARD_AD.
-aGeoTargeting :: Lens' Ad (Maybe GeoTargeting)
-aGeoTargeting
-  = lens _aGeoTargeting
-      (\ s a -> s{_aGeoTargeting = a})
-
--- | Creative rotation for this ad. Applicable when type is
--- AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING.
--- When type is AD_SERVING_DEFAULT_AD, this field should have exactly one
--- creativeAssignment.
-aCreativeRotation :: Lens' Ad (Maybe CreativeRotation)
-aCreativeRotation
-  = lens _aCreativeRotation
-      (\ s a -> s{_aCreativeRotation = a})
-
--- | Technology platform targeting information for this ad. This field must
--- be left blank if the ad is using a targeting template. Applicable when
--- type is AD_SERVING_STANDARD_AD.
-aTechnologyTargeting :: Lens' Ad (Maybe TechnologyTargeting)
-aTechnologyTargeting
-  = lens _aTechnologyTargeting
-      (\ s a -> s{_aTechnologyTargeting = a})
-
--- | Audience segment ID that is being targeted for this ad. Applicable when
--- type is AD_SERVING_STANDARD_AD.
-aAudienceSegmentId :: Lens' Ad (Maybe Int64)
-aAudienceSegmentId
-  = lens _aAudienceSegmentId
-      (\ s a -> s{_aAudienceSegmentId = a})
-      . mapping _Coerce
-
--- | Time and day targeting information for this ad. This field must be left
--- blank if the ad is using a targeting template. Applicable when type is
--- AD_SERVING_STANDARD_AD.
-aDayPartTargeting :: Lens' Ad (Maybe DayPartTargeting)
-aDayPartTargeting
-  = lens _aDayPartTargeting
-      (\ s a -> s{_aDayPartTargeting = a})
-
--- | Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
-aSize :: Lens' Ad (Maybe Size)
-aSize = lens _aSize (\ s a -> s{_aSize = a})
-
--- | Date and time that this ad should start serving. If creating an ad, this
--- field must be a time in the future. This is a required field on
--- insertion.
-aStartTime :: Lens' Ad (Maybe UTCTime)
-aStartTime
-  = lens _aStartTime (\ s a -> s{_aStartTime = a}) .
-      mapping _DateTime
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#ad\".
-aKind :: Lens' Ad Text
-aKind = lens _aKind (\ s a -> s{_aKind = a})
-
--- | Click-through URL suffix properties for this ad. Applies to the URL in
--- the ad or (if overriding ad properties) the URL in the creative.
-aClickThroughURLSuffixProperties :: Lens' Ad (Maybe ClickThroughURLSuffixProperties)
-aClickThroughURLSuffixProperties
-  = lens _aClickThroughURLSuffixProperties
-      (\ s a -> s{_aClickThroughURLSuffixProperties = a})
-
--- | Dimension value for the ID of the campaign. This is a read-only,
--- auto-generated field.
-aCampaignIdDimensionValue :: Lens' Ad (Maybe DimensionValue)
-aCampaignIdDimensionValue
-  = lens _aCampaignIdDimensionValue
-      (\ s a -> s{_aCampaignIdDimensionValue = a})
-
--- | Advertiser ID of this ad. This is a required field on insertion.
-aAdvertiserId :: Lens' Ad (Maybe Int64)
-aAdvertiserId
-  = lens _aAdvertiserId
-      (\ s a -> s{_aAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-aAdvertiserIdDimensionValue :: Lens' Ad (Maybe DimensionValue)
-aAdvertiserIdDimensionValue
-  = lens _aAdvertiserIdDimensionValue
-      (\ s a -> s{_aAdvertiserIdDimensionValue = a})
-
--- | Whether this ad is ssl compliant. This is a read-only field that is
--- auto-generated when the ad is inserted or updated.
-aSSLCompliant :: Lens' Ad (Maybe Bool)
-aSSLCompliant
-  = lens _aSSLCompliant
-      (\ s a -> s{_aSSLCompliant = a})
-
--- | Campaign ID of this ad. This is a required field on insertion.
-aCampaignId :: Lens' Ad (Maybe Int64)
-aCampaignId
-  = lens _aCampaignId (\ s a -> s{_aCampaignId = a}) .
-      mapping _Coerce
-
--- | Dimension value for the ID of this ad. This is a read-only,
--- auto-generated field.
-aIdDimensionValue :: Lens' Ad (Maybe DimensionValue)
-aIdDimensionValue
-  = lens _aIdDimensionValue
-      (\ s a -> s{_aIdDimensionValue = a})
-
--- | Click-through URL for this ad. This is a required field on insertion.
--- Applicable when type is AD_SERVING_CLICK_TRACKER.
-aClickThroughURL :: Lens' Ad (Maybe ClickThroughURL)
-aClickThroughURL
-  = lens _aClickThroughURL
-      (\ s a -> s{_aClickThroughURL = a})
-
--- | Delivery schedule information for this ad. Applicable when type is
--- AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with
--- subfields priority and impressionRatio are required on insertion when
--- type is AD_SERVING_STANDARD_AD.
-aDeliverySchedule :: Lens' Ad (Maybe DeliverySchedule)
-aDeliverySchedule
-  = lens _aDeliverySchedule
-      (\ s a -> s{_aDeliverySchedule = a})
-
--- | Event tag overrides for this ad.
-aEventTagOverrides :: Lens' Ad [EventTagOverride]
-aEventTagOverrides
-  = lens _aEventTagOverrides
-      (\ s a -> s{_aEventTagOverrides = a})
-      . _Default
-      . _Coerce
-
--- | Whether this ad is active. When true, archived must be false.
-aActive :: Lens' Ad (Maybe Bool)
-aActive = lens _aActive (\ s a -> s{_aActive = a})
-
--- | Account ID of this ad. This is a read-only field that can be left blank.
-aAccountId :: Lens' Ad (Maybe Int64)
-aAccountId
-  = lens _aAccountId (\ s a -> s{_aAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this ad. This is a required field and must be less than 256
--- characters long.
-aName :: Lens' Ad (Maybe Text)
-aName = lens _aName (\ s a -> s{_aName = a})
-
--- | Key-value targeting information for this ad. This field must be left
--- blank if the ad is using a targeting template. Applicable when type is
--- AD_SERVING_STANDARD_AD.
-aKeyValueTargetingExpression :: Lens' Ad (Maybe KeyValueTargetingExpression)
-aKeyValueTargetingExpression
-  = lens _aKeyValueTargetingExpression
-      (\ s a -> s{_aKeyValueTargetingExpression = a})
-
--- | Date and time that this ad should stop serving. Must be later than the
--- start time. This is a required field on insertion.
-aEndTime :: Lens' Ad (Maybe UTCTime)
-aEndTime
-  = lens _aEndTime (\ s a -> s{_aEndTime = a}) .
-      mapping _DateTime
-
--- | Information about the creation of this ad. This is a read-only field.
-aCreateInfo :: Lens' Ad (Maybe LastModifiedInfo)
-aCreateInfo
-  = lens _aCreateInfo (\ s a -> s{_aCreateInfo = a})
-
--- | Information about the most recent modification of this ad. This is a
--- read-only field.
-aLastModifiedInfo :: Lens' Ad (Maybe LastModifiedInfo)
-aLastModifiedInfo
-  = lens _aLastModifiedInfo
-      (\ s a -> s{_aLastModifiedInfo = a})
-
--- | ID of this ad. This is a read-only, auto-generated field.
-aId :: Lens' Ad (Maybe Int64)
-aId
-  = lens _aId (\ s a -> s{_aId = a}) . mapping _Coerce
-
--- | Whether this ad requires ssl. This is a read-only field that is
--- auto-generated when the ad is inserted or updated.
-aSSLRequired :: Lens' Ad (Maybe Bool)
-aSSLRequired
-  = lens _aSSLRequired (\ s a -> s{_aSSLRequired = a})
-
--- | Comments for this ad.
-aComments :: Lens' Ad (Maybe Text)
-aComments
-  = lens _aComments (\ s a -> s{_aComments = a})
-
--- | Subaccount ID of this ad. This is a read-only field that can be left
--- blank.
-aSubAccountId :: Lens' Ad (Maybe Int64)
-aSubAccountId
-  = lens _aSubAccountId
-      (\ s a -> s{_aSubAccountId = a})
-      . mapping _Coerce
-
--- | Type of ad. This is a required field on insertion. Note that default ads
--- (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative
--- resource).
-aType :: Lens' Ad (Maybe AdType)
-aType = lens _aType (\ s a -> s{_aType = a})
-
--- | Remarketing list targeting expression for this ad. This field must be
--- left blank if the ad is using a targeting template. Applicable when type
--- is AD_SERVING_STANDARD_AD.
-aRemarketingListExpression :: Lens' Ad (Maybe ListTargetingExpression)
-aRemarketingListExpression
-  = lens _aRemarketingListExpression
-      (\ s a -> s{_aRemarketingListExpression = a})
-
--- | Language targeting information for this ad. This field must be left
--- blank if the ad is using a targeting template. Applicable when type is
--- AD_SERVING_STANDARD_AD.
-aLanguageTargeting :: Lens' Ad (Maybe LanguageTargeting)
-aLanguageTargeting
-  = lens _aLanguageTargeting
-      (\ s a -> s{_aLanguageTargeting = a})
-
--- | Whether this ad is a dynamic click tracker. Applicable when type is
--- AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is
--- read-only after insert.
-aDynamicClickTracker :: Lens' Ad (Maybe Bool)
-aDynamicClickTracker
-  = lens _aDynamicClickTracker
-      (\ s a -> s{_aDynamicClickTracker = a})
-
--- | Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
--- DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or
--- on mobile devices or in mobile apps for regular or interstitial ads,
--- respectively. APP and APP_INTERSTITIAL are only used for existing
--- default ads. New mobile placements must be assigned DISPLAY or
--- DISPLAY_INTERSTITIAL and default ads created for those placements will
--- be limited to those compatibility types. IN_STREAM_VIDEO refers to
--- rendering in-stream video ads developed with the VAST standard.
-aCompatibility :: Lens' Ad (Maybe AdCompatibility)
-aCompatibility
-  = lens _aCompatibility
-      (\ s a -> s{_aCompatibility = a})
-
--- | Whether this ad is archived. When true, active must be false.
-aArchived :: Lens' Ad (Maybe Bool)
-aArchived
-  = lens _aArchived (\ s a -> s{_aArchived = a})
-
--- | Default click-through event tag properties for this ad.
-aDefaultClickThroughEventTagProperties :: Lens' Ad (Maybe DefaultClickThroughEventTagProperties)
-aDefaultClickThroughEventTagProperties
-  = lens _aDefaultClickThroughEventTagProperties
-      (\ s a ->
-         s{_aDefaultClickThroughEventTagProperties = a})
-
--- | Placement assignments for this ad.
-aPlacementAssignments :: Lens' Ad [PlacementAssignment]
-aPlacementAssignments
-  = lens _aPlacementAssignments
-      (\ s a -> s{_aPlacementAssignments = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON Ad where
-        parseJSON
-          = withObject "Ad"
-              (\ o ->
-                 Ad' <$>
-                   (o .:? "targetingTemplateId") <*>
-                     (o .:? "creativeGroupAssignments" .!= mempty)
-                     <*> (o .:? "geoTargeting")
-                     <*> (o .:? "creativeRotation")
-                     <*> (o .:? "technologyTargeting")
-                     <*> (o .:? "audienceSegmentId")
-                     <*> (o .:? "dayPartTargeting")
-                     <*> (o .:? "size")
-                     <*> (o .:? "startTime")
-                     <*> (o .:? "kind" .!= "dfareporting#ad")
-                     <*> (o .:? "clickThroughUrlSuffixProperties")
-                     <*> (o .:? "campaignIdDimensionValue")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "campaignId")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "clickThroughUrl")
-                     <*> (o .:? "deliverySchedule")
-                     <*> (o .:? "eventTagOverrides" .!= mempty)
-                     <*> (o .:? "active")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "keyValueTargetingExpression")
-                     <*> (o .:? "endTime")
-                     <*> (o .:? "createInfo")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "sslRequired")
-                     <*> (o .:? "comments")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "remarketingListExpression")
-                     <*> (o .:? "languageTargeting")
-                     <*> (o .:? "dynamicClickTracker")
-                     <*> (o .:? "compatibility")
-                     <*> (o .:? "archived")
-                     <*> (o .:? "defaultClickThroughEventTagProperties")
-                     <*> (o .:? "placementAssignments" .!= mempty))
-
-instance ToJSON Ad where
-        toJSON Ad'{..}
-          = object
-              (catMaybes
-                 [("targetingTemplateId" .=) <$>
-                    _aTargetingTemplateId,
-                  ("creativeGroupAssignments" .=) <$>
-                    _aCreativeGroupAssignments,
-                  ("geoTargeting" .=) <$> _aGeoTargeting,
-                  ("creativeRotation" .=) <$> _aCreativeRotation,
-                  ("technologyTargeting" .=) <$> _aTechnologyTargeting,
-                  ("audienceSegmentId" .=) <$> _aAudienceSegmentId,
-                  ("dayPartTargeting" .=) <$> _aDayPartTargeting,
-                  ("size" .=) <$> _aSize,
-                  ("startTime" .=) <$> _aStartTime,
-                  Just ("kind" .= _aKind),
-                  ("clickThroughUrlSuffixProperties" .=) <$>
-                    _aClickThroughURLSuffixProperties,
-                  ("campaignIdDimensionValue" .=) <$>
-                    _aCampaignIdDimensionValue,
-                  ("advertiserId" .=) <$> _aAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _aAdvertiserIdDimensionValue,
-                  ("sslCompliant" .=) <$> _aSSLCompliant,
-                  ("campaignId" .=) <$> _aCampaignId,
-                  ("idDimensionValue" .=) <$> _aIdDimensionValue,
-                  ("clickThroughUrl" .=) <$> _aClickThroughURL,
-                  ("deliverySchedule" .=) <$> _aDeliverySchedule,
-                  ("eventTagOverrides" .=) <$> _aEventTagOverrides,
-                  ("active" .=) <$> _aActive,
-                  ("accountId" .=) <$> _aAccountId,
-                  ("name" .=) <$> _aName,
-                  ("keyValueTargetingExpression" .=) <$>
-                    _aKeyValueTargetingExpression,
-                  ("endTime" .=) <$> _aEndTime,
-                  ("createInfo" .=) <$> _aCreateInfo,
-                  ("lastModifiedInfo" .=) <$> _aLastModifiedInfo,
-                  ("id" .=) <$> _aId,
-                  ("sslRequired" .=) <$> _aSSLRequired,
-                  ("comments" .=) <$> _aComments,
-                  ("subaccountId" .=) <$> _aSubAccountId,
-                  ("type" .=) <$> _aType,
-                  ("remarketingListExpression" .=) <$>
-                    _aRemarketingListExpression,
-                  ("languageTargeting" .=) <$> _aLanguageTargeting,
-                  ("dynamicClickTracker" .=) <$> _aDynamicClickTracker,
-                  ("compatibility" .=) <$> _aCompatibility,
-                  ("archived" .=) <$> _aArchived,
-                  ("defaultClickThroughEventTagProperties" .=) <$>
-                    _aDefaultClickThroughEventTagProperties,
-                  ("placementAssignments" .=) <$>
-                    _aPlacementAssignments])
-
--- | Contains properties of a Planning project.
---
--- /See:/ 'project' smart constructor.
-data Project =
-  Project'
-    { _pTargetClicks             :: !(Maybe (Textual Int64))
-    , _pClientBillingCode        :: !(Maybe Text)
-    , _pTargetCpmNanos           :: !(Maybe (Textual Int64))
-    , _pTargetConversions        :: !(Maybe (Textual Int64))
-    , _pBudget                   :: !(Maybe (Textual Int64))
-    , _pKind                     :: !Text
-    , _pAdvertiserId             :: !(Maybe (Textual Int64))
-    , _pEndDate                  :: !(Maybe Date')
-    , _pOverview                 :: !(Maybe Text)
-    , _pTargetImpressions        :: !(Maybe (Textual Int64))
-    , _pStartDate                :: !(Maybe Date')
-    , _pTargetCpcNanos           :: !(Maybe (Textual Int64))
-    , _pAccountId                :: !(Maybe (Textual Int64))
-    , _pName                     :: !(Maybe Text)
-    , _pLastModifiedInfo         :: !(Maybe LastModifiedInfo)
-    , _pId                       :: !(Maybe (Textual Int64))
-    , _pAudienceAgeGroup         :: !(Maybe ProjectAudienceAgeGroup)
-    , _pSubAccountId             :: !(Maybe (Textual Int64))
-    , _pTargetCpmActiveViewNanos :: !(Maybe (Textual Int64))
-    , _pAudienceGender           :: !(Maybe ProjectAudienceGender)
-    , _pClientName               :: !(Maybe Text)
-    , _pTargetCpaNanos           :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Project' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pTargetClicks'
---
--- * 'pClientBillingCode'
---
--- * 'pTargetCpmNanos'
---
--- * 'pTargetConversions'
---
--- * 'pBudget'
---
--- * 'pKind'
---
--- * 'pAdvertiserId'
---
--- * 'pEndDate'
---
--- * 'pOverview'
---
--- * 'pTargetImpressions'
---
--- * 'pStartDate'
---
--- * 'pTargetCpcNanos'
---
--- * 'pAccountId'
---
--- * 'pName'
---
--- * 'pLastModifiedInfo'
---
--- * 'pId'
---
--- * 'pAudienceAgeGroup'
---
--- * 'pSubAccountId'
---
--- * 'pTargetCpmActiveViewNanos'
---
--- * 'pAudienceGender'
---
--- * 'pClientName'
---
--- * 'pTargetCpaNanos'
-project
-    :: Project
-project =
-  Project'
-    { _pTargetClicks = Nothing
-    , _pClientBillingCode = Nothing
-    , _pTargetCpmNanos = Nothing
-    , _pTargetConversions = Nothing
-    , _pBudget = Nothing
-    , _pKind = "dfareporting#project"
-    , _pAdvertiserId = Nothing
-    , _pEndDate = Nothing
-    , _pOverview = Nothing
-    , _pTargetImpressions = Nothing
-    , _pStartDate = Nothing
-    , _pTargetCpcNanos = Nothing
-    , _pAccountId = Nothing
-    , _pName = Nothing
-    , _pLastModifiedInfo = Nothing
-    , _pId = Nothing
-    , _pAudienceAgeGroup = Nothing
-    , _pSubAccountId = Nothing
-    , _pTargetCpmActiveViewNanos = Nothing
-    , _pAudienceGender = Nothing
-    , _pClientName = Nothing
-    , _pTargetCpaNanos = Nothing
-    }
-
-
--- | Number of clicks that the advertiser is targeting.
-pTargetClicks :: Lens' Project (Maybe Int64)
-pTargetClicks
-  = lens _pTargetClicks
-      (\ s a -> s{_pTargetClicks = a})
-      . mapping _Coerce
-
--- | Client billing code of this project.
-pClientBillingCode :: Lens' Project (Maybe Text)
-pClientBillingCode
-  = lens _pClientBillingCode
-      (\ s a -> s{_pClientBillingCode = a})
-
--- | CPM that the advertiser is targeting.
-pTargetCpmNanos :: Lens' Project (Maybe Int64)
-pTargetCpmNanos
-  = lens _pTargetCpmNanos
-      (\ s a -> s{_pTargetCpmNanos = a})
-      . mapping _Coerce
-
--- | Number of conversions that the advertiser is targeting.
-pTargetConversions :: Lens' Project (Maybe Int64)
-pTargetConversions
-  = lens _pTargetConversions
-      (\ s a -> s{_pTargetConversions = a})
-      . mapping _Coerce
-
--- | Budget of this project in the currency specified by the current account.
--- The value stored in this field represents only the non-fractional
--- amount. For example, for USD, the smallest value that can be represented
--- by this field is 1 US dollar.
-pBudget :: Lens' Project (Maybe Int64)
-pBudget
-  = lens _pBudget (\ s a -> s{_pBudget = a}) .
-      mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#project\".
-pKind :: Lens' Project Text
-pKind = lens _pKind (\ s a -> s{_pKind = a})
-
--- | Advertiser ID of this project.
-pAdvertiserId :: Lens' Project (Maybe Int64)
-pAdvertiserId
-  = lens _pAdvertiserId
-      (\ s a -> s{_pAdvertiserId = a})
-      . mapping _Coerce
-
--- | End date of the project.
-pEndDate :: Lens' Project (Maybe Day)
-pEndDate
-  = lens _pEndDate (\ s a -> s{_pEndDate = a}) .
-      mapping _Date
-
--- | Overview of this project.
-pOverview :: Lens' Project (Maybe Text)
-pOverview
-  = lens _pOverview (\ s a -> s{_pOverview = a})
-
--- | Number of impressions that the advertiser is targeting.
-pTargetImpressions :: Lens' Project (Maybe Int64)
-pTargetImpressions
-  = lens _pTargetImpressions
-      (\ s a -> s{_pTargetImpressions = a})
-      . mapping _Coerce
-
--- | Start date of the project.
-pStartDate :: Lens' Project (Maybe Day)
-pStartDate
-  = lens _pStartDate (\ s a -> s{_pStartDate = a}) .
-      mapping _Date
-
--- | CPC that the advertiser is targeting.
-pTargetCpcNanos :: Lens' Project (Maybe Int64)
-pTargetCpcNanos
-  = lens _pTargetCpcNanos
-      (\ s a -> s{_pTargetCpcNanos = a})
-      . mapping _Coerce
-
--- | Account ID of this project.
-pAccountId :: Lens' Project (Maybe Int64)
-pAccountId
-  = lens _pAccountId (\ s a -> s{_pAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this project.
-pName :: Lens' Project (Maybe Text)
-pName = lens _pName (\ s a -> s{_pName = a})
-
--- | Information about the most recent modification of this project.
-pLastModifiedInfo :: Lens' Project (Maybe LastModifiedInfo)
-pLastModifiedInfo
-  = lens _pLastModifiedInfo
-      (\ s a -> s{_pLastModifiedInfo = a})
-
--- | ID of this project. This is a read-only, auto-generated field.
-pId :: Lens' Project (Maybe Int64)
-pId
-  = lens _pId (\ s a -> s{_pId = a}) . mapping _Coerce
-
--- | Audience age group of this project.
-pAudienceAgeGroup :: Lens' Project (Maybe ProjectAudienceAgeGroup)
-pAudienceAgeGroup
-  = lens _pAudienceAgeGroup
-      (\ s a -> s{_pAudienceAgeGroup = a})
-
--- | Subaccount ID of this project.
-pSubAccountId :: Lens' Project (Maybe Int64)
-pSubAccountId
-  = lens _pSubAccountId
-      (\ s a -> s{_pSubAccountId = a})
-      . mapping _Coerce
-
--- | vCPM from Active View that the advertiser is targeting.
-pTargetCpmActiveViewNanos :: Lens' Project (Maybe Int64)
-pTargetCpmActiveViewNanos
-  = lens _pTargetCpmActiveViewNanos
-      (\ s a -> s{_pTargetCpmActiveViewNanos = a})
-      . mapping _Coerce
-
--- | Audience gender of this project.
-pAudienceGender :: Lens' Project (Maybe ProjectAudienceGender)
-pAudienceGender
-  = lens _pAudienceGender
-      (\ s a -> s{_pAudienceGender = a})
-
--- | Name of the project client.
-pClientName :: Lens' Project (Maybe Text)
-pClientName
-  = lens _pClientName (\ s a -> s{_pClientName = a})
-
--- | CPA that the advertiser is targeting.
-pTargetCpaNanos :: Lens' Project (Maybe Int64)
-pTargetCpaNanos
-  = lens _pTargetCpaNanos
-      (\ s a -> s{_pTargetCpaNanos = a})
-      . mapping _Coerce
-
-instance FromJSON Project where
-        parseJSON
-          = withObject "Project"
-              (\ o ->
-                 Project' <$>
-                   (o .:? "targetClicks") <*>
-                     (o .:? "clientBillingCode")
-                     <*> (o .:? "targetCpmNanos")
-                     <*> (o .:? "targetConversions")
-                     <*> (o .:? "budget")
-                     <*> (o .:? "kind" .!= "dfareporting#project")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "endDate")
-                     <*> (o .:? "overview")
-                     <*> (o .:? "targetImpressions")
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "targetCpcNanos")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "audienceAgeGroup")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "targetCpmActiveViewNanos")
-                     <*> (o .:? "audienceGender")
-                     <*> (o .:? "clientName")
-                     <*> (o .:? "targetCpaNanos"))
-
-instance ToJSON Project where
-        toJSON Project'{..}
-          = object
-              (catMaybes
-                 [("targetClicks" .=) <$> _pTargetClicks,
-                  ("clientBillingCode" .=) <$> _pClientBillingCode,
-                  ("targetCpmNanos" .=) <$> _pTargetCpmNanos,
-                  ("targetConversions" .=) <$> _pTargetConversions,
-                  ("budget" .=) <$> _pBudget, Just ("kind" .= _pKind),
-                  ("advertiserId" .=) <$> _pAdvertiserId,
-                  ("endDate" .=) <$> _pEndDate,
-                  ("overview" .=) <$> _pOverview,
-                  ("targetImpressions" .=) <$> _pTargetImpressions,
-                  ("startDate" .=) <$> _pStartDate,
-                  ("targetCpcNanos" .=) <$> _pTargetCpcNanos,
-                  ("accountId" .=) <$> _pAccountId,
-                  ("name" .=) <$> _pName,
-                  ("lastModifiedInfo" .=) <$> _pLastModifiedInfo,
-                  ("id" .=) <$> _pId,
-                  ("audienceAgeGroup" .=) <$> _pAudienceAgeGroup,
-                  ("subaccountId" .=) <$> _pSubAccountId,
-                  ("targetCpmActiveViewNanos" .=) <$>
-                    _pTargetCpmActiveViewNanos,
-                  ("audienceGender" .=) <$> _pAudienceGender,
-                  ("clientName" .=) <$> _pClientName,
-                  ("targetCpaNanos" .=) <$> _pTargetCpaNanos])
-
--- | The report criteria for a report of type \"FLOODLIGHT\".
---
--- /See:/ 'reportFloodlightCriteria' smart constructor.
-data ReportFloodlightCriteria =
-  ReportFloodlightCriteria'
-    { _rfcReportProperties      :: !(Maybe ReportFloodlightCriteriaReportProperties)
-    , _rfcMetricNames           :: !(Maybe [Text])
-    , _rfcCustomRichMediaEvents :: !(Maybe [DimensionValue])
-    , _rfcDimensionFilters      :: !(Maybe [DimensionValue])
-    , _rfcDateRange             :: !(Maybe DateRange)
-    , _rfcFloodlightConfigId    :: !(Maybe DimensionValue)
-    , _rfcDimensions            :: !(Maybe [SortedDimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportFloodlightCriteria' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rfcReportProperties'
---
--- * 'rfcMetricNames'
---
--- * 'rfcCustomRichMediaEvents'
---
--- * 'rfcDimensionFilters'
---
--- * 'rfcDateRange'
---
--- * 'rfcFloodlightConfigId'
---
--- * 'rfcDimensions'
-reportFloodlightCriteria
-    :: ReportFloodlightCriteria
-reportFloodlightCriteria =
-  ReportFloodlightCriteria'
-    { _rfcReportProperties = Nothing
-    , _rfcMetricNames = Nothing
-    , _rfcCustomRichMediaEvents = Nothing
-    , _rfcDimensionFilters = Nothing
-    , _rfcDateRange = Nothing
-    , _rfcFloodlightConfigId = Nothing
-    , _rfcDimensions = Nothing
-    }
-
-
--- | The properties of the report.
-rfcReportProperties :: Lens' ReportFloodlightCriteria (Maybe ReportFloodlightCriteriaReportProperties)
-rfcReportProperties
-  = lens _rfcReportProperties
-      (\ s a -> s{_rfcReportProperties = a})
-
--- | The list of names of metrics the report should include.
-rfcMetricNames :: Lens' ReportFloodlightCriteria [Text]
-rfcMetricNames
-  = lens _rfcMetricNames
-      (\ s a -> s{_rfcMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | The list of custom rich media events to include.
-rfcCustomRichMediaEvents :: Lens' ReportFloodlightCriteria [DimensionValue]
-rfcCustomRichMediaEvents
-  = lens _rfcCustomRichMediaEvents
-      (\ s a -> s{_rfcCustomRichMediaEvents = a})
-      . _Default
-      . _Coerce
-
--- | The list of filters on which dimensions are filtered. Filters for
--- different dimensions are ANDed, filters for the same dimension are
--- grouped together and ORed.
-rfcDimensionFilters :: Lens' ReportFloodlightCriteria [DimensionValue]
-rfcDimensionFilters
-  = lens _rfcDimensionFilters
-      (\ s a -> s{_rfcDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | The date range this report should be run for.
-rfcDateRange :: Lens' ReportFloodlightCriteria (Maybe DateRange)
-rfcDateRange
-  = lens _rfcDateRange (\ s a -> s{_rfcDateRange = a})
-
--- | The floodlight ID for which to show data in this report. All advertisers
--- associated with that ID will automatically be added. The dimension of
--- the value needs to be \'dfa:floodlightConfigId\'.
-rfcFloodlightConfigId :: Lens' ReportFloodlightCriteria (Maybe DimensionValue)
-rfcFloodlightConfigId
-  = lens _rfcFloodlightConfigId
-      (\ s a -> s{_rfcFloodlightConfigId = a})
-
--- | The list of dimensions the report should include.
-rfcDimensions :: Lens' ReportFloodlightCriteria [SortedDimension]
-rfcDimensions
-  = lens _rfcDimensions
-      (\ s a -> s{_rfcDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportFloodlightCriteria where
-        parseJSON
-          = withObject "ReportFloodlightCriteria"
-              (\ o ->
-                 ReportFloodlightCriteria' <$>
-                   (o .:? "reportProperties") <*>
-                     (o .:? "metricNames" .!= mempty)
-                     <*> (o .:? "customRichMediaEvents" .!= mempty)
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "floodlightConfigId")
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON ReportFloodlightCriteria where
-        toJSON ReportFloodlightCriteria'{..}
-          = object
-              (catMaybes
-                 [("reportProperties" .=) <$> _rfcReportProperties,
-                  ("metricNames" .=) <$> _rfcMetricNames,
-                  ("customRichMediaEvents" .=) <$>
-                    _rfcCustomRichMediaEvents,
-                  ("dimensionFilters" .=) <$> _rfcDimensionFilters,
-                  ("dateRange" .=) <$> _rfcDateRange,
-                  ("floodlightConfigId" .=) <$> _rfcFloodlightConfigId,
-                  ("dimensions" .=) <$> _rfcDimensions])
-
--- | Represents the dimensions of ads, placements, creatives, or creative
--- assets.
---
--- /See:/ 'size' smart constructor.
-data Size =
-  Size'
-    { _sHeight :: !(Maybe (Textual Int32))
-    , _sKind   :: !Text
-    , _sWidth  :: !(Maybe (Textual Int32))
-    , _sIab    :: !(Maybe Bool)
-    , _sId     :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Size' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sHeight'
---
--- * 'sKind'
---
--- * 'sWidth'
---
--- * 'sIab'
---
--- * 'sId'
-size
-    :: Size
-size =
-  Size'
-    { _sHeight = Nothing
-    , _sKind = "dfareporting#size"
-    , _sWidth = Nothing
-    , _sIab = Nothing
-    , _sId = Nothing
-    }
-
-
--- | Height of this size. Acceptable values are 0 to 32767, inclusive.
-sHeight :: Lens' Size (Maybe Int32)
-sHeight
-  = lens _sHeight (\ s a -> s{_sHeight = a}) .
-      mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#size\".
-sKind :: Lens' Size Text
-sKind = lens _sKind (\ s a -> s{_sKind = a})
-
--- | Width of this size. Acceptable values are 0 to 32767, inclusive.
-sWidth :: Lens' Size (Maybe Int32)
-sWidth
-  = lens _sWidth (\ s a -> s{_sWidth = a}) .
-      mapping _Coerce
-
--- | IAB standard size. This is a read-only, auto-generated field.
-sIab :: Lens' Size (Maybe Bool)
-sIab = lens _sIab (\ s a -> s{_sIab = a})
-
--- | ID of this size. This is a read-only, auto-generated field.
-sId :: Lens' Size (Maybe Int64)
-sId
-  = lens _sId (\ s a -> s{_sId = a}) . mapping _Coerce
-
-instance FromJSON Size where
-        parseJSON
-          = withObject "Size"
-              (\ o ->
-                 Size' <$>
-                   (o .:? "height") <*>
-                     (o .:? "kind" .!= "dfareporting#size")
-                     <*> (o .:? "width")
-                     <*> (o .:? "iab")
-                     <*> (o .:? "id"))
-
-instance ToJSON Size where
-        toJSON Size'{..}
-          = object
-              (catMaybes
-                 [("height" .=) <$> _sHeight, Just ("kind" .= _sKind),
-                  ("width" .=) <$> _sWidth, ("iab" .=) <$> _sIab,
-                  ("id" .=) <$> _sId])
-
--- | Object Filter.
---
--- /See:/ 'objectFilter' smart constructor.
-data ObjectFilter =
-  ObjectFilter'
-    { _ofStatus    :: !(Maybe ObjectFilterStatus)
-    , _ofKind      :: !Text
-    , _ofObjectIds :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ObjectFilter' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ofStatus'
---
--- * 'ofKind'
---
--- * 'ofObjectIds'
-objectFilter
-    :: ObjectFilter
-objectFilter =
-  ObjectFilter'
-    { _ofStatus = Nothing
-    , _ofKind = "dfareporting#objectFilter"
-    , _ofObjectIds = Nothing
-    }
-
-
--- | Status of the filter. NONE means the user has access to none of the
--- objects. ALL means the user has access to all objects. ASSIGNED means
--- the user has access to the objects with IDs in the objectIds list.
-ofStatus :: Lens' ObjectFilter (Maybe ObjectFilterStatus)
-ofStatus = lens _ofStatus (\ s a -> s{_ofStatus = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#objectFilter\".
-ofKind :: Lens' ObjectFilter Text
-ofKind = lens _ofKind (\ s a -> s{_ofKind = a})
-
--- | Applicable when status is ASSIGNED. The user has access to objects with
--- these object IDs.
-ofObjectIds :: Lens' ObjectFilter [Int64]
-ofObjectIds
-  = lens _ofObjectIds (\ s a -> s{_ofObjectIds = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ObjectFilter where
-        parseJSON
-          = withObject "ObjectFilter"
-              (\ o ->
-                 ObjectFilter' <$>
-                   (o .:? "status") <*>
-                     (o .:? "kind" .!= "dfareporting#objectFilter")
-                     <*> (o .:? "objectIds" .!= mempty))
-
-instance ToJSON ObjectFilter where
-        toJSON ObjectFilter'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _ofStatus,
-                  Just ("kind" .= _ofKind),
-                  ("objectIds" .=) <$> _ofObjectIds])
-
--- | Skippable Settings
---
--- /See:/ 'skippableSetting' smart constructor.
-data SkippableSetting =
-  SkippableSetting'
-    { _ssSkipOffSet     :: !(Maybe VideoOffSet)
-    , _ssProgressOffSet :: !(Maybe VideoOffSet)
-    , _ssKind           :: !Text
-    , _ssSkippable      :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SkippableSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ssSkipOffSet'
---
--- * 'ssProgressOffSet'
---
--- * 'ssKind'
---
--- * 'ssSkippable'
-skippableSetting
-    :: SkippableSetting
-skippableSetting =
-  SkippableSetting'
-    { _ssSkipOffSet = Nothing
-    , _ssProgressOffSet = Nothing
-    , _ssKind = "dfareporting#skippableSetting"
-    , _ssSkippable = Nothing
-    }
-
-
--- | Amount of time to play videos served to this placement before the skip
--- button should appear. Applicable when skippable is true.
-ssSkipOffSet :: Lens' SkippableSetting (Maybe VideoOffSet)
-ssSkipOffSet
-  = lens _ssSkipOffSet (\ s a -> s{_ssSkipOffSet = a})
-
--- | Amount of time to play videos served to this placement before counting a
--- view. Applicable when skippable is true.
-ssProgressOffSet :: Lens' SkippableSetting (Maybe VideoOffSet)
-ssProgressOffSet
-  = lens _ssProgressOffSet
-      (\ s a -> s{_ssProgressOffSet = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#skippableSetting\".
-ssKind :: Lens' SkippableSetting Text
-ssKind = lens _ssKind (\ s a -> s{_ssKind = a})
-
--- | Whether the user can skip creatives served to this placement.
-ssSkippable :: Lens' SkippableSetting (Maybe Bool)
-ssSkippable
-  = lens _ssSkippable (\ s a -> s{_ssSkippable = a})
-
-instance FromJSON SkippableSetting where
-        parseJSON
-          = withObject "SkippableSetting"
-              (\ o ->
-                 SkippableSetting' <$>
-                   (o .:? "skipOffset") <*> (o .:? "progressOffset") <*>
-                     (o .:? "kind" .!= "dfareporting#skippableSetting")
-                     <*> (o .:? "skippable"))
-
-instance ToJSON SkippableSetting where
-        toJSON SkippableSetting'{..}
-          = object
-              (catMaybes
-                 [("skipOffset" .=) <$> _ssSkipOffSet,
-                  ("progressOffset" .=) <$> _ssProgressOffSet,
-                  Just ("kind" .= _ssKind),
-                  ("skippable" .=) <$> _ssSkippable])
-
--- | Reporting Configuration
---
--- /See:/ 'reportsConfiguration' smart constructor.
-data ReportsConfiguration =
-  ReportsConfiguration'
-    { _rcExposureToConversionEnabled :: !(Maybe Bool)
-    , _rcReportGenerationTimeZoneId  :: !(Maybe (Textual Int64))
-    , _rcLookbackConfiguration       :: !(Maybe LookbackConfiguration)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rcExposureToConversionEnabled'
---
--- * 'rcReportGenerationTimeZoneId'
---
--- * 'rcLookbackConfiguration'
-reportsConfiguration
-    :: ReportsConfiguration
-reportsConfiguration =
-  ReportsConfiguration'
-    { _rcExposureToConversionEnabled = Nothing
-    , _rcReportGenerationTimeZoneId = Nothing
-    , _rcLookbackConfiguration = Nothing
-    }
-
-
--- | Whether the exposure to conversion report is enabled. This report shows
--- detailed pathway information on up to 10 of the most recent ad exposures
--- seen by a user before converting.
-rcExposureToConversionEnabled :: Lens' ReportsConfiguration (Maybe Bool)
-rcExposureToConversionEnabled
-  = lens _rcExposureToConversionEnabled
-      (\ s a -> s{_rcExposureToConversionEnabled = a})
-
--- | Report generation time zone ID of this account. This is a required field
--- that can only be changed by a superuser. Acceptable values are: - \"1\"
--- for \"America\/New_York\" - \"2\" for \"Europe\/London\" - \"3\" for
--- \"Europe\/Paris\" - \"4\" for \"Africa\/Johannesburg\" - \"5\" for
--- \"Asia\/Jerusalem\" - \"6\" for \"Asia\/Shanghai\" - \"7\" for
--- \"Asia\/Hong_Kong\" - \"8\" for \"Asia\/Tokyo\" - \"9\" for
--- \"Australia\/Sydney\" - \"10\" for \"Asia\/Dubai\" - \"11\" for
--- \"America\/Los_Angeles\" - \"12\" for \"Pacific\/Auckland\" - \"13\" for
--- \"America\/Sao_Paulo\"
-rcReportGenerationTimeZoneId :: Lens' ReportsConfiguration (Maybe Int64)
-rcReportGenerationTimeZoneId
-  = lens _rcReportGenerationTimeZoneId
-      (\ s a -> s{_rcReportGenerationTimeZoneId = a})
-      . mapping _Coerce
-
--- | Default lookback windows for new advertisers in this account.
-rcLookbackConfiguration :: Lens' ReportsConfiguration (Maybe LookbackConfiguration)
-rcLookbackConfiguration
-  = lens _rcLookbackConfiguration
-      (\ s a -> s{_rcLookbackConfiguration = a})
-
-instance FromJSON ReportsConfiguration where
-        parseJSON
-          = withObject "ReportsConfiguration"
-              (\ o ->
-                 ReportsConfiguration' <$>
-                   (o .:? "exposureToConversionEnabled") <*>
-                     (o .:? "reportGenerationTimeZoneId")
-                     <*> (o .:? "lookbackConfiguration"))
-
-instance ToJSON ReportsConfiguration where
-        toJSON ReportsConfiguration'{..}
-          = object
-              (catMaybes
-                 [("exposureToConversionEnabled" .=) <$>
-                    _rcExposureToConversionEnabled,
-                  ("reportGenerationTimeZoneId" .=) <$>
-                    _rcReportGenerationTimeZoneId,
-                  ("lookbackConfiguration" .=) <$>
-                    _rcLookbackConfiguration])
-
--- | Pricing Schedule
---
--- /See:/ 'pricingSchedule' smart constructor.
-data PricingSchedule =
-  PricingSchedule'
-    { _psTestingStartDate      :: !(Maybe Date')
-    , _psFloodlightActivityId  :: !(Maybe (Textual Int64))
-    , _psEndDate               :: !(Maybe Date')
-    , _psDisregardOverdelivery :: !(Maybe Bool)
-    , _psStartDate             :: !(Maybe Date')
-    , _psCapCostOption         :: !(Maybe PricingScheduleCapCostOption)
-    , _psPricingType           :: !(Maybe PricingSchedulePricingType)
-    , _psPricingPeriods        :: !(Maybe [PricingSchedulePricingPeriod])
-    , _psFlighted              :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PricingSchedule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psTestingStartDate'
---
--- * 'psFloodlightActivityId'
---
--- * 'psEndDate'
---
--- * 'psDisregardOverdelivery'
---
--- * 'psStartDate'
---
--- * 'psCapCostOption'
---
--- * 'psPricingType'
---
--- * 'psPricingPeriods'
---
--- * 'psFlighted'
-pricingSchedule
-    :: PricingSchedule
-pricingSchedule =
-  PricingSchedule'
-    { _psTestingStartDate = Nothing
-    , _psFloodlightActivityId = Nothing
-    , _psEndDate = Nothing
-    , _psDisregardOverdelivery = Nothing
-    , _psStartDate = Nothing
-    , _psCapCostOption = Nothing
-    , _psPricingType = Nothing
-    , _psPricingPeriods = Nothing
-    , _psFlighted = Nothing
-    }
-
-
--- | Testing start date of this placement. The hours, minutes, and seconds of
--- the start date should not be set, as doing so will result in an error.
-psTestingStartDate :: Lens' PricingSchedule (Maybe Day)
-psTestingStartDate
-  = lens _psTestingStartDate
-      (\ s a -> s{_psTestingStartDate = a})
-      . mapping _Date
-
--- | Floodlight activity ID associated with this placement. This field should
--- be set when placement pricing type is set to PRICING_TYPE_CPA.
-psFloodlightActivityId :: Lens' PricingSchedule (Maybe Int64)
-psFloodlightActivityId
-  = lens _psFloodlightActivityId
-      (\ s a -> s{_psFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | Placement end date. This date must be later than, or the same day as,
--- the placement start date, but not later than the campaign end date. If,
--- for example, you set 6\/25\/2015 as both the start and end dates, the
--- effective placement date is just that day only, 6\/25\/2015. The hours,
--- minutes, and seconds of the end date should not be set, as doing so will
--- result in an error. This field is required on insertion.
-psEndDate :: Lens' PricingSchedule (Maybe Day)
-psEndDate
-  = lens _psEndDate (\ s a -> s{_psEndDate = a}) .
-      mapping _Date
-
--- | Whether cap costs are ignored by ad serving.
-psDisregardOverdelivery :: Lens' PricingSchedule (Maybe Bool)
-psDisregardOverdelivery
-  = lens _psDisregardOverdelivery
-      (\ s a -> s{_psDisregardOverdelivery = a})
-
--- | Placement start date. This date must be later than, or the same day as,
--- the campaign start date. The hours, minutes, and seconds of the start
--- date should not be set, as doing so will result in an error. This field
--- is required on insertion.
-psStartDate :: Lens' PricingSchedule (Maybe Day)
-psStartDate
-  = lens _psStartDate (\ s a -> s{_psStartDate = a}) .
-      mapping _Date
-
--- | Placement cap cost option.
-psCapCostOption :: Lens' PricingSchedule (Maybe PricingScheduleCapCostOption)
-psCapCostOption
-  = lens _psCapCostOption
-      (\ s a -> s{_psCapCostOption = a})
-
--- | Placement pricing type. This field is required on insertion.
-psPricingType :: Lens' PricingSchedule (Maybe PricingSchedulePricingType)
-psPricingType
-  = lens _psPricingType
-      (\ s a -> s{_psPricingType = a})
-
--- | Pricing periods for this placement.
-psPricingPeriods :: Lens' PricingSchedule [PricingSchedulePricingPeriod]
-psPricingPeriods
-  = lens _psPricingPeriods
-      (\ s a -> s{_psPricingPeriods = a})
-      . _Default
-      . _Coerce
-
--- | Whether this placement is flighted. If true, pricing periods will be
--- computed automatically.
-psFlighted :: Lens' PricingSchedule (Maybe Bool)
-psFlighted
-  = lens _psFlighted (\ s a -> s{_psFlighted = a})
-
-instance FromJSON PricingSchedule where
-        parseJSON
-          = withObject "PricingSchedule"
-              (\ o ->
-                 PricingSchedule' <$>
-                   (o .:? "testingStartDate") <*>
-                     (o .:? "floodlightActivityId")
-                     <*> (o .:? "endDate")
-                     <*> (o .:? "disregardOverdelivery")
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "capCostOption")
-                     <*> (o .:? "pricingType")
-                     <*> (o .:? "pricingPeriods" .!= mempty)
-                     <*> (o .:? "flighted"))
-
-instance ToJSON PricingSchedule where
-        toJSON PricingSchedule'{..}
-          = object
-              (catMaybes
-                 [("testingStartDate" .=) <$> _psTestingStartDate,
-                  ("floodlightActivityId" .=) <$>
-                    _psFloodlightActivityId,
-                  ("endDate" .=) <$> _psEndDate,
-                  ("disregardOverdelivery" .=) <$>
-                    _psDisregardOverdelivery,
-                  ("startDate" .=) <$> _psStartDate,
-                  ("capCostOption" .=) <$> _psCapCostOption,
-                  ("pricingType" .=) <$> _psPricingType,
-                  ("pricingPeriods" .=) <$> _psPricingPeriods,
-                  ("flighted" .=) <$> _psFlighted])
-
--- | Contains information about a postal code that can be targeted by ads.
---
--- /See:/ 'postalCode' smart constructor.
-data PostalCode =
-  PostalCode'
-    { _pcKind          :: !Text
-    , _pcCode          :: !(Maybe Text)
-    , _pcCountryCode   :: !(Maybe Text)
-    , _pcId            :: !(Maybe Text)
-    , _pcCountryDartId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PostalCode' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pcKind'
---
--- * 'pcCode'
---
--- * 'pcCountryCode'
---
--- * 'pcId'
---
--- * 'pcCountryDartId'
-postalCode
-    :: PostalCode
-postalCode =
-  PostalCode'
-    { _pcKind = "dfareporting#postalCode"
-    , _pcCode = Nothing
-    , _pcCountryCode = Nothing
-    , _pcId = Nothing
-    , _pcCountryDartId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#postalCode\".
-pcKind :: Lens' PostalCode Text
-pcKind = lens _pcKind (\ s a -> s{_pcKind = a})
-
--- | Postal code. This is equivalent to the id field.
-pcCode :: Lens' PostalCode (Maybe Text)
-pcCode = lens _pcCode (\ s a -> s{_pcCode = a})
-
--- | Country code of the country to which this postal code belongs.
-pcCountryCode :: Lens' PostalCode (Maybe Text)
-pcCountryCode
-  = lens _pcCountryCode
-      (\ s a -> s{_pcCountryCode = a})
-
--- | ID of this postal code.
-pcId :: Lens' PostalCode (Maybe Text)
-pcId = lens _pcId (\ s a -> s{_pcId = a})
-
--- | DART ID of the country to which this postal code belongs.
-pcCountryDartId :: Lens' PostalCode (Maybe Int64)
-pcCountryDartId
-  = lens _pcCountryDartId
-      (\ s a -> s{_pcCountryDartId = a})
-      . mapping _Coerce
-
-instance FromJSON PostalCode where
-        parseJSON
-          = withObject "PostalCode"
-              (\ o ->
-                 PostalCode' <$>
-                   (o .:? "kind" .!= "dfareporting#postalCode") <*>
-                     (o .:? "code")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "id")
-                     <*> (o .:? "countryDartId"))
-
-instance ToJSON PostalCode where
-        toJSON PostalCode'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _pcKind), ("code" .=) <$> _pcCode,
-                  ("countryCode" .=) <$> _pcCountryCode,
-                  ("id" .=) <$> _pcId,
-                  ("countryDartId" .=) <$> _pcCountryDartId])
-
--- | Account Permission List Response
---
--- /See:/ 'accountPermissionsListResponse' smart constructor.
-data AccountPermissionsListResponse =
-  AccountPermissionsListResponse'
-    { _aplrKind               :: !Text
-    , _aplrAccountPermissions :: !(Maybe [AccountPermission])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aplrKind'
---
--- * 'aplrAccountPermissions'
-accountPermissionsListResponse
-    :: AccountPermissionsListResponse
-accountPermissionsListResponse =
-  AccountPermissionsListResponse'
-    { _aplrKind = "dfareporting#accountPermissionsListResponse"
-    , _aplrAccountPermissions = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountPermissionsListResponse\".
-aplrKind :: Lens' AccountPermissionsListResponse Text
-aplrKind = lens _aplrKind (\ s a -> s{_aplrKind = a})
-
--- | Account permission collection.
-aplrAccountPermissions :: Lens' AccountPermissionsListResponse [AccountPermission]
-aplrAccountPermissions
-  = lens _aplrAccountPermissions
-      (\ s a -> s{_aplrAccountPermissions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON AccountPermissionsListResponse
-         where
-        parseJSON
-          = withObject "AccountPermissionsListResponse"
-              (\ o ->
-                 AccountPermissionsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#accountPermissionsListResponse")
-                     <*> (o .:? "accountPermissions" .!= mempty))
-
-instance ToJSON AccountPermissionsListResponse where
-        toJSON AccountPermissionsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _aplrKind),
-                  ("accountPermissions" .=) <$>
-                    _aplrAccountPermissions])
-
--- | Contains information about a country that can be targeted by ads.
---
--- /See:/ 'country' smart constructor.
-data Country =
-  Country'
-    { _cKind        :: !Text
-    , _cName        :: !(Maybe Text)
-    , _cCountryCode :: !(Maybe Text)
-    , _cDartId      :: !(Maybe (Textual Int64))
-    , _cSSLEnabled  :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Country' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cKind'
---
--- * 'cName'
---
--- * 'cCountryCode'
---
--- * 'cDartId'
---
--- * 'cSSLEnabled'
-country
-    :: Country
-country =
-  Country'
-    { _cKind = "dfareporting#country"
-    , _cName = Nothing
-    , _cCountryCode = Nothing
-    , _cDartId = Nothing
-    , _cSSLEnabled = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#country\".
-cKind :: Lens' Country Text
-cKind = lens _cKind (\ s a -> s{_cKind = a})
-
--- | Name of this country.
-cName :: Lens' Country (Maybe Text)
-cName = lens _cName (\ s a -> s{_cName = a})
-
--- | Country code.
-cCountryCode :: Lens' Country (Maybe Text)
-cCountryCode
-  = lens _cCountryCode (\ s a -> s{_cCountryCode = a})
-
--- | DART ID of this country. This is the ID used for targeting and
--- generating reports.
-cDartId :: Lens' Country (Maybe Int64)
-cDartId
-  = lens _cDartId (\ s a -> s{_cDartId = a}) .
-      mapping _Coerce
-
--- | Whether ad serving supports secure servers in this country.
-cSSLEnabled :: Lens' Country (Maybe Bool)
-cSSLEnabled
-  = lens _cSSLEnabled (\ s a -> s{_cSSLEnabled = a})
-
-instance FromJSON Country where
-        parseJSON
-          = withObject "Country"
-              (\ o ->
-                 Country' <$>
-                   (o .:? "kind" .!= "dfareporting#country") <*>
-                     (o .:? "name")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "dartId")
-                     <*> (o .:? "sslEnabled"))
-
-instance ToJSON Country where
-        toJSON Country'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cKind), ("name" .=) <$> _cName,
-                  ("countryCode" .=) <$> _cCountryCode,
-                  ("dartId" .=) <$> _cDartId,
-                  ("sslEnabled" .=) <$> _cSSLEnabled])
-
--- | Operating System Version List Response
---
--- /See:/ 'operatingSystemVersionsListResponse' smart constructor.
-data OperatingSystemVersionsListResponse =
-  OperatingSystemVersionsListResponse'
-    { _osvlrKind                    :: !Text
-    , _osvlrOperatingSystemVersions :: !(Maybe [OperatingSystemVersion])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemVersionsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osvlrKind'
---
--- * 'osvlrOperatingSystemVersions'
-operatingSystemVersionsListResponse
-    :: OperatingSystemVersionsListResponse
-operatingSystemVersionsListResponse =
-  OperatingSystemVersionsListResponse'
-    { _osvlrKind = "dfareporting#operatingSystemVersionsListResponse"
-    , _osvlrOperatingSystemVersions = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#operatingSystemVersionsListResponse\".
-osvlrKind :: Lens' OperatingSystemVersionsListResponse Text
-osvlrKind
-  = lens _osvlrKind (\ s a -> s{_osvlrKind = a})
-
--- | Operating system version collection.
-osvlrOperatingSystemVersions :: Lens' OperatingSystemVersionsListResponse [OperatingSystemVersion]
-osvlrOperatingSystemVersions
-  = lens _osvlrOperatingSystemVersions
-      (\ s a -> s{_osvlrOperatingSystemVersions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON OperatingSystemVersionsListResponse
-         where
-        parseJSON
-          = withObject "OperatingSystemVersionsListResponse"
-              (\ o ->
-                 OperatingSystemVersionsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#operatingSystemVersionsListResponse")
-                     <*> (o .:? "operatingSystemVersions" .!= mempty))
-
-instance ToJSON OperatingSystemVersionsListResponse
-         where
-        toJSON OperatingSystemVersionsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _osvlrKind),
-                  ("operatingSystemVersions" .=) <$>
-                    _osvlrOperatingSystemVersions])
-
--- | Click Through URL Suffix settings.
---
--- /See:/ 'clickThroughURLSuffixProperties' smart constructor.
-data ClickThroughURLSuffixProperties =
-  ClickThroughURLSuffixProperties'
-    { _ctuspOverrideInheritedSuffix :: !(Maybe Bool)
-    , _ctuspClickThroughURLSuffix   :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ClickThroughURLSuffixProperties' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctuspOverrideInheritedSuffix'
---
--- * 'ctuspClickThroughURLSuffix'
-clickThroughURLSuffixProperties
-    :: ClickThroughURLSuffixProperties
-clickThroughURLSuffixProperties =
-  ClickThroughURLSuffixProperties'
-    { _ctuspOverrideInheritedSuffix = Nothing
-    , _ctuspClickThroughURLSuffix = Nothing
-    }
-
-
--- | Whether this entity should override the inherited click-through URL
--- suffix with its own defined value.
-ctuspOverrideInheritedSuffix :: Lens' ClickThroughURLSuffixProperties (Maybe Bool)
-ctuspOverrideInheritedSuffix
-  = lens _ctuspOverrideInheritedSuffix
-      (\ s a -> s{_ctuspOverrideInheritedSuffix = a})
-
--- | Click-through URL suffix to apply to all ads in this entity\'s scope.
--- Must be less than 128 characters long.
-ctuspClickThroughURLSuffix :: Lens' ClickThroughURLSuffixProperties (Maybe Text)
-ctuspClickThroughURLSuffix
-  = lens _ctuspClickThroughURLSuffix
-      (\ s a -> s{_ctuspClickThroughURLSuffix = a})
-
-instance FromJSON ClickThroughURLSuffixProperties
-         where
-        parseJSON
-          = withObject "ClickThroughURLSuffixProperties"
-              (\ o ->
-                 ClickThroughURLSuffixProperties' <$>
-                   (o .:? "overrideInheritedSuffix") <*>
-                     (o .:? "clickThroughUrlSuffix"))
-
-instance ToJSON ClickThroughURLSuffixProperties where
-        toJSON ClickThroughURLSuffixProperties'{..}
-          = object
-              (catMaybes
-                 [("overrideInheritedSuffix" .=) <$>
-                    _ctuspOverrideInheritedSuffix,
-                  ("clickThroughUrlSuffix" .=) <$>
-                    _ctuspClickThroughURLSuffix])
-
--- | Pricing Information
---
--- /See:/ 'pricing' smart constructor.
-data Pricing =
-  Pricing'
-    { _priEndDate     :: !(Maybe Date')
-    , _priStartDate   :: !(Maybe Date')
-    , _priGroupType   :: !(Maybe PricingGroupType)
-    , _priPricingType :: !(Maybe PricingPricingType)
-    , _priFlights     :: !(Maybe [Flight])
-    , _priCapCostType :: !(Maybe PricingCapCostType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Pricing' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'priEndDate'
---
--- * 'priStartDate'
---
--- * 'priGroupType'
---
--- * 'priPricingType'
---
--- * 'priFlights'
---
--- * 'priCapCostType'
-pricing
-    :: Pricing
-pricing =
-  Pricing'
-    { _priEndDate = Nothing
-    , _priStartDate = Nothing
-    , _priGroupType = Nothing
-    , _priPricingType = Nothing
-    , _priFlights = Nothing
-    , _priCapCostType = Nothing
-    }
-
-
--- | End date of this inventory item.
-priEndDate :: Lens' Pricing (Maybe Day)
-priEndDate
-  = lens _priEndDate (\ s a -> s{_priEndDate = a}) .
-      mapping _Date
-
--- | Start date of this inventory item.
-priStartDate :: Lens' Pricing (Maybe Day)
-priStartDate
-  = lens _priStartDate (\ s a -> s{_priStartDate = a})
-      . mapping _Date
-
--- | Group type of this inventory item if it represents a placement group. Is
--- null otherwise. There are two type of placement groups:
--- PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory
--- items that acts as a single pricing point for a group of tags.
--- PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items
--- that not only acts as a single pricing point, but also assumes that all
--- the tags in it will be served at the same time. A roadblock requires one
--- of its assigned inventory items to be marked as primary.
-priGroupType :: Lens' Pricing (Maybe PricingGroupType)
-priGroupType
-  = lens _priGroupType (\ s a -> s{_priGroupType = a})
-
--- | Pricing type of this inventory item.
-priPricingType :: Lens' Pricing (Maybe PricingPricingType)
-priPricingType
-  = lens _priPricingType
-      (\ s a -> s{_priPricingType = a})
-
--- | Flights of this inventory item. A flight (a.k.a. pricing period)
--- represents the inventory item pricing information for a specific period
--- of time.
-priFlights :: Lens' Pricing [Flight]
-priFlights
-  = lens _priFlights (\ s a -> s{_priFlights = a}) .
-      _Default
-      . _Coerce
-
--- | Cap cost type of this inventory item.
-priCapCostType :: Lens' Pricing (Maybe PricingCapCostType)
-priCapCostType
-  = lens _priCapCostType
-      (\ s a -> s{_priCapCostType = a})
-
-instance FromJSON Pricing where
-        parseJSON
-          = withObject "Pricing"
-              (\ o ->
-                 Pricing' <$>
-                   (o .:? "endDate") <*> (o .:? "startDate") <*>
-                     (o .:? "groupType")
-                     <*> (o .:? "pricingType")
-                     <*> (o .:? "flights" .!= mempty)
-                     <*> (o .:? "capCostType"))
-
-instance ToJSON Pricing where
-        toJSON Pricing'{..}
-          = object
-              (catMaybes
-                 [("endDate" .=) <$> _priEndDate,
-                  ("startDate" .=) <$> _priStartDate,
-                  ("groupType" .=) <$> _priGroupType,
-                  ("pricingType" .=) <$> _priPricingType,
-                  ("flights" .=) <$> _priFlights,
-                  ("capCostType" .=) <$> _priCapCostType])
-
--- | Audience Segment Group.
---
--- /See:/ 'audienceSegmentGroup' smart constructor.
-data AudienceSegmentGroup =
-  AudienceSegmentGroup'
-    { _asgAudienceSegments :: !(Maybe [AudienceSegment])
-    , _asgName             :: !(Maybe Text)
-    , _asgId               :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AudienceSegmentGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'asgAudienceSegments'
---
--- * 'asgName'
---
--- * 'asgId'
-audienceSegmentGroup
-    :: AudienceSegmentGroup
-audienceSegmentGroup =
-  AudienceSegmentGroup'
-    {_asgAudienceSegments = Nothing, _asgName = Nothing, _asgId = Nothing}
-
-
--- | Audience segments assigned to this group. The number of segments must be
--- between 2 and 100.
-asgAudienceSegments :: Lens' AudienceSegmentGroup [AudienceSegment]
-asgAudienceSegments
-  = lens _asgAudienceSegments
-      (\ s a -> s{_asgAudienceSegments = a})
-      . _Default
-      . _Coerce
-
--- | Name of this audience segment group. This is a required field and must
--- be less than 65 characters long.
-asgName :: Lens' AudienceSegmentGroup (Maybe Text)
-asgName = lens _asgName (\ s a -> s{_asgName = a})
-
--- | ID of this audience segment group. This is a read-only, auto-generated
--- field.
-asgId :: Lens' AudienceSegmentGroup (Maybe Int64)
-asgId
-  = lens _asgId (\ s a -> s{_asgId = a}) .
-      mapping _Coerce
-
-instance FromJSON AudienceSegmentGroup where
-        parseJSON
-          = withObject "AudienceSegmentGroup"
-              (\ o ->
-                 AudienceSegmentGroup' <$>
-                   (o .:? "audienceSegments" .!= mempty) <*>
-                     (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON AudienceSegmentGroup where
-        toJSON AudienceSegmentGroup'{..}
-          = object
-              (catMaybes
-                 [("audienceSegments" .=) <$> _asgAudienceSegments,
-                  ("name" .=) <$> _asgName, ("id" .=) <$> _asgId])
-
--- | Contains information about an operating system that can be targeted by
--- ads.
---
--- /See:/ 'operatingSystem' smart constructor.
-data OperatingSystem =
-  OperatingSystem'
-    { _osDesktop :: !(Maybe Bool)
-    , _osKind    :: !Text
-    , _osName    :: !(Maybe Text)
-    , _osMobile  :: !(Maybe Bool)
-    , _osDartId  :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystem' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osDesktop'
---
--- * 'osKind'
---
--- * 'osName'
---
--- * 'osMobile'
---
--- * 'osDartId'
-operatingSystem
-    :: OperatingSystem
-operatingSystem =
-  OperatingSystem'
-    { _osDesktop = Nothing
-    , _osKind = "dfareporting#operatingSystem"
-    , _osName = Nothing
-    , _osMobile = Nothing
-    , _osDartId = Nothing
-    }
-
-
--- | Whether this operating system is for desktop.
-osDesktop :: Lens' OperatingSystem (Maybe Bool)
-osDesktop
-  = lens _osDesktop (\ s a -> s{_osDesktop = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#operatingSystem\".
-osKind :: Lens' OperatingSystem Text
-osKind = lens _osKind (\ s a -> s{_osKind = a})
-
--- | Name of this operating system.
-osName :: Lens' OperatingSystem (Maybe Text)
-osName = lens _osName (\ s a -> s{_osName = a})
-
--- | Whether this operating system is for mobile.
-osMobile :: Lens' OperatingSystem (Maybe Bool)
-osMobile = lens _osMobile (\ s a -> s{_osMobile = a})
-
--- | DART ID of this operating system. This is the ID used for targeting.
-osDartId :: Lens' OperatingSystem (Maybe Int64)
-osDartId
-  = lens _osDartId (\ s a -> s{_osDartId = a}) .
-      mapping _Coerce
-
-instance FromJSON OperatingSystem where
-        parseJSON
-          = withObject "OperatingSystem"
-              (\ o ->
-                 OperatingSystem' <$>
-                   (o .:? "desktop") <*>
-                     (o .:? "kind" .!= "dfareporting#operatingSystem")
-                     <*> (o .:? "name")
-                     <*> (o .:? "mobile")
-                     <*> (o .:? "dartId"))
-
-instance ToJSON OperatingSystem where
-        toJSON OperatingSystem'{..}
-          = object
-              (catMaybes
-                 [("desktop" .=) <$> _osDesktop,
-                  Just ("kind" .= _osKind), ("name" .=) <$> _osName,
-                  ("mobile" .=) <$> _osMobile,
-                  ("dartId" .=) <$> _osDartId])
-
--- | Flight
---
--- /See:/ 'flight' smart constructor.
-data Flight =
-  Flight'
-    { _fRateOrCost :: !(Maybe (Textual Int64))
-    , _fEndDate    :: !(Maybe Date')
-    , _fStartDate  :: !(Maybe Date')
-    , _fUnits      :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Flight' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fRateOrCost'
---
--- * 'fEndDate'
---
--- * 'fStartDate'
---
--- * 'fUnits'
-flight
-    :: Flight
-flight =
-  Flight'
-    { _fRateOrCost = Nothing
-    , _fEndDate = Nothing
-    , _fStartDate = Nothing
-    , _fUnits = Nothing
-    }
-
-
--- | Rate or cost of this flight.
-fRateOrCost :: Lens' Flight (Maybe Int64)
-fRateOrCost
-  = lens _fRateOrCost (\ s a -> s{_fRateOrCost = a}) .
-      mapping _Coerce
-
--- | Inventory item flight end date.
-fEndDate :: Lens' Flight (Maybe Day)
-fEndDate
-  = lens _fEndDate (\ s a -> s{_fEndDate = a}) .
-      mapping _Date
-
--- | Inventory item flight start date.
-fStartDate :: Lens' Flight (Maybe Day)
-fStartDate
-  = lens _fStartDate (\ s a -> s{_fStartDate = a}) .
-      mapping _Date
-
--- | Units of this flight.
-fUnits :: Lens' Flight (Maybe Int64)
-fUnits
-  = lens _fUnits (\ s a -> s{_fUnits = a}) .
-      mapping _Coerce
-
-instance FromJSON Flight where
-        parseJSON
-          = withObject "Flight"
-              (\ o ->
-                 Flight' <$>
-                   (o .:? "rateOrCost") <*> (o .:? "endDate") <*>
-                     (o .:? "startDate")
-                     <*> (o .:? "units"))
-
-instance ToJSON Flight where
-        toJSON Flight'{..}
-          = object
-              (catMaybes
-                 [("rateOrCost" .=) <$> _fRateOrCost,
-                  ("endDate" .=) <$> _fEndDate,
-                  ("startDate" .=) <$> _fStartDate,
-                  ("units" .=) <$> _fUnits])
-
--- | City List Response
---
--- /See:/ 'citiesListResponse' smart constructor.
-data CitiesListResponse =
-  CitiesListResponse'
-    { _citKind   :: !Text
-    , _citCities :: !(Maybe [City])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CitiesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'citKind'
---
--- * 'citCities'
-citiesListResponse
-    :: CitiesListResponse
-citiesListResponse =
-  CitiesListResponse'
-    {_citKind = "dfareporting#citiesListResponse", _citCities = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#citiesListResponse\".
-citKind :: Lens' CitiesListResponse Text
-citKind = lens _citKind (\ s a -> s{_citKind = a})
-
--- | City collection.
-citCities :: Lens' CitiesListResponse [City]
-citCities
-  = lens _citCities (\ s a -> s{_citCities = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON CitiesListResponse where
-        parseJSON
-          = withObject "CitiesListResponse"
-              (\ o ->
-                 CitiesListResponse' <$>
-                   (o .:? "kind" .!= "dfareporting#citiesListResponse")
-                     <*> (o .:? "cities" .!= mempty))
-
-instance ToJSON CitiesListResponse where
-        toJSON CitiesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _citKind),
-                  ("cities" .=) <$> _citCities])
-
--- | Represents a dimension.
---
--- /See:/ 'dimension' smart constructor.
-data Dimension =
-  Dimension'
-    { _dKind :: !Text
-    , _dName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Dimension' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dKind'
---
--- * 'dName'
-dimension
-    :: Dimension
-dimension = Dimension' {_dKind = "dfareporting#dimension", _dName = Nothing}
-
-
--- | The kind of resource this is, in this case dfareporting#dimension.
-dKind :: Lens' Dimension Text
-dKind = lens _dKind (\ s a -> s{_dKind = a})
-
--- | The dimension name, e.g. dfa:advertiser
-dName :: Lens' Dimension (Maybe Text)
-dName = lens _dName (\ s a -> s{_dName = a})
-
-instance FromJSON Dimension where
-        parseJSON
-          = withObject "Dimension"
-              (\ o ->
-                 Dimension' <$>
-                   (o .:? "kind" .!= "dfareporting#dimension") <*>
-                     (o .:? "name"))
-
-instance ToJSON Dimension where
-        toJSON Dimension'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _dKind), ("name" .=) <$> _dName])
-
--- | The report criteria for a report of type \"REACH\".
---
--- /See:/ 'reportReachCriteria' smart constructor.
-data ReportReachCriteria =
-  ReportReachCriteria'
-    { _rrcReachByFrequencyMetricNames    :: !(Maybe [Text])
-    , _rrcEnableAllDimensionCombinations :: !(Maybe Bool)
-    , _rrcMetricNames                    :: !(Maybe [Text])
-    , _rrcCustomRichMediaEvents          :: !(Maybe CustomRichMediaEvents)
-    , _rrcDimensionFilters               :: !(Maybe [DimensionValue])
-    , _rrcActivities                     :: !(Maybe Activities)
-    , _rrcDateRange                      :: !(Maybe DateRange)
-    , _rrcDimensions                     :: !(Maybe [SortedDimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportReachCriteria' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rrcReachByFrequencyMetricNames'
---
--- * 'rrcEnableAllDimensionCombinations'
---
--- * 'rrcMetricNames'
---
--- * 'rrcCustomRichMediaEvents'
---
--- * 'rrcDimensionFilters'
---
--- * 'rrcActivities'
---
--- * 'rrcDateRange'
---
--- * 'rrcDimensions'
-reportReachCriteria
-    :: ReportReachCriteria
-reportReachCriteria =
-  ReportReachCriteria'
-    { _rrcReachByFrequencyMetricNames = Nothing
-    , _rrcEnableAllDimensionCombinations = Nothing
-    , _rrcMetricNames = Nothing
-    , _rrcCustomRichMediaEvents = Nothing
-    , _rrcDimensionFilters = Nothing
-    , _rrcActivities = Nothing
-    , _rrcDateRange = Nothing
-    , _rrcDimensions = Nothing
-    }
-
-
--- | The list of names of Reach By Frequency metrics the report should
--- include.
-rrcReachByFrequencyMetricNames :: Lens' ReportReachCriteria [Text]
-rrcReachByFrequencyMetricNames
-  = lens _rrcReachByFrequencyMetricNames
-      (\ s a -> s{_rrcReachByFrequencyMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | Whether to enable all reach dimension combinations in the report.
--- Defaults to false. If enabled, the date range of the report should be
--- within the last 42 days.
-rrcEnableAllDimensionCombinations :: Lens' ReportReachCriteria (Maybe Bool)
-rrcEnableAllDimensionCombinations
-  = lens _rrcEnableAllDimensionCombinations
-      (\ s a -> s{_rrcEnableAllDimensionCombinations = a})
-
--- | The list of names of metrics the report should include.
-rrcMetricNames :: Lens' ReportReachCriteria [Text]
-rrcMetricNames
-  = lens _rrcMetricNames
-      (\ s a -> s{_rrcMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | Custom Rich Media Events group.
-rrcCustomRichMediaEvents :: Lens' ReportReachCriteria (Maybe CustomRichMediaEvents)
-rrcCustomRichMediaEvents
-  = lens _rrcCustomRichMediaEvents
-      (\ s a -> s{_rrcCustomRichMediaEvents = a})
-
--- | The list of filters on which dimensions are filtered. Filters for
--- different dimensions are ANDed, filters for the same dimension are
--- grouped together and ORed.
-rrcDimensionFilters :: Lens' ReportReachCriteria [DimensionValue]
-rrcDimensionFilters
-  = lens _rrcDimensionFilters
-      (\ s a -> s{_rrcDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Activity group.
-rrcActivities :: Lens' ReportReachCriteria (Maybe Activities)
-rrcActivities
-  = lens _rrcActivities
-      (\ s a -> s{_rrcActivities = a})
-
--- | The date range this report should be run for.
-rrcDateRange :: Lens' ReportReachCriteria (Maybe DateRange)
-rrcDateRange
-  = lens _rrcDateRange (\ s a -> s{_rrcDateRange = a})
-
--- | The list of dimensions the report should include.
-rrcDimensions :: Lens' ReportReachCriteria [SortedDimension]
-rrcDimensions
-  = lens _rrcDimensions
-      (\ s a -> s{_rrcDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportReachCriteria where
-        parseJSON
-          = withObject "ReportReachCriteria"
-              (\ o ->
-                 ReportReachCriteria' <$>
-                   (o .:? "reachByFrequencyMetricNames" .!= mempty) <*>
-                     (o .:? "enableAllDimensionCombinations")
-                     <*> (o .:? "metricNames" .!= mempty)
-                     <*> (o .:? "customRichMediaEvents")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "activities")
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON ReportReachCriteria where
-        toJSON ReportReachCriteria'{..}
-          = object
-              (catMaybes
-                 [("reachByFrequencyMetricNames" .=) <$>
-                    _rrcReachByFrequencyMetricNames,
-                  ("enableAllDimensionCombinations" .=) <$>
-                    _rrcEnableAllDimensionCombinations,
-                  ("metricNames" .=) <$> _rrcMetricNames,
-                  ("customRichMediaEvents" .=) <$>
-                    _rrcCustomRichMediaEvents,
-                  ("dimensionFilters" .=) <$> _rrcDimensionFilters,
-                  ("activities" .=) <$> _rrcActivities,
-                  ("dateRange" .=) <$> _rrcDateRange,
-                  ("dimensions" .=) <$> _rrcDimensions])
-
--- | Represents a Custom Rich Media Events group.
---
--- /See:/ 'customRichMediaEvents' smart constructor.
-data CustomRichMediaEvents =
-  CustomRichMediaEvents'
-    { _crmeKind             :: !Text
-    , _crmeFilteredEventIds :: !(Maybe [DimensionValue])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CustomRichMediaEvents' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'crmeKind'
---
--- * 'crmeFilteredEventIds'
-customRichMediaEvents
-    :: CustomRichMediaEvents
-customRichMediaEvents =
-  CustomRichMediaEvents'
-    { _crmeKind = "dfareporting#customRichMediaEvents"
-    , _crmeFilteredEventIds = Nothing
-    }
-
-
--- | The kind of resource this is, in this case
--- dfareporting#customRichMediaEvents.
-crmeKind :: Lens' CustomRichMediaEvents Text
-crmeKind = lens _crmeKind (\ s a -> s{_crmeKind = a})
-
--- | List of custom rich media event IDs. Dimension values must be all of
--- type dfa:richMediaEventTypeIdAndName.
-crmeFilteredEventIds :: Lens' CustomRichMediaEvents [DimensionValue]
-crmeFilteredEventIds
-  = lens _crmeFilteredEventIds
-      (\ s a -> s{_crmeFilteredEventIds = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CustomRichMediaEvents where
-        parseJSON
-          = withObject "CustomRichMediaEvents"
-              (\ o ->
-                 CustomRichMediaEvents' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#customRichMediaEvents")
-                     <*> (o .:? "filteredEventIds" .!= mempty))
-
-instance ToJSON CustomRichMediaEvents where
-        toJSON CustomRichMediaEvents'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _crmeKind),
-                  ("filteredEventIds" .=) <$> _crmeFilteredEventIds])
-
--- | Language List Response
---
--- /See:/ 'languagesListResponse' smart constructor.
-data LanguagesListResponse =
-  LanguagesListResponse'
-    { _llrKind      :: !Text
-    , _llrLanguages :: !(Maybe [Language])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LanguagesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'llrKind'
---
--- * 'llrLanguages'
-languagesListResponse
-    :: LanguagesListResponse
-languagesListResponse =
-  LanguagesListResponse'
-    {_llrKind = "dfareporting#languagesListResponse", _llrLanguages = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#languagesListResponse\".
-llrKind :: Lens' LanguagesListResponse Text
-llrKind = lens _llrKind (\ s a -> s{_llrKind = a})
-
--- | Language collection.
-llrLanguages :: Lens' LanguagesListResponse [Language]
-llrLanguages
-  = lens _llrLanguages (\ s a -> s{_llrLanguages = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON LanguagesListResponse where
-        parseJSON
-          = withObject "LanguagesListResponse"
-              (\ o ->
-                 LanguagesListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#languagesListResponse")
-                     <*> (o .:? "languages" .!= mempty))
-
-instance ToJSON LanguagesListResponse where
-        toJSON LanguagesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _llrKind),
-                  ("languages" .=) <$> _llrLanguages])
-
--- | The attributes, like playtime and percent onscreen, that define the
--- Custom Viewability Metric.
---
--- /See:/ 'customViewabilityMetricConfiguration' smart constructor.
-data CustomViewabilityMetricConfiguration =
-  CustomViewabilityMetricConfiguration'
-    { _cvmcViewabilityPercent :: !(Maybe (Textual Int32))
-    , _cvmcTimePercent        :: !(Maybe (Textual Int32))
-    , _cvmcAudible            :: !(Maybe Bool)
-    , _cvmcTimeMillis         :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CustomViewabilityMetricConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cvmcViewabilityPercent'
---
--- * 'cvmcTimePercent'
---
--- * 'cvmcAudible'
---
--- * 'cvmcTimeMillis'
-customViewabilityMetricConfiguration
-    :: CustomViewabilityMetricConfiguration
-customViewabilityMetricConfiguration =
-  CustomViewabilityMetricConfiguration'
-    { _cvmcViewabilityPercent = Nothing
-    , _cvmcTimePercent = Nothing
-    , _cvmcAudible = Nothing
-    , _cvmcTimeMillis = Nothing
-    }
-
-
--- | The percentage of video that must be on screen for the Custom
--- Viewability Metric to count an impression.
-cvmcViewabilityPercent :: Lens' CustomViewabilityMetricConfiguration (Maybe Int32)
-cvmcViewabilityPercent
-  = lens _cvmcViewabilityPercent
-      (\ s a -> s{_cvmcViewabilityPercent = a})
-      . mapping _Coerce
-
--- | The percentage of video that must play for the Custom Viewability Metric
--- to count an impression. If both this and timeMillis are specified, the
--- earlier of the two will be used.
-cvmcTimePercent :: Lens' CustomViewabilityMetricConfiguration (Maybe Int32)
-cvmcTimePercent
-  = lens _cvmcTimePercent
-      (\ s a -> s{_cvmcTimePercent = a})
-      . mapping _Coerce
-
--- | Whether the video must be audible to count an impression.
-cvmcAudible :: Lens' CustomViewabilityMetricConfiguration (Maybe Bool)
-cvmcAudible
-  = lens _cvmcAudible (\ s a -> s{_cvmcAudible = a})
-
--- | The time in milliseconds the video must play for the Custom Viewability
--- Metric to count an impression. If both this and timePercent are
--- specified, the earlier of the two will be used.
-cvmcTimeMillis :: Lens' CustomViewabilityMetricConfiguration (Maybe Int32)
-cvmcTimeMillis
-  = lens _cvmcTimeMillis
-      (\ s a -> s{_cvmcTimeMillis = a})
-      . mapping _Coerce
-
-instance FromJSON
-           CustomViewabilityMetricConfiguration
-         where
-        parseJSON
-          = withObject "CustomViewabilityMetricConfiguration"
-              (\ o ->
-                 CustomViewabilityMetricConfiguration' <$>
-                   (o .:? "viewabilityPercent") <*>
-                     (o .:? "timePercent")
-                     <*> (o .:? "audible")
-                     <*> (o .:? "timeMillis"))
-
-instance ToJSON CustomViewabilityMetricConfiguration
-         where
-        toJSON CustomViewabilityMetricConfiguration'{..}
-          = object
-              (catMaybes
-                 [("viewabilityPercent" .=) <$>
-                    _cvmcViewabilityPercent,
-                  ("timePercent" .=) <$> _cvmcTimePercent,
-                  ("audible" .=) <$> _cvmcAudible,
-                  ("timeMillis" .=) <$> _cvmcTimeMillis])
-
--- | Targetable remarketing list response
---
--- /See:/ 'targetableRemarketingListsListResponse' smart constructor.
-data TargetableRemarketingListsListResponse =
-  TargetableRemarketingListsListResponse'
-    { _trllrNextPageToken              :: !(Maybe Text)
-    , _trllrKind                       :: !Text
-    , _trllrTargetableRemarketingLists :: !(Maybe [TargetableRemarketingList])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetableRemarketingListsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'trllrNextPageToken'
---
--- * 'trllrKind'
---
--- * 'trllrTargetableRemarketingLists'
-targetableRemarketingListsListResponse
-    :: TargetableRemarketingListsListResponse
-targetableRemarketingListsListResponse =
-  TargetableRemarketingListsListResponse'
-    { _trllrNextPageToken = Nothing
-    , _trllrKind = "dfareporting#targetableRemarketingListsListResponse"
-    , _trllrTargetableRemarketingLists = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-trllrNextPageToken :: Lens' TargetableRemarketingListsListResponse (Maybe Text)
-trllrNextPageToken
-  = lens _trllrNextPageToken
-      (\ s a -> s{_trllrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#targetableRemarketingListsListResponse\".
-trllrKind :: Lens' TargetableRemarketingListsListResponse Text
-trllrKind
-  = lens _trllrKind (\ s a -> s{_trllrKind = a})
-
--- | Targetable remarketing list collection.
-trllrTargetableRemarketingLists :: Lens' TargetableRemarketingListsListResponse [TargetableRemarketingList]
-trllrTargetableRemarketingLists
-  = lens _trllrTargetableRemarketingLists
-      (\ s a -> s{_trllrTargetableRemarketingLists = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           TargetableRemarketingListsListResponse
-         where
-        parseJSON
-          = withObject "TargetableRemarketingListsListResponse"
-              (\ o ->
-                 TargetableRemarketingListsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#targetableRemarketingListsListResponse")
-                     <*> (o .:? "targetableRemarketingLists" .!= mempty))
-
-instance ToJSON
-           TargetableRemarketingListsListResponse
-         where
-        toJSON TargetableRemarketingListsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _trllrNextPageToken,
-                  Just ("kind" .= _trllrKind),
-                  ("targetableRemarketingLists" .=) <$>
-                    _trllrTargetableRemarketingLists])
-
--- | Change Log List Response
---
--- /See:/ 'changeLogsListResponse' smart constructor.
-data ChangeLogsListResponse =
-  ChangeLogsListResponse'
-    { _cllrNextPageToken :: !(Maybe Text)
-    , _cllrKind          :: !Text
-    , _cllrChangeLogs    :: !(Maybe [ChangeLog])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ChangeLogsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cllrNextPageToken'
---
--- * 'cllrKind'
---
--- * 'cllrChangeLogs'
-changeLogsListResponse
-    :: ChangeLogsListResponse
-changeLogsListResponse =
-  ChangeLogsListResponse'
-    { _cllrNextPageToken = Nothing
-    , _cllrKind = "dfareporting#changeLogsListResponse"
-    , _cllrChangeLogs = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-cllrNextPageToken :: Lens' ChangeLogsListResponse (Maybe Text)
-cllrNextPageToken
-  = lens _cllrNextPageToken
-      (\ s a -> s{_cllrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#changeLogsListResponse\".
-cllrKind :: Lens' ChangeLogsListResponse Text
-cllrKind = lens _cllrKind (\ s a -> s{_cllrKind = a})
-
--- | Change log collection.
-cllrChangeLogs :: Lens' ChangeLogsListResponse [ChangeLog]
-cllrChangeLogs
-  = lens _cllrChangeLogs
-      (\ s a -> s{_cllrChangeLogs = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ChangeLogsListResponse where
-        parseJSON
-          = withObject "ChangeLogsListResponse"
-              (\ o ->
-                 ChangeLogsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#changeLogsListResponse")
-                     <*> (o .:? "changeLogs" .!= mempty))
-
-instance ToJSON ChangeLogsListResponse where
-        toJSON ChangeLogsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _cllrNextPageToken,
-                  Just ("kind" .= _cllrKind),
-                  ("changeLogs" .=) <$> _cllrChangeLogs])
-
--- | AccountUserProfiles contains properties of a Campaign Manager user
--- profile. This resource is specifically for managing user profiles,
--- whereas UserProfiles is for accessing the API.
---
--- /See:/ 'accountUserProFile' smart constructor.
-data AccountUserProFile =
-  AccountUserProFile'
-    { _aupfEmail            :: !(Maybe Text)
-    , _aupfUserRoleFilter   :: !(Maybe ObjectFilter)
-    , _aupfAdvertiserFilter :: !(Maybe ObjectFilter)
-    , _aupfUserRoleId       :: !(Maybe (Textual Int64))
-    , _aupfKind             :: !Text
-    , _aupfLocale           :: !(Maybe Text)
-    , _aupfSiteFilter       :: !(Maybe ObjectFilter)
-    , _aupfTraffickerType   :: !(Maybe AccountUserProFileTraffickerType)
-    , _aupfActive           :: !(Maybe Bool)
-    , _aupfAccountId        :: !(Maybe (Textual Int64))
-    , _aupfName             :: !(Maybe Text)
-    , _aupfId               :: !(Maybe (Textual Int64))
-    , _aupfUserAccessType   :: !(Maybe AccountUserProFileUserAccessType)
-    , _aupfComments         :: !(Maybe Text)
-    , _aupfSubAccountId     :: !(Maybe (Textual Int64))
-    , _aupfCampaignFilter   :: !(Maybe ObjectFilter)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFile' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupfEmail'
---
--- * 'aupfUserRoleFilter'
---
--- * 'aupfAdvertiserFilter'
---
--- * 'aupfUserRoleId'
---
--- * 'aupfKind'
---
--- * 'aupfLocale'
---
--- * 'aupfSiteFilter'
---
--- * 'aupfTraffickerType'
---
--- * 'aupfActive'
---
--- * 'aupfAccountId'
---
--- * 'aupfName'
---
--- * 'aupfId'
---
--- * 'aupfUserAccessType'
---
--- * 'aupfComments'
---
--- * 'aupfSubAccountId'
---
--- * 'aupfCampaignFilter'
-accountUserProFile
-    :: AccountUserProFile
-accountUserProFile =
-  AccountUserProFile'
-    { _aupfEmail = Nothing
-    , _aupfUserRoleFilter = Nothing
-    , _aupfAdvertiserFilter = Nothing
-    , _aupfUserRoleId = Nothing
-    , _aupfKind = "dfareporting#accountUserProfile"
-    , _aupfLocale = Nothing
-    , _aupfSiteFilter = Nothing
-    , _aupfTraffickerType = Nothing
-    , _aupfActive = Nothing
-    , _aupfAccountId = Nothing
-    , _aupfName = Nothing
-    , _aupfId = Nothing
-    , _aupfUserAccessType = Nothing
-    , _aupfComments = Nothing
-    , _aupfSubAccountId = Nothing
-    , _aupfCampaignFilter = Nothing
-    }
-
-
--- | Email of the user profile. The email addresss must be linked to a Google
--- Account. This field is required on insertion and is read-only after
--- insertion.
-aupfEmail :: Lens' AccountUserProFile (Maybe Text)
-aupfEmail
-  = lens _aupfEmail (\ s a -> s{_aupfEmail = a})
-
--- | Filter that describes which user roles are visible to the user profile.
-aupfUserRoleFilter :: Lens' AccountUserProFile (Maybe ObjectFilter)
-aupfUserRoleFilter
-  = lens _aupfUserRoleFilter
-      (\ s a -> s{_aupfUserRoleFilter = a})
-
--- | Filter that describes which advertisers are visible to the user profile.
-aupfAdvertiserFilter :: Lens' AccountUserProFile (Maybe ObjectFilter)
-aupfAdvertiserFilter
-  = lens _aupfAdvertiserFilter
-      (\ s a -> s{_aupfAdvertiserFilter = a})
-
--- | User role ID of the user profile. This is a required field.
-aupfUserRoleId :: Lens' AccountUserProFile (Maybe Int64)
-aupfUserRoleId
-  = lens _aupfUserRoleId
-      (\ s a -> s{_aupfUserRoleId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountUserProfile\".
-aupfKind :: Lens' AccountUserProFile Text
-aupfKind = lens _aupfKind (\ s a -> s{_aupfKind = a})
-
--- | Locale of the user profile. This is a required field. Acceptable values
--- are: - \"cs\" (Czech) - \"de\" (German) - \"en\" (English) - \"en-GB\"
--- (English United Kingdom) - \"es\" (Spanish) - \"fr\" (French) - \"it\"
--- (Italian) - \"ja\" (Japanese) - \"ko\" (Korean) - \"pl\" (Polish) -
--- \"pt-BR\" (Portuguese Brazil) - \"ru\" (Russian) - \"sv\" (Swedish) -
--- \"tr\" (Turkish) - \"zh-CN\" (Chinese Simplified) - \"zh-TW\" (Chinese
--- Traditional)
-aupfLocale :: Lens' AccountUserProFile (Maybe Text)
-aupfLocale
-  = lens _aupfLocale (\ s a -> s{_aupfLocale = a})
-
--- | Filter that describes which sites are visible to the user profile.
-aupfSiteFilter :: Lens' AccountUserProFile (Maybe ObjectFilter)
-aupfSiteFilter
-  = lens _aupfSiteFilter
-      (\ s a -> s{_aupfSiteFilter = a})
-
--- | Trafficker type of this user profile. This is a read-only field.
-aupfTraffickerType :: Lens' AccountUserProFile (Maybe AccountUserProFileTraffickerType)
-aupfTraffickerType
-  = lens _aupfTraffickerType
-      (\ s a -> s{_aupfTraffickerType = a})
-
--- | Whether this user profile is active. This defaults to false, and must be
--- set true on insert for the user profile to be usable.
-aupfActive :: Lens' AccountUserProFile (Maybe Bool)
-aupfActive
-  = lens _aupfActive (\ s a -> s{_aupfActive = a})
-
--- | Account ID of the user profile. This is a read-only field that can be
--- left blank.
-aupfAccountId :: Lens' AccountUserProFile (Maybe Int64)
-aupfAccountId
-  = lens _aupfAccountId
-      (\ s a -> s{_aupfAccountId = a})
-      . mapping _Coerce
-
--- | Name of the user profile. This is a required field. Must be less than 64
--- characters long, must be globally unique, and cannot contain whitespace
--- or any of the following characters: \"&;\"#%,\".
-aupfName :: Lens' AccountUserProFile (Maybe Text)
-aupfName = lens _aupfName (\ s a -> s{_aupfName = a})
-
--- | ID of the user profile. This is a read-only, auto-generated field.
-aupfId :: Lens' AccountUserProFile (Maybe Int64)
-aupfId
-  = lens _aupfId (\ s a -> s{_aupfId = a}) .
-      mapping _Coerce
-
--- | User type of the user profile. This is a read-only field that can be
--- left blank.
-aupfUserAccessType :: Lens' AccountUserProFile (Maybe AccountUserProFileUserAccessType)
-aupfUserAccessType
-  = lens _aupfUserAccessType
-      (\ s a -> s{_aupfUserAccessType = a})
-
--- | Comments for this user profile.
-aupfComments :: Lens' AccountUserProFile (Maybe Text)
-aupfComments
-  = lens _aupfComments (\ s a -> s{_aupfComments = a})
-
--- | Subaccount ID of the user profile. This is a read-only field that can be
--- left blank.
-aupfSubAccountId :: Lens' AccountUserProFile (Maybe Int64)
-aupfSubAccountId
-  = lens _aupfSubAccountId
-      (\ s a -> s{_aupfSubAccountId = a})
-      . mapping _Coerce
-
--- | Filter that describes which campaigns are visible to the user profile.
-aupfCampaignFilter :: Lens' AccountUserProFile (Maybe ObjectFilter)
-aupfCampaignFilter
-  = lens _aupfCampaignFilter
-      (\ s a -> s{_aupfCampaignFilter = a})
-
-instance FromJSON AccountUserProFile where
-        parseJSON
-          = withObject "AccountUserProFile"
-              (\ o ->
-                 AccountUserProFile' <$>
-                   (o .:? "email") <*> (o .:? "userRoleFilter") <*>
-                     (o .:? "advertiserFilter")
-                     <*> (o .:? "userRoleId")
-                     <*>
-                     (o .:? "kind" .!= "dfareporting#accountUserProfile")
-                     <*> (o .:? "locale")
-                     <*> (o .:? "siteFilter")
-                     <*> (o .:? "traffickerType")
-                     <*> (o .:? "active")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "userAccessType")
-                     <*> (o .:? "comments")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "campaignFilter"))
-
-instance ToJSON AccountUserProFile where
-        toJSON AccountUserProFile'{..}
-          = object
-              (catMaybes
-                 [("email" .=) <$> _aupfEmail,
-                  ("userRoleFilter" .=) <$> _aupfUserRoleFilter,
-                  ("advertiserFilter" .=) <$> _aupfAdvertiserFilter,
-                  ("userRoleId" .=) <$> _aupfUserRoleId,
-                  Just ("kind" .= _aupfKind),
-                  ("locale" .=) <$> _aupfLocale,
-                  ("siteFilter" .=) <$> _aupfSiteFilter,
-                  ("traffickerType" .=) <$> _aupfTraffickerType,
-                  ("active" .=) <$> _aupfActive,
-                  ("accountId" .=) <$> _aupfAccountId,
-                  ("name" .=) <$> _aupfName, ("id" .=) <$> _aupfId,
-                  ("userAccessType" .=) <$> _aupfUserAccessType,
-                  ("comments" .=) <$> _aupfComments,
-                  ("subaccountId" .=) <$> _aupfSubAccountId,
-                  ("campaignFilter" .=) <$> _aupfCampaignFilter])
-
--- | Represents a DimensionValue resource.
---
--- /See:/ 'dimensionValue' smart constructor.
-data DimensionValue =
-  DimensionValue'
-    { _dvEtag          :: !(Maybe Text)
-    , _dvKind          :: !Text
-    , _dvValue         :: !(Maybe Text)
-    , _dvMatchType     :: !(Maybe DimensionValueMatchType)
-    , _dvDimensionName :: !(Maybe Text)
-    , _dvId            :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DimensionValue' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dvEtag'
---
--- * 'dvKind'
---
--- * 'dvValue'
---
--- * 'dvMatchType'
---
--- * 'dvDimensionName'
---
--- * 'dvId'
-dimensionValue
-    :: DimensionValue
-dimensionValue =
-  DimensionValue'
-    { _dvEtag = Nothing
-    , _dvKind = "dfareporting#dimensionValue"
-    , _dvValue = Nothing
-    , _dvMatchType = Nothing
-    , _dvDimensionName = Nothing
-    , _dvId = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-dvEtag :: Lens' DimensionValue (Maybe Text)
-dvEtag = lens _dvEtag (\ s a -> s{_dvEtag = a})
-
--- | The kind of resource this is, in this case dfareporting#dimensionValue.
-dvKind :: Lens' DimensionValue Text
-dvKind = lens _dvKind (\ s a -> s{_dvKind = a})
-
--- | The value of the dimension.
-dvValue :: Lens' DimensionValue (Maybe Text)
-dvValue = lens _dvValue (\ s a -> s{_dvValue = a})
-
--- | Determines how the \'value\' field is matched when filtering. If not
--- specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, \'*\' is
--- allowed as a placeholder for variable length character sequences, and it
--- can be escaped with a backslash. Note, only paid search dimensions
--- (\'dfa:paidSearch*\') allow a matchType other than EXACT.
-dvMatchType :: Lens' DimensionValue (Maybe DimensionValueMatchType)
-dvMatchType
-  = lens _dvMatchType (\ s a -> s{_dvMatchType = a})
-
--- | The name of the dimension.
-dvDimensionName :: Lens' DimensionValue (Maybe Text)
-dvDimensionName
-  = lens _dvDimensionName
-      (\ s a -> s{_dvDimensionName = a})
-
--- | The ID associated with the value if available.
-dvId :: Lens' DimensionValue (Maybe Text)
-dvId = lens _dvId (\ s a -> s{_dvId = a})
-
-instance FromJSON DimensionValue where
-        parseJSON
-          = withObject "DimensionValue"
-              (\ o ->
-                 DimensionValue' <$>
-                   (o .:? "etag") <*>
-                     (o .:? "kind" .!= "dfareporting#dimensionValue")
-                     <*> (o .:? "value")
-                     <*> (o .:? "matchType")
-                     <*> (o .:? "dimensionName")
-                     <*> (o .:? "id"))
-
-instance ToJSON DimensionValue where
-        toJSON DimensionValue'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _dvEtag, Just ("kind" .= _dvKind),
-                  ("value" .=) <$> _dvValue,
-                  ("matchType" .=) <$> _dvMatchType,
-                  ("dimensionName" .=) <$> _dvDimensionName,
-                  ("id" .=) <$> _dvId])
-
--- | Represents an activity group.
---
--- /See:/ 'activities' smart constructor.
-data Activities =
-  Activities'
-    { _actKind        :: !Text
-    , _actMetricNames :: !(Maybe [Text])
-    , _actFilters     :: !(Maybe [DimensionValue])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Activities' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'actKind'
---
--- * 'actMetricNames'
---
--- * 'actFilters'
-activities
-    :: Activities
-activities =
-  Activities'
-    { _actKind = "dfareporting#activities"
-    , _actMetricNames = Nothing
-    , _actFilters = Nothing
-    }
-
-
--- | The kind of resource this is, in this case dfareporting#activities.
-actKind :: Lens' Activities Text
-actKind = lens _actKind (\ s a -> s{_actKind = a})
-
--- | List of names of floodlight activity metrics.
-actMetricNames :: Lens' Activities [Text]
-actMetricNames
-  = lens _actMetricNames
-      (\ s a -> s{_actMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | List of activity filters. The dimension values need to be all either of
--- type \"dfa:activity\" or \"dfa:activityGroup\".
-actFilters :: Lens' Activities [DimensionValue]
-actFilters
-  = lens _actFilters (\ s a -> s{_actFilters = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON Activities where
-        parseJSON
-          = withObject "Activities"
-              (\ o ->
-                 Activities' <$>
-                   (o .:? "kind" .!= "dfareporting#activities") <*>
-                     (o .:? "metricNames" .!= mempty)
-                     <*> (o .:? "filters" .!= mempty))
-
-instance ToJSON Activities where
-        toJSON Activities'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _actKind),
-                  ("metricNames" .=) <$> _actMetricNames,
-                  ("filters" .=) <$> _actFilters])
-
--- | User Role Permission Group List Response
---
--- /See:/ 'userRolePermissionGroupsListResponse' smart constructor.
-data UserRolePermissionGroupsListResponse =
-  UserRolePermissionGroupsListResponse'
-    { _urpglrUserRolePermissionGroups :: !(Maybe [UserRolePermissionGroup])
-    , _urpglrKind                     :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urpglrUserRolePermissionGroups'
---
--- * 'urpglrKind'
-userRolePermissionGroupsListResponse
-    :: UserRolePermissionGroupsListResponse
-userRolePermissionGroupsListResponse =
-  UserRolePermissionGroupsListResponse'
-    { _urpglrUserRolePermissionGroups = Nothing
-    , _urpglrKind = "dfareporting#userRolePermissionGroupsListResponse"
-    }
-
-
--- | User role permission group collection.
-urpglrUserRolePermissionGroups :: Lens' UserRolePermissionGroupsListResponse [UserRolePermissionGroup]
-urpglrUserRolePermissionGroups
-  = lens _urpglrUserRolePermissionGroups
-      (\ s a -> s{_urpglrUserRolePermissionGroups = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRolePermissionGroupsListResponse\".
-urpglrKind :: Lens' UserRolePermissionGroupsListResponse Text
-urpglrKind
-  = lens _urpglrKind (\ s a -> s{_urpglrKind = a})
-
-instance FromJSON
-           UserRolePermissionGroupsListResponse
-         where
-        parseJSON
-          = withObject "UserRolePermissionGroupsListResponse"
-              (\ o ->
-                 UserRolePermissionGroupsListResponse' <$>
-                   (o .:? "userRolePermissionGroups" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#userRolePermissionGroupsListResponse"))
-
-instance ToJSON UserRolePermissionGroupsListResponse
-         where
-        toJSON UserRolePermissionGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [("userRolePermissionGroups" .=) <$>
-                    _urpglrUserRolePermissionGroups,
-                  Just ("kind" .= _urpglrKind)])
-
--- | Placement Tag
---
--- /See:/ 'placementTag' smart constructor.
-data PlacementTag =
-  PlacementTag'
-    { _ptPlacementId :: !(Maybe (Textual Int64))
-    , _ptTagDatas    :: !(Maybe [TagData])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementTag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptPlacementId'
---
--- * 'ptTagDatas'
-placementTag
-    :: PlacementTag
-placementTag = PlacementTag' {_ptPlacementId = Nothing, _ptTagDatas = Nothing}
-
-
--- | Placement ID
-ptPlacementId :: Lens' PlacementTag (Maybe Int64)
-ptPlacementId
-  = lens _ptPlacementId
-      (\ s a -> s{_ptPlacementId = a})
-      . mapping _Coerce
-
--- | Tags generated for this placement.
-ptTagDatas :: Lens' PlacementTag [TagData]
-ptTagDatas
-  = lens _ptTagDatas (\ s a -> s{_ptTagDatas = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON PlacementTag where
-        parseJSON
-          = withObject "PlacementTag"
-              (\ o ->
-                 PlacementTag' <$>
-                   (o .:? "placementId") <*>
-                     (o .:? "tagDatas" .!= mempty))
-
-instance ToJSON PlacementTag where
-        toJSON PlacementTag'{..}
-          = object
-              (catMaybes
-                 [("placementId" .=) <$> _ptPlacementId,
-                  ("tagDatas" .=) <$> _ptTagDatas])
-
--- | Remarketing list response
---
--- /See:/ 'remarketingListsListResponse' smart constructor.
-data RemarketingListsListResponse =
-  RemarketingListsListResponse'
-    { _rllrNextPageToken    :: !(Maybe Text)
-    , _rllrRemarketingLists :: !(Maybe [RemarketingList])
-    , _rllrKind             :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rllrNextPageToken'
---
--- * 'rllrRemarketingLists'
---
--- * 'rllrKind'
-remarketingListsListResponse
-    :: RemarketingListsListResponse
-remarketingListsListResponse =
-  RemarketingListsListResponse'
-    { _rllrNextPageToken = Nothing
-    , _rllrRemarketingLists = Nothing
-    , _rllrKind = "dfareporting#remarketingListsListResponse"
-    }
-
-
--- | Pagination token to be used for the next list operation.
-rllrNextPageToken :: Lens' RemarketingListsListResponse (Maybe Text)
-rllrNextPageToken
-  = lens _rllrNextPageToken
-      (\ s a -> s{_rllrNextPageToken = a})
-
--- | Remarketing list collection.
-rllrRemarketingLists :: Lens' RemarketingListsListResponse [RemarketingList]
-rllrRemarketingLists
-  = lens _rllrRemarketingLists
-      (\ s a -> s{_rllrRemarketingLists = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#remarketingListsListResponse\".
-rllrKind :: Lens' RemarketingListsListResponse Text
-rllrKind = lens _rllrKind (\ s a -> s{_rllrKind = a})
-
-instance FromJSON RemarketingListsListResponse where
-        parseJSON
-          = withObject "RemarketingListsListResponse"
-              (\ o ->
-                 RemarketingListsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "remarketingLists" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#remarketingListsListResponse"))
-
-instance ToJSON RemarketingListsListResponse where
-        toJSON RemarketingListsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _rllrNextPageToken,
-                  ("remarketingLists" .=) <$> _rllrRemarketingLists,
-                  Just ("kind" .= _rllrKind)])
-
--- | Contains properties of a dynamic targeting key. Dynamic targeting keys
--- are unique, user-friendly labels, created at the advertiser level in
--- DCM, that can be assigned to ads, creatives, and placements and used for
--- targeting with Studio dynamic creatives. Use these labels instead of
--- numeric Campaign Manager IDs (such as placement IDs) to save time and
--- avoid errors in your dynamic feeds.
---
--- /See:/ 'dynamicTargetingKey' smart constructor.
-data DynamicTargetingKey =
-  DynamicTargetingKey'
-    { _dtkObjectType :: !(Maybe DynamicTargetingKeyObjectType)
-    , _dtkKind       :: !Text
-    , _dtkObjectId   :: !(Maybe (Textual Int64))
-    , _dtkName       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DynamicTargetingKey' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dtkObjectType'
---
--- * 'dtkKind'
---
--- * 'dtkObjectId'
---
--- * 'dtkName'
-dynamicTargetingKey
-    :: DynamicTargetingKey
-dynamicTargetingKey =
-  DynamicTargetingKey'
-    { _dtkObjectType = Nothing
-    , _dtkKind = "dfareporting#dynamicTargetingKey"
-    , _dtkObjectId = Nothing
-    , _dtkName = Nothing
-    }
-
-
--- | Type of the object of this dynamic targeting key. This is a required
--- field.
-dtkObjectType :: Lens' DynamicTargetingKey (Maybe DynamicTargetingKeyObjectType)
-dtkObjectType
-  = lens _dtkObjectType
-      (\ s a -> s{_dtkObjectType = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#dynamicTargetingKey\".
-dtkKind :: Lens' DynamicTargetingKey Text
-dtkKind = lens _dtkKind (\ s a -> s{_dtkKind = a})
-
--- | ID of the object of this dynamic targeting key. This is a required
--- field.
-dtkObjectId :: Lens' DynamicTargetingKey (Maybe Int64)
-dtkObjectId
-  = lens _dtkObjectId (\ s a -> s{_dtkObjectId = a}) .
-      mapping _Coerce
-
--- | Name of this dynamic targeting key. This is a required field. Must be
--- less than 256 characters long and cannot contain commas. All characters
--- are converted to lowercase.
-dtkName :: Lens' DynamicTargetingKey (Maybe Text)
-dtkName = lens _dtkName (\ s a -> s{_dtkName = a})
-
-instance FromJSON DynamicTargetingKey where
-        parseJSON
-          = withObject "DynamicTargetingKey"
-              (\ o ->
-                 DynamicTargetingKey' <$>
-                   (o .:? "objectType") <*>
-                     (o .:? "kind" .!= "dfareporting#dynamicTargetingKey")
-                     <*> (o .:? "objectId")
-                     <*> (o .:? "name"))
-
-instance ToJSON DynamicTargetingKey where
-        toJSON DynamicTargetingKey'{..}
-          = object
-              (catMaybes
-                 [("objectType" .=) <$> _dtkObjectType,
-                  Just ("kind" .= _dtkKind),
-                  ("objectId" .=) <$> _dtkObjectId,
-                  ("name" .=) <$> _dtkName])
-
--- | Contains properties of a Creative.
---
--- /See:/ 'creative' smart constructor.
-data Creative =
-  Creative'
-    { _creConvertFlashToHTML5                 :: !(Maybe Bool)
-    , _creBackupImageTargetWindow             :: !(Maybe TargetWindow)
-    , _creRenderingIdDimensionValue           :: !(Maybe DimensionValue)
-    , _creCustomKeyValues                     :: !(Maybe [Text])
-    , _creSkipOffSet                          :: !(Maybe VideoOffSet)
-    , _creRenderingId                         :: !(Maybe (Textual Int64))
-    , _creThirdPartyBackupImageImpressionsURL :: !(Maybe Text)
-    , _creFsCommand                           :: !(Maybe FsCommand)
-    , _creAllowScriptAccess                   :: !(Maybe Bool)
-    , _creHTMLCodeLocked                      :: !(Maybe Bool)
-    , _creRequiredFlashPluginVersion          :: !(Maybe Text)
-    , _creUniversalAdId                       :: !(Maybe UniversalAdId)
-    , _creAuthoringTool                       :: !(Maybe CreativeAuthoringTool)
-    , _creSize                                :: !(Maybe Size)
-    , _creThirdPartyURLs                      :: !(Maybe [ThirdPartyTrackingURL])
-    , _creProgressOffSet                      :: !(Maybe VideoOffSet)
-    , _creCounterCustomEvents                 :: !(Maybe [CreativeCustomEvent])
-    , _creKind                                :: !Text
-    , _creSSLOverride                         :: !(Maybe Bool)
-    , _creHTMLCode                            :: !(Maybe Text)
-    , _creAdvertiserId                        :: !(Maybe (Textual Int64))
-    , _creRequiredFlashVersion                :: !(Maybe (Textual Int32))
-    , _creBackgRoundColor                     :: !(Maybe Text)
-    , _creAdTagKeys                           :: !(Maybe [Text])
-    , _creSkippable                           :: !(Maybe Bool)
-    , _creSSLCompliant                        :: !(Maybe Bool)
-    , _creIdDimensionValue                    :: !(Maybe DimensionValue)
-    , _creBackupImageReportingLabel           :: !(Maybe Text)
-    , _creCommercialId                        :: !(Maybe Text)
-    , _creActive                              :: !(Maybe Bool)
-    , _creExitCustomEvents                    :: !(Maybe [CreativeCustomEvent])
-    , _creAccountId                           :: !(Maybe (Textual Int64))
-    , _creBackupImageClickThroughURL          :: !(Maybe CreativeClickThroughURL)
-    , _creName                                :: !(Maybe Text)
-    , _creOverrideCss                         :: !(Maybe Text)
-    , _creAdditionalSizes                     :: !(Maybe [Size])
-    , _creClickTags                           :: !(Maybe [ClickTag])
-    , _creAdParameters                        :: !(Maybe Text)
-    , _creVersion                             :: !(Maybe (Textual Int32))
-    , _creMediaDescription                    :: !(Maybe Text)
-    , _creMediaDuration                       :: !(Maybe (Textual Double))
-    , _creLatestTraffickedCreativeId          :: !(Maybe (Textual Int64))
-    , _creThirdPartyRichMediaImpressionsURL   :: !(Maybe Text)
-    , _creDynamicAssetSelection               :: !(Maybe Bool)
-    , _creLastModifiedInfo                    :: !(Maybe LastModifiedInfo)
-    , _creId                                  :: !(Maybe (Textual Int64))
-    , _creAuthoringSource                     :: !(Maybe CreativeAuthoringSource)
-    , _creStudioAdvertiserId                  :: !(Maybe (Textual Int64))
-    , _creCreativeAssets                      :: !(Maybe [CreativeAsset])
-    , _creSubAccountId                        :: !(Maybe (Textual Int64))
-    , _creType                                :: !(Maybe CreativeType)
-    , _creTimerCustomEvents                   :: !(Maybe [CreativeCustomEvent])
-    , _creCreativeAssetSelection              :: !(Maybe CreativeAssetSelection)
-    , _creStudioCreativeId                    :: !(Maybe (Textual Int64))
-    , _creCompatibility                       :: !(Maybe [CreativeCompatibilityItem])
-    , _creBackupImageFeatures                 :: !(Maybe [CreativeBackupImageFeaturesItem])
-    , _creArtworkType                         :: !(Maybe CreativeArtworkType)
-    , _creArchived                            :: !(Maybe Bool)
-    , _creCompanionCreatives                  :: !(Maybe [Textual Int64])
-    , _creTotalFileSize                       :: !(Maybe (Textual Int64))
-    , _creStudioTraffickedCreativeId          :: !(Maybe (Textual Int64))
-    , _creAutoAdvanceImages                   :: !(Maybe Bool)
-    , _creRedirectURL                         :: !(Maybe Text)
-    , _creCreativeFieldAssignments            :: !(Maybe [CreativeFieldAssignment])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Creative' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'creConvertFlashToHTML5'
---
--- * 'creBackupImageTargetWindow'
---
--- * 'creRenderingIdDimensionValue'
---
--- * 'creCustomKeyValues'
---
--- * 'creSkipOffSet'
---
--- * 'creRenderingId'
---
--- * 'creThirdPartyBackupImageImpressionsURL'
---
--- * 'creFsCommand'
---
--- * 'creAllowScriptAccess'
---
--- * 'creHTMLCodeLocked'
---
--- * 'creRequiredFlashPluginVersion'
---
--- * 'creUniversalAdId'
---
--- * 'creAuthoringTool'
---
--- * 'creSize'
---
--- * 'creThirdPartyURLs'
---
--- * 'creProgressOffSet'
---
--- * 'creCounterCustomEvents'
---
--- * 'creKind'
---
--- * 'creSSLOverride'
---
--- * 'creHTMLCode'
---
--- * 'creAdvertiserId'
---
--- * 'creRequiredFlashVersion'
---
--- * 'creBackgRoundColor'
---
--- * 'creAdTagKeys'
---
--- * 'creSkippable'
---
--- * 'creSSLCompliant'
---
--- * 'creIdDimensionValue'
---
--- * 'creBackupImageReportingLabel'
---
--- * 'creCommercialId'
---
--- * 'creActive'
---
--- * 'creExitCustomEvents'
---
--- * 'creAccountId'
---
--- * 'creBackupImageClickThroughURL'
---
--- * 'creName'
---
--- * 'creOverrideCss'
---
--- * 'creAdditionalSizes'
---
--- * 'creClickTags'
---
--- * 'creAdParameters'
---
--- * 'creVersion'
---
--- * 'creMediaDescription'
---
--- * 'creMediaDuration'
---
--- * 'creLatestTraffickedCreativeId'
---
--- * 'creThirdPartyRichMediaImpressionsURL'
---
--- * 'creDynamicAssetSelection'
---
--- * 'creLastModifiedInfo'
---
--- * 'creId'
---
--- * 'creAuthoringSource'
---
--- * 'creStudioAdvertiserId'
---
--- * 'creCreativeAssets'
---
--- * 'creSubAccountId'
---
--- * 'creType'
---
--- * 'creTimerCustomEvents'
---
--- * 'creCreativeAssetSelection'
---
--- * 'creStudioCreativeId'
---
--- * 'creCompatibility'
---
--- * 'creBackupImageFeatures'
---
--- * 'creArtworkType'
---
--- * 'creArchived'
---
--- * 'creCompanionCreatives'
---
--- * 'creTotalFileSize'
---
--- * 'creStudioTraffickedCreativeId'
---
--- * 'creAutoAdvanceImages'
---
--- * 'creRedirectURL'
---
--- * 'creCreativeFieldAssignments'
-creative
-    :: Creative
-creative =
-  Creative'
-    { _creConvertFlashToHTML5 = Nothing
-    , _creBackupImageTargetWindow = Nothing
-    , _creRenderingIdDimensionValue = Nothing
-    , _creCustomKeyValues = Nothing
-    , _creSkipOffSet = Nothing
-    , _creRenderingId = Nothing
-    , _creThirdPartyBackupImageImpressionsURL = Nothing
-    , _creFsCommand = Nothing
-    , _creAllowScriptAccess = Nothing
-    , _creHTMLCodeLocked = Nothing
-    , _creRequiredFlashPluginVersion = Nothing
-    , _creUniversalAdId = Nothing
-    , _creAuthoringTool = Nothing
-    , _creSize = Nothing
-    , _creThirdPartyURLs = Nothing
-    , _creProgressOffSet = Nothing
-    , _creCounterCustomEvents = Nothing
-    , _creKind = "dfareporting#creative"
-    , _creSSLOverride = Nothing
-    , _creHTMLCode = Nothing
-    , _creAdvertiserId = Nothing
-    , _creRequiredFlashVersion = Nothing
-    , _creBackgRoundColor = Nothing
-    , _creAdTagKeys = Nothing
-    , _creSkippable = Nothing
-    , _creSSLCompliant = Nothing
-    , _creIdDimensionValue = Nothing
-    , _creBackupImageReportingLabel = Nothing
-    , _creCommercialId = Nothing
-    , _creActive = Nothing
-    , _creExitCustomEvents = Nothing
-    , _creAccountId = Nothing
-    , _creBackupImageClickThroughURL = Nothing
-    , _creName = Nothing
-    , _creOverrideCss = Nothing
-    , _creAdditionalSizes = Nothing
-    , _creClickTags = Nothing
-    , _creAdParameters = Nothing
-    , _creVersion = Nothing
-    , _creMediaDescription = Nothing
-    , _creMediaDuration = Nothing
-    , _creLatestTraffickedCreativeId = Nothing
-    , _creThirdPartyRichMediaImpressionsURL = Nothing
-    , _creDynamicAssetSelection = Nothing
-    , _creLastModifiedInfo = Nothing
-    , _creId = Nothing
-    , _creAuthoringSource = Nothing
-    , _creStudioAdvertiserId = Nothing
-    , _creCreativeAssets = Nothing
-    , _creSubAccountId = Nothing
-    , _creType = Nothing
-    , _creTimerCustomEvents = Nothing
-    , _creCreativeAssetSelection = Nothing
-    , _creStudioCreativeId = Nothing
-    , _creCompatibility = Nothing
-    , _creBackupImageFeatures = Nothing
-    , _creArtworkType = Nothing
-    , _creArchived = Nothing
-    , _creCompanionCreatives = Nothing
-    , _creTotalFileSize = Nothing
-    , _creStudioTraffickedCreativeId = Nothing
-    , _creAutoAdvanceImages = Nothing
-    , _creRedirectURL = Nothing
-    , _creCreativeFieldAssignments = Nothing
-    }
-
-
--- | Whether Flash assets associated with the creative need to be
--- automatically converted to HTML5. This flag is enabled by default and
--- users can choose to disable it if they don\'t want the system to
--- generate and use HTML5 asset for this creative. Applicable to the
--- following creative type: FLASH_INPAGE. Applicable to DISPLAY when the
--- primary asset type is not HTML_IMAGE.
-creConvertFlashToHTML5 :: Lens' Creative (Maybe Bool)
-creConvertFlashToHTML5
-  = lens _creConvertFlashToHTML5
-      (\ s a -> s{_creConvertFlashToHTML5 = a})
-
--- | Target window for backup image. Applicable to the following creative
--- types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the
--- primary asset type is not HTML_IMAGE.
-creBackupImageTargetWindow :: Lens' Creative (Maybe TargetWindow)
-creBackupImageTargetWindow
-  = lens _creBackupImageTargetWindow
-      (\ s a -> s{_creBackupImageTargetWindow = a})
-
--- | Dimension value for the rendering ID of this creative. This is a
--- read-only field. Applicable to all creative types.
-creRenderingIdDimensionValue :: Lens' Creative (Maybe DimensionValue)
-creRenderingIdDimensionValue
-  = lens _creRenderingIdDimensionValue
-      (\ s a -> s{_creRenderingIdDimensionValue = a})
-
--- | Custom key-values for a Rich Media creative. Key-values let you
--- customize the creative settings of a Rich Media ad running on your site
--- without having to contact the advertiser. You can use key-values to
--- dynamically change the look or functionality of a creative. Applicable
--- to the following creative types: all RICH_MEDIA, and all VPAID.
-creCustomKeyValues :: Lens' Creative [Text]
-creCustomKeyValues
-  = lens _creCustomKeyValues
-      (\ s a -> s{_creCustomKeyValues = a})
-      . _Default
-      . _Coerce
-
--- | Amount of time to play the video before the skip button appears.
--- Applicable to the following creative types: all INSTREAM_VIDEO.
-creSkipOffSet :: Lens' Creative (Maybe VideoOffSet)
-creSkipOffSet
-  = lens _creSkipOffSet
-      (\ s a -> s{_creSkipOffSet = a})
-
--- | ID of current rendering version. This is a read-only field. Applicable
--- to all creative types.
-creRenderingId :: Lens' Creative (Maybe Int64)
-creRenderingId
-  = lens _creRenderingId
-      (\ s a -> s{_creRenderingId = a})
-      . mapping _Coerce
-
--- | Third-party URL used to record backup image impressions. Applicable to
--- the following creative types: all RICH_MEDIA.
-creThirdPartyBackupImageImpressionsURL :: Lens' Creative (Maybe Text)
-creThirdPartyBackupImageImpressionsURL
-  = lens _creThirdPartyBackupImageImpressionsURL
-      (\ s a ->
-         s{_creThirdPartyBackupImageImpressionsURL = a})
-
--- | OpenWindow FSCommand of this creative. This lets the SWF file
--- communicate with either Flash Player or the program hosting Flash
--- Player, such as a web browser. This is only triggered if
--- allowScriptAccess field is true. Applicable to the following creative
--- types: FLASH_INPAGE.
-creFsCommand :: Lens' Creative (Maybe FsCommand)
-creFsCommand
-  = lens _creFsCommand (\ s a -> s{_creFsCommand = a})
-
--- | Whether script access is allowed for this creative. This is a read-only
--- and deprecated field which will automatically be set to true on update.
--- Applicable to the following creative types: FLASH_INPAGE.
-creAllowScriptAccess :: Lens' Creative (Maybe Bool)
-creAllowScriptAccess
-  = lens _creAllowScriptAccess
-      (\ s a -> s{_creAllowScriptAccess = a})
-
--- | Whether HTML code is generated by Campaign Manager or manually entered.
--- Set to true to ignore changes to htmlCode. Applicable to the following
--- creative types: FLASH_INPAGE and HTML5_BANNER.
-creHTMLCodeLocked :: Lens' Creative (Maybe Bool)
-creHTMLCodeLocked
-  = lens _creHTMLCodeLocked
-      (\ s a -> s{_creHTMLCodeLocked = a})
-
--- | The minimum required Flash plugin version for this creative. For
--- example, 11.2.202.235. This is a read-only field. Applicable to the
--- following creative types: all RICH_MEDIA, and all VPAID.
-creRequiredFlashPluginVersion :: Lens' Creative (Maybe Text)
-creRequiredFlashPluginVersion
-  = lens _creRequiredFlashPluginVersion
-      (\ s a -> s{_creRequiredFlashPluginVersion = a})
-
--- | A Universal Ad ID as per the VAST 4.0 spec. Applicable to the following
--- creative types: INSTREAM_AUDIO and INSTREAM_VIDEO and VPAID.
-creUniversalAdId :: Lens' Creative (Maybe UniversalAdId)
-creUniversalAdId
-  = lens _creUniversalAdId
-      (\ s a -> s{_creUniversalAdId = a})
-
--- | Authoring tool for HTML5 banner creatives. This is a read-only field.
--- Applicable to the following creative types: HTML5_BANNER.
-creAuthoringTool :: Lens' Creative (Maybe CreativeAuthoringTool)
-creAuthoringTool
-  = lens _creAuthoringTool
-      (\ s a -> s{_creAuthoringTool = a})
-
--- | Size associated with this creative. When inserting or updating a
--- creative either the size ID field or size width and height fields can be
--- used. This is a required field when applicable; however for IMAGE,
--- FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset
--- of type HTML_IMAGE, if left blank, this field will be automatically set
--- using the actual size of the associated image assets. Applicable to the
--- following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE,
--- HTML5_BANNER, IMAGE, and all RICH_MEDIA.
-creSize :: Lens' Creative (Maybe Size)
-creSize = lens _creSize (\ s a -> s{_creSize = a})
-
--- | Third-party URLs for tracking in-stream creative events. Applicable to
--- the following creative types: all INSTREAM_VIDEO, all INSTREAM_AUDIO,
--- and all VPAID.
-creThirdPartyURLs :: Lens' Creative [ThirdPartyTrackingURL]
-creThirdPartyURLs
-  = lens _creThirdPartyURLs
-      (\ s a -> s{_creThirdPartyURLs = a})
-      . _Default
-      . _Coerce
-
--- | Amount of time to play the video before counting a view. Applicable to
--- the following creative types: all INSTREAM_VIDEO.
-creProgressOffSet :: Lens' Creative (Maybe VideoOffSet)
-creProgressOffSet
-  = lens _creProgressOffSet
-      (\ s a -> s{_creProgressOffSet = a})
-
--- | List of counter events configured for the creative. For
--- DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated
--- from clickTags. Applicable to the following creative types:
--- DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
-creCounterCustomEvents :: Lens' Creative [CreativeCustomEvent]
-creCounterCustomEvents
-  = lens _creCounterCustomEvents
-      (\ s a -> s{_creCounterCustomEvents = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creative\".
-creKind :: Lens' Creative Text
-creKind = lens _creKind (\ s a -> s{_creKind = a})
-
--- | Whether creative should be treated as SSL compliant even if the system
--- scan shows it\'s not. Applicable to all creative types.
-creSSLOverride :: Lens' Creative (Maybe Bool)
-creSSLOverride
-  = lens _creSSLOverride
-      (\ s a -> s{_creSSLOverride = a})
-
--- | HTML code for the creative. This is a required field when applicable.
--- This field is ignored if htmlCodeLocked is true. Applicable to the
--- following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER,
--- and all RICH_MEDIA.
-creHTMLCode :: Lens' Creative (Maybe Text)
-creHTMLCode
-  = lens _creHTMLCode (\ s a -> s{_creHTMLCode = a})
-
--- | Advertiser ID of this creative. This is a required field. Applicable to
--- all creative types.
-creAdvertiserId :: Lens' Creative (Maybe Int64)
-creAdvertiserId
-  = lens _creAdvertiserId
-      (\ s a -> s{_creAdvertiserId = a})
-      . mapping _Coerce
-
--- | The internal Flash version for this creative as calculated by Studio.
--- This is a read-only field. Applicable to the following creative types:
--- FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when
--- the primary asset type is not HTML_IMAGE.
-creRequiredFlashVersion :: Lens' Creative (Maybe Int32)
-creRequiredFlashVersion
-  = lens _creRequiredFlashVersion
-      (\ s a -> s{_creRequiredFlashVersion = a})
-      . mapping _Coerce
-
--- | The 6-character HTML color code, beginning with #, for the background of
--- the window area where the Flash file is displayed. Default is white.
--- Applicable to the following creative types: FLASH_INPAGE.
-creBackgRoundColor :: Lens' Creative (Maybe Text)
-creBackgRoundColor
-  = lens _creBackgRoundColor
-      (\ s a -> s{_creBackgRoundColor = a})
-
--- | Keywords for a Rich Media creative. Keywords let you customize the
--- creative settings of a Rich Media ad running on your site without having
--- to contact the advertiser. You can use keywords to dynamically change
--- the look or functionality of a creative. Applicable to the following
--- creative types: all RICH_MEDIA, and all VPAID.
-creAdTagKeys :: Lens' Creative [Text]
-creAdTagKeys
-  = lens _creAdTagKeys (\ s a -> s{_creAdTagKeys = a})
-      . _Default
-      . _Coerce
-
--- | Whether the user can choose to skip the creative. Applicable to the
--- following creative types: all INSTREAM_VIDEO and all VPAID.
-creSkippable :: Lens' Creative (Maybe Bool)
-creSkippable
-  = lens _creSkippable (\ s a -> s{_creSkippable = a})
-
--- | Whether the creative is SSL-compliant. This is a read-only field.
--- Applicable to all creative types.
-creSSLCompliant :: Lens' Creative (Maybe Bool)
-creSSLCompliant
-  = lens _creSSLCompliant
-      (\ s a -> s{_creSSLCompliant = a})
-
--- | Dimension value for the ID of this creative. This is a read-only field.
--- Applicable to all creative types.
-creIdDimensionValue :: Lens' Creative (Maybe DimensionValue)
-creIdDimensionValue
-  = lens _creIdDimensionValue
-      (\ s a -> s{_creIdDimensionValue = a})
-
--- | Reporting label used for HTML5 banner backup image. Applicable to the
--- following creative types: DISPLAY when the primary asset type is not
--- HTML_IMAGE.
-creBackupImageReportingLabel :: Lens' Creative (Maybe Text)
-creBackupImageReportingLabel
-  = lens _creBackupImageReportingLabel
-      (\ s a -> s{_creBackupImageReportingLabel = a})
-
--- | Industry standard ID assigned to creative for reach and frequency.
--- Applicable to INSTREAM_VIDEO_REDIRECT creatives.
-creCommercialId :: Lens' Creative (Maybe Text)
-creCommercialId
-  = lens _creCommercialId
-      (\ s a -> s{_creCommercialId = a})
-
--- | Whether the creative is active. Applicable to all creative types.
-creActive :: Lens' Creative (Maybe Bool)
-creActive
-  = lens _creActive (\ s a -> s{_creActive = a})
-
--- | List of exit events configured for the creative. For DISPLAY and
--- DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated
--- from clickTags, For DISPLAY, an event is also created from the
--- backupImageReportingLabel. Applicable to the following creative types:
--- DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to
--- DISPLAY when the primary asset type is not HTML_IMAGE.
-creExitCustomEvents :: Lens' Creative [CreativeCustomEvent]
-creExitCustomEvents
-  = lens _creExitCustomEvents
-      (\ s a -> s{_creExitCustomEvents = a})
-      . _Default
-      . _Coerce
-
--- | Account ID of this creative. This field, if left unset, will be
--- auto-generated for both insert and update operations. Applicable to all
--- creative types.
-creAccountId :: Lens' Creative (Maybe Int64)
-creAccountId
-  = lens _creAccountId (\ s a -> s{_creAccountId = a})
-      . mapping _Coerce
-
--- | Click-through URL for backup image. Applicable to ENHANCED_BANNER when
--- the primary asset type is not HTML_IMAGE.
-creBackupImageClickThroughURL :: Lens' Creative (Maybe CreativeClickThroughURL)
-creBackupImageClickThroughURL
-  = lens _creBackupImageClickThroughURL
-      (\ s a -> s{_creBackupImageClickThroughURL = a})
-
--- | Name of the creative. This is a required field and must be less than 256
--- characters long. Applicable to all creative types.
-creName :: Lens' Creative (Maybe Text)
-creName = lens _creName (\ s a -> s{_creName = a})
-
--- | Override CSS value for rich media creatives. Applicable to the following
--- creative types: all RICH_MEDIA.
-creOverrideCss :: Lens' Creative (Maybe Text)
-creOverrideCss
-  = lens _creOverrideCss
-      (\ s a -> s{_creOverrideCss = a})
-
--- | Additional sizes associated with a responsive creative. When inserting
--- or updating a creative either the size ID field or size width and height
--- fields can be used. Applicable to DISPLAY creatives when the primary
--- asset type is HTML_IMAGE.
-creAdditionalSizes :: Lens' Creative [Size]
-creAdditionalSizes
-  = lens _creAdditionalSizes
-      (\ s a -> s{_creAdditionalSizes = a})
-      . _Default
-      . _Coerce
-
--- | Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER
--- creatives, this is a subset of detected click tags for the assets
--- associated with this creative. After creating a flash asset, detected
--- click tags will be returned in the creativeAssetMetadata. When inserting
--- the creative, populate the creative clickTags field using the
--- creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY
--- creatives, there should be exactly one entry in this list for each image
--- creative asset. A click tag is matched with a corresponding creative
--- asset by matching the clickTag.name field with the
--- creativeAsset.assetIdentifier.name field. Applicable to the following
--- creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER.
--- Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
-creClickTags :: Lens' Creative [ClickTag]
-creClickTags
-  = lens _creClickTags (\ s a -> s{_creClickTags = a})
-      . _Default
-      . _Coerce
-
--- | Ad parameters user for VPAID creative. This is a read-only field.
--- Applicable to the following creative types: all VPAID.
-creAdParameters :: Lens' Creative (Maybe Text)
-creAdParameters
-  = lens _creAdParameters
-      (\ s a -> s{_creAdParameters = a})
-
--- | The version number helps you keep track of multiple versions of your
--- creative in your reports. The version number will always be
--- auto-generated during insert operations to start at 1. For tracking
--- creatives the version cannot be incremented and will always remain at 1.
--- For all other creative types the version can be incremented only by 1
--- during update operations. In addition, the version will be automatically
--- incremented by 1 when undergoing Rich Media creative merging. Applicable
--- to all creative types.
-creVersion :: Lens' Creative (Maybe Int32)
-creVersion
-  = lens _creVersion (\ s a -> s{_creVersion = a}) .
-      mapping _Coerce
-
--- | Description of the audio or video ad. Applicable to the following
--- creative types: all INSTREAM_VIDEO, INSTREAM_AUDIO, and all VPAID.
-creMediaDescription :: Lens' Creative (Maybe Text)
-creMediaDescription
-  = lens _creMediaDescription
-      (\ s a -> s{_creMediaDescription = a})
-
--- | Creative audio or video duration in seconds. This is a read-only field.
--- Applicable to the following creative types: INSTREAM_VIDEO,
--- INSTREAM_AUDIO, all RICH_MEDIA, and all VPAID.
-creMediaDuration :: Lens' Creative (Maybe Double)
-creMediaDuration
-  = lens _creMediaDuration
-      (\ s a -> s{_creMediaDuration = a})
-      . mapping _Coerce
-
--- | Latest Studio trafficked creative ID associated with rich media and
--- VPAID creatives. This is a read-only field. Applicable to the following
--- creative types: all RICH_MEDIA, and all VPAID.
-creLatestTraffickedCreativeId :: Lens' Creative (Maybe Int64)
-creLatestTraffickedCreativeId
-  = lens _creLatestTraffickedCreativeId
-      (\ s a -> s{_creLatestTraffickedCreativeId = a})
-      . mapping _Coerce
-
--- | Third-party URL used to record rich media impressions. Applicable to the
--- following creative types: all RICH_MEDIA.
-creThirdPartyRichMediaImpressionsURL :: Lens' Creative (Maybe Text)
-creThirdPartyRichMediaImpressionsURL
-  = lens _creThirdPartyRichMediaImpressionsURL
-      (\ s a ->
-         s{_creThirdPartyRichMediaImpressionsURL = a})
-
--- | Set this to true to enable the use of rules to target individual assets
--- in this creative. When set to true creativeAssetSelection must be set.
--- This also controls asset-level companions. When this is true, companion
--- creatives should be assigned to creative assets. Learn more. Applicable
--- to INSTREAM_VIDEO creatives.
-creDynamicAssetSelection :: Lens' Creative (Maybe Bool)
-creDynamicAssetSelection
-  = lens _creDynamicAssetSelection
-      (\ s a -> s{_creDynamicAssetSelection = a})
-
--- | Creative last modification information. This is a read-only field.
--- Applicable to all creative types.
-creLastModifiedInfo :: Lens' Creative (Maybe LastModifiedInfo)
-creLastModifiedInfo
-  = lens _creLastModifiedInfo
-      (\ s a -> s{_creLastModifiedInfo = a})
-
--- | ID of this creative. This is a read-only, auto-generated field.
--- Applicable to all creative types.
-creId :: Lens' Creative (Maybe Int64)
-creId
-  = lens _creId (\ s a -> s{_creId = a}) .
-      mapping _Coerce
-
--- | Source application where creative was authored. Presently, only DBM
--- authored creatives will have this field set. Applicable to all creative
--- types.
-creAuthoringSource :: Lens' Creative (Maybe CreativeAuthoringSource)
-creAuthoringSource
-  = lens _creAuthoringSource
-      (\ s a -> s{_creAuthoringSource = a})
-
--- | Studio advertiser ID associated with rich media and VPAID creatives.
--- This is a read-only field. Applicable to the following creative types:
--- all RICH_MEDIA, and all VPAID.
-creStudioAdvertiserId :: Lens' Creative (Maybe Int64)
-creStudioAdvertiserId
-  = lens _creStudioAdvertiserId
-      (\ s a -> s{_creStudioAdvertiserId = a})
-      . mapping _Coerce
-
--- | Assets associated with a creative. Applicable to all but the following
--- creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and
--- REDIRECT
-creCreativeAssets :: Lens' Creative [CreativeAsset]
-creCreativeAssets
-  = lens _creCreativeAssets
-      (\ s a -> s{_creCreativeAssets = a})
-      . _Default
-      . _Coerce
-
--- | Subaccount ID of this creative. This field, if left unset, will be
--- auto-generated for both insert and update operations. Applicable to all
--- creative types.
-creSubAccountId :: Lens' Creative (Maybe Int64)
-creSubAccountId
-  = lens _creSubAccountId
-      (\ s a -> s{_creSubAccountId = a})
-      . mapping _Coerce
-
--- | Type of this creative. This is a required field. Applicable to all
--- creative types. Note: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only
--- used for existing creatives. New creatives should use DISPLAY as a
--- replacement for these types.
-creType :: Lens' Creative (Maybe CreativeType)
-creType = lens _creType (\ s a -> s{_creType = a})
-
--- | List of timer events configured for the creative. For
--- DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated
--- from clickTags. Applicable to the following creative types:
--- DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to
--- DISPLAY when the primary asset is not HTML_IMAGE.
-creTimerCustomEvents :: Lens' Creative [CreativeCustomEvent]
-creTimerCustomEvents
-  = lens _creTimerCustomEvents
-      (\ s a -> s{_creTimerCustomEvents = a})
-      . _Default
-      . _Coerce
-
--- | Required if dynamicAssetSelection is true.
-creCreativeAssetSelection :: Lens' Creative (Maybe CreativeAssetSelection)
-creCreativeAssetSelection
-  = lens _creCreativeAssetSelection
-      (\ s a -> s{_creCreativeAssetSelection = a})
-
--- | Studio creative ID associated with rich media and VPAID creatives. This
--- is a read-only field. Applicable to the following creative types: all
--- RICH_MEDIA, and all VPAID.
-creStudioCreativeId :: Lens' Creative (Maybe Int64)
-creStudioCreativeId
-  = lens _creStudioCreativeId
-      (\ s a -> s{_creStudioCreativeId = a})
-      . mapping _Coerce
-
--- | Compatibilities associated with this creative. This is a read-only
--- field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on
--- desktop or on mobile devices or in mobile apps for regular or
--- interstitial ads, respectively. APP and APP_INTERSTITIAL are for
--- rendering in mobile apps. Only pre-existing creatives may have these
--- compatibilities since new creatives will either be assigned DISPLAY or
--- DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in
--- in-stream video ads developed with the VAST standard. IN_STREAM_AUDIO
--- refers to rendering in in-stream audio ads developed with the VAST
--- standard. Applicable to all creative types. Acceptable values are: -
--- \"APP\" - \"APP_INTERSTITIAL\" - \"IN_STREAM_VIDEO\" -
--- \"IN_STREAM_AUDIO\" - \"DISPLAY\" - \"DISPLAY_INTERSTITIAL\"
-creCompatibility :: Lens' Creative [CreativeCompatibilityItem]
-creCompatibility
-  = lens _creCompatibility
-      (\ s a -> s{_creCompatibility = a})
-      . _Default
-      . _Coerce
-
--- | List of feature dependencies that will cause a backup image to be served
--- if the browser that serves the ad does not support them. Feature
--- dependencies are features that a browser must be able to support in
--- order to render your HTML5 creative asset correctly. This field is
--- initially auto-generated to contain all features detected by Campaign
--- Manager for all the assets of this creative and can then be modified by
--- the client. To reset this field, copy over all the creativeAssets\'
--- detected features. Applicable to the following creative types:
--- HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not
--- HTML_IMAGE.
-creBackupImageFeatures :: Lens' Creative [CreativeBackupImageFeaturesItem]
-creBackupImageFeatures
-  = lens _creBackupImageFeatures
-      (\ s a -> s{_creBackupImageFeatures = a})
-      . _Default
-      . _Coerce
-
--- | Type of artwork used for the creative. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA, and all
--- VPAID.
-creArtworkType :: Lens' Creative (Maybe CreativeArtworkType)
-creArtworkType
-  = lens _creArtworkType
-      (\ s a -> s{_creArtworkType = a})
-
--- | Whether the creative is archived. Applicable to all creative types.
-creArchived :: Lens' Creative (Maybe Bool)
-creArchived
-  = lens _creArchived (\ s a -> s{_creArchived = a})
-
--- | List of companion creatives assigned to an in-Stream video creative.
--- Acceptable values include IDs of existing flash and image creatives.
--- Applicable to the following creative types: all VPAID, all
--- INSTREAM_AUDIO and all INSTREAM_VIDEO with dynamicAssetSelection set to
--- false.
-creCompanionCreatives :: Lens' Creative [Int64]
-creCompanionCreatives
-  = lens _creCompanionCreatives
-      (\ s a -> s{_creCompanionCreatives = a})
-      . _Default
-      . _Coerce
-
--- | Combined size of all creative assets. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA, and all
--- VPAID.
-creTotalFileSize :: Lens' Creative (Maybe Int64)
-creTotalFileSize
-  = lens _creTotalFileSize
-      (\ s a -> s{_creTotalFileSize = a})
-      . mapping _Coerce
-
--- | Studio trafficked creative ID associated with rich media and VPAID
--- creatives. This is a read-only field. Applicable to the following
--- creative types: all RICH_MEDIA, and all VPAID.
-creStudioTraffickedCreativeId :: Lens' Creative (Maybe Int64)
-creStudioTraffickedCreativeId
-  = lens _creStudioTraffickedCreativeId
-      (\ s a -> s{_creStudioTraffickedCreativeId = a})
-      . mapping _Coerce
-
--- | Whether images are automatically advanced for image gallery creatives.
--- Applicable to the following creative types: DISPLAY_IMAGE_GALLERY.
-creAutoAdvanceImages :: Lens' Creative (Maybe Bool)
-creAutoAdvanceImages
-  = lens _creAutoAdvanceImages
-      (\ s a -> s{_creAutoAdvanceImages = a})
-
--- | URL of hosted image or hosted video or another ad tag. For
--- INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect
--- URL. The standard for a VAST (Video Ad Serving Template) ad response
--- allows for a redirect link to another VAST 2.0 or 3.0 call. This is a
--- required field when applicable. Applicable to the following creative
--- types: DISPLAY_REDIRECT, INTERNAL_REDIRECT,
--- INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT
-creRedirectURL :: Lens' Creative (Maybe Text)
-creRedirectURL
-  = lens _creRedirectURL
-      (\ s a -> s{_creRedirectURL = a})
-
--- | Creative field assignments for this creative. Applicable to all creative
--- types.
-creCreativeFieldAssignments :: Lens' Creative [CreativeFieldAssignment]
-creCreativeFieldAssignments
-  = lens _creCreativeFieldAssignments
-      (\ s a -> s{_creCreativeFieldAssignments = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON Creative where
-        parseJSON
-          = withObject "Creative"
-              (\ o ->
-                 Creative' <$>
-                   (o .:? "convertFlashToHtml5") <*>
-                     (o .:? "backupImageTargetWindow")
-                     <*> (o .:? "renderingIdDimensionValue")
-                     <*> (o .:? "customKeyValues" .!= mempty)
-                     <*> (o .:? "skipOffset")
-                     <*> (o .:? "renderingId")
-                     <*> (o .:? "thirdPartyBackupImageImpressionsUrl")
-                     <*> (o .:? "fsCommand")
-                     <*> (o .:? "allowScriptAccess")
-                     <*> (o .:? "htmlCodeLocked")
-                     <*> (o .:? "requiredFlashPluginVersion")
-                     <*> (o .:? "universalAdId")
-                     <*> (o .:? "authoringTool")
-                     <*> (o .:? "size")
-                     <*> (o .:? "thirdPartyUrls" .!= mempty)
-                     <*> (o .:? "progressOffset")
-                     <*> (o .:? "counterCustomEvents" .!= mempty)
-                     <*> (o .:? "kind" .!= "dfareporting#creative")
-                     <*> (o .:? "sslOverride")
-                     <*> (o .:? "htmlCode")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "requiredFlashVersion")
-                     <*> (o .:? "backgroundColor")
-                     <*> (o .:? "adTagKeys" .!= mempty)
-                     <*> (o .:? "skippable")
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "backupImageReportingLabel")
-                     <*> (o .:? "commercialId")
-                     <*> (o .:? "active")
-                     <*> (o .:? "exitCustomEvents" .!= mempty)
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "backupImageClickThroughUrl")
-                     <*> (o .:? "name")
-                     <*> (o .:? "overrideCss")
-                     <*> (o .:? "additionalSizes" .!= mempty)
-                     <*> (o .:? "clickTags" .!= mempty)
-                     <*> (o .:? "adParameters")
-                     <*> (o .:? "version")
-                     <*> (o .:? "mediaDescription")
-                     <*> (o .:? "mediaDuration")
-                     <*> (o .:? "latestTraffickedCreativeId")
-                     <*> (o .:? "thirdPartyRichMediaImpressionsUrl")
-                     <*> (o .:? "dynamicAssetSelection")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "authoringSource")
-                     <*> (o .:? "studioAdvertiserId")
-                     <*> (o .:? "creativeAssets" .!= mempty)
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "timerCustomEvents" .!= mempty)
-                     <*> (o .:? "creativeAssetSelection")
-                     <*> (o .:? "studioCreativeId")
-                     <*> (o .:? "compatibility" .!= mempty)
-                     <*> (o .:? "backupImageFeatures" .!= mempty)
-                     <*> (o .:? "artworkType")
-                     <*> (o .:? "archived")
-                     <*> (o .:? "companionCreatives" .!= mempty)
-                     <*> (o .:? "totalFileSize")
-                     <*> (o .:? "studioTraffickedCreativeId")
-                     <*> (o .:? "autoAdvanceImages")
-                     <*> (o .:? "redirectUrl")
-                     <*> (o .:? "creativeFieldAssignments" .!= mempty))
-
-instance ToJSON Creative where
-        toJSON Creative'{..}
-          = object
-              (catMaybes
-                 [("convertFlashToHtml5" .=) <$>
-                    _creConvertFlashToHTML5,
-                  ("backupImageTargetWindow" .=) <$>
-                    _creBackupImageTargetWindow,
-                  ("renderingIdDimensionValue" .=) <$>
-                    _creRenderingIdDimensionValue,
-                  ("customKeyValues" .=) <$> _creCustomKeyValues,
-                  ("skipOffset" .=) <$> _creSkipOffSet,
-                  ("renderingId" .=) <$> _creRenderingId,
-                  ("thirdPartyBackupImageImpressionsUrl" .=) <$>
-                    _creThirdPartyBackupImageImpressionsURL,
-                  ("fsCommand" .=) <$> _creFsCommand,
-                  ("allowScriptAccess" .=) <$> _creAllowScriptAccess,
-                  ("htmlCodeLocked" .=) <$> _creHTMLCodeLocked,
-                  ("requiredFlashPluginVersion" .=) <$>
-                    _creRequiredFlashPluginVersion,
-                  ("universalAdId" .=) <$> _creUniversalAdId,
-                  ("authoringTool" .=) <$> _creAuthoringTool,
-                  ("size" .=) <$> _creSize,
-                  ("thirdPartyUrls" .=) <$> _creThirdPartyURLs,
-                  ("progressOffset" .=) <$> _creProgressOffSet,
-                  ("counterCustomEvents" .=) <$>
-                    _creCounterCustomEvents,
-                  Just ("kind" .= _creKind),
-                  ("sslOverride" .=) <$> _creSSLOverride,
-                  ("htmlCode" .=) <$> _creHTMLCode,
-                  ("advertiserId" .=) <$> _creAdvertiserId,
-                  ("requiredFlashVersion" .=) <$>
-                    _creRequiredFlashVersion,
-                  ("backgroundColor" .=) <$> _creBackgRoundColor,
-                  ("adTagKeys" .=) <$> _creAdTagKeys,
-                  ("skippable" .=) <$> _creSkippable,
-                  ("sslCompliant" .=) <$> _creSSLCompliant,
-                  ("idDimensionValue" .=) <$> _creIdDimensionValue,
-                  ("backupImageReportingLabel" .=) <$>
-                    _creBackupImageReportingLabel,
-                  ("commercialId" .=) <$> _creCommercialId,
-                  ("active" .=) <$> _creActive,
-                  ("exitCustomEvents" .=) <$> _creExitCustomEvents,
-                  ("accountId" .=) <$> _creAccountId,
-                  ("backupImageClickThroughUrl" .=) <$>
-                    _creBackupImageClickThroughURL,
-                  ("name" .=) <$> _creName,
-                  ("overrideCss" .=) <$> _creOverrideCss,
-                  ("additionalSizes" .=) <$> _creAdditionalSizes,
-                  ("clickTags" .=) <$> _creClickTags,
-                  ("adParameters" .=) <$> _creAdParameters,
-                  ("version" .=) <$> _creVersion,
-                  ("mediaDescription" .=) <$> _creMediaDescription,
-                  ("mediaDuration" .=) <$> _creMediaDuration,
-                  ("latestTraffickedCreativeId" .=) <$>
-                    _creLatestTraffickedCreativeId,
-                  ("thirdPartyRichMediaImpressionsUrl" .=) <$>
-                    _creThirdPartyRichMediaImpressionsURL,
-                  ("dynamicAssetSelection" .=) <$>
-                    _creDynamicAssetSelection,
-                  ("lastModifiedInfo" .=) <$> _creLastModifiedInfo,
-                  ("id" .=) <$> _creId,
-                  ("authoringSource" .=) <$> _creAuthoringSource,
-                  ("studioAdvertiserId" .=) <$> _creStudioAdvertiserId,
-                  ("creativeAssets" .=) <$> _creCreativeAssets,
-                  ("subaccountId" .=) <$> _creSubAccountId,
-                  ("type" .=) <$> _creType,
-                  ("timerCustomEvents" .=) <$> _creTimerCustomEvents,
-                  ("creativeAssetSelection" .=) <$>
-                    _creCreativeAssetSelection,
-                  ("studioCreativeId" .=) <$> _creStudioCreativeId,
-                  ("compatibility" .=) <$> _creCompatibility,
-                  ("backupImageFeatures" .=) <$>
-                    _creBackupImageFeatures,
-                  ("artworkType" .=) <$> _creArtworkType,
-                  ("archived" .=) <$> _creArchived,
-                  ("companionCreatives" .=) <$> _creCompanionCreatives,
-                  ("totalFileSize" .=) <$> _creTotalFileSize,
-                  ("studioTraffickedCreativeId" .=) <$>
-                    _creStudioTraffickedCreativeId,
-                  ("autoAdvanceImages" .=) <$> _creAutoAdvanceImages,
-                  ("redirectUrl" .=) <$> _creRedirectURL,
-                  ("creativeFieldAssignments" .=) <$>
-                    _creCreativeFieldAssignments])
-
--- | Companion Settings
---
--- /See:/ 'siteCompanionSetting' smart constructor.
-data SiteCompanionSetting =
-  SiteCompanionSetting'
-    { _scsKind               :: !Text
-    , _scsImageOnly          :: !(Maybe Bool)
-    , _scsCompanionsDisabled :: !(Maybe Bool)
-    , _scsEnabledSizes       :: !(Maybe [Size])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteCompanionSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'scsKind'
---
--- * 'scsImageOnly'
---
--- * 'scsCompanionsDisabled'
---
--- * 'scsEnabledSizes'
-siteCompanionSetting
-    :: SiteCompanionSetting
-siteCompanionSetting =
-  SiteCompanionSetting'
-    { _scsKind = "dfareporting#siteCompanionSetting"
-    , _scsImageOnly = Nothing
-    , _scsCompanionsDisabled = Nothing
-    , _scsEnabledSizes = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#siteCompanionSetting\".
-scsKind :: Lens' SiteCompanionSetting Text
-scsKind = lens _scsKind (\ s a -> s{_scsKind = a})
-
--- | Whether to serve only static images as companions.
-scsImageOnly :: Lens' SiteCompanionSetting (Maybe Bool)
-scsImageOnly
-  = lens _scsImageOnly (\ s a -> s{_scsImageOnly = a})
-
--- | Whether companions are disabled for this site template.
-scsCompanionsDisabled :: Lens' SiteCompanionSetting (Maybe Bool)
-scsCompanionsDisabled
-  = lens _scsCompanionsDisabled
-      (\ s a -> s{_scsCompanionsDisabled = a})
-
--- | Whitelist of companion sizes to be served via this site template. Set
--- this list to null or empty to serve all companion sizes.
-scsEnabledSizes :: Lens' SiteCompanionSetting [Size]
-scsEnabledSizes
-  = lens _scsEnabledSizes
-      (\ s a -> s{_scsEnabledSizes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON SiteCompanionSetting where
-        parseJSON
-          = withObject "SiteCompanionSetting"
-              (\ o ->
-                 SiteCompanionSetting' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#siteCompanionSetting")
-                     <*> (o .:? "imageOnly")
-                     <*> (o .:? "companionsDisabled")
-                     <*> (o .:? "enabledSizes" .!= mempty))
-
-instance ToJSON SiteCompanionSetting where
-        toJSON SiteCompanionSetting'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _scsKind),
-                  ("imageOnly" .=) <$> _scsImageOnly,
-                  ("companionsDisabled" .=) <$> _scsCompanionsDisabled,
-                  ("enabledSizes" .=) <$> _scsEnabledSizes])
-
--- | Site Contact
---
--- /See:/ 'siteContact' smart constructor.
-data SiteContact =
-  SiteContact'
-    { _scEmail       :: !(Maybe Text)
-    , _scPhone       :: !(Maybe Text)
-    , _scLastName    :: !(Maybe Text)
-    , _scAddress     :: !(Maybe Text)
-    , _scFirstName   :: !(Maybe Text)
-    , _scId          :: !(Maybe (Textual Int64))
-    , _scTitle       :: !(Maybe Text)
-    , _scContactType :: !(Maybe SiteContactContactType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteContact' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'scEmail'
---
--- * 'scPhone'
---
--- * 'scLastName'
---
--- * 'scAddress'
---
--- * 'scFirstName'
---
--- * 'scId'
---
--- * 'scTitle'
---
--- * 'scContactType'
-siteContact
-    :: SiteContact
-siteContact =
-  SiteContact'
-    { _scEmail = Nothing
-    , _scPhone = Nothing
-    , _scLastName = Nothing
-    , _scAddress = Nothing
-    , _scFirstName = Nothing
-    , _scId = Nothing
-    , _scTitle = Nothing
-    , _scContactType = Nothing
-    }
-
-
--- | Email address of this site contact. This is a required field.
-scEmail :: Lens' SiteContact (Maybe Text)
-scEmail = lens _scEmail (\ s a -> s{_scEmail = a})
-
--- | Primary phone number of this site contact.
-scPhone :: Lens' SiteContact (Maybe Text)
-scPhone = lens _scPhone (\ s a -> s{_scPhone = a})
-
--- | Last name of this site contact.
-scLastName :: Lens' SiteContact (Maybe Text)
-scLastName
-  = lens _scLastName (\ s a -> s{_scLastName = a})
-
--- | Address of this site contact.
-scAddress :: Lens' SiteContact (Maybe Text)
-scAddress
-  = lens _scAddress (\ s a -> s{_scAddress = a})
-
--- | First name of this site contact.
-scFirstName :: Lens' SiteContact (Maybe Text)
-scFirstName
-  = lens _scFirstName (\ s a -> s{_scFirstName = a})
-
--- | ID of this site contact. This is a read-only, auto-generated field.
-scId :: Lens' SiteContact (Maybe Int64)
-scId
-  = lens _scId (\ s a -> s{_scId = a}) .
-      mapping _Coerce
-
--- | Title or designation of this site contact.
-scTitle :: Lens' SiteContact (Maybe Text)
-scTitle = lens _scTitle (\ s a -> s{_scTitle = a})
-
--- | Site contact type.
-scContactType :: Lens' SiteContact (Maybe SiteContactContactType)
-scContactType
-  = lens _scContactType
-      (\ s a -> s{_scContactType = a})
-
-instance FromJSON SiteContact where
-        parseJSON
-          = withObject "SiteContact"
-              (\ o ->
-                 SiteContact' <$>
-                   (o .:? "email") <*> (o .:? "phone") <*>
-                     (o .:? "lastName")
-                     <*> (o .:? "address")
-                     <*> (o .:? "firstName")
-                     <*> (o .:? "id")
-                     <*> (o .:? "title")
-                     <*> (o .:? "contactType"))
-
-instance ToJSON SiteContact where
-        toJSON SiteContact'{..}
-          = object
-              (catMaybes
-                 [("email" .=) <$> _scEmail,
-                  ("phone" .=) <$> _scPhone,
-                  ("lastName" .=) <$> _scLastName,
-                  ("address" .=) <$> _scAddress,
-                  ("firstName" .=) <$> _scFirstName,
-                  ("id" .=) <$> _scId, ("title" .=) <$> _scTitle,
-                  ("contactType" .=) <$> _scContactType])
-
--- | Account List Response
---
--- /See:/ 'accountsListResponse' smart constructor.
-data AccountsListResponse =
-  AccountsListResponse'
-    { _accNextPageToken :: !(Maybe Text)
-    , _accAccounts      :: !(Maybe [Account])
-    , _accKind          :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'accNextPageToken'
---
--- * 'accAccounts'
---
--- * 'accKind'
-accountsListResponse
-    :: AccountsListResponse
-accountsListResponse =
-  AccountsListResponse'
-    { _accNextPageToken = Nothing
-    , _accAccounts = Nothing
-    , _accKind = "dfareporting#accountsListResponse"
-    }
-
-
--- | Pagination token to be used for the next list operation.
-accNextPageToken :: Lens' AccountsListResponse (Maybe Text)
-accNextPageToken
-  = lens _accNextPageToken
-      (\ s a -> s{_accNextPageToken = a})
-
--- | Account collection.
-accAccounts :: Lens' AccountsListResponse [Account]
-accAccounts
-  = lens _accAccounts (\ s a -> s{_accAccounts = a}) .
-      _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountsListResponse\".
-accKind :: Lens' AccountsListResponse Text
-accKind = lens _accKind (\ s a -> s{_accKind = a})
-
-instance FromJSON AccountsListResponse where
-        parseJSON
-          = withObject "AccountsListResponse"
-              (\ o ->
-                 AccountsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "accounts" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#accountsListResponse"))
-
-instance ToJSON AccountsListResponse where
-        toJSON AccountsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _accNextPageToken,
-                  ("accounts" .=) <$> _accAccounts,
-                  Just ("kind" .= _accKind)])
-
--- | Represents a date range.
---
--- /See:/ 'dateRange' smart constructor.
-data DateRange =
-  DateRange'
-    { _drKind              :: !Text
-    , _drEndDate           :: !(Maybe Date')
-    , _drStartDate         :: !(Maybe Date')
-    , _drRelativeDateRange :: !(Maybe DateRangeRelativeDateRange)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DateRange' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'drKind'
---
--- * 'drEndDate'
---
--- * 'drStartDate'
---
--- * 'drRelativeDateRange'
-dateRange
-    :: DateRange
-dateRange =
-  DateRange'
-    { _drKind = "dfareporting#dateRange"
-    , _drEndDate = Nothing
-    , _drStartDate = Nothing
-    , _drRelativeDateRange = Nothing
-    }
-
-
--- | The kind of resource this is, in this case dfareporting#dateRange.
-drKind :: Lens' DateRange Text
-drKind = lens _drKind (\ s a -> s{_drKind = a})
-
--- | The end date of the date range, inclusive. A string of the format:
--- \"yyyy-MM-dd\".
-drEndDate :: Lens' DateRange (Maybe Day)
-drEndDate
-  = lens _drEndDate (\ s a -> s{_drEndDate = a}) .
-      mapping _Date
-
--- | The start date of the date range, inclusive. A string of the format:
--- \"yyyy-MM-dd\".
-drStartDate :: Lens' DateRange (Maybe Day)
-drStartDate
-  = lens _drStartDate (\ s a -> s{_drStartDate = a}) .
-      mapping _Date
-
--- | The date range relative to the date of when the report is run.
-drRelativeDateRange :: Lens' DateRange (Maybe DateRangeRelativeDateRange)
-drRelativeDateRange
-  = lens _drRelativeDateRange
-      (\ s a -> s{_drRelativeDateRange = a})
-
-instance FromJSON DateRange where
-        parseJSON
-          = withObject "DateRange"
-              (\ o ->
-                 DateRange' <$>
-                   (o .:? "kind" .!= "dfareporting#dateRange") <*>
-                     (o .:? "endDate")
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "relativeDateRange"))
-
-instance ToJSON DateRange where
-        toJSON DateRange'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _drKind),
-                  ("endDate" .=) <$> _drEndDate,
-                  ("startDate" .=) <$> _drStartDate,
-                  ("relativeDateRange" .=) <$> _drRelativeDateRange])
-
--- | Represents a Report resource.
---
--- /See:/ 'report' smart constructor.
-data Report =
-  Report'
-    { _rDelivery                    :: !(Maybe ReportDelivery)
-    , _rEtag                        :: !(Maybe Text)
-    , _rOwnerProFileId              :: !(Maybe (Textual Int64))
-    , _rSchedule                    :: !(Maybe ReportSchedule)
-    , _rPathToConversionCriteria    :: !(Maybe ReportPathToConversionCriteria)
-    , _rKind                        :: !Text
-    , _rFormat                      :: !(Maybe ReportFormat)
-    , _rReachCriteria               :: !(Maybe ReportReachCriteria)
-    , _rLastModifiedTime            :: !(Maybe (Textual Word64))
-    , _rAccountId                   :: !(Maybe (Textual Int64))
-    , _rName                        :: !(Maybe Text)
-    , _rId                          :: !(Maybe (Textual Int64))
-    , _rCrossDimensionReachCriteria :: !(Maybe ReportCrossDimensionReachCriteria)
-    , _rType                        :: !(Maybe ReportType)
-    , _rSubAccountId                :: !(Maybe (Textual Int64))
-    , _rFloodlightCriteria          :: !(Maybe ReportFloodlightCriteria)
-    , _rCriteria                    :: !(Maybe ReportCriteria)
-    , _rFileName                    :: !(Maybe Text)
-    }
-  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:
---
--- * 'rDelivery'
---
--- * 'rEtag'
---
--- * 'rOwnerProFileId'
---
--- * 'rSchedule'
---
--- * 'rPathToConversionCriteria'
---
--- * 'rKind'
---
--- * 'rFormat'
---
--- * 'rReachCriteria'
---
--- * 'rLastModifiedTime'
---
--- * 'rAccountId'
---
--- * 'rName'
---
--- * 'rId'
---
--- * 'rCrossDimensionReachCriteria'
---
--- * 'rType'
---
--- * 'rSubAccountId'
---
--- * 'rFloodlightCriteria'
---
--- * 'rCriteria'
---
--- * 'rFileName'
-report
-    :: Report
-report =
-  Report'
-    { _rDelivery = Nothing
-    , _rEtag = Nothing
-    , _rOwnerProFileId = Nothing
-    , _rSchedule = Nothing
-    , _rPathToConversionCriteria = Nothing
-    , _rKind = "dfareporting#report"
-    , _rFormat = Nothing
-    , _rReachCriteria = Nothing
-    , _rLastModifiedTime = Nothing
-    , _rAccountId = Nothing
-    , _rName = Nothing
-    , _rId = Nothing
-    , _rCrossDimensionReachCriteria = Nothing
-    , _rType = Nothing
-    , _rSubAccountId = Nothing
-    , _rFloodlightCriteria = Nothing
-    , _rCriteria = Nothing
-    , _rFileName = Nothing
-    }
-
-
--- | The report\'s email delivery settings.
-rDelivery :: Lens' Report (Maybe ReportDelivery)
-rDelivery
-  = lens _rDelivery (\ s a -> s{_rDelivery = a})
-
--- | The eTag of this response for caching purposes.
-rEtag :: Lens' Report (Maybe Text)
-rEtag = lens _rEtag (\ s a -> s{_rEtag = a})
-
--- | The user profile id of the owner of this report.
-rOwnerProFileId :: Lens' Report (Maybe Int64)
-rOwnerProFileId
-  = lens _rOwnerProFileId
-      (\ s a -> s{_rOwnerProFileId = a})
-      . mapping _Coerce
-
--- | The report\'s schedule. Can only be set if the report\'s \'dateRange\'
--- is a relative date range and the relative date range is not \"TODAY\".
-rSchedule :: Lens' Report (Maybe ReportSchedule)
-rSchedule
-  = lens _rSchedule (\ s a -> s{_rSchedule = a})
-
--- | The report criteria for a report of type \"PATH_TO_CONVERSION\".
-rPathToConversionCriteria :: Lens' Report (Maybe ReportPathToConversionCriteria)
-rPathToConversionCriteria
-  = lens _rPathToConversionCriteria
-      (\ s a -> s{_rPathToConversionCriteria = a})
-
--- | The kind of resource this is, in this case dfareporting#report.
-rKind :: Lens' Report Text
-rKind = lens _rKind (\ s a -> s{_rKind = a})
-
--- | The output format of the report. If not specified, default format is
--- \"CSV\". Note that the actual format in the completed report file might
--- differ if for instance the report\'s size exceeds the format\'s
--- capabilities. \"CSV\" will then be the fallback format.
-rFormat :: Lens' Report (Maybe ReportFormat)
-rFormat = lens _rFormat (\ s a -> s{_rFormat = a})
-
--- | The report criteria for a report of type \"REACH\".
-rReachCriteria :: Lens' Report (Maybe ReportReachCriteria)
-rReachCriteria
-  = lens _rReachCriteria
-      (\ s a -> s{_rReachCriteria = a})
-
--- | The timestamp (in milliseconds since epoch) of when this report was last
--- modified.
-rLastModifiedTime :: Lens' Report (Maybe Word64)
-rLastModifiedTime
-  = lens _rLastModifiedTime
-      (\ s a -> s{_rLastModifiedTime = a})
-      . mapping _Coerce
-
--- | The account ID to which this report belongs.
-rAccountId :: Lens' Report (Maybe Int64)
-rAccountId
-  = lens _rAccountId (\ s a -> s{_rAccountId = a}) .
-      mapping _Coerce
-
--- | The name of the report.
-rName :: Lens' Report (Maybe Text)
-rName = lens _rName (\ s a -> s{_rName = a})
-
--- | The unique ID identifying this report resource.
-rId :: Lens' Report (Maybe Int64)
-rId
-  = lens _rId (\ s a -> s{_rId = a}) . mapping _Coerce
-
--- | The report criteria for a report of type \"CROSS_DIMENSION_REACH\".
-rCrossDimensionReachCriteria :: Lens' Report (Maybe ReportCrossDimensionReachCriteria)
-rCrossDimensionReachCriteria
-  = lens _rCrossDimensionReachCriteria
-      (\ s a -> s{_rCrossDimensionReachCriteria = a})
-
--- | The type of the report.
-rType :: Lens' Report (Maybe ReportType)
-rType = lens _rType (\ s a -> s{_rType = a})
-
--- | The subaccount ID to which this report belongs if applicable.
-rSubAccountId :: Lens' Report (Maybe Int64)
-rSubAccountId
-  = lens _rSubAccountId
-      (\ s a -> s{_rSubAccountId = a})
-      . mapping _Coerce
-
--- | The report criteria for a report of type \"FLOODLIGHT\".
-rFloodlightCriteria :: Lens' Report (Maybe ReportFloodlightCriteria)
-rFloodlightCriteria
-  = lens _rFloodlightCriteria
-      (\ s a -> s{_rFloodlightCriteria = a})
-
--- | The report criteria for a report of type \"STANDARD\".
-rCriteria :: Lens' Report (Maybe ReportCriteria)
-rCriteria
-  = lens _rCriteria (\ s a -> s{_rCriteria = a})
-
--- | The filename used when generating report files for this report.
-rFileName :: Lens' Report (Maybe Text)
-rFileName
-  = lens _rFileName (\ s a -> s{_rFileName = a})
-
-instance FromJSON Report where
-        parseJSON
-          = withObject "Report"
-              (\ o ->
-                 Report' <$>
-                   (o .:? "delivery") <*> (o .:? "etag") <*>
-                     (o .:? "ownerProfileId")
-                     <*> (o .:? "schedule")
-                     <*> (o .:? "pathToConversionCriteria")
-                     <*> (o .:? "kind" .!= "dfareporting#report")
-                     <*> (o .:? "format")
-                     <*> (o .:? "reachCriteria")
-                     <*> (o .:? "lastModifiedTime")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "crossDimensionReachCriteria")
-                     <*> (o .:? "type")
-                     <*> (o .:? "subAccountId")
-                     <*> (o .:? "floodlightCriteria")
-                     <*> (o .:? "criteria")
-                     <*> (o .:? "fileName"))
-
-instance ToJSON Report where
-        toJSON Report'{..}
-          = object
-              (catMaybes
-                 [("delivery" .=) <$> _rDelivery,
-                  ("etag" .=) <$> _rEtag,
-                  ("ownerProfileId" .=) <$> _rOwnerProFileId,
-                  ("schedule" .=) <$> _rSchedule,
-                  ("pathToConversionCriteria" .=) <$>
-                    _rPathToConversionCriteria,
-                  Just ("kind" .= _rKind), ("format" .=) <$> _rFormat,
-                  ("reachCriteria" .=) <$> _rReachCriteria,
-                  ("lastModifiedTime" .=) <$> _rLastModifiedTime,
-                  ("accountId" .=) <$> _rAccountId,
-                  ("name" .=) <$> _rName, ("id" .=) <$> _rId,
-                  ("crossDimensionReachCriteria" .=) <$>
-                    _rCrossDimensionReachCriteria,
-                  ("type" .=) <$> _rType,
-                  ("subAccountId" .=) <$> _rSubAccountId,
-                  ("floodlightCriteria" .=) <$> _rFloodlightCriteria,
-                  ("criteria" .=) <$> _rCriteria,
-                  ("fileName" .=) <$> _rFileName])
-
--- | Skippable Settings
---
--- /See:/ 'siteSkippableSetting' smart constructor.
-data SiteSkippableSetting =
-  SiteSkippableSetting'
-    { _sssSkipOffSet     :: !(Maybe VideoOffSet)
-    , _sssProgressOffSet :: !(Maybe VideoOffSet)
-    , _sssKind           :: !Text
-    , _sssSkippable      :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteSkippableSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sssSkipOffSet'
---
--- * 'sssProgressOffSet'
---
--- * 'sssKind'
---
--- * 'sssSkippable'
-siteSkippableSetting
-    :: SiteSkippableSetting
-siteSkippableSetting =
-  SiteSkippableSetting'
-    { _sssSkipOffSet = Nothing
-    , _sssProgressOffSet = Nothing
-    , _sssKind = "dfareporting#siteSkippableSetting"
-    , _sssSkippable = Nothing
-    }
-
-
--- | Amount of time to play videos served to this site before the skip button
--- should appear. Applicable when skippable is true.
-sssSkipOffSet :: Lens' SiteSkippableSetting (Maybe VideoOffSet)
-sssSkipOffSet
-  = lens _sssSkipOffSet
-      (\ s a -> s{_sssSkipOffSet = a})
-
--- | Amount of time to play videos served to this site template before
--- counting a view. Applicable when skippable is true.
-sssProgressOffSet :: Lens' SiteSkippableSetting (Maybe VideoOffSet)
-sssProgressOffSet
-  = lens _sssProgressOffSet
-      (\ s a -> s{_sssProgressOffSet = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#siteSkippableSetting\".
-sssKind :: Lens' SiteSkippableSetting Text
-sssKind = lens _sssKind (\ s a -> s{_sssKind = a})
-
--- | Whether the user can skip creatives served to this site. This will act
--- as default for new placements created under this site.
-sssSkippable :: Lens' SiteSkippableSetting (Maybe Bool)
-sssSkippable
-  = lens _sssSkippable (\ s a -> s{_sssSkippable = a})
-
-instance FromJSON SiteSkippableSetting where
-        parseJSON
-          = withObject "SiteSkippableSetting"
-              (\ o ->
-                 SiteSkippableSetting' <$>
-                   (o .:? "skipOffset") <*> (o .:? "progressOffset") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#siteSkippableSetting")
-                     <*> (o .:? "skippable"))
-
-instance ToJSON SiteSkippableSetting where
-        toJSON SiteSkippableSetting'{..}
-          = object
-              (catMaybes
-                 [("skipOffset" .=) <$> _sssSkipOffSet,
-                  ("progressOffset" .=) <$> _sssProgressOffSet,
-                  Just ("kind" .= _sssKind),
-                  ("skippable" .=) <$> _sssSkippable])
-
--- | A rule associates an asset with a targeting template for asset-level
--- targeting. Applicable to INSTREAM_VIDEO creatives.
---
--- /See:/ 'rule' smart constructor.
-data Rule =
-  Rule'
-    { _rulTargetingTemplateId :: !(Maybe (Textual Int64))
-    , _rulName                :: !(Maybe Text)
-    , _rulAssetId             :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Rule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rulTargetingTemplateId'
---
--- * 'rulName'
---
--- * 'rulAssetId'
-rule
-    :: Rule
-rule =
-  Rule'
-    { _rulTargetingTemplateId = Nothing
-    , _rulName = Nothing
-    , _rulAssetId = Nothing
-    }
-
-
--- | A targeting template ID. The targeting from the targeting template will
--- be used to determine whether this asset should be served. This is a
--- required field.
-rulTargetingTemplateId :: Lens' Rule (Maybe Int64)
-rulTargetingTemplateId
-  = lens _rulTargetingTemplateId
-      (\ s a -> s{_rulTargetingTemplateId = a})
-      . mapping _Coerce
-
--- | A user-friendly name for this rule. This is a required field.
-rulName :: Lens' Rule (Maybe Text)
-rulName = lens _rulName (\ s a -> s{_rulName = a})
-
--- | A creativeAssets[].id. This should refer to one of the parent assets in
--- this creative. This is a required field.
-rulAssetId :: Lens' Rule (Maybe Int64)
-rulAssetId
-  = lens _rulAssetId (\ s a -> s{_rulAssetId = a}) .
-      mapping _Coerce
-
-instance FromJSON Rule where
-        parseJSON
-          = withObject "Rule"
-              (\ o ->
-                 Rule' <$>
-                   (o .:? "targetingTemplateId") <*> (o .:? "name") <*>
-                     (o .:? "assetId"))
-
-instance ToJSON Rule where
-        toJSON Rule'{..}
-          = object
-              (catMaybes
-                 [("targetingTemplateId" .=) <$>
-                    _rulTargetingTemplateId,
-                  ("name" .=) <$> _rulName,
-                  ("assetId" .=) <$> _rulAssetId])
-
--- | Contains properties of a Campaign Manager campaign.
---
--- /See:/ 'campaign' smart constructor.
-data Campaign =
-  Campaign'
-    { _camAdBlockingConfiguration                      :: !(Maybe AdBlockingConfiguration)
-    , _camCreativeOptimizationConfiguration            :: !(Maybe CreativeOptimizationConfiguration)
-    , _camCreativeGroupIds                             :: !(Maybe [Textual Int64])
-    , _camNielsenOCREnabled                            :: !(Maybe Bool)
-    , _camKind                                         :: !Text
-    , _camClickThroughURLSuffixProperties              :: !(Maybe ClickThroughURLSuffixProperties)
-    , _camAdvertiserId                                 :: !(Maybe (Textual Int64))
-    , _camEndDate                                      :: !(Maybe Date')
-    , _camAdvertiserIdDimensionValue                   :: !(Maybe DimensionValue)
-    , _camIdDimensionValue                             :: !(Maybe DimensionValue)
-    , _camEventTagOverrides                            :: !(Maybe [EventTagOverride])
-    , _camStartDate                                    :: !(Maybe Date')
-    , _camAccountId                                    :: !(Maybe (Textual Int64))
-    , _camName                                         :: !(Maybe Text)
-    , _camAdvertiserGroupId                            :: !(Maybe (Textual Int64))
-    , _camBillingInvoiceCode                           :: !(Maybe Text)
-    , _camDefaultLandingPageId                         :: !(Maybe (Textual Int64))
-    , _camCreateInfo                                   :: !(Maybe LastModifiedInfo)
-    , _camLastModifiedInfo                             :: !(Maybe LastModifiedInfo)
-    , _camId                                           :: !(Maybe (Textual Int64))
-    , _camSubAccountId                                 :: !(Maybe (Textual Int64))
-    , _camAdditionalCreativeOptimizationConfigurations :: !(Maybe [CreativeOptimizationConfiguration])
-    , _camExternalId                                   :: !(Maybe Text)
-    , _camComment                                      :: !(Maybe Text)
-    , _camAudienceSegmentGroups                        :: !(Maybe [AudienceSegmentGroup])
-    , _camArchived                                     :: !(Maybe Bool)
-    , _camTraffickerEmails                             :: !(Maybe [Text])
-    , _camDefaultClickThroughEventTagProperties        :: !(Maybe DefaultClickThroughEventTagProperties)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Campaign' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'camAdBlockingConfiguration'
---
--- * 'camCreativeOptimizationConfiguration'
---
--- * 'camCreativeGroupIds'
---
--- * 'camNielsenOCREnabled'
---
--- * 'camKind'
---
--- * 'camClickThroughURLSuffixProperties'
---
--- * 'camAdvertiserId'
---
--- * 'camEndDate'
---
--- * 'camAdvertiserIdDimensionValue'
---
--- * 'camIdDimensionValue'
---
--- * 'camEventTagOverrides'
---
--- * 'camStartDate'
---
--- * 'camAccountId'
---
--- * 'camName'
---
--- * 'camAdvertiserGroupId'
---
--- * 'camBillingInvoiceCode'
---
--- * 'camDefaultLandingPageId'
---
--- * 'camCreateInfo'
---
--- * 'camLastModifiedInfo'
---
--- * 'camId'
---
--- * 'camSubAccountId'
---
--- * 'camAdditionalCreativeOptimizationConfigurations'
---
--- * 'camExternalId'
---
--- * 'camComment'
---
--- * 'camAudienceSegmentGroups'
---
--- * 'camArchived'
---
--- * 'camTraffickerEmails'
---
--- * 'camDefaultClickThroughEventTagProperties'
-campaign
-    :: Campaign
-campaign =
-  Campaign'
-    { _camAdBlockingConfiguration = Nothing
-    , _camCreativeOptimizationConfiguration = Nothing
-    , _camCreativeGroupIds = Nothing
-    , _camNielsenOCREnabled = Nothing
-    , _camKind = "dfareporting#campaign"
-    , _camClickThroughURLSuffixProperties = Nothing
-    , _camAdvertiserId = Nothing
-    , _camEndDate = Nothing
-    , _camAdvertiserIdDimensionValue = Nothing
-    , _camIdDimensionValue = Nothing
-    , _camEventTagOverrides = Nothing
-    , _camStartDate = Nothing
-    , _camAccountId = Nothing
-    , _camName = Nothing
-    , _camAdvertiserGroupId = Nothing
-    , _camBillingInvoiceCode = Nothing
-    , _camDefaultLandingPageId = Nothing
-    , _camCreateInfo = Nothing
-    , _camLastModifiedInfo = Nothing
-    , _camId = Nothing
-    , _camSubAccountId = Nothing
-    , _camAdditionalCreativeOptimizationConfigurations = Nothing
-    , _camExternalId = Nothing
-    , _camComment = Nothing
-    , _camAudienceSegmentGroups = Nothing
-    , _camArchived = Nothing
-    , _camTraffickerEmails = Nothing
-    , _camDefaultClickThroughEventTagProperties = Nothing
-    }
-
-
--- | Ad blocking settings for this campaign.
-camAdBlockingConfiguration :: Lens' Campaign (Maybe AdBlockingConfiguration)
-camAdBlockingConfiguration
-  = lens _camAdBlockingConfiguration
-      (\ s a -> s{_camAdBlockingConfiguration = a})
-
--- | Creative optimization configuration for the campaign.
-camCreativeOptimizationConfiguration :: Lens' Campaign (Maybe CreativeOptimizationConfiguration)
-camCreativeOptimizationConfiguration
-  = lens _camCreativeOptimizationConfiguration
-      (\ s a ->
-         s{_camCreativeOptimizationConfiguration = a})
-
--- | List of creative group IDs that are assigned to the campaign.
-camCreativeGroupIds :: Lens' Campaign [Int64]
-camCreativeGroupIds
-  = lens _camCreativeGroupIds
-      (\ s a -> s{_camCreativeGroupIds = a})
-      . _Default
-      . _Coerce
-
--- | Whether Nielsen reports are enabled for this campaign.
-camNielsenOCREnabled :: Lens' Campaign (Maybe Bool)
-camNielsenOCREnabled
-  = lens _camNielsenOCREnabled
-      (\ s a -> s{_camNielsenOCREnabled = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#campaign\".
-camKind :: Lens' Campaign Text
-camKind = lens _camKind (\ s a -> s{_camKind = a})
-
--- | Click-through URL suffix override properties for this campaign.
-camClickThroughURLSuffixProperties :: Lens' Campaign (Maybe ClickThroughURLSuffixProperties)
-camClickThroughURLSuffixProperties
-  = lens _camClickThroughURLSuffixProperties
-      (\ s a -> s{_camClickThroughURLSuffixProperties = a})
-
--- | Advertiser ID of this campaign. This is a required field.
-camAdvertiserId :: Lens' Campaign (Maybe Int64)
-camAdvertiserId
-  = lens _camAdvertiserId
-      (\ s a -> s{_camAdvertiserId = a})
-      . mapping _Coerce
-
--- | Date on which the campaign will stop running. On insert, the end date
--- must be today or a future date. The end date must be later than or be
--- the same as the start date. If, for example, you set 6\/25\/2015 as both
--- the start and end dates, the effective campaign run date is just that
--- day only, 6\/25\/2015. The hours, minutes, and seconds of the end date
--- should not be set, as doing so will result in an error. This is a
--- required field.
-camEndDate :: Lens' Campaign (Maybe Day)
-camEndDate
-  = lens _camEndDate (\ s a -> s{_camEndDate = a}) .
-      mapping _Date
-
--- | Dimension value for the advertiser ID of this campaign. This is a
--- read-only, auto-generated field.
-camAdvertiserIdDimensionValue :: Lens' Campaign (Maybe DimensionValue)
-camAdvertiserIdDimensionValue
-  = lens _camAdvertiserIdDimensionValue
-      (\ s a -> s{_camAdvertiserIdDimensionValue = a})
-
--- | Dimension value for the ID of this campaign. This is a read-only,
--- auto-generated field.
-camIdDimensionValue :: Lens' Campaign (Maybe DimensionValue)
-camIdDimensionValue
-  = lens _camIdDimensionValue
-      (\ s a -> s{_camIdDimensionValue = a})
-
--- | Overrides that can be used to activate or deactivate advertiser event
--- tags.
-camEventTagOverrides :: Lens' Campaign [EventTagOverride]
-camEventTagOverrides
-  = lens _camEventTagOverrides
-      (\ s a -> s{_camEventTagOverrides = a})
-      . _Default
-      . _Coerce
-
--- | Date on which the campaign starts running. The start date can be any
--- date. The hours, minutes, and seconds of the start date should not be
--- set, as doing so will result in an error. This is a required field.
-camStartDate :: Lens' Campaign (Maybe Day)
-camStartDate
-  = lens _camStartDate (\ s a -> s{_camStartDate = a})
-      . mapping _Date
-
--- | Account ID of this campaign. This is a read-only field that can be left
--- blank.
-camAccountId :: Lens' Campaign (Maybe Int64)
-camAccountId
-  = lens _camAccountId (\ s a -> s{_camAccountId = a})
-      . mapping _Coerce
-
--- | Name of this campaign. This is a required field and must be less than
--- 256 characters long and unique among campaigns of the same advertiser.
-camName :: Lens' Campaign (Maybe Text)
-camName = lens _camName (\ s a -> s{_camName = a})
-
--- | Advertiser group ID of the associated advertiser.
-camAdvertiserGroupId :: Lens' Campaign (Maybe Int64)
-camAdvertiserGroupId
-  = lens _camAdvertiserGroupId
-      (\ s a -> s{_camAdvertiserGroupId = a})
-      . mapping _Coerce
-
--- | Billing invoice code included in the Campaign Manager client billing
--- invoices associated with the campaign.
-camBillingInvoiceCode :: Lens' Campaign (Maybe Text)
-camBillingInvoiceCode
-  = lens _camBillingInvoiceCode
-      (\ s a -> s{_camBillingInvoiceCode = a})
-
--- | The default landing page ID for this campaign.
-camDefaultLandingPageId :: Lens' Campaign (Maybe Int64)
-camDefaultLandingPageId
-  = lens _camDefaultLandingPageId
-      (\ s a -> s{_camDefaultLandingPageId = a})
-      . mapping _Coerce
-
--- | Information about the creation of this campaign. This is a read-only
--- field.
-camCreateInfo :: Lens' Campaign (Maybe LastModifiedInfo)
-camCreateInfo
-  = lens _camCreateInfo
-      (\ s a -> s{_camCreateInfo = a})
-
--- | Information about the most recent modification of this campaign. This is
--- a read-only field.
-camLastModifiedInfo :: Lens' Campaign (Maybe LastModifiedInfo)
-camLastModifiedInfo
-  = lens _camLastModifiedInfo
-      (\ s a -> s{_camLastModifiedInfo = a})
-
--- | ID of this campaign. This is a read-only auto-generated field.
-camId :: Lens' Campaign (Maybe Int64)
-camId
-  = lens _camId (\ s a -> s{_camId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this campaign. This is a read-only field that can be
--- left blank.
-camSubAccountId :: Lens' Campaign (Maybe Int64)
-camSubAccountId
-  = lens _camSubAccountId
-      (\ s a -> s{_camSubAccountId = a})
-      . mapping _Coerce
-
--- | Additional creative optimization configurations for the campaign.
-camAdditionalCreativeOptimizationConfigurations :: Lens' Campaign [CreativeOptimizationConfiguration]
-camAdditionalCreativeOptimizationConfigurations
-  = lens
-      _camAdditionalCreativeOptimizationConfigurations
-      (\ s a ->
-         s{_camAdditionalCreativeOptimizationConfigurations =
-             a})
-      . _Default
-      . _Coerce
-
--- | External ID for this campaign.
-camExternalId :: Lens' Campaign (Maybe Text)
-camExternalId
-  = lens _camExternalId
-      (\ s a -> s{_camExternalId = a})
-
--- | Arbitrary comments about this campaign. Must be less than 256 characters
--- long.
-camComment :: Lens' Campaign (Maybe Text)
-camComment
-  = lens _camComment (\ s a -> s{_camComment = a})
-
--- | Audience segment groups assigned to this campaign. Cannot have more than
--- 300 segment groups.
-camAudienceSegmentGroups :: Lens' Campaign [AudienceSegmentGroup]
-camAudienceSegmentGroups
-  = lens _camAudienceSegmentGroups
-      (\ s a -> s{_camAudienceSegmentGroups = a})
-      . _Default
-      . _Coerce
-
--- | Whether this campaign has been archived.
-camArchived :: Lens' Campaign (Maybe Bool)
-camArchived
-  = lens _camArchived (\ s a -> s{_camArchived = a})
-
--- | Campaign trafficker contact emails.
-camTraffickerEmails :: Lens' Campaign [Text]
-camTraffickerEmails
-  = lens _camTraffickerEmails
-      (\ s a -> s{_camTraffickerEmails = a})
-      . _Default
-      . _Coerce
-
--- | Click-through event tag ID override properties for this campaign.
-camDefaultClickThroughEventTagProperties :: Lens' Campaign (Maybe DefaultClickThroughEventTagProperties)
-camDefaultClickThroughEventTagProperties
-  = lens _camDefaultClickThroughEventTagProperties
-      (\ s a ->
-         s{_camDefaultClickThroughEventTagProperties = a})
-
-instance FromJSON Campaign where
-        parseJSON
-          = withObject "Campaign"
-              (\ o ->
-                 Campaign' <$>
-                   (o .:? "adBlockingConfiguration") <*>
-                     (o .:? "creativeOptimizationConfiguration")
-                     <*> (o .:? "creativeGroupIds" .!= mempty)
-                     <*> (o .:? "nielsenOcrEnabled")
-                     <*> (o .:? "kind" .!= "dfareporting#campaign")
-                     <*> (o .:? "clickThroughUrlSuffixProperties")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "endDate")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "eventTagOverrides" .!= mempty)
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "advertiserGroupId")
-                     <*> (o .:? "billingInvoiceCode")
-                     <*> (o .:? "defaultLandingPageId")
-                     <*> (o .:? "createInfo")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*>
-                     (o .:? "additionalCreativeOptimizationConfigurations"
-                        .!= mempty)
-                     <*> (o .:? "externalId")
-                     <*> (o .:? "comment")
-                     <*> (o .:? "audienceSegmentGroups" .!= mempty)
-                     <*> (o .:? "archived")
-                     <*> (o .:? "traffickerEmails" .!= mempty)
-                     <*> (o .:? "defaultClickThroughEventTagProperties"))
-
-instance ToJSON Campaign where
-        toJSON Campaign'{..}
-          = object
-              (catMaybes
-                 [("adBlockingConfiguration" .=) <$>
-                    _camAdBlockingConfiguration,
-                  ("creativeOptimizationConfiguration" .=) <$>
-                    _camCreativeOptimizationConfiguration,
-                  ("creativeGroupIds" .=) <$> _camCreativeGroupIds,
-                  ("nielsenOcrEnabled" .=) <$> _camNielsenOCREnabled,
-                  Just ("kind" .= _camKind),
-                  ("clickThroughUrlSuffixProperties" .=) <$>
-                    _camClickThroughURLSuffixProperties,
-                  ("advertiserId" .=) <$> _camAdvertiserId,
-                  ("endDate" .=) <$> _camEndDate,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _camAdvertiserIdDimensionValue,
-                  ("idDimensionValue" .=) <$> _camIdDimensionValue,
-                  ("eventTagOverrides" .=) <$> _camEventTagOverrides,
-                  ("startDate" .=) <$> _camStartDate,
-                  ("accountId" .=) <$> _camAccountId,
-                  ("name" .=) <$> _camName,
-                  ("advertiserGroupId" .=) <$> _camAdvertiserGroupId,
-                  ("billingInvoiceCode" .=) <$> _camBillingInvoiceCode,
-                  ("defaultLandingPageId" .=) <$>
-                    _camDefaultLandingPageId,
-                  ("createInfo" .=) <$> _camCreateInfo,
-                  ("lastModifiedInfo" .=) <$> _camLastModifiedInfo,
-                  ("id" .=) <$> _camId,
-                  ("subaccountId" .=) <$> _camSubAccountId,
-                  ("additionalCreativeOptimizationConfigurations" .=)
-                    <$> _camAdditionalCreativeOptimizationConfigurations,
-                  ("externalId" .=) <$> _camExternalId,
-                  ("comment" .=) <$> _camComment,
-                  ("audienceSegmentGroups" .=) <$>
-                    _camAudienceSegmentGroups,
-                  ("archived" .=) <$> _camArchived,
-                  ("traffickerEmails" .=) <$> _camTraffickerEmails,
-                  ("defaultClickThroughEventTagProperties" .=) <$>
-                    _camDefaultClickThroughEventTagProperties])
-
--- | Third Party Authentication Token
---
--- /See:/ 'thirdPartyAuthenticationToken' smart constructor.
-data ThirdPartyAuthenticationToken =
-  ThirdPartyAuthenticationToken'
-    { _tpatValue :: !(Maybe Text)
-    , _tpatName  :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ThirdPartyAuthenticationToken' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tpatValue'
---
--- * 'tpatName'
-thirdPartyAuthenticationToken
-    :: ThirdPartyAuthenticationToken
-thirdPartyAuthenticationToken =
-  ThirdPartyAuthenticationToken' {_tpatValue = Nothing, _tpatName = Nothing}
-
-
--- | Value of the third-party authentication token. This is a read-only,
--- auto-generated field.
-tpatValue :: Lens' ThirdPartyAuthenticationToken (Maybe Text)
-tpatValue
-  = lens _tpatValue (\ s a -> s{_tpatValue = a})
-
--- | Name of the third-party authentication token.
-tpatName :: Lens' ThirdPartyAuthenticationToken (Maybe Text)
-tpatName = lens _tpatName (\ s a -> s{_tpatName = a})
-
-instance FromJSON ThirdPartyAuthenticationToken where
-        parseJSON
-          = withObject "ThirdPartyAuthenticationToken"
-              (\ o ->
-                 ThirdPartyAuthenticationToken' <$>
-                   (o .:? "value") <*> (o .:? "name"))
-
-instance ToJSON ThirdPartyAuthenticationToken where
-        toJSON ThirdPartyAuthenticationToken'{..}
-          = object
-              (catMaybes
-                 [("value" .=) <$> _tpatValue,
-                  ("name" .=) <$> _tpatName])
-
--- | Click-through URL
---
--- /See:/ 'clickThroughURL' smart constructor.
-data ClickThroughURL =
-  ClickThroughURL'
-    { _ctuDefaultLandingPage      :: !(Maybe Bool)
-    , _ctuComputedClickThroughURL :: !(Maybe Text)
-    , _ctuCustomClickThroughURL   :: !(Maybe Text)
-    , _ctuLandingPageId           :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ClickThroughURL' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctuDefaultLandingPage'
---
--- * 'ctuComputedClickThroughURL'
---
--- * 'ctuCustomClickThroughURL'
---
--- * 'ctuLandingPageId'
-clickThroughURL
-    :: ClickThroughURL
-clickThroughURL =
-  ClickThroughURL'
-    { _ctuDefaultLandingPage = Nothing
-    , _ctuComputedClickThroughURL = Nothing
-    , _ctuCustomClickThroughURL = Nothing
-    , _ctuLandingPageId = Nothing
-    }
-
-
--- | Whether the campaign default landing page is used.
-ctuDefaultLandingPage :: Lens' ClickThroughURL (Maybe Bool)
-ctuDefaultLandingPage
-  = lens _ctuDefaultLandingPage
-      (\ s a -> s{_ctuDefaultLandingPage = a})
-
--- | Read-only convenience field representing the actual URL that will be
--- used for this click-through. The URL is computed as follows: - If
--- defaultLandingPage is enabled then the campaign\'s default landing page
--- URL is assigned to this field. - If defaultLandingPage is not enabled
--- and a landingPageId is specified then that landing page\'s URL is
--- assigned to this field. - If neither of the above cases apply, then the
--- customClickThroughUrl is assigned to this field.
-ctuComputedClickThroughURL :: Lens' ClickThroughURL (Maybe Text)
-ctuComputedClickThroughURL
-  = lens _ctuComputedClickThroughURL
-      (\ s a -> s{_ctuComputedClickThroughURL = a})
-
--- | Custom click-through URL. Applicable if the defaultLandingPage field is
--- set to false and the landingPageId field is left unset.
-ctuCustomClickThroughURL :: Lens' ClickThroughURL (Maybe Text)
-ctuCustomClickThroughURL
-  = lens _ctuCustomClickThroughURL
-      (\ s a -> s{_ctuCustomClickThroughURL = a})
-
--- | ID of the landing page for the click-through URL. Applicable if the
--- defaultLandingPage field is set to false.
-ctuLandingPageId :: Lens' ClickThroughURL (Maybe Int64)
-ctuLandingPageId
-  = lens _ctuLandingPageId
-      (\ s a -> s{_ctuLandingPageId = a})
-      . mapping _Coerce
-
-instance FromJSON ClickThroughURL where
-        parseJSON
-          = withObject "ClickThroughURL"
-              (\ o ->
-                 ClickThroughURL' <$>
-                   (o .:? "defaultLandingPage") <*>
-                     (o .:? "computedClickThroughUrl")
-                     <*> (o .:? "customClickThroughUrl")
-                     <*> (o .:? "landingPageId"))
-
-instance ToJSON ClickThroughURL where
-        toJSON ClickThroughURL'{..}
-          = object
-              (catMaybes
-                 [("defaultLandingPage" .=) <$>
-                    _ctuDefaultLandingPage,
-                  ("computedClickThroughUrl" .=) <$>
-                    _ctuComputedClickThroughURL,
-                  ("customClickThroughUrl" .=) <$>
-                    _ctuCustomClickThroughURL,
-                  ("landingPageId" .=) <$> _ctuLandingPageId])
-
--- | Browser List Response
---
--- /See:/ 'browsersListResponse' smart constructor.
-data BrowsersListResponse =
-  BrowsersListResponse'
-    { _blrKind     :: !Text
-    , _blrBrowsers :: !(Maybe [Browser])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'BrowsersListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'blrKind'
---
--- * 'blrBrowsers'
-browsersListResponse
-    :: BrowsersListResponse
-browsersListResponse =
-  BrowsersListResponse'
-    {_blrKind = "dfareporting#browsersListResponse", _blrBrowsers = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#browsersListResponse\".
-blrKind :: Lens' BrowsersListResponse Text
-blrKind = lens _blrKind (\ s a -> s{_blrKind = a})
-
--- | Browser collection.
-blrBrowsers :: Lens' BrowsersListResponse [Browser]
-blrBrowsers
-  = lens _blrBrowsers (\ s a -> s{_blrBrowsers = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON BrowsersListResponse where
-        parseJSON
-          = withObject "BrowsersListResponse"
-              (\ o ->
-                 BrowsersListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#browsersListResponse")
-                     <*> (o .:? "browsers" .!= mempty))
-
-instance ToJSON BrowsersListResponse where
-        toJSON BrowsersListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _blrKind),
-                  ("browsers" .=) <$> _blrBrowsers])
-
--- | Site Settings
---
--- /See:/ 'siteSettings' smart constructor.
-data SiteSettings =
-  SiteSettings'
-    { _ssDisableNewCookie              :: !(Maybe Bool)
-    , _ssVideoActiveViewOptOutTemplate :: !(Maybe Bool)
-    , _ssAdBlockingOptOut              :: !(Maybe Bool)
-    , _ssTagSetting                    :: !(Maybe TagSetting)
-    , _ssActiveViewOptOut              :: !(Maybe Bool)
-    , _ssVpaidAdapterChoiceTemplate    :: !(Maybe SiteSettingsVpaidAdapterChoiceTemplate)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SiteSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ssDisableNewCookie'
---
--- * 'ssVideoActiveViewOptOutTemplate'
---
--- * 'ssAdBlockingOptOut'
---
--- * 'ssTagSetting'
---
--- * 'ssActiveViewOptOut'
---
--- * 'ssVpaidAdapterChoiceTemplate'
-siteSettings
-    :: SiteSettings
-siteSettings =
-  SiteSettings'
-    { _ssDisableNewCookie = Nothing
-    , _ssVideoActiveViewOptOutTemplate = Nothing
-    , _ssAdBlockingOptOut = Nothing
-    , _ssTagSetting = Nothing
-    , _ssActiveViewOptOut = Nothing
-    , _ssVpaidAdapterChoiceTemplate = Nothing
-    }
-
-
--- | Whether new cookies are disabled for this site.
-ssDisableNewCookie :: Lens' SiteSettings (Maybe Bool)
-ssDisableNewCookie
-  = lens _ssDisableNewCookie
-      (\ s a -> s{_ssDisableNewCookie = a})
-
--- | Whether Verification and ActiveView for in-stream video creatives are
--- disabled by default for new placements created under this site. This
--- value will be used to populate the placement.videoActiveViewOptOut
--- field, when no value is specified for the new placement.
-ssVideoActiveViewOptOutTemplate :: Lens' SiteSettings (Maybe Bool)
-ssVideoActiveViewOptOutTemplate
-  = lens _ssVideoActiveViewOptOutTemplate
-      (\ s a -> s{_ssVideoActiveViewOptOutTemplate = a})
-
--- | Whether this site opts out of ad blocking. When true, ad blocking is
--- disabled for all placements under the site, regardless of the individual
--- placement settings. When false, the campaign and placement settings take
--- effect.
-ssAdBlockingOptOut :: Lens' SiteSettings (Maybe Bool)
-ssAdBlockingOptOut
-  = lens _ssAdBlockingOptOut
-      (\ s a -> s{_ssAdBlockingOptOut = a})
-
--- | Configuration settings for dynamic and image floodlight tags.
-ssTagSetting :: Lens' SiteSettings (Maybe TagSetting)
-ssTagSetting
-  = lens _ssTagSetting (\ s a -> s{_ssTagSetting = a})
-
--- | Whether active view creatives are disabled for this site.
-ssActiveViewOptOut :: Lens' SiteSettings (Maybe Bool)
-ssActiveViewOptOut
-  = lens _ssActiveViewOptOut
-      (\ s a -> s{_ssActiveViewOptOut = a})
-
--- | Default VPAID adapter setting for new placements created under this
--- site. This value will be used to populate the
--- placements.vpaidAdapterChoice field, when no value is specified for the
--- new placement. Controls which VPAID format the measurement adapter will
--- use for in-stream video creatives assigned to the placement. The
--- publisher\'s specifications will typically determine this setting. For
--- VPAID creatives, the adapter format will match the VPAID format (HTML5
--- VPAID creatives use the HTML5 adapter). Note: Flash is no longer
--- supported. This field now defaults to HTML5 when the following values
--- are provided: FLASH, BOTH.
-ssVpaidAdapterChoiceTemplate :: Lens' SiteSettings (Maybe SiteSettingsVpaidAdapterChoiceTemplate)
-ssVpaidAdapterChoiceTemplate
-  = lens _ssVpaidAdapterChoiceTemplate
-      (\ s a -> s{_ssVpaidAdapterChoiceTemplate = a})
-
-instance FromJSON SiteSettings where
-        parseJSON
-          = withObject "SiteSettings"
-              (\ o ->
-                 SiteSettings' <$>
-                   (o .:? "disableNewCookie") <*>
-                     (o .:? "videoActiveViewOptOutTemplate")
-                     <*> (o .:? "adBlockingOptOut")
-                     <*> (o .:? "tagSetting")
-                     <*> (o .:? "activeViewOptOut")
-                     <*> (o .:? "vpaidAdapterChoiceTemplate"))
-
-instance ToJSON SiteSettings where
-        toJSON SiteSettings'{..}
-          = object
-              (catMaybes
-                 [("disableNewCookie" .=) <$> _ssDisableNewCookie,
-                  ("videoActiveViewOptOutTemplate" .=) <$>
-                    _ssVideoActiveViewOptOutTemplate,
-                  ("adBlockingOptOut" .=) <$> _ssAdBlockingOptOut,
-                  ("tagSetting" .=) <$> _ssTagSetting,
-                  ("activeViewOptOut" .=) <$> _ssActiveViewOptOut,
-                  ("vpaidAdapterChoiceTemplate" .=) <$>
-                    _ssVpaidAdapterChoiceTemplate])
-
--- | Content Category List Response
---
--- /See:/ 'contentCategoriesListResponse' smart constructor.
-data ContentCategoriesListResponse =
-  ContentCategoriesListResponse'
-    { _cclrNextPageToken     :: !(Maybe Text)
-    , _cclrKind              :: !Text
-    , _cclrContentCategories :: !(Maybe [ContentCategory])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cclrNextPageToken'
---
--- * 'cclrKind'
---
--- * 'cclrContentCategories'
-contentCategoriesListResponse
-    :: ContentCategoriesListResponse
-contentCategoriesListResponse =
-  ContentCategoriesListResponse'
-    { _cclrNextPageToken = Nothing
-    , _cclrKind = "dfareporting#contentCategoriesListResponse"
-    , _cclrContentCategories = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-cclrNextPageToken :: Lens' ContentCategoriesListResponse (Maybe Text)
-cclrNextPageToken
-  = lens _cclrNextPageToken
-      (\ s a -> s{_cclrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#contentCategoriesListResponse\".
-cclrKind :: Lens' ContentCategoriesListResponse Text
-cclrKind = lens _cclrKind (\ s a -> s{_cclrKind = a})
-
--- | Content category collection.
-cclrContentCategories :: Lens' ContentCategoriesListResponse [ContentCategory]
-cclrContentCategories
-  = lens _cclrContentCategories
-      (\ s a -> s{_cclrContentCategories = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ContentCategoriesListResponse where
-        parseJSON
-          = withObject "ContentCategoriesListResponse"
-              (\ o ->
-                 ContentCategoriesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#contentCategoriesListResponse")
-                     <*> (o .:? "contentCategories" .!= mempty))
-
-instance ToJSON ContentCategoriesListResponse where
-        toJSON ContentCategoriesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _cclrNextPageToken,
-                  Just ("kind" .= _cclrKind),
-                  ("contentCategories" .=) <$> _cclrContentCategories])
-
--- | Creative List Response
---
--- /See:/ 'creativesListResponse' smart constructor.
-data CreativesListResponse =
-  CreativesListResponse'
-    { _clrlNextPageToken :: !(Maybe Text)
-    , _clrlKind          :: !Text
-    , _clrlCreatives     :: !(Maybe [Creative])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'clrlNextPageToken'
---
--- * 'clrlKind'
---
--- * 'clrlCreatives'
-creativesListResponse
-    :: CreativesListResponse
-creativesListResponse =
-  CreativesListResponse'
-    { _clrlNextPageToken = Nothing
-    , _clrlKind = "dfareporting#creativesListResponse"
-    , _clrlCreatives = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-clrlNextPageToken :: Lens' CreativesListResponse (Maybe Text)
-clrlNextPageToken
-  = lens _clrlNextPageToken
-      (\ s a -> s{_clrlNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativesListResponse\".
-clrlKind :: Lens' CreativesListResponse Text
-clrlKind = lens _clrlKind (\ s a -> s{_clrlKind = a})
-
--- | Creative collection.
-clrlCreatives :: Lens' CreativesListResponse [Creative]
-clrlCreatives
-  = lens _clrlCreatives
-      (\ s a -> s{_clrlCreatives = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CreativesListResponse where
-        parseJSON
-          = withObject "CreativesListResponse"
-              (\ o ->
-                 CreativesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#creativesListResponse")
-                     <*> (o .:? "creatives" .!= mempty))
-
-instance ToJSON CreativesListResponse where
-        toJSON CreativesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _clrlNextPageToken,
-                  Just ("kind" .= _clrlKind),
-                  ("creatives" .=) <$> _clrlCreatives])
-
--- | Contains properties of a Campaign Manager account.
---
--- /See:/ 'account' smart constructor.
-data Account =
-  Account'
-    { _aaAccountPermissionIds    :: !(Maybe [Textual Int64])
-    , _aaMaximumImageSize        :: !(Maybe (Textual Int64))
-    , _aaCurrencyId              :: !(Maybe (Textual Int64))
-    , _aaReportsConfiguration    :: !(Maybe ReportsConfiguration)
-    , _aaNielsenOCREnabled       :: !(Maybe Bool)
-    , _aaKind                    :: !Text
-    , _aaLocale                  :: !(Maybe Text)
-    , _aaActive                  :: !(Maybe Bool)
-    , _aaAvailablePermissionIds  :: !(Maybe [Textual Int64])
-    , _aaTeaserSizeLimit         :: !(Maybe (Textual Int64))
-    , _aaActiveViewOptOut        :: !(Maybe Bool)
-    , _aaShareReportsWithTwitter :: !(Maybe Bool)
-    , _aaName                    :: !(Maybe Text)
-    , _aaAccountProFile          :: !(Maybe AccountAccountProFile)
-    , _aaId                      :: !(Maybe (Textual Int64))
-    , _aaCountryId               :: !(Maybe (Textual Int64))
-    , _aaActiveAdsLimitTier      :: !(Maybe AccountActiveAdsLimitTier)
-    , _aaDefaultCreativeSizeId   :: !(Maybe (Textual Int64))
-    , _aaDescription             :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Account' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aaAccountPermissionIds'
---
--- * 'aaMaximumImageSize'
---
--- * 'aaCurrencyId'
---
--- * 'aaReportsConfiguration'
---
--- * 'aaNielsenOCREnabled'
---
--- * 'aaKind'
---
--- * 'aaLocale'
---
--- * 'aaActive'
---
--- * 'aaAvailablePermissionIds'
---
--- * 'aaTeaserSizeLimit'
---
--- * 'aaActiveViewOptOut'
---
--- * 'aaShareReportsWithTwitter'
---
--- * 'aaName'
---
--- * 'aaAccountProFile'
---
--- * 'aaId'
---
--- * 'aaCountryId'
---
--- * 'aaActiveAdsLimitTier'
---
--- * 'aaDefaultCreativeSizeId'
---
--- * 'aaDescription'
-account
-    :: Account
-account =
-  Account'
-    { _aaAccountPermissionIds = Nothing
-    , _aaMaximumImageSize = Nothing
-    , _aaCurrencyId = Nothing
-    , _aaReportsConfiguration = Nothing
-    , _aaNielsenOCREnabled = Nothing
-    , _aaKind = "dfareporting#account"
-    , _aaLocale = Nothing
-    , _aaActive = Nothing
-    , _aaAvailablePermissionIds = Nothing
-    , _aaTeaserSizeLimit = Nothing
-    , _aaActiveViewOptOut = Nothing
-    , _aaShareReportsWithTwitter = Nothing
-    , _aaName = Nothing
-    , _aaAccountProFile = Nothing
-    , _aaId = Nothing
-    , _aaCountryId = Nothing
-    , _aaActiveAdsLimitTier = Nothing
-    , _aaDefaultCreativeSizeId = Nothing
-    , _aaDescription = Nothing
-    }
-
-
--- | Account permissions assigned to this account.
-aaAccountPermissionIds :: Lens' Account [Int64]
-aaAccountPermissionIds
-  = lens _aaAccountPermissionIds
-      (\ s a -> s{_aaAccountPermissionIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum image size allowed for this account, in kilobytes. Value must be
--- greater than or equal to 1.
-aaMaximumImageSize :: Lens' Account (Maybe Int64)
-aaMaximumImageSize
-  = lens _aaMaximumImageSize
-      (\ s a -> s{_aaMaximumImageSize = a})
-      . mapping _Coerce
-
--- | ID of currency associated with this account. This is a required field.
--- Acceptable values are: - \"1\" for USD - \"2\" for GBP - \"3\" for ESP -
--- \"4\" for SEK - \"5\" for CAD - \"6\" for JPY - \"7\" for DEM - \"8\"
--- for AUD - \"9\" for FRF - \"10\" for ITL - \"11\" for DKK - \"12\" for
--- NOK - \"13\" for FIM - \"14\" for ZAR - \"15\" for IEP - \"16\" for NLG
--- - \"17\" for EUR - \"18\" for KRW - \"19\" for TWD - \"20\" for SGD -
--- \"21\" for CNY - \"22\" for HKD - \"23\" for NZD - \"24\" for MYR -
--- \"25\" for BRL - \"26\" for PTE - \"27\" for MXP - \"28\" for CLP -
--- \"29\" for TRY - \"30\" for ARS - \"31\" for PEN - \"32\" for ILS -
--- \"33\" for CHF - \"34\" for VEF - \"35\" for COP - \"36\" for GTQ -
--- \"37\" for PLN - \"39\" for INR - \"40\" for THB - \"41\" for IDR -
--- \"42\" for CZK - \"43\" for RON - \"44\" for HUF - \"45\" for RUB -
--- \"46\" for AED - \"47\" for BGN - \"48\" for HRK - \"49\" for MXN -
--- \"50\" for NGN
-aaCurrencyId :: Lens' Account (Maybe Int64)
-aaCurrencyId
-  = lens _aaCurrencyId (\ s a -> s{_aaCurrencyId = a})
-      . mapping _Coerce
-
--- | Reporting configuration of this account.
-aaReportsConfiguration :: Lens' Account (Maybe ReportsConfiguration)
-aaReportsConfiguration
-  = lens _aaReportsConfiguration
-      (\ s a -> s{_aaReportsConfiguration = a})
-
--- | Whether campaigns created in this account will be enabled for Nielsen
--- OCR reach ratings by default.
-aaNielsenOCREnabled :: Lens' Account (Maybe Bool)
-aaNielsenOCREnabled
-  = lens _aaNielsenOCREnabled
-      (\ s a -> s{_aaNielsenOCREnabled = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#account\".
-aaKind :: Lens' Account Text
-aaKind = lens _aaKind (\ s a -> s{_aaKind = a})
-
--- | Locale of this account. Acceptable values are: - \"cs\" (Czech) - \"de\"
--- (German) - \"en\" (English) - \"en-GB\" (English United Kingdom) -
--- \"es\" (Spanish) - \"fr\" (French) - \"it\" (Italian) - \"ja\"
--- (Japanese) - \"ko\" (Korean) - \"pl\" (Polish) - \"pt-BR\" (Portuguese
--- Brazil) - \"ru\" (Russian) - \"sv\" (Swedish) - \"tr\" (Turkish) -
--- \"zh-CN\" (Chinese Simplified) - \"zh-TW\" (Chinese Traditional)
-aaLocale :: Lens' Account (Maybe Text)
-aaLocale = lens _aaLocale (\ s a -> s{_aaLocale = a})
-
--- | Whether this account is active.
-aaActive :: Lens' Account (Maybe Bool)
-aaActive = lens _aaActive (\ s a -> s{_aaActive = a})
-
--- | User role permissions available to the user roles of this account.
-aaAvailablePermissionIds :: Lens' Account [Int64]
-aaAvailablePermissionIds
-  = lens _aaAvailablePermissionIds
-      (\ s a -> s{_aaAvailablePermissionIds = a})
-      . _Default
-      . _Coerce
-
--- | File size limit in kilobytes of Rich Media teaser creatives. Acceptable
--- values are 1 to 10240, inclusive.
-aaTeaserSizeLimit :: Lens' Account (Maybe Int64)
-aaTeaserSizeLimit
-  = lens _aaTeaserSizeLimit
-      (\ s a -> s{_aaTeaserSizeLimit = a})
-      . mapping _Coerce
-
--- | Whether to serve creatives with Active View tags. If disabled,
--- viewability data will not be available for any impressions.
-aaActiveViewOptOut :: Lens' Account (Maybe Bool)
-aaActiveViewOptOut
-  = lens _aaActiveViewOptOut
-      (\ s a -> s{_aaActiveViewOptOut = a})
-
--- | Share Path to Conversion reports with Twitter.
-aaShareReportsWithTwitter :: Lens' Account (Maybe Bool)
-aaShareReportsWithTwitter
-  = lens _aaShareReportsWithTwitter
-      (\ s a -> s{_aaShareReportsWithTwitter = a})
-
--- | Name of this account. This is a required field, and must be less than
--- 128 characters long and be globally unique.
-aaName :: Lens' Account (Maybe Text)
-aaName = lens _aaName (\ s a -> s{_aaName = a})
-
--- | Profile for this account. This is a read-only field that can be left
--- blank.
-aaAccountProFile :: Lens' Account (Maybe AccountAccountProFile)
-aaAccountProFile
-  = lens _aaAccountProFile
-      (\ s a -> s{_aaAccountProFile = a})
-
--- | ID of this account. This is a read-only, auto-generated field.
-aaId :: Lens' Account (Maybe Int64)
-aaId
-  = lens _aaId (\ s a -> s{_aaId = a}) .
-      mapping _Coerce
-
--- | ID of the country associated with this account.
-aaCountryId :: Lens' Account (Maybe Int64)
-aaCountryId
-  = lens _aaCountryId (\ s a -> s{_aaCountryId = a}) .
-      mapping _Coerce
-
--- | Maximum number of active ads allowed for this account.
-aaActiveAdsLimitTier :: Lens' Account (Maybe AccountActiveAdsLimitTier)
-aaActiveAdsLimitTier
-  = lens _aaActiveAdsLimitTier
-      (\ s a -> s{_aaActiveAdsLimitTier = a})
-
--- | Default placement dimensions for this account.
-aaDefaultCreativeSizeId :: Lens' Account (Maybe Int64)
-aaDefaultCreativeSizeId
-  = lens _aaDefaultCreativeSizeId
-      (\ s a -> s{_aaDefaultCreativeSizeId = a})
-      . mapping _Coerce
-
--- | Description of this account.
-aaDescription :: Lens' Account (Maybe Text)
-aaDescription
-  = lens _aaDescription
-      (\ s a -> s{_aaDescription = a})
-
-instance FromJSON Account where
-        parseJSON
-          = withObject "Account"
-              (\ o ->
-                 Account' <$>
-                   (o .:? "accountPermissionIds" .!= mempty) <*>
-                     (o .:? "maximumImageSize")
-                     <*> (o .:? "currencyId")
-                     <*> (o .:? "reportsConfiguration")
-                     <*> (o .:? "nielsenOcrEnabled")
-                     <*> (o .:? "kind" .!= "dfareporting#account")
-                     <*> (o .:? "locale")
-                     <*> (o .:? "active")
-                     <*> (o .:? "availablePermissionIds" .!= mempty)
-                     <*> (o .:? "teaserSizeLimit")
-                     <*> (o .:? "activeViewOptOut")
-                     <*> (o .:? "shareReportsWithTwitter")
-                     <*> (o .:? "name")
-                     <*> (o .:? "accountProfile")
-                     <*> (o .:? "id")
-                     <*> (o .:? "countryId")
-                     <*> (o .:? "activeAdsLimitTier")
-                     <*> (o .:? "defaultCreativeSizeId")
-                     <*> (o .:? "description"))
-
-instance ToJSON Account where
-        toJSON Account'{..}
-          = object
-              (catMaybes
-                 [("accountPermissionIds" .=) <$>
-                    _aaAccountPermissionIds,
-                  ("maximumImageSize" .=) <$> _aaMaximumImageSize,
-                  ("currencyId" .=) <$> _aaCurrencyId,
-                  ("reportsConfiguration" .=) <$>
-                    _aaReportsConfiguration,
-                  ("nielsenOcrEnabled" .=) <$> _aaNielsenOCREnabled,
-                  Just ("kind" .= _aaKind),
-                  ("locale" .=) <$> _aaLocale,
-                  ("active" .=) <$> _aaActive,
-                  ("availablePermissionIds" .=) <$>
-                    _aaAvailablePermissionIds,
-                  ("teaserSizeLimit" .=) <$> _aaTeaserSizeLimit,
-                  ("activeViewOptOut" .=) <$> _aaActiveViewOptOut,
-                  ("shareReportsWithTwitter" .=) <$>
-                    _aaShareReportsWithTwitter,
-                  ("name" .=) <$> _aaName,
-                  ("accountProfile" .=) <$> _aaAccountProFile,
-                  ("id" .=) <$> _aaId,
-                  ("countryId" .=) <$> _aaCountryId,
-                  ("activeAdsLimitTier" .=) <$> _aaActiveAdsLimitTier,
-                  ("defaultCreativeSizeId" .=) <$>
-                    _aaDefaultCreativeSizeId,
-                  ("description" .=) <$> _aaDescription])
-
--- | Insert Conversions Request.
---
--- /See:/ 'conversionsBatchInsertRequest' smart constructor.
-data ConversionsBatchInsertRequest =
-  ConversionsBatchInsertRequest'
-    { _cbirKind           :: !Text
-    , _cbirConversions    :: !(Maybe [Conversion])
-    , _cbirEncryptionInfo :: !(Maybe EncryptionInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchInsertRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cbirKind'
---
--- * 'cbirConversions'
---
--- * 'cbirEncryptionInfo'
-conversionsBatchInsertRequest
-    :: ConversionsBatchInsertRequest
-conversionsBatchInsertRequest =
-  ConversionsBatchInsertRequest'
-    { _cbirKind = "dfareporting#conversionsBatchInsertRequest"
-    , _cbirConversions = Nothing
-    , _cbirEncryptionInfo = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionsBatchInsertRequest\".
-cbirKind :: Lens' ConversionsBatchInsertRequest Text
-cbirKind = lens _cbirKind (\ s a -> s{_cbirKind = a})
-
--- | The set of conversions to insert.
-cbirConversions :: Lens' ConversionsBatchInsertRequest [Conversion]
-cbirConversions
-  = lens _cbirConversions
-      (\ s a -> s{_cbirConversions = a})
-      . _Default
-      . _Coerce
-
--- | Describes how encryptedUserId or encryptedUserIdCandidates[] is
--- encrypted. This is a required field if encryptedUserId or
--- encryptedUserIdCandidates[] is used.
-cbirEncryptionInfo :: Lens' ConversionsBatchInsertRequest (Maybe EncryptionInfo)
-cbirEncryptionInfo
-  = lens _cbirEncryptionInfo
-      (\ s a -> s{_cbirEncryptionInfo = a})
-
-instance FromJSON ConversionsBatchInsertRequest where
-        parseJSON
-          = withObject "ConversionsBatchInsertRequest"
-              (\ o ->
-                 ConversionsBatchInsertRequest' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#conversionsBatchInsertRequest")
-                     <*> (o .:? "conversions" .!= mempty)
-                     <*> (o .:? "encryptionInfo"))
-
-instance ToJSON ConversionsBatchInsertRequest where
-        toJSON ConversionsBatchInsertRequest'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cbirKind),
-                  ("conversions" .=) <$> _cbirConversions,
-                  ("encryptionInfo" .=) <$> _cbirEncryptionInfo])
-
--- | Account User Profile List Response
---
--- /See:/ 'accountUserProFilesListResponse' smart constructor.
-data AccountUserProFilesListResponse =
-  AccountUserProFilesListResponse'
-    { _aupflrNextPageToken       :: !(Maybe Text)
-    , _aupflrAccountUserProFiles :: !(Maybe [AccountUserProFile])
-    , _aupflrKind                :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupflrNextPageToken'
---
--- * 'aupflrAccountUserProFiles'
---
--- * 'aupflrKind'
-accountUserProFilesListResponse
-    :: AccountUserProFilesListResponse
-accountUserProFilesListResponse =
-  AccountUserProFilesListResponse'
-    { _aupflrNextPageToken = Nothing
-    , _aupflrAccountUserProFiles = Nothing
-    , _aupflrKind = "dfareporting#accountUserProfilesListResponse"
-    }
-
-
--- | Pagination token to be used for the next list operation.
-aupflrNextPageToken :: Lens' AccountUserProFilesListResponse (Maybe Text)
-aupflrNextPageToken
-  = lens _aupflrNextPageToken
-      (\ s a -> s{_aupflrNextPageToken = a})
-
--- | Account user profile collection.
-aupflrAccountUserProFiles :: Lens' AccountUserProFilesListResponse [AccountUserProFile]
-aupflrAccountUserProFiles
-  = lens _aupflrAccountUserProFiles
-      (\ s a -> s{_aupflrAccountUserProFiles = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountUserProfilesListResponse\".
-aupflrKind :: Lens' AccountUserProFilesListResponse Text
-aupflrKind
-  = lens _aupflrKind (\ s a -> s{_aupflrKind = a})
-
-instance FromJSON AccountUserProFilesListResponse
-         where
-        parseJSON
-          = withObject "AccountUserProFilesListResponse"
-              (\ o ->
-                 AccountUserProFilesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "accountUserProfiles" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#accountUserProfilesListResponse"))
-
-instance ToJSON AccountUserProFilesListResponse where
-        toJSON AccountUserProFilesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _aupflrNextPageToken,
-                  ("accountUserProfiles" .=) <$>
-                    _aupflrAccountUserProFiles,
-                  Just ("kind" .= _aupflrKind)])
-
--- | Organizes placements according to the contents of their associated
--- webpages.
---
--- /See:/ 'contentCategory' smart constructor.
-data ContentCategory =
-  ContentCategory'
-    { _conKind      :: !Text
-    , _conAccountId :: !(Maybe (Textual Int64))
-    , _conName      :: !(Maybe Text)
-    , _conId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategory' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'conKind'
---
--- * 'conAccountId'
---
--- * 'conName'
---
--- * 'conId'
-contentCategory
-    :: ContentCategory
-contentCategory =
-  ContentCategory'
-    { _conKind = "dfareporting#contentCategory"
-    , _conAccountId = Nothing
-    , _conName = Nothing
-    , _conId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#contentCategory\".
-conKind :: Lens' ContentCategory Text
-conKind = lens _conKind (\ s a -> s{_conKind = a})
-
--- | Account ID of this content category. This is a read-only field that can
--- be left blank.
-conAccountId :: Lens' ContentCategory (Maybe Int64)
-conAccountId
-  = lens _conAccountId (\ s a -> s{_conAccountId = a})
-      . mapping _Coerce
-
--- | Name of this content category. This is a required field and must be less
--- than 256 characters long and unique among content categories of the same
--- account.
-conName :: Lens' ContentCategory (Maybe Text)
-conName = lens _conName (\ s a -> s{_conName = a})
-
--- | ID of this content category. This is a read-only, auto-generated field.
-conId :: Lens' ContentCategory (Maybe Int64)
-conId
-  = lens _conId (\ s a -> s{_conId = a}) .
-      mapping _Coerce
-
-instance FromJSON ContentCategory where
-        parseJSON
-          = withObject "ContentCategory"
-              (\ o ->
-                 ContentCategory' <$>
-                   (o .:? "kind" .!= "dfareporting#contentCategory") <*>
-                     (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON ContentCategory where
-        toJSON ContentCategory'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _conKind),
-                  ("accountId" .=) <$> _conAccountId,
-                  ("name" .=) <$> _conName, ("id" .=) <$> _conId])
-
--- | Represents fields that are compatible to be selected for a report of
--- type \"STANDARD\".
---
--- /See:/ 'reportCompatibleFields' smart constructor.
-data ReportCompatibleFields =
-  ReportCompatibleFields'
-    { _rcfMetrics                :: !(Maybe [Metric])
-    , _rcfKind                   :: !Text
-    , _rcfDimensionFilters       :: !(Maybe [Dimension])
-    , _rcfPivotedActivityMetrics :: !(Maybe [Metric])
-    , _rcfDimensions             :: !(Maybe [Dimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportCompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rcfMetrics'
---
--- * 'rcfKind'
---
--- * 'rcfDimensionFilters'
---
--- * 'rcfPivotedActivityMetrics'
---
--- * 'rcfDimensions'
-reportCompatibleFields
-    :: ReportCompatibleFields
-reportCompatibleFields =
-  ReportCompatibleFields'
-    { _rcfMetrics = Nothing
-    , _rcfKind = "dfareporting#reportCompatibleFields"
-    , _rcfDimensionFilters = Nothing
-    , _rcfPivotedActivityMetrics = Nothing
-    , _rcfDimensions = Nothing
-    }
-
-
--- | Metrics which are compatible to be selected in the \"metricNames\"
--- section of the report.
-rcfMetrics :: Lens' ReportCompatibleFields [Metric]
-rcfMetrics
-  = lens _rcfMetrics (\ s a -> s{_rcfMetrics = a}) .
-      _Default
-      . _Coerce
-
--- | The kind of resource this is, in this case
--- dfareporting#reportCompatibleFields.
-rcfKind :: Lens' ReportCompatibleFields Text
-rcfKind = lens _rcfKind (\ s a -> s{_rcfKind = a})
-
--- | Dimensions which are compatible to be selected in the
--- \"dimensionFilters\" section of the report.
-rcfDimensionFilters :: Lens' ReportCompatibleFields [Dimension]
-rcfDimensionFilters
-  = lens _rcfDimensionFilters
-      (\ s a -> s{_rcfDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Metrics which are compatible to be selected as activity metrics to pivot
--- on in the \"activities\" section of the report.
-rcfPivotedActivityMetrics :: Lens' ReportCompatibleFields [Metric]
-rcfPivotedActivityMetrics
-  = lens _rcfPivotedActivityMetrics
-      (\ s a -> s{_rcfPivotedActivityMetrics = a})
-      . _Default
-      . _Coerce
-
--- | Dimensions which are compatible to be selected in the \"dimensions\"
--- section of the report.
-rcfDimensions :: Lens' ReportCompatibleFields [Dimension]
-rcfDimensions
-  = lens _rcfDimensions
-      (\ s a -> s{_rcfDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportCompatibleFields where
-        parseJSON
-          = withObject "ReportCompatibleFields"
-              (\ o ->
-                 ReportCompatibleFields' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#reportCompatibleFields")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "pivotedActivityMetrics" .!= mempty)
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON ReportCompatibleFields where
-        toJSON ReportCompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _rcfMetrics,
-                  Just ("kind" .= _rcfKind),
-                  ("dimensionFilters" .=) <$> _rcfDimensionFilters,
-                  ("pivotedActivityMetrics" .=) <$>
-                    _rcfPivotedActivityMetrics,
-                  ("dimensions" .=) <$> _rcfDimensions])
-
--- | Delivery Schedule.
---
--- /See:/ 'deliverySchedule' smart constructor.
-data DeliverySchedule =
-  DeliverySchedule'
-    { _dsHardCutoff      :: !(Maybe Bool)
-    , _dsPriority        :: !(Maybe DeliverySchedulePriority)
-    , _dsImpressionRatio :: !(Maybe (Textual Int64))
-    , _dsFrequencyCap    :: !(Maybe FrequencyCap)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DeliverySchedule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dsHardCutoff'
---
--- * 'dsPriority'
---
--- * 'dsImpressionRatio'
---
--- * 'dsFrequencyCap'
-deliverySchedule
-    :: DeliverySchedule
-deliverySchedule =
-  DeliverySchedule'
-    { _dsHardCutoff = Nothing
-    , _dsPriority = Nothing
-    , _dsImpressionRatio = Nothing
-    , _dsFrequencyCap = Nothing
-    }
-
-
--- | Whether or not hard cutoff is enabled. If true, the ad will not serve
--- after the end date and time. Otherwise the ad will continue to be served
--- until it has reached its delivery goals.
-dsHardCutoff :: Lens' DeliverySchedule (Maybe Bool)
-dsHardCutoff
-  = lens _dsHardCutoff (\ s a -> s{_dsHardCutoff = a})
-
--- | Serving priority of an ad, with respect to other ads. The lower the
--- priority number, the greater the priority with which it is served.
-dsPriority :: Lens' DeliverySchedule (Maybe DeliverySchedulePriority)
-dsPriority
-  = lens _dsPriority (\ s a -> s{_dsPriority = a})
-
--- | Impression ratio for this ad. This ratio determines how often each ad is
--- served relative to the others. For example, if ad A has an impression
--- ratio of 1 and ad B has an impression ratio of 3, then Campaign Manager
--- will serve ad B three times as often as ad A. Acceptable values are 1 to
--- 10, inclusive.
-dsImpressionRatio :: Lens' DeliverySchedule (Maybe Int64)
-dsImpressionRatio
-  = lens _dsImpressionRatio
-      (\ s a -> s{_dsImpressionRatio = a})
-      . mapping _Coerce
-
--- | Limit on the number of times an individual user can be served the ad
--- within a specified period of time.
-dsFrequencyCap :: Lens' DeliverySchedule (Maybe FrequencyCap)
-dsFrequencyCap
-  = lens _dsFrequencyCap
-      (\ s a -> s{_dsFrequencyCap = a})
-
-instance FromJSON DeliverySchedule where
-        parseJSON
-          = withObject "DeliverySchedule"
-              (\ o ->
-                 DeliverySchedule' <$>
-                   (o .:? "hardCutoff") <*> (o .:? "priority") <*>
-                     (o .:? "impressionRatio")
-                     <*> (o .:? "frequencyCap"))
-
-instance ToJSON DeliverySchedule where
-        toJSON DeliverySchedule'{..}
-          = object
-              (catMaybes
-                 [("hardCutoff" .=) <$> _dsHardCutoff,
-                  ("priority" .=) <$> _dsPriority,
-                  ("impressionRatio" .=) <$> _dsImpressionRatio,
-                  ("frequencyCap" .=) <$> _dsFrequencyCap])
-
--- | Contains properties of a remarketing list. Remarketing enables you to
--- create lists of users who have performed specific actions on a site,
--- then target ads to members of those lists. This resource can be used to
--- manage remarketing lists that are owned by your advertisers. To see all
--- remarketing lists that are visible to your advertisers, including those
--- that are shared to your advertiser or account, use the
--- TargetableRemarketingLists resource.
---
--- /See:/ 'remarketingList' smart constructor.
-data RemarketingList =
-  RemarketingList'
-    { _rlListSize                   :: !(Maybe (Textual Int64))
-    , _rlListPopulationRule         :: !(Maybe ListPopulationRule)
-    , _rlLifeSpan                   :: !(Maybe (Textual Int64))
-    , _rlKind                       :: !Text
-    , _rlAdvertiserId               :: !(Maybe (Textual Int64))
-    , _rlAdvertiserIdDimensionValue :: !(Maybe DimensionValue)
-    , _rlActive                     :: !(Maybe Bool)
-    , _rlAccountId                  :: !(Maybe (Textual Int64))
-    , _rlName                       :: !(Maybe Text)
-    , _rlListSource                 :: !(Maybe RemarketingListListSource)
-    , _rlId                         :: !(Maybe (Textual Int64))
-    , _rlSubAccountId               :: !(Maybe (Textual Int64))
-    , _rlDescription                :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlListSize'
---
--- * 'rlListPopulationRule'
---
--- * 'rlLifeSpan'
---
--- * 'rlKind'
---
--- * 'rlAdvertiserId'
---
--- * 'rlAdvertiserIdDimensionValue'
---
--- * 'rlActive'
---
--- * 'rlAccountId'
---
--- * 'rlName'
---
--- * 'rlListSource'
---
--- * 'rlId'
---
--- * 'rlSubAccountId'
---
--- * 'rlDescription'
-remarketingList
-    :: RemarketingList
-remarketingList =
-  RemarketingList'
-    { _rlListSize = Nothing
-    , _rlListPopulationRule = Nothing
-    , _rlLifeSpan = Nothing
-    , _rlKind = "dfareporting#remarketingList"
-    , _rlAdvertiserId = Nothing
-    , _rlAdvertiserIdDimensionValue = Nothing
-    , _rlActive = Nothing
-    , _rlAccountId = Nothing
-    , _rlName = Nothing
-    , _rlListSource = Nothing
-    , _rlId = Nothing
-    , _rlSubAccountId = Nothing
-    , _rlDescription = Nothing
-    }
-
-
--- | Number of users currently in the list. This is a read-only field.
-rlListSize :: Lens' RemarketingList (Maybe Int64)
-rlListSize
-  = lens _rlListSize (\ s a -> s{_rlListSize = a}) .
-      mapping _Coerce
-
--- | Rule used to populate the remarketing list with users.
-rlListPopulationRule :: Lens' RemarketingList (Maybe ListPopulationRule)
-rlListPopulationRule
-  = lens _rlListPopulationRule
-      (\ s a -> s{_rlListPopulationRule = a})
-
--- | Number of days that a user should remain in the remarketing list without
--- an impression. Acceptable values are 1 to 540, inclusive.
-rlLifeSpan :: Lens' RemarketingList (Maybe Int64)
-rlLifeSpan
-  = lens _rlLifeSpan (\ s a -> s{_rlLifeSpan = a}) .
-      mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#remarketingList\".
-rlKind :: Lens' RemarketingList Text
-rlKind = lens _rlKind (\ s a -> s{_rlKind = a})
-
--- | Dimension value for the advertiser ID that owns this remarketing list.
--- This is a required field.
-rlAdvertiserId :: Lens' RemarketingList (Maybe Int64)
-rlAdvertiserId
-  = lens _rlAdvertiserId
-      (\ s a -> s{_rlAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-rlAdvertiserIdDimensionValue :: Lens' RemarketingList (Maybe DimensionValue)
-rlAdvertiserIdDimensionValue
-  = lens _rlAdvertiserIdDimensionValue
-      (\ s a -> s{_rlAdvertiserIdDimensionValue = a})
-
--- | Whether this remarketing list is active.
-rlActive :: Lens' RemarketingList (Maybe Bool)
-rlActive = lens _rlActive (\ s a -> s{_rlActive = a})
-
--- | Account ID of this remarketing list. This is a read-only, auto-generated
--- field that is only returned in GET requests.
-rlAccountId :: Lens' RemarketingList (Maybe Int64)
-rlAccountId
-  = lens _rlAccountId (\ s a -> s{_rlAccountId = a}) .
-      mapping _Coerce
-
--- | Name of the remarketing list. This is a required field. Must be no
--- greater than 128 characters long.
-rlName :: Lens' RemarketingList (Maybe Text)
-rlName = lens _rlName (\ s a -> s{_rlName = a})
-
--- | Product from which this remarketing list was originated.
-rlListSource :: Lens' RemarketingList (Maybe RemarketingListListSource)
-rlListSource
-  = lens _rlListSource (\ s a -> s{_rlListSource = a})
-
--- | Remarketing list ID. This is a read-only, auto-generated field.
-rlId :: Lens' RemarketingList (Maybe Int64)
-rlId
-  = lens _rlId (\ s a -> s{_rlId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this remarketing list. This is a read-only,
--- auto-generated field that is only returned in GET requests.
-rlSubAccountId :: Lens' RemarketingList (Maybe Int64)
-rlSubAccountId
-  = lens _rlSubAccountId
-      (\ s a -> s{_rlSubAccountId = a})
-      . mapping _Coerce
-
--- | Remarketing list description.
-rlDescription :: Lens' RemarketingList (Maybe Text)
-rlDescription
-  = lens _rlDescription
-      (\ s a -> s{_rlDescription = a})
-
-instance FromJSON RemarketingList where
-        parseJSON
-          = withObject "RemarketingList"
-              (\ o ->
-                 RemarketingList' <$>
-                   (o .:? "listSize") <*> (o .:? "listPopulationRule")
-                     <*> (o .:? "lifeSpan")
-                     <*> (o .:? "kind" .!= "dfareporting#remarketingList")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "active")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "listSource")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "description"))
-
-instance ToJSON RemarketingList where
-        toJSON RemarketingList'{..}
-          = object
-              (catMaybes
-                 [("listSize" .=) <$> _rlListSize,
-                  ("listPopulationRule" .=) <$> _rlListPopulationRule,
-                  ("lifeSpan" .=) <$> _rlLifeSpan,
-                  Just ("kind" .= _rlKind),
-                  ("advertiserId" .=) <$> _rlAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _rlAdvertiserIdDimensionValue,
-                  ("active" .=) <$> _rlActive,
-                  ("accountId" .=) <$> _rlAccountId,
-                  ("name" .=) <$> _rlName,
-                  ("listSource" .=) <$> _rlListSource,
-                  ("id" .=) <$> _rlId,
-                  ("subaccountId" .=) <$> _rlSubAccountId,
-                  ("description" .=) <$> _rlDescription])
-
--- | Dynamic Targeting Key List Response
---
--- /See:/ 'dynamicTargetingKeysListResponse' smart constructor.
-data DynamicTargetingKeysListResponse =
-  DynamicTargetingKeysListResponse'
-    { _dtklrKind                 :: !Text
-    , _dtklrDynamicTargetingKeys :: !(Maybe [DynamicTargetingKey])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DynamicTargetingKeysListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dtklrKind'
---
--- * 'dtklrDynamicTargetingKeys'
-dynamicTargetingKeysListResponse
-    :: DynamicTargetingKeysListResponse
-dynamicTargetingKeysListResponse =
-  DynamicTargetingKeysListResponse'
-    { _dtklrKind = "dfareporting#dynamicTargetingKeysListResponse"
-    , _dtklrDynamicTargetingKeys = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#dynamicTargetingKeysListResponse\".
-dtklrKind :: Lens' DynamicTargetingKeysListResponse Text
-dtklrKind
-  = lens _dtklrKind (\ s a -> s{_dtklrKind = a})
-
--- | Dynamic targeting key collection.
-dtklrDynamicTargetingKeys :: Lens' DynamicTargetingKeysListResponse [DynamicTargetingKey]
-dtklrDynamicTargetingKeys
-  = lens _dtklrDynamicTargetingKeys
-      (\ s a -> s{_dtklrDynamicTargetingKeys = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON DynamicTargetingKeysListResponse
-         where
-        parseJSON
-          = withObject "DynamicTargetingKeysListResponse"
-              (\ o ->
-                 DynamicTargetingKeysListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#dynamicTargetingKeysListResponse")
-                     <*> (o .:? "dynamicTargetingKeys" .!= mempty))
-
-instance ToJSON DynamicTargetingKeysListResponse
-         where
-        toJSON DynamicTargetingKeysListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _dtklrKind),
-                  ("dynamicTargetingKeys" .=) <$>
-                    _dtklrDynamicTargetingKeys])
-
--- | Represents the list of DimensionValue resources.
---
--- /See:/ 'dimensionValueList' smart constructor.
-data DimensionValueList =
-  DimensionValueList'
-    { _dvlEtag          :: !(Maybe Text)
-    , _dvlNextPageToken :: !(Maybe Text)
-    , _dvlKind          :: !Text
-    , _dvlItems         :: !(Maybe [DimensionValue])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DimensionValueList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dvlEtag'
---
--- * 'dvlNextPageToken'
---
--- * 'dvlKind'
---
--- * 'dvlItems'
-dimensionValueList
-    :: DimensionValueList
-dimensionValueList =
-  DimensionValueList'
-    { _dvlEtag = Nothing
-    , _dvlNextPageToken = Nothing
-    , _dvlKind = "dfareporting#dimensionValueList"
-    , _dvlItems = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-dvlEtag :: Lens' DimensionValueList (Maybe Text)
-dvlEtag = lens _dvlEtag (\ s a -> s{_dvlEtag = a})
-
--- | Continuation token used to page through dimension values. To retrieve
--- the next page of results, set the next request\'s \"pageToken\" to the
--- value of this field. The page token is only valid for a limited amount
--- of time and should not be persisted.
-dvlNextPageToken :: Lens' DimensionValueList (Maybe Text)
-dvlNextPageToken
-  = lens _dvlNextPageToken
-      (\ s a -> s{_dvlNextPageToken = a})
-
--- | The kind of list this is, in this case dfareporting#dimensionValueList.
-dvlKind :: Lens' DimensionValueList Text
-dvlKind = lens _dvlKind (\ s a -> s{_dvlKind = a})
-
--- | The dimension values returned in this response.
-dvlItems :: Lens' DimensionValueList [DimensionValue]
-dvlItems
-  = lens _dvlItems (\ s a -> s{_dvlItems = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON DimensionValueList where
-        parseJSON
-          = withObject "DimensionValueList"
-              (\ o ->
-                 DimensionValueList' <$>
-                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#dimensionValueList")
-                     <*> (o .:? "items" .!= mempty))
-
-instance ToJSON DimensionValueList where
-        toJSON DimensionValueList'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _dvlEtag,
-                  ("nextPageToken" .=) <$> _dvlNextPageToken,
-                  Just ("kind" .= _dvlKind),
-                  ("items" .=) <$> _dvlItems])
-
--- | Represents fields that are compatible to be selected for a report of
--- type \"FlOODLIGHT\".
---
--- /See:/ 'floodlightReportCompatibleFields' smart constructor.
-data FloodlightReportCompatibleFields =
-  FloodlightReportCompatibleFields'
-    { _frcfMetrics          :: !(Maybe [Metric])
-    , _frcfKind             :: !Text
-    , _frcfDimensionFilters :: !(Maybe [Dimension])
-    , _frcfDimensions       :: !(Maybe [Dimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightReportCompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'frcfMetrics'
---
--- * 'frcfKind'
---
--- * 'frcfDimensionFilters'
---
--- * 'frcfDimensions'
-floodlightReportCompatibleFields
-    :: FloodlightReportCompatibleFields
-floodlightReportCompatibleFields =
-  FloodlightReportCompatibleFields'
-    { _frcfMetrics = Nothing
-    , _frcfKind = "dfareporting#floodlightReportCompatibleFields"
-    , _frcfDimensionFilters = Nothing
-    , _frcfDimensions = Nothing
-    }
-
-
--- | Metrics which are compatible to be selected in the \"metricNames\"
--- section of the report.
-frcfMetrics :: Lens' FloodlightReportCompatibleFields [Metric]
-frcfMetrics
-  = lens _frcfMetrics (\ s a -> s{_frcfMetrics = a}) .
-      _Default
-      . _Coerce
-
--- | The kind of resource this is, in this case
--- dfareporting#floodlightReportCompatibleFields.
-frcfKind :: Lens' FloodlightReportCompatibleFields Text
-frcfKind = lens _frcfKind (\ s a -> s{_frcfKind = a})
-
--- | Dimensions which are compatible to be selected in the
--- \"dimensionFilters\" section of the report.
-frcfDimensionFilters :: Lens' FloodlightReportCompatibleFields [Dimension]
-frcfDimensionFilters
-  = lens _frcfDimensionFilters
-      (\ s a -> s{_frcfDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | Dimensions which are compatible to be selected in the \"dimensions\"
--- section of the report.
-frcfDimensions :: Lens' FloodlightReportCompatibleFields [Dimension]
-frcfDimensions
-  = lens _frcfDimensions
-      (\ s a -> s{_frcfDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON FloodlightReportCompatibleFields
-         where
-        parseJSON
-          = withObject "FloodlightReportCompatibleFields"
-              (\ o ->
-                 FloodlightReportCompatibleFields' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightReportCompatibleFields")
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "dimensions" .!= mempty))
-
-instance ToJSON FloodlightReportCompatibleFields
-         where
-        toJSON FloodlightReportCompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _frcfMetrics,
-                  Just ("kind" .= _frcfKind),
-                  ("dimensionFilters" .=) <$> _frcfDimensionFilters,
-                  ("dimensions" .=) <$> _frcfDimensions])
-
--- | Represents a grouping of related user role permissions.
---
--- /See:/ 'userRolePermissionGroup' smart constructor.
-data UserRolePermissionGroup =
-  UserRolePermissionGroup'
-    { _urpgKind :: !Text
-    , _urpgName :: !(Maybe Text)
-    , _urpgId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urpgKind'
---
--- * 'urpgName'
---
--- * 'urpgId'
-userRolePermissionGroup
-    :: UserRolePermissionGroup
-userRolePermissionGroup =
-  UserRolePermissionGroup'
-    { _urpgKind = "dfareporting#userRolePermissionGroup"
-    , _urpgName = Nothing
-    , _urpgId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRolePermissionGroup\".
-urpgKind :: Lens' UserRolePermissionGroup Text
-urpgKind = lens _urpgKind (\ s a -> s{_urpgKind = a})
-
--- | Name of this user role permission group.
-urpgName :: Lens' UserRolePermissionGroup (Maybe Text)
-urpgName = lens _urpgName (\ s a -> s{_urpgName = a})
-
--- | ID of this user role permission.
-urpgId :: Lens' UserRolePermissionGroup (Maybe Int64)
-urpgId
-  = lens _urpgId (\ s a -> s{_urpgId = a}) .
-      mapping _Coerce
-
-instance FromJSON UserRolePermissionGroup where
-        parseJSON
-          = withObject "UserRolePermissionGroup"
-              (\ o ->
-                 UserRolePermissionGroup' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#userRolePermissionGroup")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON UserRolePermissionGroup where
-        toJSON UserRolePermissionGroup'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _urpgKind),
-                  ("name" .=) <$> _urpgName, ("id" .=) <$> _urpgId])
-
--- | Tag Settings
---
--- /See:/ 'tagSetting' smart constructor.
-data TagSetting =
-  TagSetting'
-    { _tsKeywordOption           :: !(Maybe TagSettingKeywordOption)
-    , _tsIncludeClickThroughURLs :: !(Maybe Bool)
-    , _tsIncludeClickTracking    :: !(Maybe Bool)
-    , _tsAdditionalKeyValues     :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TagSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tsKeywordOption'
---
--- * 'tsIncludeClickThroughURLs'
---
--- * 'tsIncludeClickTracking'
---
--- * 'tsAdditionalKeyValues'
-tagSetting
-    :: TagSetting
-tagSetting =
-  TagSetting'
-    { _tsKeywordOption = Nothing
-    , _tsIncludeClickThroughURLs = Nothing
-    , _tsIncludeClickTracking = Nothing
-    , _tsAdditionalKeyValues = Nothing
-    }
-
-
--- | Option specifying how keywords are embedded in ad tags. This setting can
--- be used to specify whether keyword placeholders are inserted in
--- placement tags for this site. Publishers can then add keywords to those
--- placeholders.
-tsKeywordOption :: Lens' TagSetting (Maybe TagSettingKeywordOption)
-tsKeywordOption
-  = lens _tsKeywordOption
-      (\ s a -> s{_tsKeywordOption = a})
-
--- | Whether static landing page URLs should be included in the tags. This
--- setting applies only to placements.
-tsIncludeClickThroughURLs :: Lens' TagSetting (Maybe Bool)
-tsIncludeClickThroughURLs
-  = lens _tsIncludeClickThroughURLs
-      (\ s a -> s{_tsIncludeClickThroughURLs = a})
-
--- | Whether click-tracking string should be included in the tags.
-tsIncludeClickTracking :: Lens' TagSetting (Maybe Bool)
-tsIncludeClickTracking
-  = lens _tsIncludeClickTracking
-      (\ s a -> s{_tsIncludeClickTracking = a})
-
--- | Additional key-values to be included in tags. Each key-value pair must
--- be of the form key=value, and pairs must be separated by a semicolon
--- (;). Keys and values must not contain commas. For example,
--- id=2;color=red is a valid value for this field.
-tsAdditionalKeyValues :: Lens' TagSetting (Maybe Text)
-tsAdditionalKeyValues
-  = lens _tsAdditionalKeyValues
-      (\ s a -> s{_tsAdditionalKeyValues = a})
-
-instance FromJSON TagSetting where
-        parseJSON
-          = withObject "TagSetting"
-              (\ o ->
-                 TagSetting' <$>
-                   (o .:? "keywordOption") <*>
-                     (o .:? "includeClickThroughUrls")
-                     <*> (o .:? "includeClickTracking")
-                     <*> (o .:? "additionalKeyValues"))
-
-instance ToJSON TagSetting where
-        toJSON TagSetting'{..}
-          = object
-              (catMaybes
-                 [("keywordOption" .=) <$> _tsKeywordOption,
-                  ("includeClickThroughUrls" .=) <$>
-                    _tsIncludeClickThroughURLs,
-                  ("includeClickTracking" .=) <$>
-                    _tsIncludeClickTracking,
-                  ("additionalKeyValues" .=) <$>
-                    _tsAdditionalKeyValues])
-
--- | The properties of the report.
---
--- /See:/ 'reportPathToConversionCriteriaReportProperties' smart constructor.
-data ReportPathToConversionCriteriaReportProperties =
-  ReportPathToConversionCriteriaReportProperties'
-    { _rptccrpMaximumInteractionGap                :: !(Maybe (Textual Int32))
-    , _rptccrpMaximumClickInteractions             :: !(Maybe (Textual Int32))
-    , _rptccrpPivotOnInteractionPath               :: !(Maybe Bool)
-    , _rptccrpMaximumImpressionInteractions        :: !(Maybe (Textual Int32))
-    , _rptccrpIncludeUnattributedIPConversions     :: !(Maybe Bool)
-    , _rptccrpImpressionsLookbackWindow            :: !(Maybe (Textual Int32))
-    , _rptccrpClicksLookbackWindow                 :: !(Maybe (Textual Int32))
-    , _rptccrpIncludeUnattributedCookieConversions :: !(Maybe Bool)
-    , _rptccrpIncludeAttributedIPConversions       :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportPathToConversionCriteriaReportProperties' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rptccrpMaximumInteractionGap'
---
--- * 'rptccrpMaximumClickInteractions'
---
--- * 'rptccrpPivotOnInteractionPath'
---
--- * 'rptccrpMaximumImpressionInteractions'
---
--- * 'rptccrpIncludeUnattributedIPConversions'
---
--- * 'rptccrpImpressionsLookbackWindow'
---
--- * 'rptccrpClicksLookbackWindow'
---
--- * 'rptccrpIncludeUnattributedCookieConversions'
---
--- * 'rptccrpIncludeAttributedIPConversions'
-reportPathToConversionCriteriaReportProperties
-    :: ReportPathToConversionCriteriaReportProperties
-reportPathToConversionCriteriaReportProperties =
-  ReportPathToConversionCriteriaReportProperties'
-    { _rptccrpMaximumInteractionGap = Nothing
-    , _rptccrpMaximumClickInteractions = Nothing
-    , _rptccrpPivotOnInteractionPath = Nothing
-    , _rptccrpMaximumImpressionInteractions = Nothing
-    , _rptccrpIncludeUnattributedIPConversions = Nothing
-    , _rptccrpImpressionsLookbackWindow = Nothing
-    , _rptccrpClicksLookbackWindow = Nothing
-    , _rptccrpIncludeUnattributedCookieConversions = Nothing
-    , _rptccrpIncludeAttributedIPConversions = Nothing
-    }
-
-
--- | The maximum amount of time that can take place between interactions
--- (clicks or impressions) by the same user. Valid values: 1-90.
-rptccrpMaximumInteractionGap :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Int32)
-rptccrpMaximumInteractionGap
-  = lens _rptccrpMaximumInteractionGap
-      (\ s a -> s{_rptccrpMaximumInteractionGap = a})
-      . mapping _Coerce
-
--- | The maximum number of click interactions to include in the report.
--- Advertisers currently paying for E2C reports get up to 200 (100 clicks,
--- 100 impressions). If another advertiser in your network is paying for
--- E2C, you can have up to 5 total exposures per report.
-rptccrpMaximumClickInteractions :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Int32)
-rptccrpMaximumClickInteractions
-  = lens _rptccrpMaximumClickInteractions
-      (\ s a -> s{_rptccrpMaximumClickInteractions = a})
-      . mapping _Coerce
-
--- | Enable pivoting on interaction path.
-rptccrpPivotOnInteractionPath :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Bool)
-rptccrpPivotOnInteractionPath
-  = lens _rptccrpPivotOnInteractionPath
-      (\ s a -> s{_rptccrpPivotOnInteractionPath = a})
-
--- | The maximum number of click interactions to include in the report.
--- Advertisers currently paying for E2C reports get up to 200 (100 clicks,
--- 100 impressions). If another advertiser in your network is paying for
--- E2C, you can have up to 5 total exposures per report.
-rptccrpMaximumImpressionInteractions :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Int32)
-rptccrpMaximumImpressionInteractions
-  = lens _rptccrpMaximumImpressionInteractions
-      (\ s a ->
-         s{_rptccrpMaximumImpressionInteractions = a})
-      . mapping _Coerce
-
--- | Include conversions that have no associated cookies and no exposures.
--- It’s therefore impossible to know how the user was exposed to your ads
--- during the lookback window prior to a conversion.
-rptccrpIncludeUnattributedIPConversions :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Bool)
-rptccrpIncludeUnattributedIPConversions
-  = lens _rptccrpIncludeUnattributedIPConversions
-      (\ s a ->
-         s{_rptccrpIncludeUnattributedIPConversions = a})
-
--- | DFA checks to see if an impression interaction occurred within the
--- specified period of time before a conversion. By default the value is
--- pulled from Floodlight or you can manually enter a custom value. Valid
--- values: 1-90.
-rptccrpImpressionsLookbackWindow :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Int32)
-rptccrpImpressionsLookbackWindow
-  = lens _rptccrpImpressionsLookbackWindow
-      (\ s a -> s{_rptccrpImpressionsLookbackWindow = a})
-      . mapping _Coerce
-
--- | DFA checks to see if a click interaction occurred within the specified
--- period of time before a conversion. By default the value is pulled from
--- Floodlight or you can manually enter a custom value. Valid values: 1-90.
-rptccrpClicksLookbackWindow :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Int32)
-rptccrpClicksLookbackWindow
-  = lens _rptccrpClicksLookbackWindow
-      (\ s a -> s{_rptccrpClicksLookbackWindow = a})
-      . mapping _Coerce
-
--- | Include conversions of users with a DoubleClick cookie but without an
--- exposure. That means the user did not click or see an ad from the
--- advertiser within the Floodlight group, or that the interaction happened
--- outside the lookback window.
-rptccrpIncludeUnattributedCookieConversions :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Bool)
-rptccrpIncludeUnattributedCookieConversions
-  = lens _rptccrpIncludeUnattributedCookieConversions
-      (\ s a ->
-         s{_rptccrpIncludeUnattributedCookieConversions = a})
-
--- | Deprecated: has no effect.
-rptccrpIncludeAttributedIPConversions :: Lens' ReportPathToConversionCriteriaReportProperties (Maybe Bool)
-rptccrpIncludeAttributedIPConversions
-  = lens _rptccrpIncludeAttributedIPConversions
-      (\ s a ->
-         s{_rptccrpIncludeAttributedIPConversions = a})
-
-instance FromJSON
-           ReportPathToConversionCriteriaReportProperties
-         where
-        parseJSON
-          = withObject
-              "ReportPathToConversionCriteriaReportProperties"
-              (\ o ->
-                 ReportPathToConversionCriteriaReportProperties' <$>
-                   (o .:? "maximumInteractionGap") <*>
-                     (o .:? "maximumClickInteractions")
-                     <*> (o .:? "pivotOnInteractionPath")
-                     <*> (o .:? "maximumImpressionInteractions")
-                     <*> (o .:? "includeUnattributedIPConversions")
-                     <*> (o .:? "impressionsLookbackWindow")
-                     <*> (o .:? "clicksLookbackWindow")
-                     <*> (o .:? "includeUnattributedCookieConversions")
-                     <*> (o .:? "includeAttributedIPConversions"))
-
-instance ToJSON
-           ReportPathToConversionCriteriaReportProperties
-         where
-        toJSON
-          ReportPathToConversionCriteriaReportProperties'{..}
-          = object
-              (catMaybes
-                 [("maximumInteractionGap" .=) <$>
-                    _rptccrpMaximumInteractionGap,
-                  ("maximumClickInteractions" .=) <$>
-                    _rptccrpMaximumClickInteractions,
-                  ("pivotOnInteractionPath" .=) <$>
-                    _rptccrpPivotOnInteractionPath,
-                  ("maximumImpressionInteractions" .=) <$>
-                    _rptccrpMaximumImpressionInteractions,
-                  ("includeUnattributedIPConversions" .=) <$>
-                    _rptccrpIncludeUnattributedIPConversions,
-                  ("impressionsLookbackWindow" .=) <$>
-                    _rptccrpImpressionsLookbackWindow,
-                  ("clicksLookbackWindow" .=) <$>
-                    _rptccrpClicksLookbackWindow,
-                  ("includeUnattributedCookieConversions" .=) <$>
-                    _rptccrpIncludeUnattributedCookieConversions,
-                  ("includeAttributedIPConversions" .=) <$>
-                    _rptccrpIncludeAttributedIPConversions])
-
--- | User Role Permission List Response
---
--- /See:/ 'userRolePermissionsListResponse' smart constructor.
-data UserRolePermissionsListResponse =
-  UserRolePermissionsListResponse'
-    { _urplrKind                :: !Text
-    , _urplrUserRolePermissions :: !(Maybe [UserRolePermission])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urplrKind'
---
--- * 'urplrUserRolePermissions'
-userRolePermissionsListResponse
-    :: UserRolePermissionsListResponse
-userRolePermissionsListResponse =
-  UserRolePermissionsListResponse'
-    { _urplrKind = "dfareporting#userRolePermissionsListResponse"
-    , _urplrUserRolePermissions = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRolePermissionsListResponse\".
-urplrKind :: Lens' UserRolePermissionsListResponse Text
-urplrKind
-  = lens _urplrKind (\ s a -> s{_urplrKind = a})
-
--- | User role permission collection.
-urplrUserRolePermissions :: Lens' UserRolePermissionsListResponse [UserRolePermission]
-urplrUserRolePermissions
-  = lens _urplrUserRolePermissions
-      (\ s a -> s{_urplrUserRolePermissions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON UserRolePermissionsListResponse
-         where
-        parseJSON
-          = withObject "UserRolePermissionsListResponse"
-              (\ o ->
-                 UserRolePermissionsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#userRolePermissionsListResponse")
-                     <*> (o .:? "userRolePermissions" .!= mempty))
-
-instance ToJSON UserRolePermissionsListResponse where
-        toJSON UserRolePermissionsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _urplrKind),
-                  ("userRolePermissions" .=) <$>
-                    _urplrUserRolePermissions])
-
--- | Placement Group List Response
---
--- /See:/ 'placementGroupsListResponse' smart constructor.
-data PlacementGroupsListResponse =
-  PlacementGroupsListResponse'
-    { _pglrNextPageToken   :: !(Maybe Text)
-    , _pglrKind            :: !Text
-    , _pglrPlacementGroups :: !(Maybe [PlacementGroup])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pglrNextPageToken'
---
--- * 'pglrKind'
---
--- * 'pglrPlacementGroups'
-placementGroupsListResponse
-    :: PlacementGroupsListResponse
-placementGroupsListResponse =
-  PlacementGroupsListResponse'
-    { _pglrNextPageToken = Nothing
-    , _pglrKind = "dfareporting#placementGroupsListResponse"
-    , _pglrPlacementGroups = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-pglrNextPageToken :: Lens' PlacementGroupsListResponse (Maybe Text)
-pglrNextPageToken
-  = lens _pglrNextPageToken
-      (\ s a -> s{_pglrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementGroupsListResponse\".
-pglrKind :: Lens' PlacementGroupsListResponse Text
-pglrKind = lens _pglrKind (\ s a -> s{_pglrKind = a})
-
--- | Placement group collection.
-pglrPlacementGroups :: Lens' PlacementGroupsListResponse [PlacementGroup]
-pglrPlacementGroups
-  = lens _pglrPlacementGroups
-      (\ s a -> s{_pglrPlacementGroups = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON PlacementGroupsListResponse where
-        parseJSON
-          = withObject "PlacementGroupsListResponse"
-              (\ o ->
-                 PlacementGroupsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#placementGroupsListResponse")
-                     <*> (o .:? "placementGroups" .!= mempty))
-
-instance ToJSON PlacementGroupsListResponse where
-        toJSON PlacementGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _pglrNextPageToken,
-                  Just ("kind" .= _pglrKind),
-                  ("placementGroups" .=) <$> _pglrPlacementGroups])
-
--- | Contains information about a mobile carrier that can be targeted by ads.
---
--- /See:/ 'mobileCarrier' smart constructor.
-data MobileCarrier =
-  MobileCarrier'
-    { _mcKind          :: !Text
-    , _mcName          :: !(Maybe Text)
-    , _mcCountryCode   :: !(Maybe Text)
-    , _mcId            :: !(Maybe (Textual Int64))
-    , _mcCountryDartId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileCarrier' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mcKind'
---
--- * 'mcName'
---
--- * 'mcCountryCode'
---
--- * 'mcId'
---
--- * 'mcCountryDartId'
-mobileCarrier
-    :: MobileCarrier
-mobileCarrier =
-  MobileCarrier'
-    { _mcKind = "dfareporting#mobileCarrier"
-    , _mcName = Nothing
-    , _mcCountryCode = Nothing
-    , _mcId = Nothing
-    , _mcCountryDartId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#mobileCarrier\".
-mcKind :: Lens' MobileCarrier Text
-mcKind = lens _mcKind (\ s a -> s{_mcKind = a})
-
--- | Name of this mobile carrier.
-mcName :: Lens' MobileCarrier (Maybe Text)
-mcName = lens _mcName (\ s a -> s{_mcName = a})
-
--- | Country code of the country to which this mobile carrier belongs.
-mcCountryCode :: Lens' MobileCarrier (Maybe Text)
-mcCountryCode
-  = lens _mcCountryCode
-      (\ s a -> s{_mcCountryCode = a})
-
--- | ID of this mobile carrier.
-mcId :: Lens' MobileCarrier (Maybe Int64)
-mcId
-  = lens _mcId (\ s a -> s{_mcId = a}) .
-      mapping _Coerce
-
--- | DART ID of the country to which this mobile carrier belongs.
-mcCountryDartId :: Lens' MobileCarrier (Maybe Int64)
-mcCountryDartId
-  = lens _mcCountryDartId
-      (\ s a -> s{_mcCountryDartId = a})
-      . mapping _Coerce
-
-instance FromJSON MobileCarrier where
-        parseJSON
-          = withObject "MobileCarrier"
-              (\ o ->
-                 MobileCarrier' <$>
-                   (o .:? "kind" .!= "dfareporting#mobileCarrier") <*>
-                     (o .:? "name")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "id")
-                     <*> (o .:? "countryDartId"))
-
-instance ToJSON MobileCarrier where
-        toJSON MobileCarrier'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _mcKind), ("name" .=) <$> _mcName,
-                  ("countryCode" .=) <$> _mcCountryCode,
-                  ("id" .=) <$> _mcId,
-                  ("countryDartId" .=) <$> _mcCountryDartId])
-
--- | Contains information about where a user\'s browser is taken after the
--- user clicks an ad.
---
--- /See:/ 'landingPage' smart constructor.
-data LandingPage =
-  LandingPage'
-    { _lpKind         :: !Text
-    , _lpAdvertiserId :: !(Maybe (Textual Int64))
-    , _lpURL          :: !(Maybe Text)
-    , _lpName         :: !(Maybe Text)
-    , _lpDeepLinks    :: !(Maybe [DeepLink])
-    , _lpId           :: !(Maybe (Textual Int64))
-    , _lpArchived     :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LandingPage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lpKind'
---
--- * 'lpAdvertiserId'
---
--- * 'lpURL'
---
--- * 'lpName'
---
--- * 'lpDeepLinks'
---
--- * 'lpId'
---
--- * 'lpArchived'
-landingPage
-    :: LandingPage
-landingPage =
-  LandingPage'
-    { _lpKind = "dfareporting#landingPage"
-    , _lpAdvertiserId = Nothing
-    , _lpURL = Nothing
-    , _lpName = Nothing
-    , _lpDeepLinks = Nothing
-    , _lpId = Nothing
-    , _lpArchived = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#landingPage\".
-lpKind :: Lens' LandingPage Text
-lpKind = lens _lpKind (\ s a -> s{_lpKind = a})
-
--- | Advertiser ID of this landing page. This is a required field.
-lpAdvertiserId :: Lens' LandingPage (Maybe Int64)
-lpAdvertiserId
-  = lens _lpAdvertiserId
-      (\ s a -> s{_lpAdvertiserId = a})
-      . mapping _Coerce
-
--- | URL of this landing page. This is a required field.
-lpURL :: Lens' LandingPage (Maybe Text)
-lpURL = lens _lpURL (\ s a -> s{_lpURL = a})
-
--- | Name of this landing page. This is a required field. It must be less
--- than 256 characters long.
-lpName :: Lens' LandingPage (Maybe Text)
-lpName = lens _lpName (\ s a -> s{_lpName = a})
-
--- | Links that will direct the user to a mobile app, if installed.
-lpDeepLinks :: Lens' LandingPage [DeepLink]
-lpDeepLinks
-  = lens _lpDeepLinks (\ s a -> s{_lpDeepLinks = a}) .
-      _Default
-      . _Coerce
-
--- | ID of this landing page. This is a read-only, auto-generated field.
-lpId :: Lens' LandingPage (Maybe Int64)
-lpId
-  = lens _lpId (\ s a -> s{_lpId = a}) .
-      mapping _Coerce
-
--- | Whether this landing page has been archived.
-lpArchived :: Lens' LandingPage (Maybe Bool)
-lpArchived
-  = lens _lpArchived (\ s a -> s{_lpArchived = a})
-
-instance FromJSON LandingPage where
-        parseJSON
-          = withObject "LandingPage"
-              (\ o ->
-                 LandingPage' <$>
-                   (o .:? "kind" .!= "dfareporting#landingPage") <*>
-                     (o .:? "advertiserId")
-                     <*> (o .:? "url")
-                     <*> (o .:? "name")
-                     <*> (o .:? "deepLinks" .!= mempty)
-                     <*> (o .:? "id")
-                     <*> (o .:? "archived"))
-
-instance ToJSON LandingPage where
-        toJSON LandingPage'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _lpKind),
-                  ("advertiserId" .=) <$> _lpAdvertiserId,
-                  ("url" .=) <$> _lpURL, ("name" .=) <$> _lpName,
-                  ("deepLinks" .=) <$> _lpDeepLinks,
-                  ("id" .=) <$> _lpId,
-                  ("archived" .=) <$> _lpArchived])
-
--- | Connection Type List Response
---
--- /See:/ 'connectionTypesListResponse' smart constructor.
-data ConnectionTypesListResponse =
-  ConnectionTypesListResponse'
-    { _ctlrKind            :: !Text
-    , _ctlrConnectionTypes :: !(Maybe [ConnectionType])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConnectionTypesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctlrKind'
---
--- * 'ctlrConnectionTypes'
-connectionTypesListResponse
-    :: ConnectionTypesListResponse
-connectionTypesListResponse =
-  ConnectionTypesListResponse'
-    { _ctlrKind = "dfareporting#connectionTypesListResponse"
-    , _ctlrConnectionTypes = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#connectionTypesListResponse\".
-ctlrKind :: Lens' ConnectionTypesListResponse Text
-ctlrKind = lens _ctlrKind (\ s a -> s{_ctlrKind = a})
-
--- | Collection of connection types such as broadband and mobile.
-ctlrConnectionTypes :: Lens' ConnectionTypesListResponse [ConnectionType]
-ctlrConnectionTypes
-  = lens _ctlrConnectionTypes
-      (\ s a -> s{_ctlrConnectionTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ConnectionTypesListResponse where
-        parseJSON
-          = withObject "ConnectionTypesListResponse"
-              (\ o ->
-                 ConnectionTypesListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#connectionTypesListResponse")
-                     <*> (o .:? "connectionTypes" .!= mempty))
-
-instance ToJSON ConnectionTypesListResponse where
-        toJSON ConnectionTypesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _ctlrKind),
-                  ("connectionTypes" .=) <$> _ctlrConnectionTypes])
-
--- | Order List Response
---
--- /See:/ 'ordersListResponse' smart constructor.
-data OrdersListResponse =
-  OrdersListResponse'
-    { _olrNextPageToken :: !(Maybe Text)
-    , _olrKind          :: !Text
-    , _olrOrders        :: !(Maybe [Order])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrdersListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'olrNextPageToken'
---
--- * 'olrKind'
---
--- * 'olrOrders'
-ordersListResponse
-    :: OrdersListResponse
-ordersListResponse =
-  OrdersListResponse'
-    { _olrNextPageToken = Nothing
-    , _olrKind = "dfareporting#ordersListResponse"
-    , _olrOrders = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-olrNextPageToken :: Lens' OrdersListResponse (Maybe Text)
-olrNextPageToken
-  = lens _olrNextPageToken
-      (\ s a -> s{_olrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#ordersListResponse\".
-olrKind :: Lens' OrdersListResponse Text
-olrKind = lens _olrKind (\ s a -> s{_olrKind = a})
-
--- | Order collection.
-olrOrders :: Lens' OrdersListResponse [Order]
-olrOrders
-  = lens _olrOrders (\ s a -> s{_olrOrders = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON OrdersListResponse where
-        parseJSON
-          = withObject "OrdersListResponse"
-              (\ o ->
-                 OrdersListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#ordersListResponse")
-                     <*> (o .:? "orders" .!= mempty))
-
-instance ToJSON OrdersListResponse where
-        toJSON OrdersListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _olrNextPageToken,
-                  Just ("kind" .= _olrKind),
-                  ("orders" .=) <$> _olrOrders])
-
--- | Represents the list of reports.
---
--- /See:/ 'reportList' smart constructor.
-data ReportList =
-  ReportList'
-    { _repEtag          :: !(Maybe Text)
-    , _repNextPageToken :: !(Maybe Text)
-    , _repKind          :: !Text
-    , _repItems         :: !(Maybe [Report])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'repEtag'
---
--- * 'repNextPageToken'
---
--- * 'repKind'
---
--- * 'repItems'
-reportList
-    :: ReportList
-reportList =
-  ReportList'
-    { _repEtag = Nothing
-    , _repNextPageToken = Nothing
-    , _repKind = "dfareporting#reportList"
-    , _repItems = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-repEtag :: Lens' ReportList (Maybe Text)
-repEtag = lens _repEtag (\ s a -> s{_repEtag = a})
-
--- | Continuation token used to page through reports. To retrieve the next
--- page of results, set the next request\'s \"pageToken\" to the value of
--- this field. The page token is only valid for a limited amount of time
--- and should not be persisted.
-repNextPageToken :: Lens' ReportList (Maybe Text)
-repNextPageToken
-  = lens _repNextPageToken
-      (\ s a -> s{_repNextPageToken = a})
-
--- | The kind of list this is, in this case dfareporting#reportList.
-repKind :: Lens' ReportList Text
-repKind = lens _repKind (\ s a -> s{_repKind = a})
-
--- | The reports returned in this response.
-repItems :: Lens' ReportList [Report]
-repItems
-  = lens _repItems (\ s a -> s{_repItems = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ReportList where
-        parseJSON
-          = withObject "ReportList"
-              (\ o ->
-                 ReportList' <$>
-                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#reportList")
-                     <*> (o .:? "items" .!= mempty))
-
-instance ToJSON ReportList where
-        toJSON ReportList'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _repEtag,
-                  ("nextPageToken" .=) <$> _repNextPageToken,
-                  Just ("kind" .= _repKind),
-                  ("items" .=) <$> _repItems])
-
--- | Contains properties of a creative group.
---
--- /See:/ 'creativeGroup' smart constructor.
-data CreativeGroup =
-  CreativeGroup'
-    { _cgKind                       :: !Text
-    , _cgAdvertiserId               :: !(Maybe (Textual Int64))
-    , _cgAdvertiserIdDimensionValue :: !(Maybe DimensionValue)
-    , _cgGroupNumber                :: !(Maybe (Textual Int32))
-    , _cgAccountId                  :: !(Maybe (Textual Int64))
-    , _cgName                       :: !(Maybe Text)
-    , _cgId                         :: !(Maybe (Textual Int64))
-    , _cgSubAccountId               :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgKind'
---
--- * 'cgAdvertiserId'
---
--- * 'cgAdvertiserIdDimensionValue'
---
--- * 'cgGroupNumber'
---
--- * 'cgAccountId'
---
--- * 'cgName'
---
--- * 'cgId'
---
--- * 'cgSubAccountId'
-creativeGroup
-    :: CreativeGroup
-creativeGroup =
-  CreativeGroup'
-    { _cgKind = "dfareporting#creativeGroup"
-    , _cgAdvertiserId = Nothing
-    , _cgAdvertiserIdDimensionValue = Nothing
-    , _cgGroupNumber = Nothing
-    , _cgAccountId = Nothing
-    , _cgName = Nothing
-    , _cgId = Nothing
-    , _cgSubAccountId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeGroup\".
-cgKind :: Lens' CreativeGroup Text
-cgKind = lens _cgKind (\ s a -> s{_cgKind = a})
-
--- | Advertiser ID of this creative group. This is a required field on
--- insertion.
-cgAdvertiserId :: Lens' CreativeGroup (Maybe Int64)
-cgAdvertiserId
-  = lens _cgAdvertiserId
-      (\ s a -> s{_cgAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-cgAdvertiserIdDimensionValue :: Lens' CreativeGroup (Maybe DimensionValue)
-cgAdvertiserIdDimensionValue
-  = lens _cgAdvertiserIdDimensionValue
-      (\ s a -> s{_cgAdvertiserIdDimensionValue = a})
-
--- | Subgroup of the creative group. Assign your creative groups to a
--- subgroup in order to filter or manage them more easily. This field is
--- required on insertion and is read-only after insertion. Acceptable
--- values are 1 to 2, inclusive.
-cgGroupNumber :: Lens' CreativeGroup (Maybe Int32)
-cgGroupNumber
-  = lens _cgGroupNumber
-      (\ s a -> s{_cgGroupNumber = a})
-      . mapping _Coerce
-
--- | Account ID of this creative group. This is a read-only field that can be
--- left blank.
-cgAccountId :: Lens' CreativeGroup (Maybe Int64)
-cgAccountId
-  = lens _cgAccountId (\ s a -> s{_cgAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this creative group. This is a required field and must be less
--- than 256 characters long and unique among creative groups of the same
--- advertiser.
-cgName :: Lens' CreativeGroup (Maybe Text)
-cgName = lens _cgName (\ s a -> s{_cgName = a})
-
--- | ID of this creative group. This is a read-only, auto-generated field.
-cgId :: Lens' CreativeGroup (Maybe Int64)
-cgId
-  = lens _cgId (\ s a -> s{_cgId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this creative group. This is a read-only field that can
--- be left blank.
-cgSubAccountId :: Lens' CreativeGroup (Maybe Int64)
-cgSubAccountId
-  = lens _cgSubAccountId
-      (\ s a -> s{_cgSubAccountId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeGroup where
-        parseJSON
-          = withObject "CreativeGroup"
-              (\ o ->
-                 CreativeGroup' <$>
-                   (o .:? "kind" .!= "dfareporting#creativeGroup") <*>
-                     (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "groupNumber")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId"))
-
-instance ToJSON CreativeGroup where
-        toJSON CreativeGroup'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cgKind),
-                  ("advertiserId" .=) <$> _cgAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _cgAdvertiserIdDimensionValue,
-                  ("groupNumber" .=) <$> _cgGroupNumber,
-                  ("accountId" .=) <$> _cgAccountId,
-                  ("name" .=) <$> _cgName, ("id" .=) <$> _cgId,
-                  ("subaccountId" .=) <$> _cgSubAccountId])
-
--- | Identifies a creative which has been associated with a given campaign.
---
--- /See:/ 'campaignCreativeAssociation' smart constructor.
-data CampaignCreativeAssociation =
-  CampaignCreativeAssociation'
-    { _ccaKind       :: !Text
-    , _ccaCreativeId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignCreativeAssociation' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccaKind'
---
--- * 'ccaCreativeId'
-campaignCreativeAssociation
-    :: CampaignCreativeAssociation
-campaignCreativeAssociation =
-  CampaignCreativeAssociation'
-    { _ccaKind = "dfareporting#campaignCreativeAssociation"
-    , _ccaCreativeId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#campaignCreativeAssociation\".
-ccaKind :: Lens' CampaignCreativeAssociation Text
-ccaKind = lens _ccaKind (\ s a -> s{_ccaKind = a})
-
--- | ID of the creative associated with the campaign. This is a required
--- field.
-ccaCreativeId :: Lens' CampaignCreativeAssociation (Maybe Int64)
-ccaCreativeId
-  = lens _ccaCreativeId
-      (\ s a -> s{_ccaCreativeId = a})
-      . mapping _Coerce
-
-instance FromJSON CampaignCreativeAssociation where
-        parseJSON
-          = withObject "CampaignCreativeAssociation"
-              (\ o ->
-                 CampaignCreativeAssociation' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#campaignCreativeAssociation")
-                     <*> (o .:? "creativeId"))
-
-instance ToJSON CampaignCreativeAssociation where
-        toJSON CampaignCreativeAssociation'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _ccaKind),
-                  ("creativeId" .=) <$> _ccaCreativeId])
-
--- | The original conversion that was inserted or updated and whether there
--- were any errors.
---
--- /See:/ 'conversionStatus' smart constructor.
-data ConversionStatus =
-  ConversionStatus'
-    { _csKind       :: !Text
-    , _csConversion :: !(Maybe Conversion)
-    , _csErrors     :: !(Maybe [ConversionError])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionStatus' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'csKind'
---
--- * 'csConversion'
---
--- * 'csErrors'
-conversionStatus
-    :: ConversionStatus
-conversionStatus =
-  ConversionStatus'
-    { _csKind = "dfareporting#conversionStatus"
-    , _csConversion = Nothing
-    , _csErrors = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionStatus\".
-csKind :: Lens' ConversionStatus Text
-csKind = lens _csKind (\ s a -> s{_csKind = a})
-
--- | The original conversion that was inserted or updated.
-csConversion :: Lens' ConversionStatus (Maybe Conversion)
-csConversion
-  = lens _csConversion (\ s a -> s{_csConversion = a})
-
--- | A list of errors related to this conversion.
-csErrors :: Lens' ConversionStatus [ConversionError]
-csErrors
-  = lens _csErrors (\ s a -> s{_csErrors = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ConversionStatus where
-        parseJSON
-          = withObject "ConversionStatus"
-              (\ o ->
-                 ConversionStatus' <$>
-                   (o .:? "kind" .!= "dfareporting#conversionStatus")
-                     <*> (o .:? "conversion")
-                     <*> (o .:? "errors" .!= mempty))
-
-instance ToJSON ConversionStatus where
-        toJSON ConversionStatus'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _csKind),
-                  ("conversion" .=) <$> _csConversion,
-                  ("errors" .=) <$> _csErrors])
-
--- | Lookback configuration settings.
---
--- /See:/ 'lookbackConfiguration' smart constructor.
-data LookbackConfiguration =
-  LookbackConfiguration'
-    { _lcClickDuration                    :: !(Maybe (Textual Int32))
-    , _lcPostImpressionActivitiesDuration :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LookbackConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lcClickDuration'
---
--- * 'lcPostImpressionActivitiesDuration'
-lookbackConfiguration
-    :: LookbackConfiguration
-lookbackConfiguration =
-  LookbackConfiguration'
-    {_lcClickDuration = Nothing, _lcPostImpressionActivitiesDuration = Nothing}
-
-
--- | Lookback window, in days, from the last time a given user clicked on one
--- of your ads. If you enter 0, clicks will not be considered as triggering
--- events for floodlight tracking. If you leave this field blank, the
--- default value for your account will be used. Acceptable values are 0 to
--- 90, inclusive.
-lcClickDuration :: Lens' LookbackConfiguration (Maybe Int32)
-lcClickDuration
-  = lens _lcClickDuration
-      (\ s a -> s{_lcClickDuration = a})
-      . mapping _Coerce
-
--- | Lookback window, in days, from the last time a given user viewed one of
--- your ads. If you enter 0, impressions will not be considered as
--- triggering events for floodlight tracking. If you leave this field
--- blank, the default value for your account will be used. Acceptable
--- values are 0 to 90, inclusive.
-lcPostImpressionActivitiesDuration :: Lens' LookbackConfiguration (Maybe Int32)
-lcPostImpressionActivitiesDuration
-  = lens _lcPostImpressionActivitiesDuration
-      (\ s a -> s{_lcPostImpressionActivitiesDuration = a})
-      . mapping _Coerce
-
-instance FromJSON LookbackConfiguration where
-        parseJSON
-          = withObject "LookbackConfiguration"
-              (\ o ->
-                 LookbackConfiguration' <$>
-                   (o .:? "clickDuration") <*>
-                     (o .:? "postImpressionActivitiesDuration"))
-
-instance ToJSON LookbackConfiguration where
-        toJSON LookbackConfiguration'{..}
-          = object
-              (catMaybes
-                 [("clickDuration" .=) <$> _lcClickDuration,
-                  ("postImpressionActivitiesDuration" .=) <$>
-                    _lcPostImpressionActivitiesDuration])
-
--- | Publisher Dynamic Tag
---
--- /See:/ 'floodlightActivityPublisherDynamicTag' smart constructor.
-data FloodlightActivityPublisherDynamicTag =
-  FloodlightActivityPublisherDynamicTag'
-    { _fapdtClickThrough         :: !(Maybe Bool)
-    , _fapdtSiteIdDimensionValue :: !(Maybe DimensionValue)
-    , _fapdtDynamicTag           :: !(Maybe FloodlightActivityDynamicTag)
-    , _fapdtDirectorySiteId      :: !(Maybe (Textual Int64))
-    , _fapdtSiteId               :: !(Maybe (Textual Int64))
-    , _fapdtViewThrough          :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityPublisherDynamicTag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fapdtClickThrough'
---
--- * 'fapdtSiteIdDimensionValue'
---
--- * 'fapdtDynamicTag'
---
--- * 'fapdtDirectorySiteId'
---
--- * 'fapdtSiteId'
---
--- * 'fapdtViewThrough'
-floodlightActivityPublisherDynamicTag
-    :: FloodlightActivityPublisherDynamicTag
-floodlightActivityPublisherDynamicTag =
-  FloodlightActivityPublisherDynamicTag'
-    { _fapdtClickThrough = Nothing
-    , _fapdtSiteIdDimensionValue = Nothing
-    , _fapdtDynamicTag = Nothing
-    , _fapdtDirectorySiteId = Nothing
-    , _fapdtSiteId = Nothing
-    , _fapdtViewThrough = Nothing
-    }
-
-
--- | Whether this tag is applicable only for click-throughs.
-fapdtClickThrough :: Lens' FloodlightActivityPublisherDynamicTag (Maybe Bool)
-fapdtClickThrough
-  = lens _fapdtClickThrough
-      (\ s a -> s{_fapdtClickThrough = a})
-
--- | Dimension value for the ID of the site. This is a read-only,
--- auto-generated field.
-fapdtSiteIdDimensionValue :: Lens' FloodlightActivityPublisherDynamicTag (Maybe DimensionValue)
-fapdtSiteIdDimensionValue
-  = lens _fapdtSiteIdDimensionValue
-      (\ s a -> s{_fapdtSiteIdDimensionValue = a})
-
--- | Dynamic floodlight tag.
-fapdtDynamicTag :: Lens' FloodlightActivityPublisherDynamicTag (Maybe FloodlightActivityDynamicTag)
-fapdtDynamicTag
-  = lens _fapdtDynamicTag
-      (\ s a -> s{_fapdtDynamicTag = a})
-
--- | Directory site ID of this dynamic tag. This is a write-only field that
--- can be used as an alternative to the siteId field. When this resource is
--- retrieved, only the siteId field will be populated.
-fapdtDirectorySiteId :: Lens' FloodlightActivityPublisherDynamicTag (Maybe Int64)
-fapdtDirectorySiteId
-  = lens _fapdtDirectorySiteId
-      (\ s a -> s{_fapdtDirectorySiteId = a})
-      . mapping _Coerce
-
--- | Site ID of this dynamic tag.
-fapdtSiteId :: Lens' FloodlightActivityPublisherDynamicTag (Maybe Int64)
-fapdtSiteId
-  = lens _fapdtSiteId (\ s a -> s{_fapdtSiteId = a}) .
-      mapping _Coerce
-
--- | Whether this tag is applicable only for view-throughs.
-fapdtViewThrough :: Lens' FloodlightActivityPublisherDynamicTag (Maybe Bool)
-fapdtViewThrough
-  = lens _fapdtViewThrough
-      (\ s a -> s{_fapdtViewThrough = a})
-
-instance FromJSON
-           FloodlightActivityPublisherDynamicTag
-         where
-        parseJSON
-          = withObject "FloodlightActivityPublisherDynamicTag"
-              (\ o ->
-                 FloodlightActivityPublisherDynamicTag' <$>
-                   (o .:? "clickThrough") <*>
-                     (o .:? "siteIdDimensionValue")
-                     <*> (o .:? "dynamicTag")
-                     <*> (o .:? "directorySiteId")
-                     <*> (o .:? "siteId")
-                     <*> (o .:? "viewThrough"))
-
-instance ToJSON FloodlightActivityPublisherDynamicTag
-         where
-        toJSON FloodlightActivityPublisherDynamicTag'{..}
-          = object
-              (catMaybes
-                 [("clickThrough" .=) <$> _fapdtClickThrough,
-                  ("siteIdDimensionValue" .=) <$>
-                    _fapdtSiteIdDimensionValue,
-                  ("dynamicTag" .=) <$> _fapdtDynamicTag,
-                  ("directorySiteId" .=) <$> _fapdtDirectorySiteId,
-                  ("siteId" .=) <$> _fapdtSiteId,
-                  ("viewThrough" .=) <$> _fapdtViewThrough])
-
--- | Gets a summary of active ads in an account.
---
--- /See:/ 'accountActiveAdSummary' smart constructor.
-data AccountActiveAdSummary =
-  AccountActiveAdSummary'
-    { _aaasAvailableAds       :: !(Maybe (Textual Int64))
-    , _aaasKind               :: !Text
-    , _aaasAccountId          :: !(Maybe (Textual Int64))
-    , _aaasActiveAds          :: !(Maybe (Textual Int64))
-    , _aaasActiveAdsLimitTier :: !(Maybe AccountActiveAdSummaryActiveAdsLimitTier)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountActiveAdSummary' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aaasAvailableAds'
---
--- * 'aaasKind'
---
--- * 'aaasAccountId'
---
--- * 'aaasActiveAds'
---
--- * 'aaasActiveAdsLimitTier'
-accountActiveAdSummary
-    :: AccountActiveAdSummary
-accountActiveAdSummary =
-  AccountActiveAdSummary'
-    { _aaasAvailableAds = Nothing
-    , _aaasKind = "dfareporting#accountActiveAdSummary"
-    , _aaasAccountId = Nothing
-    , _aaasActiveAds = Nothing
-    , _aaasActiveAdsLimitTier = Nothing
-    }
-
-
--- | Ads that can be activated for the account.
-aaasAvailableAds :: Lens' AccountActiveAdSummary (Maybe Int64)
-aaasAvailableAds
-  = lens _aaasAvailableAds
-      (\ s a -> s{_aaasAvailableAds = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountActiveAdSummary\".
-aaasKind :: Lens' AccountActiveAdSummary Text
-aaasKind = lens _aaasKind (\ s a -> s{_aaasKind = a})
-
--- | ID of the account.
-aaasAccountId :: Lens' AccountActiveAdSummary (Maybe Int64)
-aaasAccountId
-  = lens _aaasAccountId
-      (\ s a -> s{_aaasAccountId = a})
-      . mapping _Coerce
-
--- | Ads that have been activated for the account
-aaasActiveAds :: Lens' AccountActiveAdSummary (Maybe Int64)
-aaasActiveAds
-  = lens _aaasActiveAds
-      (\ s a -> s{_aaasActiveAds = a})
-      . mapping _Coerce
-
--- | Maximum number of active ads allowed for the account.
-aaasActiveAdsLimitTier :: Lens' AccountActiveAdSummary (Maybe AccountActiveAdSummaryActiveAdsLimitTier)
-aaasActiveAdsLimitTier
-  = lens _aaasActiveAdsLimitTier
-      (\ s a -> s{_aaasActiveAdsLimitTier = a})
-
-instance FromJSON AccountActiveAdSummary where
-        parseJSON
-          = withObject "AccountActiveAdSummary"
-              (\ o ->
-                 AccountActiveAdSummary' <$>
-                   (o .:? "availableAds") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#accountActiveAdSummary")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "activeAds")
-                     <*> (o .:? "activeAdsLimitTier"))
-
-instance ToJSON AccountActiveAdSummary where
-        toJSON AccountActiveAdSummary'{..}
-          = object
-              (catMaybes
-                 [("availableAds" .=) <$> _aaasAvailableAds,
-                  Just ("kind" .= _aaasKind),
-                  ("accountId" .=) <$> _aaasAccountId,
-                  ("activeAds" .=) <$> _aaasActiveAds,
-                  ("activeAdsLimitTier" .=) <$>
-                    _aaasActiveAdsLimitTier])
-
--- | Offset Position.
---
--- /See:/ 'offSetPosition' smart constructor.
-data OffSetPosition =
-  OffSetPosition'
-    { _ospLeft :: !(Maybe (Textual Int32))
-    , _ospTop  :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OffSetPosition' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ospLeft'
---
--- * 'ospTop'
-offSetPosition
-    :: OffSetPosition
-offSetPosition = OffSetPosition' {_ospLeft = Nothing, _ospTop = Nothing}
-
-
--- | Offset distance from left side of an asset or a window.
-ospLeft :: Lens' OffSetPosition (Maybe Int32)
-ospLeft
-  = lens _ospLeft (\ s a -> s{_ospLeft = a}) .
-      mapping _Coerce
-
--- | Offset distance from top side of an asset or a window.
-ospTop :: Lens' OffSetPosition (Maybe Int32)
-ospTop
-  = lens _ospTop (\ s a -> s{_ospTop = a}) .
-      mapping _Coerce
-
-instance FromJSON OffSetPosition where
-        parseJSON
-          = withObject "OffSetPosition"
-              (\ o ->
-                 OffSetPosition' <$> (o .:? "left") <*> (o .:? "top"))
-
-instance ToJSON OffSetPosition where
-        toJSON OffSetPosition'{..}
-          = object
-              (catMaybes
-                 [("left" .=) <$> _ospLeft, ("top" .=) <$> _ospTop])
-
--- | Represents a metric.
---
--- /See:/ 'metric' smart constructor.
-data Metric =
-  Metric'
-    { _mKind :: !Text
-    , _mName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Metric' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mKind'
---
--- * 'mName'
-metric
-    :: Metric
-metric = Metric' {_mKind = "dfareporting#metric", _mName = Nothing}
-
-
--- | The kind of resource this is, in this case dfareporting#metric.
-mKind :: Lens' Metric Text
-mKind = lens _mKind (\ s a -> s{_mKind = a})
-
--- | The metric name, e.g. dfa:impressions
-mName :: Lens' Metric (Maybe Text)
-mName = lens _mName (\ s a -> s{_mName = a})
-
-instance FromJSON Metric where
-        parseJSON
-          = withObject "Metric"
-              (\ o ->
-                 Metric' <$>
-                   (o .:? "kind" .!= "dfareporting#metric") <*>
-                     (o .:? "name"))
-
-instance ToJSON Metric where
-        toJSON Metric'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _mKind), ("name" .=) <$> _mName])
-
--- | Contains properties of a remarketing list\'s sharing information.
--- Sharing allows other accounts or advertisers to target to your
--- remarketing lists. This resource can be used to manage remarketing list
--- sharing to other accounts and advertisers.
---
--- /See:/ 'remarketingListShare' smart constructor.
-data RemarketingListShare =
-  RemarketingListShare'
-    { _rlsSharedAdvertiserIds :: !(Maybe [Textual Int64])
-    , _rlsKind                :: !Text
-    , _rlsRemarketingListId   :: !(Maybe (Textual Int64))
-    , _rlsSharedAccountIds    :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListShare' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlsSharedAdvertiserIds'
---
--- * 'rlsKind'
---
--- * 'rlsRemarketingListId'
---
--- * 'rlsSharedAccountIds'
-remarketingListShare
-    :: RemarketingListShare
-remarketingListShare =
-  RemarketingListShare'
-    { _rlsSharedAdvertiserIds = Nothing
-    , _rlsKind = "dfareporting#remarketingListShare"
-    , _rlsRemarketingListId = Nothing
-    , _rlsSharedAccountIds = Nothing
-    }
-
-
--- | Advertisers that the remarketing list is shared with.
-rlsSharedAdvertiserIds :: Lens' RemarketingListShare [Int64]
-rlsSharedAdvertiserIds
-  = lens _rlsSharedAdvertiserIds
-      (\ s a -> s{_rlsSharedAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#remarketingListShare\".
-rlsKind :: Lens' RemarketingListShare Text
-rlsKind = lens _rlsKind (\ s a -> s{_rlsKind = a})
-
--- | Remarketing list ID. This is a read-only, auto-generated field.
-rlsRemarketingListId :: Lens' RemarketingListShare (Maybe Int64)
-rlsRemarketingListId
-  = lens _rlsRemarketingListId
-      (\ s a -> s{_rlsRemarketingListId = a})
-      . mapping _Coerce
-
--- | Accounts that the remarketing list is shared with.
-rlsSharedAccountIds :: Lens' RemarketingListShare [Int64]
-rlsSharedAccountIds
-  = lens _rlsSharedAccountIds
-      (\ s a -> s{_rlsSharedAccountIds = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON RemarketingListShare where
-        parseJSON
-          = withObject "RemarketingListShare"
-              (\ o ->
-                 RemarketingListShare' <$>
-                   (o .:? "sharedAdvertiserIds" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#remarketingListShare")
-                     <*> (o .:? "remarketingListId")
-                     <*> (o .:? "sharedAccountIds" .!= mempty))
-
-instance ToJSON RemarketingListShare where
-        toJSON RemarketingListShare'{..}
-          = object
-              (catMaybes
-                 [("sharedAdvertiserIds" .=) <$>
-                    _rlsSharedAdvertiserIds,
-                  Just ("kind" .= _rlsKind),
-                  ("remarketingListId" .=) <$> _rlsRemarketingListId,
-                  ("sharedAccountIds" .=) <$> _rlsSharedAccountIds])
-
--- | Event Tag List Response
---
--- /See:/ 'eventTagsListResponse' smart constructor.
-data EventTagsListResponse =
-  EventTagsListResponse'
-    { _etlrKind      :: !Text
-    , _etlrEventTags :: !(Maybe [EventTag])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etlrKind'
---
--- * 'etlrEventTags'
-eventTagsListResponse
-    :: EventTagsListResponse
-eventTagsListResponse =
-  EventTagsListResponse'
-    {_etlrKind = "dfareporting#eventTagsListResponse", _etlrEventTags = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#eventTagsListResponse\".
-etlrKind :: Lens' EventTagsListResponse Text
-etlrKind = lens _etlrKind (\ s a -> s{_etlrKind = a})
-
--- | Event tag collection.
-etlrEventTags :: Lens' EventTagsListResponse [EventTag]
-etlrEventTags
-  = lens _etlrEventTags
-      (\ s a -> s{_etlrEventTags = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON EventTagsListResponse where
-        parseJSON
-          = withObject "EventTagsListResponse"
-              (\ o ->
-                 EventTagsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#eventTagsListResponse")
-                     <*> (o .:? "eventTags" .!= mempty))
-
-instance ToJSON EventTagsListResponse where
-        toJSON EventTagsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _etlrKind),
-                  ("eventTags" .=) <$> _etlrEventTags])
-
--- | User Role List Response
---
--- /See:/ 'userRolesListResponse' smart constructor.
-data UserRolesListResponse =
-  UserRolesListResponse'
-    { _urlrNextPageToken :: !(Maybe Text)
-    , _urlrKind          :: !Text
-    , _urlrUserRoles     :: !(Maybe [UserRole])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urlrNextPageToken'
---
--- * 'urlrKind'
---
--- * 'urlrUserRoles'
-userRolesListResponse
-    :: UserRolesListResponse
-userRolesListResponse =
-  UserRolesListResponse'
-    { _urlrNextPageToken = Nothing
-    , _urlrKind = "dfareporting#userRolesListResponse"
-    , _urlrUserRoles = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-urlrNextPageToken :: Lens' UserRolesListResponse (Maybe Text)
-urlrNextPageToken
-  = lens _urlrNextPageToken
-      (\ s a -> s{_urlrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRolesListResponse\".
-urlrKind :: Lens' UserRolesListResponse Text
-urlrKind = lens _urlrKind (\ s a -> s{_urlrKind = a})
-
--- | User role collection.
-urlrUserRoles :: Lens' UserRolesListResponse [UserRole]
-urlrUserRoles
-  = lens _urlrUserRoles
-      (\ s a -> s{_urlrUserRoles = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON UserRolesListResponse where
-        parseJSON
-          = withObject "UserRolesListResponse"
-              (\ o ->
-                 UserRolesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#userRolesListResponse")
-                     <*> (o .:? "userRoles" .!= mempty))
-
-instance ToJSON UserRolesListResponse where
-        toJSON UserRolesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _urlrNextPageToken,
-                  Just ("kind" .= _urlrKind),
-                  ("userRoles" .=) <$> _urlrUserRoles])
-
--- | Represents a response to the queryCompatibleFields method.
---
--- /See:/ 'compatibleFields' smart constructor.
-data CompatibleFields =
-  CompatibleFields'
-    { _cfReachReportCompatibleFields               :: !(Maybe ReachReportCompatibleFields)
-    , _cfCrossDimensionReachReportCompatibleFields :: !(Maybe CrossDimensionReachReportCompatibleFields)
-    , _cfKind                                      :: !Text
-    , _cfFloodlightReportCompatibleFields          :: !(Maybe FloodlightReportCompatibleFields)
-    , _cfReportCompatibleFields                    :: !(Maybe ReportCompatibleFields)
-    , _cfPathToConversionReportCompatibleFields    :: !(Maybe PathToConversionReportCompatibleFields)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfReachReportCompatibleFields'
---
--- * 'cfCrossDimensionReachReportCompatibleFields'
---
--- * 'cfKind'
---
--- * 'cfFloodlightReportCompatibleFields'
---
--- * 'cfReportCompatibleFields'
---
--- * 'cfPathToConversionReportCompatibleFields'
-compatibleFields
-    :: CompatibleFields
-compatibleFields =
-  CompatibleFields'
-    { _cfReachReportCompatibleFields = Nothing
-    , _cfCrossDimensionReachReportCompatibleFields = Nothing
-    , _cfKind = "dfareporting#compatibleFields"
-    , _cfFloodlightReportCompatibleFields = Nothing
-    , _cfReportCompatibleFields = Nothing
-    , _cfPathToConversionReportCompatibleFields = Nothing
-    }
-
-
--- | Contains items that are compatible to be selected for a report of type
--- \"REACH\".
-cfReachReportCompatibleFields :: Lens' CompatibleFields (Maybe ReachReportCompatibleFields)
-cfReachReportCompatibleFields
-  = lens _cfReachReportCompatibleFields
-      (\ s a -> s{_cfReachReportCompatibleFields = a})
-
--- | Contains items that are compatible to be selected for a report of type
--- \"CROSS_DIMENSION_REACH\".
-cfCrossDimensionReachReportCompatibleFields :: Lens' CompatibleFields (Maybe CrossDimensionReachReportCompatibleFields)
-cfCrossDimensionReachReportCompatibleFields
-  = lens _cfCrossDimensionReachReportCompatibleFields
-      (\ s a ->
-         s{_cfCrossDimensionReachReportCompatibleFields = a})
-
--- | The kind of resource this is, in this case
--- dfareporting#compatibleFields.
-cfKind :: Lens' CompatibleFields Text
-cfKind = lens _cfKind (\ s a -> s{_cfKind = a})
-
--- | Contains items that are compatible to be selected for a report of type
--- \"FLOODLIGHT\".
-cfFloodlightReportCompatibleFields :: Lens' CompatibleFields (Maybe FloodlightReportCompatibleFields)
-cfFloodlightReportCompatibleFields
-  = lens _cfFloodlightReportCompatibleFields
-      (\ s a -> s{_cfFloodlightReportCompatibleFields = a})
-
--- | Contains items that are compatible to be selected for a report of type
--- \"STANDARD\".
-cfReportCompatibleFields :: Lens' CompatibleFields (Maybe ReportCompatibleFields)
-cfReportCompatibleFields
-  = lens _cfReportCompatibleFields
-      (\ s a -> s{_cfReportCompatibleFields = a})
-
--- | Contains items that are compatible to be selected for a report of type
--- \"PATH_TO_CONVERSION\".
-cfPathToConversionReportCompatibleFields :: Lens' CompatibleFields (Maybe PathToConversionReportCompatibleFields)
-cfPathToConversionReportCompatibleFields
-  = lens _cfPathToConversionReportCompatibleFields
-      (\ s a ->
-         s{_cfPathToConversionReportCompatibleFields = a})
-
-instance FromJSON CompatibleFields where
-        parseJSON
-          = withObject "CompatibleFields"
-              (\ o ->
-                 CompatibleFields' <$>
-                   (o .:? "reachReportCompatibleFields") <*>
-                     (o .:? "crossDimensionReachReportCompatibleFields")
-                     <*>
-                     (o .:? "kind" .!= "dfareporting#compatibleFields")
-                     <*> (o .:? "floodlightReportCompatibleFields")
-                     <*> (o .:? "reportCompatibleFields")
-                     <*> (o .:? "pathToConversionReportCompatibleFields"))
-
-instance ToJSON CompatibleFields where
-        toJSON CompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("reachReportCompatibleFields" .=) <$>
-                    _cfReachReportCompatibleFields,
-                  ("crossDimensionReachReportCompatibleFields" .=) <$>
-                    _cfCrossDimensionReachReportCompatibleFields,
-                  Just ("kind" .= _cfKind),
-                  ("floodlightReportCompatibleFields" .=) <$>
-                    _cfFloodlightReportCompatibleFields,
-                  ("reportCompatibleFields" .=) <$>
-                    _cfReportCompatibleFields,
-                  ("pathToConversionReportCompatibleFields" .=) <$>
-                    _cfPathToConversionReportCompatibleFields])
-
--- | Audience Segment.
---
--- /See:/ 'audienceSegment' smart constructor.
-data AudienceSegment =
-  AudienceSegment'
-    { _asName       :: !(Maybe Text)
-    , _asId         :: !(Maybe (Textual Int64))
-    , _asAllocation :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AudienceSegment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'asName'
---
--- * 'asId'
---
--- * 'asAllocation'
-audienceSegment
-    :: AudienceSegment
-audienceSegment =
-  AudienceSegment' {_asName = Nothing, _asId = Nothing, _asAllocation = Nothing}
-
-
--- | Name of this audience segment. This is a required field and must be less
--- than 65 characters long.
-asName :: Lens' AudienceSegment (Maybe Text)
-asName = lens _asName (\ s a -> s{_asName = a})
-
--- | ID of this audience segment. This is a read-only, auto-generated field.
-asId :: Lens' AudienceSegment (Maybe Int64)
-asId
-  = lens _asId (\ s a -> s{_asId = a}) .
-      mapping _Coerce
-
--- | Weight allocated to this segment. The weight assigned will be understood
--- in proportion to the weights assigned to other segments in the same
--- segment group. Acceptable values are 1 to 1000, inclusive.
-asAllocation :: Lens' AudienceSegment (Maybe Int32)
-asAllocation
-  = lens _asAllocation (\ s a -> s{_asAllocation = a})
-      . mapping _Coerce
-
-instance FromJSON AudienceSegment where
-        parseJSON
-          = withObject "AudienceSegment"
-              (\ o ->
-                 AudienceSegment' <$>
-                   (o .:? "name") <*> (o .:? "id") <*>
-                     (o .:? "allocation"))
-
-instance ToJSON AudienceSegment where
-        toJSON AudienceSegment'{..}
-          = object
-              (catMaybes
-                 [("name" .=) <$> _asName, ("id" .=) <$> _asId,
-                  ("allocation" .=) <$> _asAllocation])
-
--- | Update Conversions Request.
---
--- /See:/ 'conversionsBatchUpdateRequest' smart constructor.
-data ConversionsBatchUpdateRequest =
-  ConversionsBatchUpdateRequest'
-    { _cburbKind           :: !Text
-    , _cburbConversions    :: !(Maybe [Conversion])
-    , _cburbEncryptionInfo :: !(Maybe EncryptionInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchUpdateRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cburbKind'
---
--- * 'cburbConversions'
---
--- * 'cburbEncryptionInfo'
-conversionsBatchUpdateRequest
-    :: ConversionsBatchUpdateRequest
-conversionsBatchUpdateRequest =
-  ConversionsBatchUpdateRequest'
-    { _cburbKind = "dfareporting#conversionsBatchUpdateRequest"
-    , _cburbConversions = Nothing
-    , _cburbEncryptionInfo = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionsBatchUpdateRequest\".
-cburbKind :: Lens' ConversionsBatchUpdateRequest Text
-cburbKind
-  = lens _cburbKind (\ s a -> s{_cburbKind = a})
-
--- | The set of conversions to update.
-cburbConversions :: Lens' ConversionsBatchUpdateRequest [Conversion]
-cburbConversions
-  = lens _cburbConversions
-      (\ s a -> s{_cburbConversions = a})
-      . _Default
-      . _Coerce
-
--- | Describes how encryptedUserId is encrypted. This is a required field if
--- encryptedUserId is used.
-cburbEncryptionInfo :: Lens' ConversionsBatchUpdateRequest (Maybe EncryptionInfo)
-cburbEncryptionInfo
-  = lens _cburbEncryptionInfo
-      (\ s a -> s{_cburbEncryptionInfo = a})
-
-instance FromJSON ConversionsBatchUpdateRequest where
-        parseJSON
-          = withObject "ConversionsBatchUpdateRequest"
-              (\ o ->
-                 ConversionsBatchUpdateRequest' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#conversionsBatchUpdateRequest")
-                     <*> (o .:? "conversions" .!= mempty)
-                     <*> (o .:? "encryptionInfo"))
-
-instance ToJSON ConversionsBatchUpdateRequest where
-        toJSON ConversionsBatchUpdateRequest'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cburbKind),
-                  ("conversions" .=) <$> _cburbConversions,
-                  ("encryptionInfo" .=) <$> _cburbEncryptionInfo])
-
--- | Google Ad Manager Settings
---
--- /See:/ 'dfpSettings' smart constructor.
-data DfpSettings =
-  DfpSettings'
-    { _dsPubPaidPlacementAccepted      :: !(Maybe Bool)
-    , _dsDfpNetworkName                :: !(Maybe Text)
-    , _dsPublisherPortalOnly           :: !(Maybe Bool)
-    , _dsProgrammaticPlacementAccepted :: !(Maybe Bool)
-    , _dsDfpNetworkCode                :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DfpSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dsPubPaidPlacementAccepted'
---
--- * 'dsDfpNetworkName'
---
--- * 'dsPublisherPortalOnly'
---
--- * 'dsProgrammaticPlacementAccepted'
---
--- * 'dsDfpNetworkCode'
-dfpSettings
-    :: DfpSettings
-dfpSettings =
-  DfpSettings'
-    { _dsPubPaidPlacementAccepted = Nothing
-    , _dsDfpNetworkName = Nothing
-    , _dsPublisherPortalOnly = Nothing
-    , _dsProgrammaticPlacementAccepted = Nothing
-    , _dsDfpNetworkCode = Nothing
-    }
-
-
--- | Whether this directory site accepts publisher-paid tags.
-dsPubPaidPlacementAccepted :: Lens' DfpSettings (Maybe Bool)
-dsPubPaidPlacementAccepted
-  = lens _dsPubPaidPlacementAccepted
-      (\ s a -> s{_dsPubPaidPlacementAccepted = a})
-
--- | Ad Manager network name for this directory site.
-dsDfpNetworkName :: Lens' DfpSettings (Maybe Text)
-dsDfpNetworkName
-  = lens _dsDfpNetworkName
-      (\ s a -> s{_dsDfpNetworkName = a})
-
--- | Whether this directory site is available only via Publisher Portal.
-dsPublisherPortalOnly :: Lens' DfpSettings (Maybe Bool)
-dsPublisherPortalOnly
-  = lens _dsPublisherPortalOnly
-      (\ s a -> s{_dsPublisherPortalOnly = a})
-
--- | Whether this directory site accepts programmatic placements.
-dsProgrammaticPlacementAccepted :: Lens' DfpSettings (Maybe Bool)
-dsProgrammaticPlacementAccepted
-  = lens _dsProgrammaticPlacementAccepted
-      (\ s a -> s{_dsProgrammaticPlacementAccepted = a})
-
--- | Ad Manager network code for this directory site.
-dsDfpNetworkCode :: Lens' DfpSettings (Maybe Text)
-dsDfpNetworkCode
-  = lens _dsDfpNetworkCode
-      (\ s a -> s{_dsDfpNetworkCode = a})
-
-instance FromJSON DfpSettings where
-        parseJSON
-          = withObject "DfpSettings"
-              (\ o ->
-                 DfpSettings' <$>
-                   (o .:? "pubPaidPlacementAccepted") <*>
-                     (o .:? "dfpNetworkName")
-                     <*> (o .:? "publisherPortalOnly")
-                     <*> (o .:? "programmaticPlacementAccepted")
-                     <*> (o .:? "dfpNetworkCode"))
-
-instance ToJSON DfpSettings where
-        toJSON DfpSettings'{..}
-          = object
-              (catMaybes
-                 [("pubPaidPlacementAccepted" .=) <$>
-                    _dsPubPaidPlacementAccepted,
-                  ("dfpNetworkName" .=) <$> _dsDfpNetworkName,
-                  ("publisherPortalOnly" .=) <$>
-                    _dsPublisherPortalOnly,
-                  ("programmaticPlacementAccepted" .=) <$>
-                    _dsProgrammaticPlacementAccepted,
-                  ("dfpNetworkCode" .=) <$> _dsDfpNetworkCode])
-
--- | Represents fields that are compatible to be selected for a report of
--- type \"PATH_TO_CONVERSION\".
---
--- /See:/ 'pathToConversionReportCompatibleFields' smart constructor.
-data PathToConversionReportCompatibleFields =
-  PathToConversionReportCompatibleFields'
-    { _ptcrcfMetrics                   :: !(Maybe [Metric])
-    , _ptcrcfKind                      :: !Text
-    , _ptcrcfConversionDimensions      :: !(Maybe [Dimension])
-    , _ptcrcfCustomFloodlightVariables :: !(Maybe [Dimension])
-    , _ptcrcfPerInteractionDimensions  :: !(Maybe [Dimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PathToConversionReportCompatibleFields' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptcrcfMetrics'
---
--- * 'ptcrcfKind'
---
--- * 'ptcrcfConversionDimensions'
---
--- * 'ptcrcfCustomFloodlightVariables'
---
--- * 'ptcrcfPerInteractionDimensions'
-pathToConversionReportCompatibleFields
-    :: PathToConversionReportCompatibleFields
-pathToConversionReportCompatibleFields =
-  PathToConversionReportCompatibleFields'
-    { _ptcrcfMetrics = Nothing
-    , _ptcrcfKind = "dfareporting#pathToConversionReportCompatibleFields"
-    , _ptcrcfConversionDimensions = Nothing
-    , _ptcrcfCustomFloodlightVariables = Nothing
-    , _ptcrcfPerInteractionDimensions = Nothing
-    }
-
-
--- | Metrics which are compatible to be selected in the \"metricNames\"
--- section of the report.
-ptcrcfMetrics :: Lens' PathToConversionReportCompatibleFields [Metric]
-ptcrcfMetrics
-  = lens _ptcrcfMetrics
-      (\ s a -> s{_ptcrcfMetrics = a})
-      . _Default
-      . _Coerce
-
--- | The kind of resource this is, in this case
--- dfareporting#pathToConversionReportCompatibleFields.
-ptcrcfKind :: Lens' PathToConversionReportCompatibleFields Text
-ptcrcfKind
-  = lens _ptcrcfKind (\ s a -> s{_ptcrcfKind = a})
-
--- | Conversion dimensions which are compatible to be selected in the
--- \"conversionDimensions\" section of the report.
-ptcrcfConversionDimensions :: Lens' PathToConversionReportCompatibleFields [Dimension]
-ptcrcfConversionDimensions
-  = lens _ptcrcfConversionDimensions
-      (\ s a -> s{_ptcrcfConversionDimensions = a})
-      . _Default
-      . _Coerce
-
--- | Custom floodlight variables which are compatible to be selected in the
--- \"customFloodlightVariables\" section of the report.
-ptcrcfCustomFloodlightVariables :: Lens' PathToConversionReportCompatibleFields [Dimension]
-ptcrcfCustomFloodlightVariables
-  = lens _ptcrcfCustomFloodlightVariables
-      (\ s a -> s{_ptcrcfCustomFloodlightVariables = a})
-      . _Default
-      . _Coerce
-
--- | Per-interaction dimensions which are compatible to be selected in the
--- \"perInteractionDimensions\" section of the report.
-ptcrcfPerInteractionDimensions :: Lens' PathToConversionReportCompatibleFields [Dimension]
-ptcrcfPerInteractionDimensions
-  = lens _ptcrcfPerInteractionDimensions
-      (\ s a -> s{_ptcrcfPerInteractionDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           PathToConversionReportCompatibleFields
-         where
-        parseJSON
-          = withObject "PathToConversionReportCompatibleFields"
-              (\ o ->
-                 PathToConversionReportCompatibleFields' <$>
-                   (o .:? "metrics" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#pathToConversionReportCompatibleFields")
-                     <*> (o .:? "conversionDimensions" .!= mempty)
-                     <*> (o .:? "customFloodlightVariables" .!= mempty)
-                     <*> (o .:? "perInteractionDimensions" .!= mempty))
-
-instance ToJSON
-           PathToConversionReportCompatibleFields
-         where
-        toJSON PathToConversionReportCompatibleFields'{..}
-          = object
-              (catMaybes
-                 [("metrics" .=) <$> _ptcrcfMetrics,
-                  Just ("kind" .= _ptcrcfKind),
-                  ("conversionDimensions" .=) <$>
-                    _ptcrcfConversionDimensions,
-                  ("customFloodlightVariables" .=) <$>
-                    _ptcrcfCustomFloodlightVariables,
-                  ("perInteractionDimensions" .=) <$>
-                    _ptcrcfPerInteractionDimensions])
-
--- | Contains information about a city that can be targeted by ads.
---
--- /See:/ 'city' smart constructor.
-data City =
-  City'
-    { _ccMetroCode     :: !(Maybe Text)
-    , _ccRegionCode    :: !(Maybe Text)
-    , _ccKind          :: !Text
-    , _ccRegionDartId  :: !(Maybe (Textual Int64))
-    , _ccMetroDmaId    :: !(Maybe (Textual Int64))
-    , _ccName          :: !(Maybe Text)
-    , _ccCountryCode   :: !(Maybe Text)
-    , _ccCountryDartId :: !(Maybe (Textual Int64))
-    , _ccDartId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'City' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccMetroCode'
---
--- * 'ccRegionCode'
---
--- * 'ccKind'
---
--- * 'ccRegionDartId'
---
--- * 'ccMetroDmaId'
---
--- * 'ccName'
---
--- * 'ccCountryCode'
---
--- * 'ccCountryDartId'
---
--- * 'ccDartId'
-city
-    :: City
-city =
-  City'
-    { _ccMetroCode = Nothing
-    , _ccRegionCode = Nothing
-    , _ccKind = "dfareporting#city"
-    , _ccRegionDartId = Nothing
-    , _ccMetroDmaId = Nothing
-    , _ccName = Nothing
-    , _ccCountryCode = Nothing
-    , _ccCountryDartId = Nothing
-    , _ccDartId = Nothing
-    }
-
-
--- | Metro region code of the metro region (DMA) to which this city belongs.
-ccMetroCode :: Lens' City (Maybe Text)
-ccMetroCode
-  = lens _ccMetroCode (\ s a -> s{_ccMetroCode = a})
-
--- | Region code of the region to which this city belongs.
-ccRegionCode :: Lens' City (Maybe Text)
-ccRegionCode
-  = lens _ccRegionCode (\ s a -> s{_ccRegionCode = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#city\".
-ccKind :: Lens' City Text
-ccKind = lens _ccKind (\ s a -> s{_ccKind = a})
-
--- | DART ID of the region to which this city belongs.
-ccRegionDartId :: Lens' City (Maybe Int64)
-ccRegionDartId
-  = lens _ccRegionDartId
-      (\ s a -> s{_ccRegionDartId = a})
-      . mapping _Coerce
-
--- | ID of the metro region (DMA) to which this city belongs.
-ccMetroDmaId :: Lens' City (Maybe Int64)
-ccMetroDmaId
-  = lens _ccMetroDmaId (\ s a -> s{_ccMetroDmaId = a})
-      . mapping _Coerce
-
--- | Name of this city.
-ccName :: Lens' City (Maybe Text)
-ccName = lens _ccName (\ s a -> s{_ccName = a})
-
--- | Country code of the country to which this city belongs.
-ccCountryCode :: Lens' City (Maybe Text)
-ccCountryCode
-  = lens _ccCountryCode
-      (\ s a -> s{_ccCountryCode = a})
-
--- | DART ID of the country to which this city belongs.
-ccCountryDartId :: Lens' City (Maybe Int64)
-ccCountryDartId
-  = lens _ccCountryDartId
-      (\ s a -> s{_ccCountryDartId = a})
-      . mapping _Coerce
-
--- | DART ID of this city. This is the ID used for targeting and generating
--- reports.
-ccDartId :: Lens' City (Maybe Int64)
-ccDartId
-  = lens _ccDartId (\ s a -> s{_ccDartId = a}) .
-      mapping _Coerce
-
-instance FromJSON City where
-        parseJSON
-          = withObject "City"
-              (\ o ->
-                 City' <$>
-                   (o .:? "metroCode") <*> (o .:? "regionCode") <*>
-                     (o .:? "kind" .!= "dfareporting#city")
-                     <*> (o .:? "regionDartId")
-                     <*> (o .:? "metroDmaId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "countryDartId")
-                     <*> (o .:? "dartId"))
-
-instance ToJSON City where
-        toJSON City'{..}
-          = object
-              (catMaybes
-                 [("metroCode" .=) <$> _ccMetroCode,
-                  ("regionCode" .=) <$> _ccRegionCode,
-                  Just ("kind" .= _ccKind),
-                  ("regionDartId" .=) <$> _ccRegionDartId,
-                  ("metroDmaId" .=) <$> _ccMetroDmaId,
-                  ("name" .=) <$> _ccName,
-                  ("countryCode" .=) <$> _ccCountryCode,
-                  ("countryDartId" .=) <$> _ccCountryDartId,
-                  ("dartId" .=) <$> _ccDartId])
-
--- | Contains information about a platform type that can be targeted by ads.
---
--- /See:/ 'platformType' smart constructor.
-data PlatformType =
-  PlatformType'
-    { _ptKind :: !Text
-    , _ptName :: !(Maybe Text)
-    , _ptId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlatformType' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptKind'
---
--- * 'ptName'
---
--- * 'ptId'
-platformType
-    :: PlatformType
-platformType =
-  PlatformType'
-    {_ptKind = "dfareporting#platformType", _ptName = Nothing, _ptId = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#platformType\".
-ptKind :: Lens' PlatformType Text
-ptKind = lens _ptKind (\ s a -> s{_ptKind = a})
-
--- | Name of this platform type.
-ptName :: Lens' PlatformType (Maybe Text)
-ptName = lens _ptName (\ s a -> s{_ptName = a})
-
--- | ID of this platform type.
-ptId :: Lens' PlatformType (Maybe Int64)
-ptId
-  = lens _ptId (\ s a -> s{_ptId = a}) .
-      mapping _Coerce
-
-instance FromJSON PlatformType where
-        parseJSON
-          = withObject "PlatformType"
-              (\ o ->
-                 PlatformType' <$>
-                   (o .:? "kind" .!= "dfareporting#platformType") <*>
-                     (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON PlatformType where
-        toJSON PlatformType'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _ptKind), ("name" .=) <$> _ptName,
-                  ("id" .=) <$> _ptId])
-
--- | Key Value Targeting Expression.
---
--- /See:/ 'keyValueTargetingExpression' smart constructor.
-newtype KeyValueTargetingExpression =
-  KeyValueTargetingExpression'
-    { _kvteExpression :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'KeyValueTargetingExpression' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'kvteExpression'
-keyValueTargetingExpression
-    :: KeyValueTargetingExpression
-keyValueTargetingExpression =
-  KeyValueTargetingExpression' {_kvteExpression = Nothing}
-
-
--- | Keyword expression being targeted by the ad.
-kvteExpression :: Lens' KeyValueTargetingExpression (Maybe Text)
-kvteExpression
-  = lens _kvteExpression
-      (\ s a -> s{_kvteExpression = a})
-
-instance FromJSON KeyValueTargetingExpression where
-        parseJSON
-          = withObject "KeyValueTargetingExpression"
-              (\ o ->
-                 KeyValueTargetingExpression' <$>
-                   (o .:? "expression"))
-
-instance ToJSON KeyValueTargetingExpression where
-        toJSON KeyValueTargetingExpression'{..}
-          = object
-              (catMaybes [("expression" .=) <$> _kvteExpression])
-
--- | Companion Click-through override.
---
--- /See:/ 'companionClickThroughOverride' smart constructor.
-data CompanionClickThroughOverride =
-  CompanionClickThroughOverride'
-    { _cctoCreativeId      :: !(Maybe (Textual Int64))
-    , _cctoClickThroughURL :: !(Maybe ClickThroughURL)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CompanionClickThroughOverride' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cctoCreativeId'
---
--- * 'cctoClickThroughURL'
-companionClickThroughOverride
-    :: CompanionClickThroughOverride
-companionClickThroughOverride =
-  CompanionClickThroughOverride'
-    {_cctoCreativeId = Nothing, _cctoClickThroughURL = Nothing}
-
-
--- | ID of the creative for this companion click-through override.
-cctoCreativeId :: Lens' CompanionClickThroughOverride (Maybe Int64)
-cctoCreativeId
-  = lens _cctoCreativeId
-      (\ s a -> s{_cctoCreativeId = a})
-      . mapping _Coerce
-
--- | Click-through URL of this companion click-through override.
-cctoClickThroughURL :: Lens' CompanionClickThroughOverride (Maybe ClickThroughURL)
-cctoClickThroughURL
-  = lens _cctoClickThroughURL
-      (\ s a -> s{_cctoClickThroughURL = a})
-
-instance FromJSON CompanionClickThroughOverride where
-        parseJSON
-          = withObject "CompanionClickThroughOverride"
-              (\ o ->
-                 CompanionClickThroughOverride' <$>
-                   (o .:? "creativeId") <*> (o .:? "clickThroughUrl"))
-
-instance ToJSON CompanionClickThroughOverride where
-        toJSON CompanionClickThroughOverride'{..}
-          = object
-              (catMaybes
-                 [("creativeId" .=) <$> _cctoCreativeId,
-                  ("clickThroughUrl" .=) <$> _cctoClickThroughURL])
-
--- | Advertiser List Response
---
--- /See:/ 'advertisersListResponse' smart constructor.
-data AdvertisersListResponse =
-  AdvertisersListResponse'
-    { _advNextPageToken :: !(Maybe Text)
-    , _advKind          :: !Text
-    , _advAdvertisers   :: !(Maybe [Advertiser])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'advNextPageToken'
---
--- * 'advKind'
---
--- * 'advAdvertisers'
-advertisersListResponse
-    :: AdvertisersListResponse
-advertisersListResponse =
-  AdvertisersListResponse'
-    { _advNextPageToken = Nothing
-    , _advKind = "dfareporting#advertisersListResponse"
-    , _advAdvertisers = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-advNextPageToken :: Lens' AdvertisersListResponse (Maybe Text)
-advNextPageToken
-  = lens _advNextPageToken
-      (\ s a -> s{_advNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#advertisersListResponse\".
-advKind :: Lens' AdvertisersListResponse Text
-advKind = lens _advKind (\ s a -> s{_advKind = a})
-
--- | Advertiser collection.
-advAdvertisers :: Lens' AdvertisersListResponse [Advertiser]
-advAdvertisers
-  = lens _advAdvertisers
-      (\ s a -> s{_advAdvertisers = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON AdvertisersListResponse where
-        parseJSON
-          = withObject "AdvertisersListResponse"
-              (\ o ->
-                 AdvertisersListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#advertisersListResponse")
-                     <*> (o .:? "advertisers" .!= mempty))
-
-instance ToJSON AdvertisersListResponse where
-        toJSON AdvertisersListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _advNextPageToken,
-                  Just ("kind" .= _advKind),
-                  ("advertisers" .=) <$> _advAdvertisers])
-
--- | Country List Response
---
--- /See:/ 'countriesListResponse' smart constructor.
-data CountriesListResponse =
-  CountriesListResponse'
-    { _couKind      :: !Text
-    , _couCountries :: !(Maybe [Country])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CountriesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'couKind'
---
--- * 'couCountries'
-countriesListResponse
-    :: CountriesListResponse
-countriesListResponse =
-  CountriesListResponse'
-    {_couKind = "dfareporting#countriesListResponse", _couCountries = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#countriesListResponse\".
-couKind :: Lens' CountriesListResponse Text
-couKind = lens _couKind (\ s a -> s{_couKind = a})
-
--- | Country collection.
-couCountries :: Lens' CountriesListResponse [Country]
-couCountries
-  = lens _couCountries (\ s a -> s{_couCountries = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CountriesListResponse where
-        parseJSON
-          = withObject "CountriesListResponse"
-              (\ o ->
-                 CountriesListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#countriesListResponse")
-                     <*> (o .:? "countries" .!= mempty))
-
-instance ToJSON CountriesListResponse where
-        toJSON CountriesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _couKind),
-                  ("countries" .=) <$> _couCountries])
-
--- | Account Permission Group List Response
---
--- /See:/ 'accountPermissionGroupsListResponse' smart constructor.
-data AccountPermissionGroupsListResponse =
-  AccountPermissionGroupsListResponse'
-    { _apglrKind                    :: !Text
-    , _apglrAccountPermissionGroups :: !(Maybe [AccountPermissionGroup])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apglrKind'
---
--- * 'apglrAccountPermissionGroups'
-accountPermissionGroupsListResponse
-    :: AccountPermissionGroupsListResponse
-accountPermissionGroupsListResponse =
-  AccountPermissionGroupsListResponse'
-    { _apglrKind = "dfareporting#accountPermissionGroupsListResponse"
-    , _apglrAccountPermissionGroups = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountPermissionGroupsListResponse\".
-apglrKind :: Lens' AccountPermissionGroupsListResponse Text
-apglrKind
-  = lens _apglrKind (\ s a -> s{_apglrKind = a})
-
--- | Account permission group collection.
-apglrAccountPermissionGroups :: Lens' AccountPermissionGroupsListResponse [AccountPermissionGroup]
-apglrAccountPermissionGroups
-  = lens _apglrAccountPermissionGroups
-      (\ s a -> s{_apglrAccountPermissionGroups = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON AccountPermissionGroupsListResponse
-         where
-        parseJSON
-          = withObject "AccountPermissionGroupsListResponse"
-              (\ o ->
-                 AccountPermissionGroupsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#accountPermissionGroupsListResponse")
-                     <*> (o .:? "accountPermissionGroups" .!= mempty))
-
-instance ToJSON AccountPermissionGroupsListResponse
-         where
-        toJSON AccountPermissionGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _apglrKind),
-                  ("accountPermissionGroups" .=) <$>
-                    _apglrAccountPermissionGroups])
-
--- | Popup Window Properties.
---
--- /See:/ 'popupWindowProperties' smart constructor.
-data PopupWindowProperties =
-  PopupWindowProperties'
-    { _pwpOffSet         :: !(Maybe OffSetPosition)
-    , _pwpDimension      :: !(Maybe Size)
-    , _pwpShowStatusBar  :: !(Maybe Bool)
-    , _pwpShowMenuBar    :: !(Maybe Bool)
-    , _pwpPositionType   :: !(Maybe PopupWindowPropertiesPositionType)
-    , _pwpShowAddressBar :: !(Maybe Bool)
-    , _pwpShowScrollBar  :: !(Maybe Bool)
-    , _pwpShowToolBar    :: !(Maybe Bool)
-    , _pwpTitle          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PopupWindowProperties' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pwpOffSet'
---
--- * 'pwpDimension'
---
--- * 'pwpShowStatusBar'
---
--- * 'pwpShowMenuBar'
---
--- * 'pwpPositionType'
---
--- * 'pwpShowAddressBar'
---
--- * 'pwpShowScrollBar'
---
--- * 'pwpShowToolBar'
---
--- * 'pwpTitle'
-popupWindowProperties
-    :: PopupWindowProperties
-popupWindowProperties =
-  PopupWindowProperties'
-    { _pwpOffSet = Nothing
-    , _pwpDimension = Nothing
-    , _pwpShowStatusBar = Nothing
-    , _pwpShowMenuBar = Nothing
-    , _pwpPositionType = Nothing
-    , _pwpShowAddressBar = Nothing
-    , _pwpShowScrollBar = Nothing
-    , _pwpShowToolBar = Nothing
-    , _pwpTitle = Nothing
-    }
-
-
--- | Upper-left corner coordinates of the popup window. Applicable if
--- positionType is COORDINATES.
-pwpOffSet :: Lens' PopupWindowProperties (Maybe OffSetPosition)
-pwpOffSet
-  = lens _pwpOffSet (\ s a -> s{_pwpOffSet = a})
-
--- | Popup dimension for a creative. This is a read-only field. Applicable to
--- the following creative types: all RICH_MEDIA and all VPAID
-pwpDimension :: Lens' PopupWindowProperties (Maybe Size)
-pwpDimension
-  = lens _pwpDimension (\ s a -> s{_pwpDimension = a})
-
--- | Whether to display the browser status bar.
-pwpShowStatusBar :: Lens' PopupWindowProperties (Maybe Bool)
-pwpShowStatusBar
-  = lens _pwpShowStatusBar
-      (\ s a -> s{_pwpShowStatusBar = a})
-
--- | Whether to display the browser menu bar.
-pwpShowMenuBar :: Lens' PopupWindowProperties (Maybe Bool)
-pwpShowMenuBar
-  = lens _pwpShowMenuBar
-      (\ s a -> s{_pwpShowMenuBar = a})
-
--- | Popup window position either centered or at specific coordinate.
-pwpPositionType :: Lens' PopupWindowProperties (Maybe PopupWindowPropertiesPositionType)
-pwpPositionType
-  = lens _pwpPositionType
-      (\ s a -> s{_pwpPositionType = a})
-
--- | Whether to display the browser address bar.
-pwpShowAddressBar :: Lens' PopupWindowProperties (Maybe Bool)
-pwpShowAddressBar
-  = lens _pwpShowAddressBar
-      (\ s a -> s{_pwpShowAddressBar = a})
-
--- | Whether to display the browser scroll bar.
-pwpShowScrollBar :: Lens' PopupWindowProperties (Maybe Bool)
-pwpShowScrollBar
-  = lens _pwpShowScrollBar
-      (\ s a -> s{_pwpShowScrollBar = a})
-
--- | Whether to display the browser tool bar.
-pwpShowToolBar :: Lens' PopupWindowProperties (Maybe Bool)
-pwpShowToolBar
-  = lens _pwpShowToolBar
-      (\ s a -> s{_pwpShowToolBar = a})
-
--- | Title of popup window.
-pwpTitle :: Lens' PopupWindowProperties (Maybe Text)
-pwpTitle = lens _pwpTitle (\ s a -> s{_pwpTitle = a})
-
-instance FromJSON PopupWindowProperties where
-        parseJSON
-          = withObject "PopupWindowProperties"
-              (\ o ->
-                 PopupWindowProperties' <$>
-                   (o .:? "offset") <*> (o .:? "dimension") <*>
-                     (o .:? "showStatusBar")
-                     <*> (o .:? "showMenuBar")
-                     <*> (o .:? "positionType")
-                     <*> (o .:? "showAddressBar")
-                     <*> (o .:? "showScrollBar")
-                     <*> (o .:? "showToolBar")
-                     <*> (o .:? "title"))
-
-instance ToJSON PopupWindowProperties where
-        toJSON PopupWindowProperties'{..}
-          = object
-              (catMaybes
-                 [("offset" .=) <$> _pwpOffSet,
-                  ("dimension" .=) <$> _pwpDimension,
-                  ("showStatusBar" .=) <$> _pwpShowStatusBar,
-                  ("showMenuBar" .=) <$> _pwpShowMenuBar,
-                  ("positionType" .=) <$> _pwpPositionType,
-                  ("showAddressBar" .=) <$> _pwpShowAddressBar,
-                  ("showScrollBar" .=) <$> _pwpShowScrollBar,
-                  ("showToolBar" .=) <$> _pwpShowToolBar,
-                  ("title" .=) <$> _pwpTitle])
-
--- | Event tag override information.
---
--- /See:/ 'eventTagOverride' smart constructor.
-data EventTagOverride =
-  EventTagOverride'
-    { _etoEnabled :: !(Maybe Bool)
-    , _etoId      :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagOverride' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etoEnabled'
---
--- * 'etoId'
-eventTagOverride
-    :: EventTagOverride
-eventTagOverride = EventTagOverride' {_etoEnabled = Nothing, _etoId = Nothing}
-
-
--- | Whether this override is enabled.
-etoEnabled :: Lens' EventTagOverride (Maybe Bool)
-etoEnabled
-  = lens _etoEnabled (\ s a -> s{_etoEnabled = a})
-
--- | ID of this event tag override. This is a read-only, auto-generated
--- field.
-etoId :: Lens' EventTagOverride (Maybe Int64)
-etoId
-  = lens _etoId (\ s a -> s{_etoId = a}) .
-      mapping _Coerce
-
-instance FromJSON EventTagOverride where
-        parseJSON
-          = withObject "EventTagOverride"
-              (\ o ->
-                 EventTagOverride' <$>
-                   (o .:? "enabled") <*> (o .:? "id"))
-
-instance ToJSON EventTagOverride where
-        toJSON EventTagOverride'{..}
-          = object
-              (catMaybes
-                 [("enabled" .=) <$> _etoEnabled,
-                  ("id" .=) <$> _etoId])
-
--- | Contains information about a particular version of an operating system
--- that can be targeted by ads.
---
--- /See:/ 'operatingSystemVersion' smart constructor.
-data OperatingSystemVersion =
-  OperatingSystemVersion'
-    { _osvMinorVersion    :: !(Maybe Text)
-    , _osvKind            :: !Text
-    , _osvOperatingSystem :: !(Maybe OperatingSystem)
-    , _osvMajorVersion    :: !(Maybe Text)
-    , _osvName            :: !(Maybe Text)
-    , _osvId              :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemVersion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osvMinorVersion'
---
--- * 'osvKind'
---
--- * 'osvOperatingSystem'
---
--- * 'osvMajorVersion'
---
--- * 'osvName'
---
--- * 'osvId'
-operatingSystemVersion
-    :: OperatingSystemVersion
-operatingSystemVersion =
-  OperatingSystemVersion'
-    { _osvMinorVersion = Nothing
-    , _osvKind = "dfareporting#operatingSystemVersion"
-    , _osvOperatingSystem = Nothing
-    , _osvMajorVersion = Nothing
-    , _osvName = Nothing
-    , _osvId = Nothing
-    }
-
-
--- | Minor version (number after the first dot) of this operating system
--- version.
-osvMinorVersion :: Lens' OperatingSystemVersion (Maybe Text)
-osvMinorVersion
-  = lens _osvMinorVersion
-      (\ s a -> s{_osvMinorVersion = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#operatingSystemVersion\".
-osvKind :: Lens' OperatingSystemVersion Text
-osvKind = lens _osvKind (\ s a -> s{_osvKind = a})
-
--- | Operating system of this operating system version.
-osvOperatingSystem :: Lens' OperatingSystemVersion (Maybe OperatingSystem)
-osvOperatingSystem
-  = lens _osvOperatingSystem
-      (\ s a -> s{_osvOperatingSystem = a})
-
--- | Major version (leftmost number) of this operating system version.
-osvMajorVersion :: Lens' OperatingSystemVersion (Maybe Text)
-osvMajorVersion
-  = lens _osvMajorVersion
-      (\ s a -> s{_osvMajorVersion = a})
-
--- | Name of this operating system version.
-osvName :: Lens' OperatingSystemVersion (Maybe Text)
-osvName = lens _osvName (\ s a -> s{_osvName = a})
-
--- | ID of this operating system version.
-osvId :: Lens' OperatingSystemVersion (Maybe Int64)
-osvId
-  = lens _osvId (\ s a -> s{_osvId = a}) .
-      mapping _Coerce
-
-instance FromJSON OperatingSystemVersion where
-        parseJSON
-          = withObject "OperatingSystemVersion"
-              (\ o ->
-                 OperatingSystemVersion' <$>
-                   (o .:? "minorVersion") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#operatingSystemVersion")
-                     <*> (o .:? "operatingSystem")
-                     <*> (o .:? "majorVersion")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON OperatingSystemVersion where
-        toJSON OperatingSystemVersion'{..}
-          = object
-              (catMaybes
-                 [("minorVersion" .=) <$> _osvMinorVersion,
-                  Just ("kind" .= _osvKind),
-                  ("operatingSystem" .=) <$> _osvOperatingSystem,
-                  ("majorVersion" .=) <$> _osvMajorVersion,
-                  ("name" .=) <$> _osvName, ("id" .=) <$> _osvId])
-
--- | AccountPermissions contains information about a particular account
--- permission. Some features of Campaign Manager require an account
--- permission to be present in the account.
---
--- /See:/ 'accountPermission' smart constructor.
-data AccountPermission =
-  AccountPermission'
-    { _acccKind              :: !Text
-    , _acccAccountProFiles   :: !(Maybe [AccountPermissionAccountProFilesItem])
-    , _acccName              :: !(Maybe Text)
-    , _acccId                :: !(Maybe (Textual Int64))
-    , _acccLevel             :: !(Maybe AccountPermissionLevel)
-    , _acccPermissionGroupId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermission' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'acccKind'
---
--- * 'acccAccountProFiles'
---
--- * 'acccName'
---
--- * 'acccId'
---
--- * 'acccLevel'
---
--- * 'acccPermissionGroupId'
-accountPermission
-    :: AccountPermission
-accountPermission =
-  AccountPermission'
-    { _acccKind = "dfareporting#accountPermission"
-    , _acccAccountProFiles = Nothing
-    , _acccName = Nothing
-    , _acccId = Nothing
-    , _acccLevel = Nothing
-    , _acccPermissionGroupId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountPermission\".
-acccKind :: Lens' AccountPermission Text
-acccKind = lens _acccKind (\ s a -> s{_acccKind = a})
-
--- | Account profiles associated with this account permission. Possible
--- values are: - \"ACCOUNT_PROFILE_BASIC\" - \"ACCOUNT_PROFILE_STANDARD\"
-acccAccountProFiles :: Lens' AccountPermission [AccountPermissionAccountProFilesItem]
-acccAccountProFiles
-  = lens _acccAccountProFiles
-      (\ s a -> s{_acccAccountProFiles = a})
-      . _Default
-      . _Coerce
-
--- | Name of this account permission.
-acccName :: Lens' AccountPermission (Maybe Text)
-acccName = lens _acccName (\ s a -> s{_acccName = a})
-
--- | ID of this account permission.
-acccId :: Lens' AccountPermission (Maybe Int64)
-acccId
-  = lens _acccId (\ s a -> s{_acccId = a}) .
-      mapping _Coerce
-
--- | Administrative level required to enable this account permission.
-acccLevel :: Lens' AccountPermission (Maybe AccountPermissionLevel)
-acccLevel
-  = lens _acccLevel (\ s a -> s{_acccLevel = a})
-
--- | Permission group of this account permission.
-acccPermissionGroupId :: Lens' AccountPermission (Maybe Int64)
-acccPermissionGroupId
-  = lens _acccPermissionGroupId
-      (\ s a -> s{_acccPermissionGroupId = a})
-      . mapping _Coerce
-
-instance FromJSON AccountPermission where
-        parseJSON
-          = withObject "AccountPermission"
-              (\ o ->
-                 AccountPermission' <$>
-                   (o .:? "kind" .!= "dfareporting#accountPermission")
-                     <*> (o .:? "accountProfiles" .!= mempty)
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "level")
-                     <*> (o .:? "permissionGroupId"))
-
-instance ToJSON AccountPermission where
-        toJSON AccountPermission'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _acccKind),
-                  ("accountProfiles" .=) <$> _acccAccountProFiles,
-                  ("name" .=) <$> _acccName, ("id" .=) <$> _acccId,
-                  ("level" .=) <$> _acccLevel,
-                  ("permissionGroupId" .=) <$> _acccPermissionGroupId])
-
--- | Represents a UserProfile resource.
---
--- /See:/ 'userProFile' smart constructor.
-data UserProFile =
-  UserProFile'
-    { _upfEtag           :: !(Maybe Text)
-    , _upfKind           :: !Text
-    , _upfAccountName    :: !(Maybe Text)
-    , _upfProFileId      :: !(Maybe (Textual Int64))
-    , _upfUserName       :: !(Maybe Text)
-    , _upfAccountId      :: !(Maybe (Textual Int64))
-    , _upfSubAccountName :: !(Maybe Text)
-    , _upfSubAccountId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserProFile' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'upfEtag'
---
--- * 'upfKind'
---
--- * 'upfAccountName'
---
--- * 'upfProFileId'
---
--- * 'upfUserName'
---
--- * 'upfAccountId'
---
--- * 'upfSubAccountName'
---
--- * 'upfSubAccountId'
-userProFile
-    :: UserProFile
-userProFile =
-  UserProFile'
-    { _upfEtag = Nothing
-    , _upfKind = "dfareporting#userProfile"
-    , _upfAccountName = Nothing
-    , _upfProFileId = Nothing
-    , _upfUserName = Nothing
-    , _upfAccountId = Nothing
-    , _upfSubAccountName = Nothing
-    , _upfSubAccountId = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-upfEtag :: Lens' UserProFile (Maybe Text)
-upfEtag = lens _upfEtag (\ s a -> s{_upfEtag = a})
-
--- | The kind of resource this is, in this case dfareporting#userProfile.
-upfKind :: Lens' UserProFile Text
-upfKind = lens _upfKind (\ s a -> s{_upfKind = a})
-
--- | The account name this profile belongs to.
-upfAccountName :: Lens' UserProFile (Maybe Text)
-upfAccountName
-  = lens _upfAccountName
-      (\ s a -> s{_upfAccountName = a})
-
--- | The unique ID of the user profile.
-upfProFileId :: Lens' UserProFile (Maybe Int64)
-upfProFileId
-  = lens _upfProFileId (\ s a -> s{_upfProFileId = a})
-      . mapping _Coerce
-
--- | The user name.
-upfUserName :: Lens' UserProFile (Maybe Text)
-upfUserName
-  = lens _upfUserName (\ s a -> s{_upfUserName = a})
-
--- | The account ID to which this profile belongs.
-upfAccountId :: Lens' UserProFile (Maybe Int64)
-upfAccountId
-  = lens _upfAccountId (\ s a -> s{_upfAccountId = a})
-      . mapping _Coerce
-
--- | The sub account name this profile belongs to if applicable.
-upfSubAccountName :: Lens' UserProFile (Maybe Text)
-upfSubAccountName
-  = lens _upfSubAccountName
-      (\ s a -> s{_upfSubAccountName = a})
-
--- | The sub account ID this profile belongs to if applicable.
-upfSubAccountId :: Lens' UserProFile (Maybe Int64)
-upfSubAccountId
-  = lens _upfSubAccountId
-      (\ s a -> s{_upfSubAccountId = a})
-      . mapping _Coerce
-
-instance FromJSON UserProFile where
-        parseJSON
-          = withObject "UserProFile"
-              (\ o ->
-                 UserProFile' <$>
-                   (o .:? "etag") <*>
-                     (o .:? "kind" .!= "dfareporting#userProfile")
-                     <*> (o .:? "accountName")
-                     <*> (o .:? "profileId")
-                     <*> (o .:? "userName")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "subAccountName")
-                     <*> (o .:? "subAccountId"))
-
-instance ToJSON UserProFile where
-        toJSON UserProFile'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _upfEtag, Just ("kind" .= _upfKind),
-                  ("accountName" .=) <$> _upfAccountName,
-                  ("profileId" .=) <$> _upfProFileId,
-                  ("userName" .=) <$> _upfUserName,
-                  ("accountId" .=) <$> _upfAccountId,
-                  ("subAccountName" .=) <$> _upfSubAccountName,
-                  ("subAccountId" .=) <$> _upfSubAccountId])
-
--- | Operating System List Response
---
--- /See:/ 'operatingSystemsListResponse' smart constructor.
-data OperatingSystemsListResponse =
-  OperatingSystemsListResponse'
-    { _oslrKind             :: !Text
-    , _oslrOperatingSystems :: !(Maybe [OperatingSystem])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'oslrKind'
---
--- * 'oslrOperatingSystems'
-operatingSystemsListResponse
-    :: OperatingSystemsListResponse
-operatingSystemsListResponse =
-  OperatingSystemsListResponse'
-    { _oslrKind = "dfareporting#operatingSystemsListResponse"
-    , _oslrOperatingSystems = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#operatingSystemsListResponse\".
-oslrKind :: Lens' OperatingSystemsListResponse Text
-oslrKind = lens _oslrKind (\ s a -> s{_oslrKind = a})
-
--- | Operating system collection.
-oslrOperatingSystems :: Lens' OperatingSystemsListResponse [OperatingSystem]
-oslrOperatingSystems
-  = lens _oslrOperatingSystems
-      (\ s a -> s{_oslrOperatingSystems = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON OperatingSystemsListResponse where
-        parseJSON
-          = withObject "OperatingSystemsListResponse"
-              (\ o ->
-                 OperatingSystemsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#operatingSystemsListResponse")
-                     <*> (o .:? "operatingSystems" .!= mempty))
-
-instance ToJSON OperatingSystemsListResponse where
-        toJSON OperatingSystemsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _oslrKind),
-                  ("operatingSystems" .=) <$> _oslrOperatingSystems])
-
--- | The report\'s email delivery settings.
---
--- /See:/ 'reportDelivery' smart constructor.
-data ReportDelivery =
-  ReportDelivery'
-    { _rdEmailOwner             :: !(Maybe Bool)
-    , _rdRecipients             :: !(Maybe [Recipient])
-    , _rdMessage                :: !(Maybe Text)
-    , _rdEmailOwnerDeliveryType :: !(Maybe ReportDeliveryEmailOwnerDeliveryType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportDelivery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rdEmailOwner'
---
--- * 'rdRecipients'
---
--- * 'rdMessage'
---
--- * 'rdEmailOwnerDeliveryType'
-reportDelivery
-    :: ReportDelivery
-reportDelivery =
-  ReportDelivery'
-    { _rdEmailOwner = Nothing
-    , _rdRecipients = Nothing
-    , _rdMessage = Nothing
-    , _rdEmailOwnerDeliveryType = Nothing
-    }
-
-
--- | Whether the report should be emailed to the report owner.
-rdEmailOwner :: Lens' ReportDelivery (Maybe Bool)
-rdEmailOwner
-  = lens _rdEmailOwner (\ s a -> s{_rdEmailOwner = a})
-
--- | The list of recipients to which to email the report.
-rdRecipients :: Lens' ReportDelivery [Recipient]
-rdRecipients
-  = lens _rdRecipients (\ s a -> s{_rdRecipients = a})
-      . _Default
-      . _Coerce
-
--- | The message to be sent with each email.
-rdMessage :: Lens' ReportDelivery (Maybe Text)
-rdMessage
-  = lens _rdMessage (\ s a -> s{_rdMessage = a})
-
--- | The type of delivery for the owner to receive, if enabled.
-rdEmailOwnerDeliveryType :: Lens' ReportDelivery (Maybe ReportDeliveryEmailOwnerDeliveryType)
-rdEmailOwnerDeliveryType
-  = lens _rdEmailOwnerDeliveryType
-      (\ s a -> s{_rdEmailOwnerDeliveryType = a})
-
-instance FromJSON ReportDelivery where
-        parseJSON
-          = withObject "ReportDelivery"
-              (\ o ->
-                 ReportDelivery' <$>
-                   (o .:? "emailOwner") <*>
-                     (o .:? "recipients" .!= mempty)
-                     <*> (o .:? "message")
-                     <*> (o .:? "emailOwnerDeliveryType"))
-
-instance ToJSON ReportDelivery where
-        toJSON ReportDelivery'{..}
-          = object
-              (catMaybes
-                 [("emailOwner" .=) <$> _rdEmailOwner,
-                  ("recipients" .=) <$> _rdRecipients,
-                  ("message" .=) <$> _rdMessage,
-                  ("emailOwnerDeliveryType" .=) <$>
-                    _rdEmailOwnerDeliveryType])
-
--- | Contains properties of a targetable remarketing list. Remarketing
--- enables you to create lists of users who have performed specific actions
--- on a site, then target ads to members of those lists. This resource is a
--- read-only view of a remarketing list to be used to faciliate targeting
--- ads to specific lists. Remarketing lists that are owned by your
--- advertisers and those that are shared to your advertisers or account are
--- accessible via this resource. To manage remarketing lists that are owned
--- by your advertisers, use the RemarketingLists resource.
---
--- /See:/ 'targetableRemarketingList' smart constructor.
-data TargetableRemarketingList =
-  TargetableRemarketingList'
-    { _trlListSize                   :: !(Maybe (Textual Int64))
-    , _trlLifeSpan                   :: !(Maybe (Textual Int64))
-    , _trlKind                       :: !Text
-    , _trlAdvertiserId               :: !(Maybe (Textual Int64))
-    , _trlAdvertiserIdDimensionValue :: !(Maybe DimensionValue)
-    , _trlActive                     :: !(Maybe Bool)
-    , _trlAccountId                  :: !(Maybe (Textual Int64))
-    , _trlName                       :: !(Maybe Text)
-    , _trlListSource                 :: !(Maybe TargetableRemarketingListListSource)
-    , _trlId                         :: !(Maybe (Textual Int64))
-    , _trlSubAccountId               :: !(Maybe (Textual Int64))
-    , _trlDescription                :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetableRemarketingList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'trlListSize'
---
--- * 'trlLifeSpan'
---
--- * 'trlKind'
---
--- * 'trlAdvertiserId'
---
--- * 'trlAdvertiserIdDimensionValue'
---
--- * 'trlActive'
---
--- * 'trlAccountId'
---
--- * 'trlName'
---
--- * 'trlListSource'
---
--- * 'trlId'
---
--- * 'trlSubAccountId'
---
--- * 'trlDescription'
-targetableRemarketingList
-    :: TargetableRemarketingList
-targetableRemarketingList =
-  TargetableRemarketingList'
-    { _trlListSize = Nothing
-    , _trlLifeSpan = Nothing
-    , _trlKind = "dfareporting#targetableRemarketingList"
-    , _trlAdvertiserId = Nothing
-    , _trlAdvertiserIdDimensionValue = Nothing
-    , _trlActive = Nothing
-    , _trlAccountId = Nothing
-    , _trlName = Nothing
-    , _trlListSource = Nothing
-    , _trlId = Nothing
-    , _trlSubAccountId = Nothing
-    , _trlDescription = Nothing
-    }
-
-
--- | Number of users currently in the list. This is a read-only field.
-trlListSize :: Lens' TargetableRemarketingList (Maybe Int64)
-trlListSize
-  = lens _trlListSize (\ s a -> s{_trlListSize = a}) .
-      mapping _Coerce
-
--- | Number of days that a user should remain in the targetable remarketing
--- list without an impression.
-trlLifeSpan :: Lens' TargetableRemarketingList (Maybe Int64)
-trlLifeSpan
-  = lens _trlLifeSpan (\ s a -> s{_trlLifeSpan = a}) .
-      mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#targetableRemarketingList\".
-trlKind :: Lens' TargetableRemarketingList Text
-trlKind = lens _trlKind (\ s a -> s{_trlKind = a})
-
--- | Dimension value for the advertiser ID that owns this targetable
--- remarketing list.
-trlAdvertiserId :: Lens' TargetableRemarketingList (Maybe Int64)
-trlAdvertiserId
-  = lens _trlAdvertiserId
-      (\ s a -> s{_trlAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser.
-trlAdvertiserIdDimensionValue :: Lens' TargetableRemarketingList (Maybe DimensionValue)
-trlAdvertiserIdDimensionValue
-  = lens _trlAdvertiserIdDimensionValue
-      (\ s a -> s{_trlAdvertiserIdDimensionValue = a})
-
--- | Whether this targetable remarketing list is active.
-trlActive :: Lens' TargetableRemarketingList (Maybe Bool)
-trlActive
-  = lens _trlActive (\ s a -> s{_trlActive = a})
-
--- | Account ID of this remarketing list. This is a read-only, auto-generated
--- field that is only returned in GET requests.
-trlAccountId :: Lens' TargetableRemarketingList (Maybe Int64)
-trlAccountId
-  = lens _trlAccountId (\ s a -> s{_trlAccountId = a})
-      . mapping _Coerce
-
--- | Name of the targetable remarketing list. Is no greater than 128
--- characters long.
-trlName :: Lens' TargetableRemarketingList (Maybe Text)
-trlName = lens _trlName (\ s a -> s{_trlName = a})
-
--- | Product from which this targetable remarketing list was originated.
-trlListSource :: Lens' TargetableRemarketingList (Maybe TargetableRemarketingListListSource)
-trlListSource
-  = lens _trlListSource
-      (\ s a -> s{_trlListSource = a})
-
--- | Targetable remarketing list ID.
-trlId :: Lens' TargetableRemarketingList (Maybe Int64)
-trlId
-  = lens _trlId (\ s a -> s{_trlId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this remarketing list. This is a read-only,
--- auto-generated field that is only returned in GET requests.
-trlSubAccountId :: Lens' TargetableRemarketingList (Maybe Int64)
-trlSubAccountId
-  = lens _trlSubAccountId
-      (\ s a -> s{_trlSubAccountId = a})
-      . mapping _Coerce
-
--- | Targetable remarketing list description.
-trlDescription :: Lens' TargetableRemarketingList (Maybe Text)
-trlDescription
-  = lens _trlDescription
-      (\ s a -> s{_trlDescription = a})
-
-instance FromJSON TargetableRemarketingList where
-        parseJSON
-          = withObject "TargetableRemarketingList"
-              (\ o ->
-                 TargetableRemarketingList' <$>
-                   (o .:? "listSize") <*> (o .:? "lifeSpan") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#targetableRemarketingList")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "active")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "listSource")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "description"))
-
-instance ToJSON TargetableRemarketingList where
-        toJSON TargetableRemarketingList'{..}
-          = object
-              (catMaybes
-                 [("listSize" .=) <$> _trlListSize,
-                  ("lifeSpan" .=) <$> _trlLifeSpan,
-                  Just ("kind" .= _trlKind),
-                  ("advertiserId" .=) <$> _trlAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _trlAdvertiserIdDimensionValue,
-                  ("active" .=) <$> _trlActive,
-                  ("accountId" .=) <$> _trlAccountId,
-                  ("name" .=) <$> _trlName,
-                  ("listSource" .=) <$> _trlListSource,
-                  ("id" .=) <$> _trlId,
-                  ("subaccountId" .=) <$> _trlSubAccountId,
-                  ("description" .=) <$> _trlDescription])
-
--- | Postal Code List Response
---
--- /See:/ 'postalCodesListResponse' smart constructor.
-data PostalCodesListResponse =
-  PostalCodesListResponse'
-    { _pclrKind        :: !Text
-    , _pclrPostalCodes :: !(Maybe [PostalCode])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PostalCodesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pclrKind'
---
--- * 'pclrPostalCodes'
-postalCodesListResponse
-    :: PostalCodesListResponse
-postalCodesListResponse =
-  PostalCodesListResponse'
-    { _pclrKind = "dfareporting#postalCodesListResponse"
-    , _pclrPostalCodes = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#postalCodesListResponse\".
-pclrKind :: Lens' PostalCodesListResponse Text
-pclrKind = lens _pclrKind (\ s a -> s{_pclrKind = a})
-
--- | Postal code collection.
-pclrPostalCodes :: Lens' PostalCodesListResponse [PostalCode]
-pclrPostalCodes
-  = lens _pclrPostalCodes
-      (\ s a -> s{_pclrPostalCodes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON PostalCodesListResponse where
-        parseJSON
-          = withObject "PostalCodesListResponse"
-              (\ o ->
-                 PostalCodesListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#postalCodesListResponse")
-                     <*> (o .:? "postalCodes" .!= mempty))
-
-instance ToJSON PostalCodesListResponse where
-        toJSON PostalCodesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _pclrKind),
-                  ("postalCodes" .=) <$> _pclrPostalCodes])
-
--- | Describes a change that a user has made to a resource.
---
--- /See:/ 'changeLog' smart constructor.
-data ChangeLog =
-  ChangeLog'
-    { _chaUserProFileId   :: !(Maybe (Textual Int64))
-    , _chaObjectType      :: !(Maybe Text)
-    , _chaUserProFileName :: !(Maybe Text)
-    , _chaKind            :: !Text
-    , _chaObjectId        :: !(Maybe (Textual Int64))
-    , _chaAction          :: !(Maybe Text)
-    , _chaTransactionId   :: !(Maybe (Textual Int64))
-    , _chaOldValue        :: !(Maybe Text)
-    , _chaAccountId       :: !(Maybe (Textual Int64))
-    , _chaNewValue        :: !(Maybe Text)
-    , _chaFieldName       :: !(Maybe Text)
-    , _chaId              :: !(Maybe (Textual Int64))
-    , _chaSubAccountId    :: !(Maybe (Textual Int64))
-    , _chaChangeTime      :: !(Maybe DateTime')
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ChangeLog' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'chaUserProFileId'
---
--- * 'chaObjectType'
---
--- * 'chaUserProFileName'
---
--- * 'chaKind'
---
--- * 'chaObjectId'
---
--- * 'chaAction'
---
--- * 'chaTransactionId'
---
--- * 'chaOldValue'
---
--- * 'chaAccountId'
---
--- * 'chaNewValue'
---
--- * 'chaFieldName'
---
--- * 'chaId'
---
--- * 'chaSubAccountId'
---
--- * 'chaChangeTime'
-changeLog
-    :: ChangeLog
-changeLog =
-  ChangeLog'
-    { _chaUserProFileId = Nothing
-    , _chaObjectType = Nothing
-    , _chaUserProFileName = Nothing
-    , _chaKind = "dfareporting#changeLog"
-    , _chaObjectId = Nothing
-    , _chaAction = Nothing
-    , _chaTransactionId = Nothing
-    , _chaOldValue = Nothing
-    , _chaAccountId = Nothing
-    , _chaNewValue = Nothing
-    , _chaFieldName = Nothing
-    , _chaId = Nothing
-    , _chaSubAccountId = Nothing
-    , _chaChangeTime = Nothing
-    }
-
-
--- | ID of the user who modified the object.
-chaUserProFileId :: Lens' ChangeLog (Maybe Int64)
-chaUserProFileId
-  = lens _chaUserProFileId
-      (\ s a -> s{_chaUserProFileId = a})
-      . mapping _Coerce
-
--- | Object type of the change log.
-chaObjectType :: Lens' ChangeLog (Maybe Text)
-chaObjectType
-  = lens _chaObjectType
-      (\ s a -> s{_chaObjectType = a})
-
--- | User profile name of the user who modified the object.
-chaUserProFileName :: Lens' ChangeLog (Maybe Text)
-chaUserProFileName
-  = lens _chaUserProFileName
-      (\ s a -> s{_chaUserProFileName = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#changeLog\".
-chaKind :: Lens' ChangeLog Text
-chaKind = lens _chaKind (\ s a -> s{_chaKind = a})
-
--- | ID of the object of this change log. The object could be a campaign,
--- placement, ad, or other type.
-chaObjectId :: Lens' ChangeLog (Maybe Int64)
-chaObjectId
-  = lens _chaObjectId (\ s a -> s{_chaObjectId = a}) .
-      mapping _Coerce
-
--- | Action which caused the change.
-chaAction :: Lens' ChangeLog (Maybe Text)
-chaAction
-  = lens _chaAction (\ s a -> s{_chaAction = a})
-
--- | Transaction ID of this change log. When a single API call results in
--- many changes, each change will have a separate ID in the change log but
--- will share the same transactionId.
-chaTransactionId :: Lens' ChangeLog (Maybe Int64)
-chaTransactionId
-  = lens _chaTransactionId
-      (\ s a -> s{_chaTransactionId = a})
-      . mapping _Coerce
-
--- | Old value of the object field.
-chaOldValue :: Lens' ChangeLog (Maybe Text)
-chaOldValue
-  = lens _chaOldValue (\ s a -> s{_chaOldValue = a})
-
--- | Account ID of the modified object.
-chaAccountId :: Lens' ChangeLog (Maybe Int64)
-chaAccountId
-  = lens _chaAccountId (\ s a -> s{_chaAccountId = a})
-      . mapping _Coerce
-
--- | New value of the object field.
-chaNewValue :: Lens' ChangeLog (Maybe Text)
-chaNewValue
-  = lens _chaNewValue (\ s a -> s{_chaNewValue = a})
-
--- | Field name of the object which changed.
-chaFieldName :: Lens' ChangeLog (Maybe Text)
-chaFieldName
-  = lens _chaFieldName (\ s a -> s{_chaFieldName = a})
-
--- | ID of this change log.
-chaId :: Lens' ChangeLog (Maybe Int64)
-chaId
-  = lens _chaId (\ s a -> s{_chaId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of the modified object.
-chaSubAccountId :: Lens' ChangeLog (Maybe Int64)
-chaSubAccountId
-  = lens _chaSubAccountId
-      (\ s a -> s{_chaSubAccountId = a})
-      . mapping _Coerce
-
--- | Time when the object was modified.
-chaChangeTime :: Lens' ChangeLog (Maybe UTCTime)
-chaChangeTime
-  = lens _chaChangeTime
-      (\ s a -> s{_chaChangeTime = a})
-      . mapping _DateTime
-
-instance FromJSON ChangeLog where
-        parseJSON
-          = withObject "ChangeLog"
-              (\ o ->
-                 ChangeLog' <$>
-                   (o .:? "userProfileId") <*> (o .:? "objectType") <*>
-                     (o .:? "userProfileName")
-                     <*> (o .:? "kind" .!= "dfareporting#changeLog")
-                     <*> (o .:? "objectId")
-                     <*> (o .:? "action")
-                     <*> (o .:? "transactionId")
-                     <*> (o .:? "oldValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "newValue")
-                     <*> (o .:? "fieldName")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "changeTime"))
-
-instance ToJSON ChangeLog where
-        toJSON ChangeLog'{..}
-          = object
-              (catMaybes
-                 [("userProfileId" .=) <$> _chaUserProFileId,
-                  ("objectType" .=) <$> _chaObjectType,
-                  ("userProfileName" .=) <$> _chaUserProFileName,
-                  Just ("kind" .= _chaKind),
-                  ("objectId" .=) <$> _chaObjectId,
-                  ("action" .=) <$> _chaAction,
-                  ("transactionId" .=) <$> _chaTransactionId,
-                  ("oldValue" .=) <$> _chaOldValue,
-                  ("accountId" .=) <$> _chaAccountId,
-                  ("newValue" .=) <$> _chaNewValue,
-                  ("fieldName" .=) <$> _chaFieldName,
-                  ("id" .=) <$> _chaId,
-                  ("subaccountId" .=) <$> _chaSubAccountId,
-                  ("changeTime" .=) <$> _chaChangeTime])
-
--- | Contains information about a language that can be targeted by ads.
---
--- /See:/ 'language' smart constructor.
-data Language =
-  Language'
-    { _lLanguageCode :: !(Maybe Text)
-    , _lKind         :: !Text
-    , _lName         :: !(Maybe Text)
-    , _lId           :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Language' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lLanguageCode'
---
--- * 'lKind'
---
--- * 'lName'
---
--- * 'lId'
-language
-    :: Language
-language =
-  Language'
-    { _lLanguageCode = Nothing
-    , _lKind = "dfareporting#language"
-    , _lName = Nothing
-    , _lId = Nothing
-    }
-
-
--- | Format of language code is an ISO 639 two-letter language code
--- optionally followed by an underscore followed by an ISO 3166 code.
--- Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese.
-lLanguageCode :: Lens' Language (Maybe Text)
-lLanguageCode
-  = lens _lLanguageCode
-      (\ s a -> s{_lLanguageCode = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#language\".
-lKind :: Lens' Language Text
-lKind = lens _lKind (\ s a -> s{_lKind = a})
-
--- | Name of this language.
-lName :: Lens' Language (Maybe Text)
-lName = lens _lName (\ s a -> s{_lName = a})
-
--- | Language ID of this language. This is the ID used for targeting and
--- generating reports.
-lId :: Lens' Language (Maybe Int64)
-lId
-  = lens _lId (\ s a -> s{_lId = a}) . mapping _Coerce
-
-instance FromJSON Language where
-        parseJSON
-          = withObject "Language"
-              (\ o ->
-                 Language' <$>
-                   (o .:? "languageCode") <*>
-                     (o .:? "kind" .!= "dfareporting#language")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON Language where
-        toJSON Language'{..}
-          = object
-              (catMaybes
-                 [("languageCode" .=) <$> _lLanguageCode,
-                  Just ("kind" .= _lKind), ("name" .=) <$> _lName,
-                  ("id" .=) <$> _lId])
-
--- | Contains properties of a placement strategy.
---
--- /See:/ 'placementStrategy' smart constructor.
-data PlacementStrategy =
-  PlacementStrategy'
-    { _psKind      :: !Text
-    , _psAccountId :: !(Maybe (Textual Int64))
-    , _psName      :: !(Maybe Text)
-    , _psId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategy' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psKind'
---
--- * 'psAccountId'
---
--- * 'psName'
---
--- * 'psId'
-placementStrategy
-    :: PlacementStrategy
-placementStrategy =
-  PlacementStrategy'
-    { _psKind = "dfareporting#placementStrategy"
-    , _psAccountId = Nothing
-    , _psName = Nothing
-    , _psId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementStrategy\".
-psKind :: Lens' PlacementStrategy Text
-psKind = lens _psKind (\ s a -> s{_psKind = a})
-
--- | Account ID of this placement strategy.This is a read-only field that can
--- be left blank.
-psAccountId :: Lens' PlacementStrategy (Maybe Int64)
-psAccountId
-  = lens _psAccountId (\ s a -> s{_psAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this placement strategy. This is a required field. It must be
--- less than 256 characters long and unique among placement strategies of
--- the same account.
-psName :: Lens' PlacementStrategy (Maybe Text)
-psName = lens _psName (\ s a -> s{_psName = a})
-
--- | ID of this placement strategy. This is a read-only, auto-generated
--- field.
-psId :: Lens' PlacementStrategy (Maybe Int64)
-psId
-  = lens _psId (\ s a -> s{_psId = a}) .
-      mapping _Coerce
-
-instance FromJSON PlacementStrategy where
-        parseJSON
-          = withObject "PlacementStrategy"
-              (\ o ->
-                 PlacementStrategy' <$>
-                   (o .:? "kind" .!= "dfareporting#placementStrategy")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON PlacementStrategy where
-        toJSON PlacementStrategy'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _psKind),
-                  ("accountId" .=) <$> _psAccountId,
-                  ("name" .=) <$> _psName, ("id" .=) <$> _psId])
-
--- | Contains properties of a Floodlight activity.
---
--- /See:/ 'floodlightActivity' smart constructor.
-data FloodlightActivity =
-  FloodlightActivity'
-    { _faCountingMethod                          :: !(Maybe FloodlightActivityCountingMethod)
-    , _faTagString                               :: !(Maybe Text)
-    , _faSecure                                  :: !(Maybe Bool)
-    , _faExpectedURL                             :: !(Maybe Text)
-    , _faFloodlightActivityGroupTagString        :: !(Maybe Text)
-    , _faFloodlightConfigurationId               :: !(Maybe (Textual Int64))
-    , _faKind                                    :: !Text
-    , _faAdvertiserId                            :: !(Maybe (Textual Int64))
-    , _faAdvertiserIdDimensionValue              :: !(Maybe DimensionValue)
-    , _faSSLCompliant                            :: !(Maybe Bool)
-    , _faIdDimensionValue                        :: !(Maybe DimensionValue)
-    , _faTagFormat                               :: !(Maybe FloodlightActivityTagFormat)
-    , _faCacheBustingType                        :: !(Maybe FloodlightActivityCacheBustingType)
-    , _faAccountId                               :: !(Maybe (Textual Int64))
-    , _faName                                    :: !(Maybe Text)
-    , _faPublisherTags                           :: !(Maybe [FloodlightActivityPublisherDynamicTag])
-    , _faFloodlightActivityGroupId               :: !(Maybe (Textual Int64))
-    , _faHidden                                  :: !(Maybe Bool)
-    , _faFloodlightActivityGroupType             :: !(Maybe FloodlightActivityFloodlightActivityGroupType)
-    , _faDefaultTags                             :: !(Maybe [FloodlightActivityDynamicTag])
-    , _faFloodlightTagType                       :: !(Maybe FloodlightActivityFloodlightTagType)
-    , _faFloodlightActivityGroupName             :: !(Maybe Text)
-    , _faId                                      :: !(Maybe (Textual Int64))
-    , _faSSLRequired                             :: !(Maybe Bool)
-    , _faUserDefinedVariableTypes                :: !(Maybe [FloodlightActivityUserDefinedVariableTypesItem])
-    , _faSubAccountId                            :: !(Maybe (Textual Int64))
-    , _faNotes                                   :: !(Maybe Text)
-    , _faFloodlightConfigurationIdDimensionValue :: !(Maybe DimensionValue)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivity' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faCountingMethod'
---
--- * 'faTagString'
---
--- * 'faSecure'
---
--- * 'faExpectedURL'
---
--- * 'faFloodlightActivityGroupTagString'
---
--- * 'faFloodlightConfigurationId'
---
--- * 'faKind'
---
--- * 'faAdvertiserId'
---
--- * 'faAdvertiserIdDimensionValue'
---
--- * 'faSSLCompliant'
---
--- * 'faIdDimensionValue'
---
--- * 'faTagFormat'
---
--- * 'faCacheBustingType'
---
--- * 'faAccountId'
---
--- * 'faName'
---
--- * 'faPublisherTags'
---
--- * 'faFloodlightActivityGroupId'
---
--- * 'faHidden'
---
--- * 'faFloodlightActivityGroupType'
---
--- * 'faDefaultTags'
---
--- * 'faFloodlightTagType'
---
--- * 'faFloodlightActivityGroupName'
---
--- * 'faId'
---
--- * 'faSSLRequired'
---
--- * 'faUserDefinedVariableTypes'
---
--- * 'faSubAccountId'
---
--- * 'faNotes'
---
--- * 'faFloodlightConfigurationIdDimensionValue'
-floodlightActivity
-    :: FloodlightActivity
-floodlightActivity =
-  FloodlightActivity'
-    { _faCountingMethod = Nothing
-    , _faTagString = Nothing
-    , _faSecure = Nothing
-    , _faExpectedURL = Nothing
-    , _faFloodlightActivityGroupTagString = Nothing
-    , _faFloodlightConfigurationId = Nothing
-    , _faKind = "dfareporting#floodlightActivity"
-    , _faAdvertiserId = Nothing
-    , _faAdvertiserIdDimensionValue = Nothing
-    , _faSSLCompliant = Nothing
-    , _faIdDimensionValue = Nothing
-    , _faTagFormat = Nothing
-    , _faCacheBustingType = Nothing
-    , _faAccountId = Nothing
-    , _faName = Nothing
-    , _faPublisherTags = Nothing
-    , _faFloodlightActivityGroupId = Nothing
-    , _faHidden = Nothing
-    , _faFloodlightActivityGroupType = Nothing
-    , _faDefaultTags = Nothing
-    , _faFloodlightTagType = Nothing
-    , _faFloodlightActivityGroupName = Nothing
-    , _faId = Nothing
-    , _faSSLRequired = Nothing
-    , _faUserDefinedVariableTypes = Nothing
-    , _faSubAccountId = Nothing
-    , _faNotes = Nothing
-    , _faFloodlightConfigurationIdDimensionValue = Nothing
-    }
-
-
--- | Counting method for conversions for this floodlight activity. This is a
--- required field.
-faCountingMethod :: Lens' FloodlightActivity (Maybe FloodlightActivityCountingMethod)
-faCountingMethod
-  = lens _faCountingMethod
-      (\ s a -> s{_faCountingMethod = a})
-
--- | Value of the cat= parameter in the floodlight tag, which the ad servers
--- use to identify the activity. This is optional: if empty, a new tag
--- string will be generated for you. This string must be 1 to 8 characters
--- long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag
--- string must also be unique among activities of the same activity group.
--- This field is read-only after insertion.
-faTagString :: Lens' FloodlightActivity (Maybe Text)
-faTagString
-  = lens _faTagString (\ s a -> s{_faTagString = a})
-
--- | Whether this tag should use SSL.
-faSecure :: Lens' FloodlightActivity (Maybe Bool)
-faSecure = lens _faSecure (\ s a -> s{_faSecure = a})
-
--- | URL where this tag will be deployed. If specified, must be less than 256
--- characters long.
-faExpectedURL :: Lens' FloodlightActivity (Maybe Text)
-faExpectedURL
-  = lens _faExpectedURL
-      (\ s a -> s{_faExpectedURL = a})
-
--- | Tag string of the associated floodlight activity group. This is a
--- read-only field.
-faFloodlightActivityGroupTagString :: Lens' FloodlightActivity (Maybe Text)
-faFloodlightActivityGroupTagString
-  = lens _faFloodlightActivityGroupTagString
-      (\ s a -> s{_faFloodlightActivityGroupTagString = a})
-
--- | Floodlight configuration ID of this floodlight activity. If this field
--- is left blank, the value will be copied over either from the activity
--- group\'s floodlight configuration or from the existing activity\'s
--- floodlight configuration.
-faFloodlightConfigurationId :: Lens' FloodlightActivity (Maybe Int64)
-faFloodlightConfigurationId
-  = lens _faFloodlightConfigurationId
-      (\ s a -> s{_faFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightActivity\".
-faKind :: Lens' FloodlightActivity Text
-faKind = lens _faKind (\ s a -> s{_faKind = a})
-
--- | Advertiser ID of this floodlight activity. If this field is left blank,
--- the value will be copied over either from the activity group\'s
--- advertiser or the existing activity\'s advertiser.
-faAdvertiserId :: Lens' FloodlightActivity (Maybe Int64)
-faAdvertiserId
-  = lens _faAdvertiserId
-      (\ s a -> s{_faAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-faAdvertiserIdDimensionValue :: Lens' FloodlightActivity (Maybe DimensionValue)
-faAdvertiserIdDimensionValue
-  = lens _faAdvertiserIdDimensionValue
-      (\ s a -> s{_faAdvertiserIdDimensionValue = a})
-
--- | Whether the floodlight activity is SSL-compliant. This is a read-only
--- field, its value detected by the system from the floodlight tags.
-faSSLCompliant :: Lens' FloodlightActivity (Maybe Bool)
-faSSLCompliant
-  = lens _faSSLCompliant
-      (\ s a -> s{_faSSLCompliant = a})
-
--- | Dimension value for the ID of this floodlight activity. This is a
--- read-only, auto-generated field.
-faIdDimensionValue :: Lens' FloodlightActivity (Maybe DimensionValue)
-faIdDimensionValue
-  = lens _faIdDimensionValue
-      (\ s a -> s{_faIdDimensionValue = a})
-
--- | Tag format type for the floodlight activity. If left blank, the tag
--- format will default to HTML.
-faTagFormat :: Lens' FloodlightActivity (Maybe FloodlightActivityTagFormat)
-faTagFormat
-  = lens _faTagFormat (\ s a -> s{_faTagFormat = a})
-
--- | Code type used for cache busting in the generated tag. Applicable only
--- when floodlightActivityGroupType is COUNTER and countingMethod is
--- STANDARD_COUNTING or UNIQUE_COUNTING.
-faCacheBustingType :: Lens' FloodlightActivity (Maybe FloodlightActivityCacheBustingType)
-faCacheBustingType
-  = lens _faCacheBustingType
-      (\ s a -> s{_faCacheBustingType = a})
-
--- | Account ID of this floodlight activity. This is a read-only field that
--- can be left blank.
-faAccountId :: Lens' FloodlightActivity (Maybe Int64)
-faAccountId
-  = lens _faAccountId (\ s a -> s{_faAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this floodlight activity. This is a required field. Must be less
--- than 129 characters long and cannot contain quotes.
-faName :: Lens' FloodlightActivity (Maybe Text)
-faName = lens _faName (\ s a -> s{_faName = a})
-
--- | Publisher dynamic floodlight tags.
-faPublisherTags :: Lens' FloodlightActivity [FloodlightActivityPublisherDynamicTag]
-faPublisherTags
-  = lens _faPublisherTags
-      (\ s a -> s{_faPublisherTags = a})
-      . _Default
-      . _Coerce
-
--- | Floodlight activity group ID of this floodlight activity. This is a
--- required field.
-faFloodlightActivityGroupId :: Lens' FloodlightActivity (Maybe Int64)
-faFloodlightActivityGroupId
-  = lens _faFloodlightActivityGroupId
-      (\ s a -> s{_faFloodlightActivityGroupId = a})
-      . mapping _Coerce
-
--- | Whether this activity is archived.
-faHidden :: Lens' FloodlightActivity (Maybe Bool)
-faHidden = lens _faHidden (\ s a -> s{_faHidden = a})
-
--- | Type of the associated floodlight activity group. This is a read-only
--- field.
-faFloodlightActivityGroupType :: Lens' FloodlightActivity (Maybe FloodlightActivityFloodlightActivityGroupType)
-faFloodlightActivityGroupType
-  = lens _faFloodlightActivityGroupType
-      (\ s a -> s{_faFloodlightActivityGroupType = a})
-
--- | Dynamic floodlight tags.
-faDefaultTags :: Lens' FloodlightActivity [FloodlightActivityDynamicTag]
-faDefaultTags
-  = lens _faDefaultTags
-      (\ s a -> s{_faDefaultTags = a})
-      . _Default
-      . _Coerce
-
--- | The type of Floodlight tag this activity will generate. This is a
--- required field.
-faFloodlightTagType :: Lens' FloodlightActivity (Maybe FloodlightActivityFloodlightTagType)
-faFloodlightTagType
-  = lens _faFloodlightTagType
-      (\ s a -> s{_faFloodlightTagType = a})
-
--- | Name of the associated floodlight activity group. This is a read-only
--- field.
-faFloodlightActivityGroupName :: Lens' FloodlightActivity (Maybe Text)
-faFloodlightActivityGroupName
-  = lens _faFloodlightActivityGroupName
-      (\ s a -> s{_faFloodlightActivityGroupName = a})
-
--- | ID of this floodlight activity. This is a read-only, auto-generated
--- field.
-faId :: Lens' FloodlightActivity (Maybe Int64)
-faId
-  = lens _faId (\ s a -> s{_faId = a}) .
-      mapping _Coerce
-
--- | Whether this floodlight activity must be SSL-compliant.
-faSSLRequired :: Lens' FloodlightActivity (Maybe Bool)
-faSSLRequired
-  = lens _faSSLRequired
-      (\ s a -> s{_faSSLRequired = a})
-
--- | List of the user-defined variables used by this conversion tag. These
--- map to the \"u[1-100]=\" in the tags. Each of these can have a user
--- defined type. Acceptable values are U1 to U100, inclusive.
-faUserDefinedVariableTypes :: Lens' FloodlightActivity [FloodlightActivityUserDefinedVariableTypesItem]
-faUserDefinedVariableTypes
-  = lens _faUserDefinedVariableTypes
-      (\ s a -> s{_faUserDefinedVariableTypes = a})
-      . _Default
-      . _Coerce
-
--- | Subaccount ID of this floodlight activity. This is a read-only field
--- that can be left blank.
-faSubAccountId :: Lens' FloodlightActivity (Maybe Int64)
-faSubAccountId
-  = lens _faSubAccountId
-      (\ s a -> s{_faSubAccountId = a})
-      . mapping _Coerce
-
--- | General notes or implementation instructions for the tag.
-faNotes :: Lens' FloodlightActivity (Maybe Text)
-faNotes = lens _faNotes (\ s a -> s{_faNotes = a})
-
--- | Dimension value for the ID of the floodlight configuration. This is a
--- read-only, auto-generated field.
-faFloodlightConfigurationIdDimensionValue :: Lens' FloodlightActivity (Maybe DimensionValue)
-faFloodlightConfigurationIdDimensionValue
-  = lens _faFloodlightConfigurationIdDimensionValue
-      (\ s a ->
-         s{_faFloodlightConfigurationIdDimensionValue = a})
-
-instance FromJSON FloodlightActivity where
-        parseJSON
-          = withObject "FloodlightActivity"
-              (\ o ->
-                 FloodlightActivity' <$>
-                   (o .:? "countingMethod") <*> (o .:? "tagString") <*>
-                     (o .:? "secure")
-                     <*> (o .:? "expectedUrl")
-                     <*> (o .:? "floodlightActivityGroupTagString")
-                     <*> (o .:? "floodlightConfigurationId")
-                     <*>
-                     (o .:? "kind" .!= "dfareporting#floodlightActivity")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "tagFormat")
-                     <*> (o .:? "cacheBustingType")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "publisherTags" .!= mempty)
-                     <*> (o .:? "floodlightActivityGroupId")
-                     <*> (o .:? "hidden")
-                     <*> (o .:? "floodlightActivityGroupType")
-                     <*> (o .:? "defaultTags" .!= mempty)
-                     <*> (o .:? "floodlightTagType")
-                     <*> (o .:? "floodlightActivityGroupName")
-                     <*> (o .:? "id")
-                     <*> (o .:? "sslRequired")
-                     <*> (o .:? "userDefinedVariableTypes" .!= mempty)
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "notes")
-                     <*>
-                     (o .:? "floodlightConfigurationIdDimensionValue"))
-
-instance ToJSON FloodlightActivity where
-        toJSON FloodlightActivity'{..}
-          = object
-              (catMaybes
-                 [("countingMethod" .=) <$> _faCountingMethod,
-                  ("tagString" .=) <$> _faTagString,
-                  ("secure" .=) <$> _faSecure,
-                  ("expectedUrl" .=) <$> _faExpectedURL,
-                  ("floodlightActivityGroupTagString" .=) <$>
-                    _faFloodlightActivityGroupTagString,
-                  ("floodlightConfigurationId" .=) <$>
-                    _faFloodlightConfigurationId,
-                  Just ("kind" .= _faKind),
-                  ("advertiserId" .=) <$> _faAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _faAdvertiserIdDimensionValue,
-                  ("sslCompliant" .=) <$> _faSSLCompliant,
-                  ("idDimensionValue" .=) <$> _faIdDimensionValue,
-                  ("tagFormat" .=) <$> _faTagFormat,
-                  ("cacheBustingType" .=) <$> _faCacheBustingType,
-                  ("accountId" .=) <$> _faAccountId,
-                  ("name" .=) <$> _faName,
-                  ("publisherTags" .=) <$> _faPublisherTags,
-                  ("floodlightActivityGroupId" .=) <$>
-                    _faFloodlightActivityGroupId,
-                  ("hidden" .=) <$> _faHidden,
-                  ("floodlightActivityGroupType" .=) <$>
-                    _faFloodlightActivityGroupType,
-                  ("defaultTags" .=) <$> _faDefaultTags,
-                  ("floodlightTagType" .=) <$> _faFloodlightTagType,
-                  ("floodlightActivityGroupName" .=) <$>
-                    _faFloodlightActivityGroupName,
-                  ("id" .=) <$> _faId,
-                  ("sslRequired" .=) <$> _faSSLRequired,
-                  ("userDefinedVariableTypes" .=) <$>
-                    _faUserDefinedVariableTypes,
-                  ("subaccountId" .=) <$> _faSubAccountId,
-                  ("notes" .=) <$> _faNotes,
-                  ("floodlightConfigurationIdDimensionValue" .=) <$>
-                    _faFloodlightConfigurationIdDimensionValue])
-
--- | A custom floodlight variable.
---
--- /See:/ 'customFloodlightVariable' smart constructor.
-data CustomFloodlightVariable =
-  CustomFloodlightVariable'
-    { _cusKind  :: !Text
-    , _cusValue :: !(Maybe Text)
-    , _cusType  :: !(Maybe CustomFloodlightVariableType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CustomFloodlightVariable' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cusKind'
---
--- * 'cusValue'
---
--- * 'cusType'
-customFloodlightVariable
-    :: CustomFloodlightVariable
-customFloodlightVariable =
-  CustomFloodlightVariable'
-    { _cusKind = "dfareporting#customFloodlightVariable"
-    , _cusValue = Nothing
-    , _cusType = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#customFloodlightVariable\".
-cusKind :: Lens' CustomFloodlightVariable Text
-cusKind = lens _cusKind (\ s a -> s{_cusKind = a})
-
--- | The value of the custom floodlight variable. The length of string must
--- not exceed 50 characters.
-cusValue :: Lens' CustomFloodlightVariable (Maybe Text)
-cusValue = lens _cusValue (\ s a -> s{_cusValue = a})
-
--- | The type of custom floodlight variable to supply a value for. These map
--- to the \"u[1-20]=\" in the tags.
-cusType :: Lens' CustomFloodlightVariable (Maybe CustomFloodlightVariableType)
-cusType = lens _cusType (\ s a -> s{_cusType = a})
-
-instance FromJSON CustomFloodlightVariable where
-        parseJSON
-          = withObject "CustomFloodlightVariable"
-              (\ o ->
-                 CustomFloodlightVariable' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#customFloodlightVariable")
-                     <*> (o .:? "value")
-                     <*> (o .:? "type"))
-
-instance ToJSON CustomFloodlightVariable where
-        toJSON CustomFloodlightVariable'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cusKind),
-                  ("value" .=) <$> _cusValue,
-                  ("type" .=) <$> _cusType])
-
--- | Platform Type List Response
---
--- /See:/ 'platformTypesListResponse' smart constructor.
-data PlatformTypesListResponse =
-  PlatformTypesListResponse'
-    { _ptlrKind          :: !Text
-    , _ptlrPlatformTypes :: !(Maybe [PlatformType])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlatformTypesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptlrKind'
---
--- * 'ptlrPlatformTypes'
-platformTypesListResponse
-    :: PlatformTypesListResponse
-platformTypesListResponse =
-  PlatformTypesListResponse'
-    { _ptlrKind = "dfareporting#platformTypesListResponse"
-    , _ptlrPlatformTypes = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#platformTypesListResponse\".
-ptlrKind :: Lens' PlatformTypesListResponse Text
-ptlrKind = lens _ptlrKind (\ s a -> s{_ptlrKind = a})
-
--- | Platform type collection.
-ptlrPlatformTypes :: Lens' PlatformTypesListResponse [PlatformType]
-ptlrPlatformTypes
-  = lens _ptlrPlatformTypes
-      (\ s a -> s{_ptlrPlatformTypes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON PlatformTypesListResponse where
-        parseJSON
-          = withObject "PlatformTypesListResponse"
-              (\ o ->
-                 PlatformTypesListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#platformTypesListResponse")
-                     <*> (o .:? "platformTypes" .!= mempty))
-
-instance ToJSON PlatformTypesListResponse where
-        toJSON PlatformTypesListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _ptlrKind),
-                  ("platformTypes" .=) <$> _ptlrPlatformTypes])
-
--- | Modification timestamp.
---
--- /See:/ 'lastModifiedInfo' smart constructor.
-newtype LastModifiedInfo =
-  LastModifiedInfo'
-    { _lmiTime :: Maybe (Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LastModifiedInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lmiTime'
-lastModifiedInfo
-    :: LastModifiedInfo
-lastModifiedInfo = LastModifiedInfo' {_lmiTime = Nothing}
-
-
--- | Timestamp of the last change in milliseconds since epoch.
-lmiTime :: Lens' LastModifiedInfo (Maybe Int64)
-lmiTime
-  = lens _lmiTime (\ s a -> s{_lmiTime = a}) .
-      mapping _Coerce
-
-instance FromJSON LastModifiedInfo where
-        parseJSON
-          = withObject "LastModifiedInfo"
-              (\ o -> LastModifiedInfo' <$> (o .:? "time"))
-
-instance ToJSON LastModifiedInfo where
-        toJSON LastModifiedInfo'{..}
-          = object (catMaybes [("time" .=) <$> _lmiTime])
-
--- | Target Window.
---
--- /See:/ 'targetWindow' smart constructor.
-data TargetWindow =
-  TargetWindow'
-    { _twCustomHTML         :: !(Maybe Text)
-    , _twTargetWindowOption :: !(Maybe TargetWindowTargetWindowOption)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetWindow' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'twCustomHTML'
---
--- * 'twTargetWindowOption'
-targetWindow
-    :: TargetWindow
-targetWindow =
-  TargetWindow' {_twCustomHTML = Nothing, _twTargetWindowOption = Nothing}
-
-
--- | User-entered value.
-twCustomHTML :: Lens' TargetWindow (Maybe Text)
-twCustomHTML
-  = lens _twCustomHTML (\ s a -> s{_twCustomHTML = a})
-
--- | Type of browser window for which the backup image of the flash creative
--- can be displayed.
-twTargetWindowOption :: Lens' TargetWindow (Maybe TargetWindowTargetWindowOption)
-twTargetWindowOption
-  = lens _twTargetWindowOption
-      (\ s a -> s{_twTargetWindowOption = a})
-
-instance FromJSON TargetWindow where
-        parseJSON
-          = withObject "TargetWindow"
-              (\ o ->
-                 TargetWindow' <$>
-                   (o .:? "customHtml") <*>
-                     (o .:? "targetWindowOption"))
-
-instance ToJSON TargetWindow where
-        toJSON TargetWindow'{..}
-          = object
-              (catMaybes
-                 [("customHtml" .=) <$> _twCustomHTML,
-                  ("targetWindowOption" .=) <$> _twTargetWindowOption])
-
--- | AccountPermissionGroups contains a mapping of permission group IDs to
--- names. A permission group is a grouping of account permissions.
---
--- /See:/ 'accountPermissionGroup' smart constructor.
-data AccountPermissionGroup =
-  AccountPermissionGroup'
-    { _apgpKind :: !Text
-    , _apgpName :: !(Maybe Text)
-    , _apgpId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apgpKind'
---
--- * 'apgpName'
---
--- * 'apgpId'
-accountPermissionGroup
-    :: AccountPermissionGroup
-accountPermissionGroup =
-  AccountPermissionGroup'
-    { _apgpKind = "dfareporting#accountPermissionGroup"
-    , _apgpName = Nothing
-    , _apgpId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#accountPermissionGroup\".
-apgpKind :: Lens' AccountPermissionGroup Text
-apgpKind = lens _apgpKind (\ s a -> s{_apgpKind = a})
-
--- | Name of this account permission group.
-apgpName :: Lens' AccountPermissionGroup (Maybe Text)
-apgpName = lens _apgpName (\ s a -> s{_apgpName = a})
-
--- | ID of this account permission group.
-apgpId :: Lens' AccountPermissionGroup (Maybe Int64)
-apgpId
-  = lens _apgpId (\ s a -> s{_apgpId = a}) .
-      mapping _Coerce
-
-instance FromJSON AccountPermissionGroup where
-        parseJSON
-          = withObject "AccountPermissionGroup"
-              (\ o ->
-                 AccountPermissionGroup' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#accountPermissionGroup")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON AccountPermissionGroup where
-        toJSON AccountPermissionGroup'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _apgpKind),
-                  ("name" .=) <$> _apgpName, ("id" .=) <$> _apgpId])
-
--- | Contains properties of a Campaign Manager advertiser.
---
--- /See:/ 'advertiser' smart constructor.
-data Advertiser =
-  Advertiser'
-    { _advdOriginalFloodlightConfigurationId       :: !(Maybe (Textual Int64))
-    , _advdStatus                                  :: !(Maybe AdvertiserStatus)
-    , _advdFloodlightConfigurationId               :: !(Maybe (Textual Int64))
-    , _advdKind                                    :: !Text
-    , _advdSuspended                               :: !(Maybe Bool)
-    , _advdIdDimensionValue                        :: !(Maybe DimensionValue)
-    , _advdAccountId                               :: !(Maybe (Textual Int64))
-    , _advdDefaultEmail                            :: !(Maybe Text)
-    , _advdName                                    :: !(Maybe Text)
-    , _advdAdvertiserGroupId                       :: !(Maybe (Textual Int64))
-    , _advdDefaultClickThroughEventTagId           :: !(Maybe (Textual Int64))
-    , _advdId                                      :: !(Maybe (Textual Int64))
-    , _advdSubAccountId                            :: !(Maybe (Textual Int64))
-    , _advdFloodlightConfigurationIdDimensionValue :: !(Maybe DimensionValue)
-    , _advdClickThroughURLSuffix                   :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Advertiser' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'advdOriginalFloodlightConfigurationId'
---
--- * 'advdStatus'
---
--- * 'advdFloodlightConfigurationId'
---
--- * 'advdKind'
---
--- * 'advdSuspended'
---
--- * 'advdIdDimensionValue'
---
--- * 'advdAccountId'
---
--- * 'advdDefaultEmail'
---
--- * 'advdName'
---
--- * 'advdAdvertiserGroupId'
---
--- * 'advdDefaultClickThroughEventTagId'
---
--- * 'advdId'
---
--- * 'advdSubAccountId'
---
--- * 'advdFloodlightConfigurationIdDimensionValue'
---
--- * 'advdClickThroughURLSuffix'
-advertiser
-    :: Advertiser
-advertiser =
-  Advertiser'
-    { _advdOriginalFloodlightConfigurationId = Nothing
-    , _advdStatus = Nothing
-    , _advdFloodlightConfigurationId = Nothing
-    , _advdKind = "dfareporting#advertiser"
-    , _advdSuspended = Nothing
-    , _advdIdDimensionValue = Nothing
-    , _advdAccountId = Nothing
-    , _advdDefaultEmail = Nothing
-    , _advdName = Nothing
-    , _advdAdvertiserGroupId = Nothing
-    , _advdDefaultClickThroughEventTagId = Nothing
-    , _advdId = Nothing
-    , _advdSubAccountId = Nothing
-    , _advdFloodlightConfigurationIdDimensionValue = Nothing
-    , _advdClickThroughURLSuffix = Nothing
-    }
-
-
--- | Original floodlight configuration before any sharing occurred. Set the
--- floodlightConfigurationId of this advertiser to
--- originalFloodlightConfigurationId to unshare the advertiser\'s current
--- floodlight configuration. You cannot unshare an advertiser\'s floodlight
--- configuration if the shared configuration has activities associated with
--- any campaign or placement.
-advdOriginalFloodlightConfigurationId :: Lens' Advertiser (Maybe Int64)
-advdOriginalFloodlightConfigurationId
-  = lens _advdOriginalFloodlightConfigurationId
-      (\ s a ->
-         s{_advdOriginalFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Status of this advertiser.
-advdStatus :: Lens' Advertiser (Maybe AdvertiserStatus)
-advdStatus
-  = lens _advdStatus (\ s a -> s{_advdStatus = a})
-
--- | Floodlight configuration ID of this advertiser. The floodlight
--- configuration ID will be created automatically, so on insert this field
--- should be left blank. This field can be set to another advertiser\'s
--- floodlight configuration ID in order to share that advertiser\'s
--- floodlight configuration with this advertiser, so long as: - This
--- advertiser\'s original floodlight configuration is not already
--- associated with floodlight activities or floodlight activity groups. -
--- This advertiser\'s original floodlight configuration is not already
--- shared with another advertiser.
-advdFloodlightConfigurationId :: Lens' Advertiser (Maybe Int64)
-advdFloodlightConfigurationId
-  = lens _advdFloodlightConfigurationId
-      (\ s a -> s{_advdFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#advertiser\".
-advdKind :: Lens' Advertiser Text
-advdKind = lens _advdKind (\ s a -> s{_advdKind = a})
-
--- | Suspension status of this advertiser.
-advdSuspended :: Lens' Advertiser (Maybe Bool)
-advdSuspended
-  = lens _advdSuspended
-      (\ s a -> s{_advdSuspended = a})
-
--- | Dimension value for the ID of this advertiser. This is a read-only,
--- auto-generated field.
-advdIdDimensionValue :: Lens' Advertiser (Maybe DimensionValue)
-advdIdDimensionValue
-  = lens _advdIdDimensionValue
-      (\ s a -> s{_advdIdDimensionValue = a})
-
--- | Account ID of this advertiser.This is a read-only field that can be left
--- blank.
-advdAccountId :: Lens' Advertiser (Maybe Int64)
-advdAccountId
-  = lens _advdAccountId
-      (\ s a -> s{_advdAccountId = a})
-      . mapping _Coerce
-
--- | Default email address used in sender field for tag emails.
-advdDefaultEmail :: Lens' Advertiser (Maybe Text)
-advdDefaultEmail
-  = lens _advdDefaultEmail
-      (\ s a -> s{_advdDefaultEmail = a})
-
--- | Name of this advertiser. This is a required field and must be less than
--- 256 characters long and unique among advertisers of the same account.
-advdName :: Lens' Advertiser (Maybe Text)
-advdName = lens _advdName (\ s a -> s{_advdName = a})
-
--- | ID of the advertiser group this advertiser belongs to. You can group
--- advertisers for reporting purposes, allowing you to see aggregated
--- information for all advertisers in each group.
-advdAdvertiserGroupId :: Lens' Advertiser (Maybe Int64)
-advdAdvertiserGroupId
-  = lens _advdAdvertiserGroupId
-      (\ s a -> s{_advdAdvertiserGroupId = a})
-      . mapping _Coerce
-
--- | ID of the click-through event tag to apply by default to the landing
--- pages of this advertiser\'s campaigns.
-advdDefaultClickThroughEventTagId :: Lens' Advertiser (Maybe Int64)
-advdDefaultClickThroughEventTagId
-  = lens _advdDefaultClickThroughEventTagId
-      (\ s a -> s{_advdDefaultClickThroughEventTagId = a})
-      . mapping _Coerce
-
--- | ID of this advertiser. This is a read-only, auto-generated field.
-advdId :: Lens' Advertiser (Maybe Int64)
-advdId
-  = lens _advdId (\ s a -> s{_advdId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this advertiser.This is a read-only field that can be
--- left blank.
-advdSubAccountId :: Lens' Advertiser (Maybe Int64)
-advdSubAccountId
-  = lens _advdSubAccountId
-      (\ s a -> s{_advdSubAccountId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the floodlight configuration. This is a
--- read-only, auto-generated field.
-advdFloodlightConfigurationIdDimensionValue :: Lens' Advertiser (Maybe DimensionValue)
-advdFloodlightConfigurationIdDimensionValue
-  = lens _advdFloodlightConfigurationIdDimensionValue
-      (\ s a ->
-         s{_advdFloodlightConfigurationIdDimensionValue = a})
-
--- | Suffix added to click-through URL of ad creative associations under this
--- advertiser. Must be less than 129 characters long.
-advdClickThroughURLSuffix :: Lens' Advertiser (Maybe Text)
-advdClickThroughURLSuffix
-  = lens _advdClickThroughURLSuffix
-      (\ s a -> s{_advdClickThroughURLSuffix = a})
-
-instance FromJSON Advertiser where
-        parseJSON
-          = withObject "Advertiser"
-              (\ o ->
-                 Advertiser' <$>
-                   (o .:? "originalFloodlightConfigurationId") <*>
-                     (o .:? "status")
-                     <*> (o .:? "floodlightConfigurationId")
-                     <*> (o .:? "kind" .!= "dfareporting#advertiser")
-                     <*> (o .:? "suspended")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "defaultEmail")
-                     <*> (o .:? "name")
-                     <*> (o .:? "advertiserGroupId")
-                     <*> (o .:? "defaultClickThroughEventTagId")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "floodlightConfigurationIdDimensionValue")
-                     <*> (o .:? "clickThroughUrlSuffix"))
-
-instance ToJSON Advertiser where
-        toJSON Advertiser'{..}
-          = object
-              (catMaybes
-                 [("originalFloodlightConfigurationId" .=) <$>
-                    _advdOriginalFloodlightConfigurationId,
-                  ("status" .=) <$> _advdStatus,
-                  ("floodlightConfigurationId" .=) <$>
-                    _advdFloodlightConfigurationId,
-                  Just ("kind" .= _advdKind),
-                  ("suspended" .=) <$> _advdSuspended,
-                  ("idDimensionValue" .=) <$> _advdIdDimensionValue,
-                  ("accountId" .=) <$> _advdAccountId,
-                  ("defaultEmail" .=) <$> _advdDefaultEmail,
-                  ("name" .=) <$> _advdName,
-                  ("advertiserGroupId" .=) <$> _advdAdvertiserGroupId,
-                  ("defaultClickThroughEventTagId" .=) <$>
-                    _advdDefaultClickThroughEventTagId,
-                  ("id" .=) <$> _advdId,
-                  ("subaccountId" .=) <$> _advdSubAccountId,
-                  ("floodlightConfigurationIdDimensionValue" .=) <$>
-                    _advdFloodlightConfigurationIdDimensionValue,
-                  ("clickThroughUrlSuffix" .=) <$>
-                    _advdClickThroughURLSuffix])
-
--- | Contains properties of auser role, which is used to manage user access.
---
--- /See:/ 'userRole' smart constructor.
-data UserRole =
-  UserRole'
-    { _urParentUserRoleId :: !(Maybe (Textual Int64))
-    , _urKind             :: !Text
-    , _urDefaultUserRole  :: !(Maybe Bool)
-    , _urAccountId        :: !(Maybe (Textual Int64))
-    , _urName             :: !(Maybe Text)
-    , _urId               :: !(Maybe (Textual Int64))
-    , _urPermissions      :: !(Maybe [UserRolePermission])
-    , _urSubAccountId     :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRole' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urParentUserRoleId'
---
--- * 'urKind'
---
--- * 'urDefaultUserRole'
---
--- * 'urAccountId'
---
--- * 'urName'
---
--- * 'urId'
---
--- * 'urPermissions'
---
--- * 'urSubAccountId'
-userRole
-    :: UserRole
-userRole =
-  UserRole'
-    { _urParentUserRoleId = Nothing
-    , _urKind = "dfareporting#userRole"
-    , _urDefaultUserRole = Nothing
-    , _urAccountId = Nothing
-    , _urName = Nothing
-    , _urId = Nothing
-    , _urPermissions = Nothing
-    , _urSubAccountId = Nothing
-    }
-
-
--- | ID of the user role that this user role is based on or copied from. This
--- is a required field.
-urParentUserRoleId :: Lens' UserRole (Maybe Int64)
-urParentUserRoleId
-  = lens _urParentUserRoleId
-      (\ s a -> s{_urParentUserRoleId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRole\".
-urKind :: Lens' UserRole Text
-urKind = lens _urKind (\ s a -> s{_urKind = a})
-
--- | Whether this is a default user role. Default user roles are created by
--- the system for the account\/subaccount and cannot be modified or
--- deleted. Each default user role comes with a basic set of preassigned
--- permissions.
-urDefaultUserRole :: Lens' UserRole (Maybe Bool)
-urDefaultUserRole
-  = lens _urDefaultUserRole
-      (\ s a -> s{_urDefaultUserRole = a})
-
--- | Account ID of this user role. This is a read-only field that can be left
--- blank.
-urAccountId :: Lens' UserRole (Maybe Int64)
-urAccountId
-  = lens _urAccountId (\ s a -> s{_urAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this user role. This is a required field. Must be less than 256
--- characters long. If this user role is under a subaccount, the name must
--- be unique among sites of the same subaccount. Otherwise, this user role
--- is a top-level user role, and the name must be unique among top-level
--- user roles of the same account.
-urName :: Lens' UserRole (Maybe Text)
-urName = lens _urName (\ s a -> s{_urName = a})
-
--- | ID of this user role. This is a read-only, auto-generated field.
-urId :: Lens' UserRole (Maybe Int64)
-urId
-  = lens _urId (\ s a -> s{_urId = a}) .
-      mapping _Coerce
-
--- | List of permissions associated with this user role.
-urPermissions :: Lens' UserRole [UserRolePermission]
-urPermissions
-  = lens _urPermissions
-      (\ s a -> s{_urPermissions = a})
-      . _Default
-      . _Coerce
-
--- | Subaccount ID of this user role. This is a read-only field that can be
--- left blank.
-urSubAccountId :: Lens' UserRole (Maybe Int64)
-urSubAccountId
-  = lens _urSubAccountId
-      (\ s a -> s{_urSubAccountId = a})
-      . mapping _Coerce
-
-instance FromJSON UserRole where
-        parseJSON
-          = withObject "UserRole"
-              (\ o ->
-                 UserRole' <$>
-                   (o .:? "parentUserRoleId") <*>
-                     (o .:? "kind" .!= "dfareporting#userRole")
-                     <*> (o .:? "defaultUserRole")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "permissions" .!= mempty)
-                     <*> (o .:? "subaccountId"))
-
-instance ToJSON UserRole where
-        toJSON UserRole'{..}
-          = object
-              (catMaybes
-                 [("parentUserRoleId" .=) <$> _urParentUserRoleId,
-                  Just ("kind" .= _urKind),
-                  ("defaultUserRole" .=) <$> _urDefaultUserRole,
-                  ("accountId" .=) <$> _urAccountId,
-                  ("name" .=) <$> _urName, ("id" .=) <$> _urId,
-                  ("permissions" .=) <$> _urPermissions,
-                  ("subaccountId" .=) <$> _urSubAccountId])
-
--- | Video Format List Response
---
--- /See:/ 'videoFormatsListResponse' smart constructor.
-data VideoFormatsListResponse =
-  VideoFormatsListResponse'
-    { _vflrKind         :: !Text
-    , _vflrVideoFormats :: !(Maybe [VideoFormat])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoFormatsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vflrKind'
---
--- * 'vflrVideoFormats'
-videoFormatsListResponse
-    :: VideoFormatsListResponse
-videoFormatsListResponse =
-  VideoFormatsListResponse'
-    { _vflrKind = "dfareporting#videoFormatsListResponse"
-    , _vflrVideoFormats = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#videoFormatsListResponse\".
-vflrKind :: Lens' VideoFormatsListResponse Text
-vflrKind = lens _vflrKind (\ s a -> s{_vflrKind = a})
-
--- | Video format collection.
-vflrVideoFormats :: Lens' VideoFormatsListResponse [VideoFormat]
-vflrVideoFormats
-  = lens _vflrVideoFormats
-      (\ s a -> s{_vflrVideoFormats = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON VideoFormatsListResponse where
-        parseJSON
-          = withObject "VideoFormatsListResponse"
-              (\ o ->
-                 VideoFormatsListResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#videoFormatsListResponse")
-                     <*> (o .:? "videoFormats" .!= mempty))
-
-instance ToJSON VideoFormatsListResponse where
-        toJSON VideoFormatsListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _vflrKind),
-                  ("videoFormats" .=) <$> _vflrVideoFormats])
-
--- | Directory Site List Response
---
--- /See:/ 'directorySitesListResponse' smart constructor.
-data DirectorySitesListResponse =
-  DirectorySitesListResponse'
-    { _dslrNextPageToken  :: !(Maybe Text)
-    , _dslrKind           :: !Text
-    , _dslrDirectorySites :: !(Maybe [DirectorySite])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySitesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dslrNextPageToken'
---
--- * 'dslrKind'
---
--- * 'dslrDirectorySites'
-directorySitesListResponse
-    :: DirectorySitesListResponse
-directorySitesListResponse =
-  DirectorySitesListResponse'
-    { _dslrNextPageToken = Nothing
-    , _dslrKind = "dfareporting#directorySitesListResponse"
-    , _dslrDirectorySites = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-dslrNextPageToken :: Lens' DirectorySitesListResponse (Maybe Text)
-dslrNextPageToken
-  = lens _dslrNextPageToken
-      (\ s a -> s{_dslrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#directorySitesListResponse\".
-dslrKind :: Lens' DirectorySitesListResponse Text
-dslrKind = lens _dslrKind (\ s a -> s{_dslrKind = a})
-
--- | Directory site collection.
-dslrDirectorySites :: Lens' DirectorySitesListResponse [DirectorySite]
-dslrDirectorySites
-  = lens _dslrDirectorySites
-      (\ s a -> s{_dslrDirectorySites = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON DirectorySitesListResponse where
-        parseJSON
-          = withObject "DirectorySitesListResponse"
-              (\ o ->
-                 DirectorySitesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#directorySitesListResponse")
-                     <*> (o .:? "directorySites" .!= mempty))
-
-instance ToJSON DirectorySitesListResponse where
-        toJSON DirectorySitesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _dslrNextPageToken,
-                  Just ("kind" .= _dslrKind),
-                  ("directorySites" .=) <$> _dslrDirectorySites])
-
--- | The error code and description for a conversion that failed to insert or
--- update.
---
--- /See:/ 'conversionError' smart constructor.
-data ConversionError =
-  ConversionError'
-    { _ceKind    :: !Text
-    , _ceCode    :: !(Maybe ConversionErrorCode)
-    , _ceMessage :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionError' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ceKind'
---
--- * 'ceCode'
---
--- * 'ceMessage'
-conversionError
-    :: ConversionError
-conversionError =
-  ConversionError'
-    { _ceKind = "dfareporting#conversionError"
-    , _ceCode = Nothing
-    , _ceMessage = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionError\".
-ceKind :: Lens' ConversionError Text
-ceKind = lens _ceKind (\ s a -> s{_ceKind = a})
-
--- | The error code.
-ceCode :: Lens' ConversionError (Maybe ConversionErrorCode)
-ceCode = lens _ceCode (\ s a -> s{_ceCode = a})
-
--- | A description of the error.
-ceMessage :: Lens' ConversionError (Maybe Text)
-ceMessage
-  = lens _ceMessage (\ s a -> s{_ceMessage = a})
-
-instance FromJSON ConversionError where
-        parseJSON
-          = withObject "ConversionError"
-              (\ o ->
-                 ConversionError' <$>
-                   (o .:? "kind" .!= "dfareporting#conversionError") <*>
-                     (o .:? "code")
-                     <*> (o .:? "message"))
-
-instance ToJSON ConversionError where
-        toJSON ConversionError'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _ceKind), ("code" .=) <$> _ceCode,
-                  ("message" .=) <$> _ceMessage])
-
--- | Pricing Period
---
--- /See:/ 'pricingSchedulePricingPeriod' smart constructor.
-data PricingSchedulePricingPeriod =
-  PricingSchedulePricingPeriod'
-    { _psppEndDate         :: !(Maybe Date')
-    , _psppRateOrCostNanos :: !(Maybe (Textual Int64))
-    , _psppStartDate       :: !(Maybe Date')
-    , _psppUnits           :: !(Maybe (Textual Int64))
-    , _psppPricingComment  :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PricingSchedulePricingPeriod' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psppEndDate'
---
--- * 'psppRateOrCostNanos'
---
--- * 'psppStartDate'
---
--- * 'psppUnits'
---
--- * 'psppPricingComment'
-pricingSchedulePricingPeriod
-    :: PricingSchedulePricingPeriod
-pricingSchedulePricingPeriod =
-  PricingSchedulePricingPeriod'
-    { _psppEndDate = Nothing
-    , _psppRateOrCostNanos = Nothing
-    , _psppStartDate = Nothing
-    , _psppUnits = Nothing
-    , _psppPricingComment = Nothing
-    }
-
-
--- | Pricing period end date. This date must be later than, or the same day
--- as, the pricing period start date, but not later than the placement end
--- date. The period end date can be the same date as the period start date.
--- If, for example, you set 6\/25\/2015 as both the start and end dates,
--- the effective pricing period date is just that day only, 6\/25\/2015.
--- The hours, minutes, and seconds of the end date should not be set, as
--- doing so will result in an error.
-psppEndDate :: Lens' PricingSchedulePricingPeriod (Maybe Day)
-psppEndDate
-  = lens _psppEndDate (\ s a -> s{_psppEndDate = a}) .
-      mapping _Date
-
--- | Rate or cost of this pricing period in nanos (i.e., multipled by
--- 1000000000). Acceptable values are 0 to 1000000000000000000, inclusive.
-psppRateOrCostNanos :: Lens' PricingSchedulePricingPeriod (Maybe Int64)
-psppRateOrCostNanos
-  = lens _psppRateOrCostNanos
-      (\ s a -> s{_psppRateOrCostNanos = a})
-      . mapping _Coerce
-
--- | Pricing period start date. This date must be later than, or the same day
--- as, the placement start date. The hours, minutes, and seconds of the
--- start date should not be set, as doing so will result in an error.
-psppStartDate :: Lens' PricingSchedulePricingPeriod (Maybe Day)
-psppStartDate
-  = lens _psppStartDate
-      (\ s a -> s{_psppStartDate = a})
-      . mapping _Date
-
--- | Units of this pricing period. Acceptable values are 0 to 10000000000,
--- inclusive.
-psppUnits :: Lens' PricingSchedulePricingPeriod (Maybe Int64)
-psppUnits
-  = lens _psppUnits (\ s a -> s{_psppUnits = a}) .
-      mapping _Coerce
-
--- | Comments for this pricing period.
-psppPricingComment :: Lens' PricingSchedulePricingPeriod (Maybe Text)
-psppPricingComment
-  = lens _psppPricingComment
-      (\ s a -> s{_psppPricingComment = a})
-
-instance FromJSON PricingSchedulePricingPeriod where
-        parseJSON
-          = withObject "PricingSchedulePricingPeriod"
-              (\ o ->
-                 PricingSchedulePricingPeriod' <$>
-                   (o .:? "endDate") <*> (o .:? "rateOrCostNanos") <*>
-                     (o .:? "startDate")
-                     <*> (o .:? "units")
-                     <*> (o .:? "pricingComment"))
-
-instance ToJSON PricingSchedulePricingPeriod where
-        toJSON PricingSchedulePricingPeriod'{..}
-          = object
-              (catMaybes
-                 [("endDate" .=) <$> _psppEndDate,
-                  ("rateOrCostNanos" .=) <$> _psppRateOrCostNanos,
-                  ("startDate" .=) <$> _psppStartDate,
-                  ("units" .=) <$> _psppUnits,
-                  ("pricingComment" .=) <$> _psppPricingComment])
-
--- | Contains information about a region that can be targeted by ads.
---
--- /See:/ 'region' smart constructor.
-data Region =
-  Region'
-    { _regRegionCode    :: !(Maybe Text)
-    , _regKind          :: !Text
-    , _regName          :: !(Maybe Text)
-    , _regCountryCode   :: !(Maybe Text)
-    , _regCountryDartId :: !(Maybe (Textual Int64))
-    , _regDartId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Region' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'regRegionCode'
---
--- * 'regKind'
---
--- * 'regName'
---
--- * 'regCountryCode'
---
--- * 'regCountryDartId'
---
--- * 'regDartId'
-region
-    :: Region
-region =
-  Region'
-    { _regRegionCode = Nothing
-    , _regKind = "dfareporting#region"
-    , _regName = Nothing
-    , _regCountryCode = Nothing
-    , _regCountryDartId = Nothing
-    , _regDartId = Nothing
-    }
-
-
--- | Region code.
-regRegionCode :: Lens' Region (Maybe Text)
-regRegionCode
-  = lens _regRegionCode
-      (\ s a -> s{_regRegionCode = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#region\".
-regKind :: Lens' Region Text
-regKind = lens _regKind (\ s a -> s{_regKind = a})
-
--- | Name of this region.
-regName :: Lens' Region (Maybe Text)
-regName = lens _regName (\ s a -> s{_regName = a})
-
--- | Country code of the country to which this region belongs.
-regCountryCode :: Lens' Region (Maybe Text)
-regCountryCode
-  = lens _regCountryCode
-      (\ s a -> s{_regCountryCode = a})
-
--- | DART ID of the country to which this region belongs.
-regCountryDartId :: Lens' Region (Maybe Int64)
-regCountryDartId
-  = lens _regCountryDartId
-      (\ s a -> s{_regCountryDartId = a})
-      . mapping _Coerce
-
--- | DART ID of this region.
-regDartId :: Lens' Region (Maybe Int64)
-regDartId
-  = lens _regDartId (\ s a -> s{_regDartId = a}) .
-      mapping _Coerce
-
-instance FromJSON Region where
-        parseJSON
-          = withObject "Region"
-              (\ o ->
-                 Region' <$>
-                   (o .:? "regionCode") <*>
-                     (o .:? "kind" .!= "dfareporting#region")
-                     <*> (o .:? "name")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "countryDartId")
-                     <*> (o .:? "dartId"))
-
-instance ToJSON Region where
-        toJSON Region'{..}
-          = object
-              (catMaybes
-                 [("regionCode" .=) <$> _regRegionCode,
-                  Just ("kind" .= _regKind), ("name" .=) <$> _regName,
-                  ("countryCode" .=) <$> _regCountryCode,
-                  ("countryDartId" .=) <$> _regCountryDartId,
-                  ("dartId" .=) <$> _regDartId])
-
--- | Advertiser Group List Response
---
--- /See:/ 'advertiserGroupsListResponse' smart constructor.
-data AdvertiserGroupsListResponse =
-  AdvertiserGroupsListResponse'
-    { _aglrNextPageToken    :: !(Maybe Text)
-    , _aglrKind             :: !Text
-    , _aglrAdvertiserGroups :: !(Maybe [AdvertiserGroup])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aglrNextPageToken'
---
--- * 'aglrKind'
---
--- * 'aglrAdvertiserGroups'
-advertiserGroupsListResponse
-    :: AdvertiserGroupsListResponse
-advertiserGroupsListResponse =
-  AdvertiserGroupsListResponse'
-    { _aglrNextPageToken = Nothing
-    , _aglrKind = "dfareporting#advertiserGroupsListResponse"
-    , _aglrAdvertiserGroups = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-aglrNextPageToken :: Lens' AdvertiserGroupsListResponse (Maybe Text)
-aglrNextPageToken
-  = lens _aglrNextPageToken
-      (\ s a -> s{_aglrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#advertiserGroupsListResponse\".
-aglrKind :: Lens' AdvertiserGroupsListResponse Text
-aglrKind = lens _aglrKind (\ s a -> s{_aglrKind = a})
-
--- | Advertiser group collection.
-aglrAdvertiserGroups :: Lens' AdvertiserGroupsListResponse [AdvertiserGroup]
-aglrAdvertiserGroups
-  = lens _aglrAdvertiserGroups
-      (\ s a -> s{_aglrAdvertiserGroups = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON AdvertiserGroupsListResponse where
-        parseJSON
-          = withObject "AdvertiserGroupsListResponse"
-              (\ o ->
-                 AdvertiserGroupsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#advertiserGroupsListResponse")
-                     <*> (o .:? "advertiserGroups" .!= mempty))
-
-instance ToJSON AdvertiserGroupsListResponse where
-        toJSON AdvertiserGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _aglrNextPageToken,
-                  Just ("kind" .= _aglrKind),
-                  ("advertiserGroups" .=) <$> _aglrAdvertiserGroups])
-
--- | Creative Assignment.
---
--- /See:/ 'creativeAssignment' smart constructor.
-data CreativeAssignment =
-  CreativeAssignment'
-    { _caCreativeGroupAssignments   :: !(Maybe [CreativeGroupAssignment])
-    , _caStartTime                  :: !(Maybe DateTime')
-    , _caWeight                     :: !(Maybe (Textual Int32))
-    , _caRichMediaExitOverrides     :: !(Maybe [RichMediaExitOverride])
-    , _caSSLCompliant               :: !(Maybe Bool)
-    , _caCreativeId                 :: !(Maybe (Textual Int64))
-    , _caClickThroughURL            :: !(Maybe ClickThroughURL)
-    , _caApplyEventTags             :: !(Maybe Bool)
-    , _caActive                     :: !(Maybe Bool)
-    , _caSequence                   :: !(Maybe (Textual Int32))
-    , _caEndTime                    :: !(Maybe DateTime')
-    , _caCompanionCreativeOverrides :: !(Maybe [CompanionClickThroughOverride])
-    , _caCreativeIdDimensionValue   :: !(Maybe DimensionValue)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAssignment' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'caCreativeGroupAssignments'
---
--- * 'caStartTime'
---
--- * 'caWeight'
---
--- * 'caRichMediaExitOverrides'
---
--- * 'caSSLCompliant'
---
--- * 'caCreativeId'
---
--- * 'caClickThroughURL'
---
--- * 'caApplyEventTags'
---
--- * 'caActive'
---
--- * 'caSequence'
---
--- * 'caEndTime'
---
--- * 'caCompanionCreativeOverrides'
---
--- * 'caCreativeIdDimensionValue'
-creativeAssignment
-    :: CreativeAssignment
-creativeAssignment =
-  CreativeAssignment'
-    { _caCreativeGroupAssignments = Nothing
-    , _caStartTime = Nothing
-    , _caWeight = Nothing
-    , _caRichMediaExitOverrides = Nothing
-    , _caSSLCompliant = Nothing
-    , _caCreativeId = Nothing
-    , _caClickThroughURL = Nothing
-    , _caApplyEventTags = Nothing
-    , _caActive = Nothing
-    , _caSequence = Nothing
-    , _caEndTime = Nothing
-    , _caCompanionCreativeOverrides = Nothing
-    , _caCreativeIdDimensionValue = Nothing
-    }
-
-
--- | Creative group assignments for this creative assignment. Only one
--- assignment per creative group number is allowed for a maximum of two
--- assignments.
-caCreativeGroupAssignments :: Lens' CreativeAssignment [CreativeGroupAssignment]
-caCreativeGroupAssignments
-  = lens _caCreativeGroupAssignments
-      (\ s a -> s{_caCreativeGroupAssignments = a})
-      . _Default
-      . _Coerce
-
--- | Date and time that the assigned creative should start serving.
-caStartTime :: Lens' CreativeAssignment (Maybe UTCTime)
-caStartTime
-  = lens _caStartTime (\ s a -> s{_caStartTime = a}) .
-      mapping _DateTime
-
--- | Weight of the creative assignment, applicable when the rotation type is
--- CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.
-caWeight :: Lens' CreativeAssignment (Maybe Int32)
-caWeight
-  = lens _caWeight (\ s a -> s{_caWeight = a}) .
-      mapping _Coerce
-
--- | Rich media exit overrides for this creative assignment. Applicable when
--- the creative type is any of the following: - DISPLAY - RICH_MEDIA_INPAGE
--- - RICH_MEDIA_INPAGE_FLOATING - RICH_MEDIA_IM_EXPAND -
--- RICH_MEDIA_EXPANDING - RICH_MEDIA_INTERSTITIAL_FLOAT -
--- RICH_MEDIA_MOBILE_IN_APP - RICH_MEDIA_MULTI_FLOATING -
--- RICH_MEDIA_PEEL_DOWN - VPAID_LINEAR - VPAID_NON_LINEAR
-caRichMediaExitOverrides :: Lens' CreativeAssignment [RichMediaExitOverride]
-caRichMediaExitOverrides
-  = lens _caRichMediaExitOverrides
-      (\ s a -> s{_caRichMediaExitOverrides = a})
-      . _Default
-      . _Coerce
-
--- | Whether the creative to be assigned is SSL-compliant. This is a
--- read-only field that is auto-generated when the ad is inserted or
--- updated.
-caSSLCompliant :: Lens' CreativeAssignment (Maybe Bool)
-caSSLCompliant
-  = lens _caSSLCompliant
-      (\ s a -> s{_caSSLCompliant = a})
-
--- | ID of the creative to be assigned. This is a required field.
-caCreativeId :: Lens' CreativeAssignment (Maybe Int64)
-caCreativeId
-  = lens _caCreativeId (\ s a -> s{_caCreativeId = a})
-      . mapping _Coerce
-
--- | Click-through URL of the creative assignment.
-caClickThroughURL :: Lens' CreativeAssignment (Maybe ClickThroughURL)
-caClickThroughURL
-  = lens _caClickThroughURL
-      (\ s a -> s{_caClickThroughURL = a})
-
--- | Whether applicable event tags should fire when this creative assignment
--- is rendered. If this value is unset when the ad is inserted or updated,
--- it will default to true for all creative types EXCEPT for
--- INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.
-caApplyEventTags :: Lens' CreativeAssignment (Maybe Bool)
-caApplyEventTags
-  = lens _caApplyEventTags
-      (\ s a -> s{_caApplyEventTags = a})
-
--- | Whether this creative assignment is active. When true, the creative will
--- be included in the ad\'s rotation.
-caActive :: Lens' CreativeAssignment (Maybe Bool)
-caActive = lens _caActive (\ s a -> s{_caActive = a})
-
--- | Sequence number of the creative assignment, applicable when the rotation
--- type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1 to
--- 65535, inclusive.
-caSequence :: Lens' CreativeAssignment (Maybe Int32)
-caSequence
-  = lens _caSequence (\ s a -> s{_caSequence = a}) .
-      mapping _Coerce
-
--- | Date and time that the assigned creative should stop serving. Must be
--- later than the start time.
-caEndTime :: Lens' CreativeAssignment (Maybe UTCTime)
-caEndTime
-  = lens _caEndTime (\ s a -> s{_caEndTime = a}) .
-      mapping _DateTime
-
--- | Companion creative overrides for this creative assignment. Applicable to
--- video ads.
-caCompanionCreativeOverrides :: Lens' CreativeAssignment [CompanionClickThroughOverride]
-caCompanionCreativeOverrides
-  = lens _caCompanionCreativeOverrides
-      (\ s a -> s{_caCompanionCreativeOverrides = a})
-      . _Default
-      . _Coerce
-
--- | Dimension value for the ID of the creative. This is a read-only,
--- auto-generated field.
-caCreativeIdDimensionValue :: Lens' CreativeAssignment (Maybe DimensionValue)
-caCreativeIdDimensionValue
-  = lens _caCreativeIdDimensionValue
-      (\ s a -> s{_caCreativeIdDimensionValue = a})
-
-instance FromJSON CreativeAssignment where
-        parseJSON
-          = withObject "CreativeAssignment"
-              (\ o ->
-                 CreativeAssignment' <$>
-                   (o .:? "creativeGroupAssignments" .!= mempty) <*>
-                     (o .:? "startTime")
-                     <*> (o .:? "weight")
-                     <*> (o .:? "richMediaExitOverrides" .!= mempty)
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "creativeId")
-                     <*> (o .:? "clickThroughUrl")
-                     <*> (o .:? "applyEventTags")
-                     <*> (o .:? "active")
-                     <*> (o .:? "sequence")
-                     <*> (o .:? "endTime")
-                     <*> (o .:? "companionCreativeOverrides" .!= mempty)
-                     <*> (o .:? "creativeIdDimensionValue"))
-
-instance ToJSON CreativeAssignment where
-        toJSON CreativeAssignment'{..}
-          = object
-              (catMaybes
-                 [("creativeGroupAssignments" .=) <$>
-                    _caCreativeGroupAssignments,
-                  ("startTime" .=) <$> _caStartTime,
-                  ("weight" .=) <$> _caWeight,
-                  ("richMediaExitOverrides" .=) <$>
-                    _caRichMediaExitOverrides,
-                  ("sslCompliant" .=) <$> _caSSLCompliant,
-                  ("creativeId" .=) <$> _caCreativeId,
-                  ("clickThroughUrl" .=) <$> _caClickThroughURL,
-                  ("applyEventTags" .=) <$> _caApplyEventTags,
-                  ("active" .=) <$> _caActive,
-                  ("sequence" .=) <$> _caSequence,
-                  ("endTime" .=) <$> _caEndTime,
-                  ("companionCreativeOverrides" .=) <$>
-                    _caCompanionCreativeOverrides,
-                  ("creativeIdDimensionValue" .=) <$>
-                    _caCreativeIdDimensionValue])
-
--- | Represents a dimension filter.
---
--- /See:/ 'dimensionFilter' smart constructor.
-data DimensionFilter =
-  DimensionFilter'
-    { _dfKind          :: !Text
-    , _dfValue         :: !(Maybe Text)
-    , _dfDimensionName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DimensionFilter' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dfKind'
---
--- * 'dfValue'
---
--- * 'dfDimensionName'
-dimensionFilter
-    :: DimensionFilter
-dimensionFilter =
-  DimensionFilter'
-    { _dfKind = "dfareporting#dimensionFilter"
-    , _dfValue = Nothing
-    , _dfDimensionName = Nothing
-    }
-
-
--- | The kind of resource this is, in this case dfareporting#dimensionFilter.
-dfKind :: Lens' DimensionFilter Text
-dfKind = lens _dfKind (\ s a -> s{_dfKind = a})
-
--- | The value of the dimension to filter.
-dfValue :: Lens' DimensionFilter (Maybe Text)
-dfValue = lens _dfValue (\ s a -> s{_dfValue = a})
-
--- | The name of the dimension to filter.
-dfDimensionName :: Lens' DimensionFilter (Maybe Text)
-dfDimensionName
-  = lens _dfDimensionName
-      (\ s a -> s{_dfDimensionName = a})
-
-instance FromJSON DimensionFilter where
-        parseJSON
-          = withObject "DimensionFilter"
-              (\ o ->
-                 DimensionFilter' <$>
-                   (o .:? "kind" .!= "dfareporting#dimensionFilter") <*>
-                     (o .:? "value")
-                     <*> (o .:? "dimensionName"))
-
-instance ToJSON DimensionFilter where
-        toJSON DimensionFilter'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _dfKind), ("value" .=) <$> _dfValue,
-                  ("dimensionName" .=) <$> _dfDimensionName])
-
--- | Represents the list of user profiles.
---
--- /See:/ 'userProFileList' smart constructor.
-data UserProFileList =
-  UserProFileList'
-    { _upflEtag  :: !(Maybe Text)
-    , _upflKind  :: !Text
-    , _upflItems :: !(Maybe [UserProFile])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserProFileList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'upflEtag'
---
--- * 'upflKind'
---
--- * 'upflItems'
-userProFileList
-    :: UserProFileList
-userProFileList =
-  UserProFileList'
-    { _upflEtag = Nothing
-    , _upflKind = "dfareporting#userProfileList"
-    , _upflItems = Nothing
-    }
-
-
--- | The eTag of this response for caching purposes.
-upflEtag :: Lens' UserProFileList (Maybe Text)
-upflEtag = lens _upflEtag (\ s a -> s{_upflEtag = a})
-
--- | The kind of list this is, in this case dfareporting#userProfileList.
-upflKind :: Lens' UserProFileList Text
-upflKind = lens _upflKind (\ s a -> s{_upflKind = a})
-
--- | The user profiles returned in this response.
-upflItems :: Lens' UserProFileList [UserProFile]
-upflItems
-  = lens _upflItems (\ s a -> s{_upflItems = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON UserProFileList where
-        parseJSON
-          = withObject "UserProFileList"
-              (\ o ->
-                 UserProFileList' <$>
-                   (o .:? "etag") <*>
-                     (o .:? "kind" .!= "dfareporting#userProfileList")
-                     <*> (o .:? "items" .!= mempty))
-
-instance ToJSON UserProFileList where
-        toJSON UserProFileList'{..}
-          = object
-              (catMaybes
-                 [("etag" .=) <$> _upflEtag,
-                  Just ("kind" .= _upflKind),
-                  ("items" .=) <$> _upflItems])
-
--- | Contains properties of a Floodlight configuration.
---
--- /See:/ 'floodlightConfiguration' smart constructor.
-data FloodlightConfiguration =
-  FloodlightConfiguration'
-    { _fcTagSettings                              :: !(Maybe TagSettings)
-    , _fcExposureToConversionEnabled              :: !(Maybe Bool)
-    , _fcInAppAttributionTrackingEnabled          :: !(Maybe Bool)
-    , _fcThirdPartyAuthenticationTokens           :: !(Maybe [ThirdPartyAuthenticationToken])
-    , _fcKind                                     :: !Text
-    , _fcAdvertiserId                             :: !(Maybe (Textual Int64))
-    , _fcAnalyticsDataSharingEnabled              :: !(Maybe Bool)
-    , _fcAdvertiserIdDimensionValue               :: !(Maybe DimensionValue)
-    , _fcIdDimensionValue                         :: !(Maybe DimensionValue)
-    , _fcLookbackConfiguration                    :: !(Maybe LookbackConfiguration)
-    , _fcAccountId                                :: !(Maybe (Textual Int64))
-    , _fcId                                       :: !(Maybe (Textual Int64))
-    , _fcNATuralSearchConversionAttributionOption :: !(Maybe FloodlightConfigurationNATuralSearchConversionAttributionOption)
-    , _fcUserDefinedVariableConfigurations        :: !(Maybe [UserDefinedVariableConfiguration])
-    , _fcSubAccountId                             :: !(Maybe (Textual Int64))
-    , _fcCustomViewabilityMetric                  :: !(Maybe CustomViewabilityMetric)
-    , _fcFirstDayOfWeek                           :: !(Maybe FloodlightConfigurationFirstDayOfWeek)
-    , _fcOmnitureSettings                         :: !(Maybe OmnitureSettings)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcTagSettings'
---
--- * 'fcExposureToConversionEnabled'
---
--- * 'fcInAppAttributionTrackingEnabled'
---
--- * 'fcThirdPartyAuthenticationTokens'
---
--- * 'fcKind'
---
--- * 'fcAdvertiserId'
---
--- * 'fcAnalyticsDataSharingEnabled'
---
--- * 'fcAdvertiserIdDimensionValue'
---
--- * 'fcIdDimensionValue'
---
--- * 'fcLookbackConfiguration'
---
--- * 'fcAccountId'
---
--- * 'fcId'
---
--- * 'fcNATuralSearchConversionAttributionOption'
---
--- * 'fcUserDefinedVariableConfigurations'
---
--- * 'fcSubAccountId'
---
--- * 'fcCustomViewabilityMetric'
---
--- * 'fcFirstDayOfWeek'
---
--- * 'fcOmnitureSettings'
-floodlightConfiguration
-    :: FloodlightConfiguration
-floodlightConfiguration =
-  FloodlightConfiguration'
-    { _fcTagSettings = Nothing
-    , _fcExposureToConversionEnabled = Nothing
-    , _fcInAppAttributionTrackingEnabled = Nothing
-    , _fcThirdPartyAuthenticationTokens = Nothing
-    , _fcKind = "dfareporting#floodlightConfiguration"
-    , _fcAdvertiserId = Nothing
-    , _fcAnalyticsDataSharingEnabled = Nothing
-    , _fcAdvertiserIdDimensionValue = Nothing
-    , _fcIdDimensionValue = Nothing
-    , _fcLookbackConfiguration = Nothing
-    , _fcAccountId = Nothing
-    , _fcId = Nothing
-    , _fcNATuralSearchConversionAttributionOption = Nothing
-    , _fcUserDefinedVariableConfigurations = Nothing
-    , _fcSubAccountId = Nothing
-    , _fcCustomViewabilityMetric = Nothing
-    , _fcFirstDayOfWeek = Nothing
-    , _fcOmnitureSettings = Nothing
-    }
-
-
--- | Configuration settings for dynamic and image floodlight tags.
-fcTagSettings :: Lens' FloodlightConfiguration (Maybe TagSettings)
-fcTagSettings
-  = lens _fcTagSettings
-      (\ s a -> s{_fcTagSettings = a})
-
--- | Whether the exposure-to-conversion report is enabled. This report shows
--- detailed pathway information on up to 10 of the most recent ad exposures
--- seen by a user before converting.
-fcExposureToConversionEnabled :: Lens' FloodlightConfiguration (Maybe Bool)
-fcExposureToConversionEnabled
-  = lens _fcExposureToConversionEnabled
-      (\ s a -> s{_fcExposureToConversionEnabled = a})
-
--- | Whether in-app attribution tracking is enabled.
-fcInAppAttributionTrackingEnabled :: Lens' FloodlightConfiguration (Maybe Bool)
-fcInAppAttributionTrackingEnabled
-  = lens _fcInAppAttributionTrackingEnabled
-      (\ s a -> s{_fcInAppAttributionTrackingEnabled = a})
-
--- | List of third-party authentication tokens enabled for this
--- configuration.
-fcThirdPartyAuthenticationTokens :: Lens' FloodlightConfiguration [ThirdPartyAuthenticationToken]
-fcThirdPartyAuthenticationTokens
-  = lens _fcThirdPartyAuthenticationTokens
-      (\ s a -> s{_fcThirdPartyAuthenticationTokens = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightConfiguration\".
-fcKind :: Lens' FloodlightConfiguration Text
-fcKind = lens _fcKind (\ s a -> s{_fcKind = a})
-
--- | Advertiser ID of the parent advertiser of this floodlight configuration.
-fcAdvertiserId :: Lens' FloodlightConfiguration (Maybe Int64)
-fcAdvertiserId
-  = lens _fcAdvertiserId
-      (\ s a -> s{_fcAdvertiserId = a})
-      . mapping _Coerce
-
--- | Whether advertiser data is shared with Google Analytics.
-fcAnalyticsDataSharingEnabled :: Lens' FloodlightConfiguration (Maybe Bool)
-fcAnalyticsDataSharingEnabled
-  = lens _fcAnalyticsDataSharingEnabled
-      (\ s a -> s{_fcAnalyticsDataSharingEnabled = a})
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-fcAdvertiserIdDimensionValue :: Lens' FloodlightConfiguration (Maybe DimensionValue)
-fcAdvertiserIdDimensionValue
-  = lens _fcAdvertiserIdDimensionValue
-      (\ s a -> s{_fcAdvertiserIdDimensionValue = a})
-
--- | Dimension value for the ID of this floodlight configuration. This is a
--- read-only, auto-generated field.
-fcIdDimensionValue :: Lens' FloodlightConfiguration (Maybe DimensionValue)
-fcIdDimensionValue
-  = lens _fcIdDimensionValue
-      (\ s a -> s{_fcIdDimensionValue = a})
-
--- | Lookback window settings for this floodlight configuration.
-fcLookbackConfiguration :: Lens' FloodlightConfiguration (Maybe LookbackConfiguration)
-fcLookbackConfiguration
-  = lens _fcLookbackConfiguration
-      (\ s a -> s{_fcLookbackConfiguration = a})
-
--- | Account ID of this floodlight configuration. This is a read-only field
--- that can be left blank.
-fcAccountId :: Lens' FloodlightConfiguration (Maybe Int64)
-fcAccountId
-  = lens _fcAccountId (\ s a -> s{_fcAccountId = a}) .
-      mapping _Coerce
-
--- | ID of this floodlight configuration. This is a read-only, auto-generated
--- field.
-fcId :: Lens' FloodlightConfiguration (Maybe Int64)
-fcId
-  = lens _fcId (\ s a -> s{_fcId = a}) .
-      mapping _Coerce
-
--- | Types of attribution options for natural search conversions.
-fcNATuralSearchConversionAttributionOption :: Lens' FloodlightConfiguration (Maybe FloodlightConfigurationNATuralSearchConversionAttributionOption)
-fcNATuralSearchConversionAttributionOption
-  = lens _fcNATuralSearchConversionAttributionOption
-      (\ s a ->
-         s{_fcNATuralSearchConversionAttributionOption = a})
-
--- | List of user defined variables enabled for this configuration.
-fcUserDefinedVariableConfigurations :: Lens' FloodlightConfiguration [UserDefinedVariableConfiguration]
-fcUserDefinedVariableConfigurations
-  = lens _fcUserDefinedVariableConfigurations
-      (\ s a ->
-         s{_fcUserDefinedVariableConfigurations = a})
-      . _Default
-      . _Coerce
-
--- | Subaccount ID of this floodlight configuration. This is a read-only
--- field that can be left blank.
-fcSubAccountId :: Lens' FloodlightConfiguration (Maybe Int64)
-fcSubAccountId
-  = lens _fcSubAccountId
-      (\ s a -> s{_fcSubAccountId = a})
-      . mapping _Coerce
-
--- | Custom Viewability metric for the floodlight configuration.
-fcCustomViewabilityMetric :: Lens' FloodlightConfiguration (Maybe CustomViewabilityMetric)
-fcCustomViewabilityMetric
-  = lens _fcCustomViewabilityMetric
-      (\ s a -> s{_fcCustomViewabilityMetric = a})
-
--- | Day that will be counted as the first day of the week in reports. This
--- is a required field.
-fcFirstDayOfWeek :: Lens' FloodlightConfiguration (Maybe FloodlightConfigurationFirstDayOfWeek)
-fcFirstDayOfWeek
-  = lens _fcFirstDayOfWeek
-      (\ s a -> s{_fcFirstDayOfWeek = a})
-
--- | Settings for Campaign Manager Omniture integration.
-fcOmnitureSettings :: Lens' FloodlightConfiguration (Maybe OmnitureSettings)
-fcOmnitureSettings
-  = lens _fcOmnitureSettings
-      (\ s a -> s{_fcOmnitureSettings = a})
-
-instance FromJSON FloodlightConfiguration where
-        parseJSON
-          = withObject "FloodlightConfiguration"
-              (\ o ->
-                 FloodlightConfiguration' <$>
-                   (o .:? "tagSettings") <*>
-                     (o .:? "exposureToConversionEnabled")
-                     <*> (o .:? "inAppAttributionTrackingEnabled")
-                     <*>
-                     (o .:? "thirdPartyAuthenticationTokens" .!= mempty)
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightConfiguration")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "analyticsDataSharingEnabled")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "lookbackConfiguration")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "id")
-                     <*>
-                     (o .:? "naturalSearchConversionAttributionOption")
-                     <*>
-                     (o .:? "userDefinedVariableConfigurations" .!=
-                        mempty)
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "customViewabilityMetric")
-                     <*> (o .:? "firstDayOfWeek")
-                     <*> (o .:? "omnitureSettings"))
-
-instance ToJSON FloodlightConfiguration where
-        toJSON FloodlightConfiguration'{..}
-          = object
-              (catMaybes
-                 [("tagSettings" .=) <$> _fcTagSettings,
-                  ("exposureToConversionEnabled" .=) <$>
-                    _fcExposureToConversionEnabled,
-                  ("inAppAttributionTrackingEnabled" .=) <$>
-                    _fcInAppAttributionTrackingEnabled,
-                  ("thirdPartyAuthenticationTokens" .=) <$>
-                    _fcThirdPartyAuthenticationTokens,
-                  Just ("kind" .= _fcKind),
-                  ("advertiserId" .=) <$> _fcAdvertiserId,
-                  ("analyticsDataSharingEnabled" .=) <$>
-                    _fcAnalyticsDataSharingEnabled,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _fcAdvertiserIdDimensionValue,
-                  ("idDimensionValue" .=) <$> _fcIdDimensionValue,
-                  ("lookbackConfiguration" .=) <$>
-                    _fcLookbackConfiguration,
-                  ("accountId" .=) <$> _fcAccountId,
-                  ("id" .=) <$> _fcId,
-                  ("naturalSearchConversionAttributionOption" .=) <$>
-                    _fcNATuralSearchConversionAttributionOption,
-                  ("userDefinedVariableConfigurations" .=) <$>
-                    _fcUserDefinedVariableConfigurations,
-                  ("subaccountId" .=) <$> _fcSubAccountId,
-                  ("customViewabilityMetric" .=) <$>
-                    _fcCustomViewabilityMetric,
-                  ("firstDayOfWeek" .=) <$> _fcFirstDayOfWeek,
-                  ("omnitureSettings" .=) <$> _fcOmnitureSettings])
-
--- | Companion Settings
---
--- /See:/ 'companionSetting' smart constructor.
-data CompanionSetting =
-  CompanionSetting'
-    { _comKind               :: !Text
-    , _comImageOnly          :: !(Maybe Bool)
-    , _comCompanionsDisabled :: !(Maybe Bool)
-    , _comEnabledSizes       :: !(Maybe [Size])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CompanionSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'comKind'
---
--- * 'comImageOnly'
---
--- * 'comCompanionsDisabled'
---
--- * 'comEnabledSizes'
-companionSetting
-    :: CompanionSetting
-companionSetting =
-  CompanionSetting'
-    { _comKind = "dfareporting#companionSetting"
-    , _comImageOnly = Nothing
-    , _comCompanionsDisabled = Nothing
-    , _comEnabledSizes = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#companionSetting\".
-comKind :: Lens' CompanionSetting Text
-comKind = lens _comKind (\ s a -> s{_comKind = a})
-
--- | Whether to serve only static images as companions.
-comImageOnly :: Lens' CompanionSetting (Maybe Bool)
-comImageOnly
-  = lens _comImageOnly (\ s a -> s{_comImageOnly = a})
-
--- | Whether companions are disabled for this placement.
-comCompanionsDisabled :: Lens' CompanionSetting (Maybe Bool)
-comCompanionsDisabled
-  = lens _comCompanionsDisabled
-      (\ s a -> s{_comCompanionsDisabled = a})
-
--- | Whitelist of companion sizes to be served to this placement. Set this
--- list to null or empty to serve all companion sizes.
-comEnabledSizes :: Lens' CompanionSetting [Size]
-comEnabledSizes
-  = lens _comEnabledSizes
-      (\ s a -> s{_comEnabledSizes = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CompanionSetting where
-        parseJSON
-          = withObject "CompanionSetting"
-              (\ o ->
-                 CompanionSetting' <$>
-                   (o .:? "kind" .!= "dfareporting#companionSetting")
-                     <*> (o .:? "imageOnly")
-                     <*> (o .:? "companionsDisabled")
-                     <*> (o .:? "enabledSizes" .!= mempty))
-
-instance ToJSON CompanionSetting where
-        toJSON CompanionSetting'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _comKind),
-                  ("imageOnly" .=) <$> _comImageOnly,
-                  ("companionsDisabled" .=) <$> _comCompanionsDisabled,
-                  ("enabledSizes" .=) <$> _comEnabledSizes])
-
--- | Floodlight Activity Group List Response
---
--- /See:/ 'floodlightActivityGroupsListResponse' smart constructor.
-data FloodlightActivityGroupsListResponse =
-  FloodlightActivityGroupsListResponse'
-    { _faglrNextPageToken            :: !(Maybe Text)
-    , _faglrKind                     :: !Text
-    , _faglrFloodlightActivityGroups :: !(Maybe [FloodlightActivityGroup])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faglrNextPageToken'
---
--- * 'faglrKind'
---
--- * 'faglrFloodlightActivityGroups'
-floodlightActivityGroupsListResponse
-    :: FloodlightActivityGroupsListResponse
-floodlightActivityGroupsListResponse =
-  FloodlightActivityGroupsListResponse'
-    { _faglrNextPageToken = Nothing
-    , _faglrKind = "dfareporting#floodlightActivityGroupsListResponse"
-    , _faglrFloodlightActivityGroups = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-faglrNextPageToken :: Lens' FloodlightActivityGroupsListResponse (Maybe Text)
-faglrNextPageToken
-  = lens _faglrNextPageToken
-      (\ s a -> s{_faglrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightActivityGroupsListResponse\".
-faglrKind :: Lens' FloodlightActivityGroupsListResponse Text
-faglrKind
-  = lens _faglrKind (\ s a -> s{_faglrKind = a})
-
--- | Floodlight activity group collection.
-faglrFloodlightActivityGroups :: Lens' FloodlightActivityGroupsListResponse [FloodlightActivityGroup]
-faglrFloodlightActivityGroups
-  = lens _faglrFloodlightActivityGroups
-      (\ s a -> s{_faglrFloodlightActivityGroups = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON
-           FloodlightActivityGroupsListResponse
-         where
-        parseJSON
-          = withObject "FloodlightActivityGroupsListResponse"
-              (\ o ->
-                 FloodlightActivityGroupsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightActivityGroupsListResponse")
-                     <*> (o .:? "floodlightActivityGroups" .!= mempty))
-
-instance ToJSON FloodlightActivityGroupsListResponse
-         where
-        toJSON FloodlightActivityGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _faglrNextPageToken,
-                  Just ("kind" .= _faglrKind),
-                  ("floodlightActivityGroups" .=) <$>
-                    _faglrFloodlightActivityGroups])
-
--- | A Conversion represents when a user successfully performs a desired
--- action after seeing an ad.
---
--- /See:/ 'conversion' smart constructor.
-data Conversion =
-  Conversion'
-    { _conoTreatmentForUnderage      :: !(Maybe Bool)
-    , _conoEncryptedUserIdCandidates :: !(Maybe [Text])
-    , _conoTimestampMicros           :: !(Maybe (Textual Int64))
-    , _conoLimitAdTracking           :: !(Maybe Bool)
-    , _conoEncryptedUserId           :: !(Maybe Text)
-    , _conoMobileDeviceId            :: !(Maybe Text)
-    , _conoFloodlightConfigurationId :: !(Maybe (Textual Int64))
-    , _conoKind                      :: !Text
-    , _conoFloodlightActivityId      :: !(Maybe (Textual Int64))
-    , _conoNonPersonalizedAd         :: !(Maybe Bool)
-    , _conoQuantity                  :: !(Maybe (Textual Int64))
-    , _conoValue                     :: !(Maybe (Textual Double))
-    , _conoCustomVariables           :: !(Maybe [CustomFloodlightVariable])
-    , _conoChildDirectedTreatment    :: !(Maybe Bool)
-    , _conoGclid                     :: !(Maybe Text)
-    , _conoOrdinal                   :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Conversion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'conoTreatmentForUnderage'
---
--- * 'conoEncryptedUserIdCandidates'
---
--- * 'conoTimestampMicros'
---
--- * 'conoLimitAdTracking'
---
--- * 'conoEncryptedUserId'
---
--- * 'conoMobileDeviceId'
---
--- * 'conoFloodlightConfigurationId'
---
--- * 'conoKind'
---
--- * 'conoFloodlightActivityId'
---
--- * 'conoNonPersonalizedAd'
---
--- * 'conoQuantity'
---
--- * 'conoValue'
---
--- * 'conoCustomVariables'
---
--- * 'conoChildDirectedTreatment'
---
--- * 'conoGclid'
---
--- * 'conoOrdinal'
-conversion
-    :: Conversion
-conversion =
-  Conversion'
-    { _conoTreatmentForUnderage = Nothing
-    , _conoEncryptedUserIdCandidates = Nothing
-    , _conoTimestampMicros = Nothing
-    , _conoLimitAdTracking = Nothing
-    , _conoEncryptedUserId = Nothing
-    , _conoMobileDeviceId = Nothing
-    , _conoFloodlightConfigurationId = Nothing
-    , _conoKind = "dfareporting#conversion"
-    , _conoFloodlightActivityId = Nothing
-    , _conoNonPersonalizedAd = Nothing
-    , _conoQuantity = Nothing
-    , _conoValue = Nothing
-    , _conoCustomVariables = Nothing
-    , _conoChildDirectedTreatment = Nothing
-    , _conoGclid = Nothing
-    , _conoOrdinal = Nothing
-    }
-
-
--- | Whether this particular request may come from a user under the age of 16
--- (may differ by country), under compliance with the European Union\'s
--- General Data Protection Regulation (GDPR).
-conoTreatmentForUnderage :: Lens' Conversion (Maybe Bool)
-conoTreatmentForUnderage
-  = lens _conoTreatmentForUnderage
-      (\ s a -> s{_conoTreatmentForUnderage = a})
-
--- | A list of the alphanumeric encrypted user IDs. Any user ID with exposure
--- prior to the conversion timestamp will be used in the inserted
--- conversion. If no such user ID is found then the conversion will be
--- rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo
--- should also be specified. This field may only be used when calling
--- batchinsert; it is not supported by batchupdate. This field is mutually
--- exclusive with encryptedUserId, mobileDeviceId and gclid. This or
--- encryptedUserId or mobileDeviceId or gclid is a required field.
-conoEncryptedUserIdCandidates :: Lens' Conversion [Text]
-conoEncryptedUserIdCandidates
-  = lens _conoEncryptedUserIdCandidates
-      (\ s a -> s{_conoEncryptedUserIdCandidates = a})
-      . _Default
-      . _Coerce
-
--- | The timestamp of conversion, in Unix epoch micros. This is a required
--- field.
-conoTimestampMicros :: Lens' Conversion (Maybe Int64)
-conoTimestampMicros
-  = lens _conoTimestampMicros
-      (\ s a -> s{_conoTimestampMicros = a})
-      . mapping _Coerce
-
--- | Whether Limit Ad Tracking is enabled. When set to true, the conversion
--- will be used for reporting but not targeting. This will prevent
--- remarketing.
-conoLimitAdTracking :: Lens' Conversion (Maybe Bool)
-conoLimitAdTracking
-  = lens _conoLimitAdTracking
-      (\ s a -> s{_conoLimitAdTracking = a})
-
--- | The alphanumeric encrypted user ID. When set, encryptionInfo should also
--- be specified. This field is mutually exclusive with
--- encryptedUserIdCandidates[], mobileDeviceId and gclid. This or
--- encryptedUserIdCandidates[] or mobileDeviceId or gclid is a required
--- field.
-conoEncryptedUserId :: Lens' Conversion (Maybe Text)
-conoEncryptedUserId
-  = lens _conoEncryptedUserId
-      (\ s a -> s{_conoEncryptedUserId = a})
-
--- | The mobile device ID. This field is mutually exclusive with
--- encryptedUserId, encryptedUserIdCandidates[] and gclid. This or
--- encryptedUserId or encryptedUserIdCandidates[] or gclid is a required
--- field.
-conoMobileDeviceId :: Lens' Conversion (Maybe Text)
-conoMobileDeviceId
-  = lens _conoMobileDeviceId
-      (\ s a -> s{_conoMobileDeviceId = a})
-
--- | Floodlight Configuration ID of this conversion. This is a required
--- field.
-conoFloodlightConfigurationId :: Lens' Conversion (Maybe Int64)
-conoFloodlightConfigurationId
-  = lens _conoFloodlightConfigurationId
-      (\ s a -> s{_conoFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversion\".
-conoKind :: Lens' Conversion Text
-conoKind = lens _conoKind (\ s a -> s{_conoKind = a})
-
--- | Floodlight Activity ID of this conversion. This is a required field.
-conoFloodlightActivityId :: Lens' Conversion (Maybe Int64)
-conoFloodlightActivityId
-  = lens _conoFloodlightActivityId
-      (\ s a -> s{_conoFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | Whether the conversion was for a non personalized ad.
-conoNonPersonalizedAd :: Lens' Conversion (Maybe Bool)
-conoNonPersonalizedAd
-  = lens _conoNonPersonalizedAd
-      (\ s a -> s{_conoNonPersonalizedAd = a})
-
--- | The quantity of the conversion.
-conoQuantity :: Lens' Conversion (Maybe Int64)
-conoQuantity
-  = lens _conoQuantity (\ s a -> s{_conoQuantity = a})
-      . mapping _Coerce
-
--- | The value of the conversion.
-conoValue :: Lens' Conversion (Maybe Double)
-conoValue
-  = lens _conoValue (\ s a -> s{_conoValue = a}) .
-      mapping _Coerce
-
--- | Custom floodlight variables.
-conoCustomVariables :: Lens' Conversion [CustomFloodlightVariable]
-conoCustomVariables
-  = lens _conoCustomVariables
-      (\ s a -> s{_conoCustomVariables = a})
-      . _Default
-      . _Coerce
-
--- | Whether this particular request may come from a user under the age of
--- 13, under COPPA compliance.
-conoChildDirectedTreatment :: Lens' Conversion (Maybe Bool)
-conoChildDirectedTreatment
-  = lens _conoChildDirectedTreatment
-      (\ s a -> s{_conoChildDirectedTreatment = a})
-
--- | The Google click ID. This field is mutually exclusive with
--- encryptedUserId, encryptedUserIdCandidates[] and mobileDeviceId. This or
--- encryptedUserId or encryptedUserIdCandidates[] or mobileDeviceId is a
--- required field.
-conoGclid :: Lens' Conversion (Maybe Text)
-conoGclid
-  = lens _conoGclid (\ s a -> s{_conoGclid = a})
-
--- | The ordinal of the conversion. Use this field to control how conversions
--- of the same user and day are de-duplicated. This is a required field.
-conoOrdinal :: Lens' Conversion (Maybe Text)
-conoOrdinal
-  = lens _conoOrdinal (\ s a -> s{_conoOrdinal = a})
-
-instance FromJSON Conversion where
-        parseJSON
-          = withObject "Conversion"
-              (\ o ->
-                 Conversion' <$>
-                   (o .:? "treatmentForUnderage") <*>
-                     (o .:? "encryptedUserIdCandidates" .!= mempty)
-                     <*> (o .:? "timestampMicros")
-                     <*> (o .:? "limitAdTracking")
-                     <*> (o .:? "encryptedUserId")
-                     <*> (o .:? "mobileDeviceId")
-                     <*> (o .:? "floodlightConfigurationId")
-                     <*> (o .:? "kind" .!= "dfareporting#conversion")
-                     <*> (o .:? "floodlightActivityId")
-                     <*> (o .:? "nonPersonalizedAd")
-                     <*> (o .:? "quantity")
-                     <*> (o .:? "value")
-                     <*> (o .:? "customVariables" .!= mempty)
-                     <*> (o .:? "childDirectedTreatment")
-                     <*> (o .:? "gclid")
-                     <*> (o .:? "ordinal"))
-
-instance ToJSON Conversion where
-        toJSON Conversion'{..}
-          = object
-              (catMaybes
-                 [("treatmentForUnderage" .=) <$>
-                    _conoTreatmentForUnderage,
-                  ("encryptedUserIdCandidates" .=) <$>
-                    _conoEncryptedUserIdCandidates,
-                  ("timestampMicros" .=) <$> _conoTimestampMicros,
-                  ("limitAdTracking" .=) <$> _conoLimitAdTracking,
-                  ("encryptedUserId" .=) <$> _conoEncryptedUserId,
-                  ("mobileDeviceId" .=) <$> _conoMobileDeviceId,
-                  ("floodlightConfigurationId" .=) <$>
-                    _conoFloodlightConfigurationId,
-                  Just ("kind" .= _conoKind),
-                  ("floodlightActivityId" .=) <$>
-                    _conoFloodlightActivityId,
-                  ("nonPersonalizedAd" .=) <$> _conoNonPersonalizedAd,
-                  ("quantity" .=) <$> _conoQuantity,
-                  ("value" .=) <$> _conoValue,
-                  ("customVariables" .=) <$> _conoCustomVariables,
-                  ("childDirectedTreatment" .=) <$>
-                    _conoChildDirectedTreatment,
-                  ("gclid" .=) <$> _conoGclid,
-                  ("ordinal" .=) <$> _conoOrdinal])
-
--- | Creative Field Value List Response
---
--- /See:/ 'creativeFieldValuesListResponse' smart constructor.
-data CreativeFieldValuesListResponse =
-  CreativeFieldValuesListResponse'
-    { _cfvlrNextPageToken       :: !(Maybe Text)
-    , _cfvlrKind                :: !Text
-    , _cfvlrCreativeFieldValues :: !(Maybe [CreativeFieldValue])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvlrNextPageToken'
---
--- * 'cfvlrKind'
---
--- * 'cfvlrCreativeFieldValues'
-creativeFieldValuesListResponse
-    :: CreativeFieldValuesListResponse
-creativeFieldValuesListResponse =
-  CreativeFieldValuesListResponse'
-    { _cfvlrNextPageToken = Nothing
-    , _cfvlrKind = "dfareporting#creativeFieldValuesListResponse"
-    , _cfvlrCreativeFieldValues = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-cfvlrNextPageToken :: Lens' CreativeFieldValuesListResponse (Maybe Text)
-cfvlrNextPageToken
-  = lens _cfvlrNextPageToken
-      (\ s a -> s{_cfvlrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeFieldValuesListResponse\".
-cfvlrKind :: Lens' CreativeFieldValuesListResponse Text
-cfvlrKind
-  = lens _cfvlrKind (\ s a -> s{_cfvlrKind = a})
-
--- | Creative field value collection.
-cfvlrCreativeFieldValues :: Lens' CreativeFieldValuesListResponse [CreativeFieldValue]
-cfvlrCreativeFieldValues
-  = lens _cfvlrCreativeFieldValues
-      (\ s a -> s{_cfvlrCreativeFieldValues = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CreativeFieldValuesListResponse
-         where
-        parseJSON
-          = withObject "CreativeFieldValuesListResponse"
-              (\ o ->
-                 CreativeFieldValuesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#creativeFieldValuesListResponse")
-                     <*> (o .:? "creativeFieldValues" .!= mempty))
-
-instance ToJSON CreativeFieldValuesListResponse where
-        toJSON CreativeFieldValuesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _cfvlrNextPageToken,
-                  Just ("kind" .= _cfvlrKind),
-                  ("creativeFieldValues" .=) <$>
-                    _cfvlrCreativeFieldValues])
-
--- | Rich Media Exit Override.
---
--- /See:/ 'richMediaExitOverride' smart constructor.
-data RichMediaExitOverride =
-  RichMediaExitOverride'
-    { _rmeoEnabled         :: !(Maybe Bool)
-    , _rmeoClickThroughURL :: !(Maybe ClickThroughURL)
-    , _rmeoExitId          :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RichMediaExitOverride' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rmeoEnabled'
---
--- * 'rmeoClickThroughURL'
---
--- * 'rmeoExitId'
-richMediaExitOverride
-    :: RichMediaExitOverride
-richMediaExitOverride =
-  RichMediaExitOverride'
-    { _rmeoEnabled = Nothing
-    , _rmeoClickThroughURL = Nothing
-    , _rmeoExitId = Nothing
-    }
-
-
--- | Whether to use the clickThroughUrl. If false, the creative-level exit
--- will be used.
-rmeoEnabled :: Lens' RichMediaExitOverride (Maybe Bool)
-rmeoEnabled
-  = lens _rmeoEnabled (\ s a -> s{_rmeoEnabled = a})
-
--- | Click-through URL of this rich media exit override. Applicable if the
--- enabled field is set to true.
-rmeoClickThroughURL :: Lens' RichMediaExitOverride (Maybe ClickThroughURL)
-rmeoClickThroughURL
-  = lens _rmeoClickThroughURL
-      (\ s a -> s{_rmeoClickThroughURL = a})
-
--- | ID for the override to refer to a specific exit in the creative.
-rmeoExitId :: Lens' RichMediaExitOverride (Maybe Int64)
-rmeoExitId
-  = lens _rmeoExitId (\ s a -> s{_rmeoExitId = a}) .
-      mapping _Coerce
-
-instance FromJSON RichMediaExitOverride where
-        parseJSON
-          = withObject "RichMediaExitOverride"
-              (\ o ->
-                 RichMediaExitOverride' <$>
-                   (o .:? "enabled") <*> (o .:? "clickThroughUrl") <*>
-                     (o .:? "exitId"))
-
-instance ToJSON RichMediaExitOverride where
-        toJSON RichMediaExitOverride'{..}
-          = object
-              (catMaybes
-                 [("enabled" .=) <$> _rmeoEnabled,
-                  ("clickThroughUrl" .=) <$> _rmeoClickThroughURL,
-                  ("exitId" .=) <$> _rmeoExitId])
-
--- | Custom Viewability Metric
---
--- /See:/ 'customViewabilityMetric' smart constructor.
-data CustomViewabilityMetric =
-  CustomViewabilityMetric'
-    { _cvmName          :: !(Maybe Text)
-    , _cvmId            :: !(Maybe (Textual Int64))
-    , _cvmConfiguration :: !(Maybe CustomViewabilityMetricConfiguration)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CustomViewabilityMetric' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cvmName'
---
--- * 'cvmId'
---
--- * 'cvmConfiguration'
-customViewabilityMetric
-    :: CustomViewabilityMetric
-customViewabilityMetric =
-  CustomViewabilityMetric'
-    {_cvmName = Nothing, _cvmId = Nothing, _cvmConfiguration = Nothing}
-
-
--- | Name of the custom viewability metric.
-cvmName :: Lens' CustomViewabilityMetric (Maybe Text)
-cvmName = lens _cvmName (\ s a -> s{_cvmName = a})
-
--- | ID of the custom viewability metric.
-cvmId :: Lens' CustomViewabilityMetric (Maybe Int64)
-cvmId
-  = lens _cvmId (\ s a -> s{_cvmId = a}) .
-      mapping _Coerce
-
--- | Configuration of the custom viewability metric.
-cvmConfiguration :: Lens' CustomViewabilityMetric (Maybe CustomViewabilityMetricConfiguration)
-cvmConfiguration
-  = lens _cvmConfiguration
-      (\ s a -> s{_cvmConfiguration = a})
-
-instance FromJSON CustomViewabilityMetric where
-        parseJSON
-          = withObject "CustomViewabilityMetric"
-              (\ o ->
-                 CustomViewabilityMetric' <$>
-                   (o .:? "name") <*> (o .:? "id") <*>
-                     (o .:? "configuration"))
-
-instance ToJSON CustomViewabilityMetric where
-        toJSON CustomViewabilityMetric'{..}
-          = object
-              (catMaybes
-                 [("name" .=) <$> _cvmName, ("id" .=) <$> _cvmId,
-                  ("configuration" .=) <$> _cvmConfiguration])
-
--- | Landing Page List Response
---
--- /See:/ 'advertiserLandingPagesListResponse' smart constructor.
-data AdvertiserLandingPagesListResponse =
-  AdvertiserLandingPagesListResponse'
-    { _alplrLandingPages  :: !(Maybe [LandingPage])
-    , _alplrNextPageToken :: !(Maybe Text)
-    , _alplrKind          :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alplrLandingPages'
---
--- * 'alplrNextPageToken'
---
--- * 'alplrKind'
-advertiserLandingPagesListResponse
-    :: AdvertiserLandingPagesListResponse
-advertiserLandingPagesListResponse =
-  AdvertiserLandingPagesListResponse'
-    { _alplrLandingPages = Nothing
-    , _alplrNextPageToken = Nothing
-    , _alplrKind = "dfareporting#advertiserLandingPagesListResponse"
-    }
-
-
--- | Landing page collection
-alplrLandingPages :: Lens' AdvertiserLandingPagesListResponse [LandingPage]
-alplrLandingPages
-  = lens _alplrLandingPages
-      (\ s a -> s{_alplrLandingPages = a})
-      . _Default
-      . _Coerce
-
--- | Pagination token to be used for the next list operation.
-alplrNextPageToken :: Lens' AdvertiserLandingPagesListResponse (Maybe Text)
-alplrNextPageToken
-  = lens _alplrNextPageToken
-      (\ s a -> s{_alplrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#advertiserLandingPagesListResponse\".
-alplrKind :: Lens' AdvertiserLandingPagesListResponse Text
-alplrKind
-  = lens _alplrKind (\ s a -> s{_alplrKind = a})
-
-instance FromJSON AdvertiserLandingPagesListResponse
-         where
-        parseJSON
-          = withObject "AdvertiserLandingPagesListResponse"
-              (\ o ->
-                 AdvertiserLandingPagesListResponse' <$>
-                   (o .:? "landingPages" .!= mempty) <*>
-                     (o .:? "nextPageToken")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#advertiserLandingPagesListResponse"))
-
-instance ToJSON AdvertiserLandingPagesListResponse
-         where
-        toJSON AdvertiserLandingPagesListResponse'{..}
-          = object
-              (catMaybes
-                 [("landingPages" .=) <$> _alplrLandingPages,
-                  ("nextPageToken" .=) <$> _alplrNextPageToken,
-                  Just ("kind" .= _alplrKind)])
-
--- | Mobile app List Response
---
--- /See:/ 'mobileAppsListResponse' smart constructor.
-data MobileAppsListResponse =
-  MobileAppsListResponse'
-    { _malrNextPageToken :: !(Maybe Text)
-    , _malrKind          :: !Text
-    , _malrMobileApps    :: !(Maybe [MobileApp])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileAppsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'malrNextPageToken'
---
--- * 'malrKind'
---
--- * 'malrMobileApps'
-mobileAppsListResponse
-    :: MobileAppsListResponse
-mobileAppsListResponse =
-  MobileAppsListResponse'
-    { _malrNextPageToken = Nothing
-    , _malrKind = "dfareporting#mobileAppsListResponse"
-    , _malrMobileApps = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-malrNextPageToken :: Lens' MobileAppsListResponse (Maybe Text)
-malrNextPageToken
-  = lens _malrNextPageToken
-      (\ s a -> s{_malrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#mobileAppsListResponse\".
-malrKind :: Lens' MobileAppsListResponse Text
-malrKind = lens _malrKind (\ s a -> s{_malrKind = a})
-
--- | Mobile apps collection.
-malrMobileApps :: Lens' MobileAppsListResponse [MobileApp]
-malrMobileApps
-  = lens _malrMobileApps
-      (\ s a -> s{_malrMobileApps = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON MobileAppsListResponse where
-        parseJSON
-          = withObject "MobileAppsListResponse"
-              (\ o ->
-                 MobileAppsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#mobileAppsListResponse")
-                     <*> (o .:? "mobileApps" .!= mempty))
-
-instance ToJSON MobileAppsListResponse where
-        toJSON MobileAppsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _malrNextPageToken,
-                  Just ("kind" .= _malrKind),
-                  ("mobileApps" .=) <$> _malrMobileApps])
-
--- | Represents a sorted dimension.
---
--- /See:/ 'sortedDimension' smart constructor.
-data SortedDimension =
-  SortedDimension'
-    { _sdKind      :: !Text
-    , _sdSortOrder :: !(Maybe SortedDimensionSortOrder)
-    , _sdName      :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SortedDimension' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sdKind'
---
--- * 'sdSortOrder'
---
--- * 'sdName'
-sortedDimension
-    :: SortedDimension
-sortedDimension =
-  SortedDimension'
-    { _sdKind = "dfareporting#sortedDimension"
-    , _sdSortOrder = Nothing
-    , _sdName = Nothing
-    }
-
-
--- | The kind of resource this is, in this case dfareporting#sortedDimension.
-sdKind :: Lens' SortedDimension Text
-sdKind = lens _sdKind (\ s a -> s{_sdKind = a})
-
--- | An optional sort order for the dimension column.
-sdSortOrder :: Lens' SortedDimension (Maybe SortedDimensionSortOrder)
-sdSortOrder
-  = lens _sdSortOrder (\ s a -> s{_sdSortOrder = a})
-
--- | The name of the dimension.
-sdName :: Lens' SortedDimension (Maybe Text)
-sdName = lens _sdName (\ s a -> s{_sdName = a})
-
-instance FromJSON SortedDimension where
-        parseJSON
-          = withObject "SortedDimension"
-              (\ o ->
-                 SortedDimension' <$>
-                   (o .:? "kind" .!= "dfareporting#sortedDimension") <*>
-                     (o .:? "sortOrder")
-                     <*> (o .:? "name"))
-
-instance ToJSON SortedDimension where
-        toJSON SortedDimension'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _sdKind),
-                  ("sortOrder" .=) <$> _sdSortOrder,
-                  ("name" .=) <$> _sdName])
-
--- | Creative Field List Response
---
--- /See:/ 'creativeFieldsListResponse' smart constructor.
-data CreativeFieldsListResponse =
-  CreativeFieldsListResponse'
-    { _cflrNextPageToken  :: !(Maybe Text)
-    , _cflrKind           :: !Text
-    , _cflrCreativeFields :: !(Maybe [CreativeField])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cflrNextPageToken'
---
--- * 'cflrKind'
---
--- * 'cflrCreativeFields'
-creativeFieldsListResponse
-    :: CreativeFieldsListResponse
-creativeFieldsListResponse =
-  CreativeFieldsListResponse'
-    { _cflrNextPageToken = Nothing
-    , _cflrKind = "dfareporting#creativeFieldsListResponse"
-    , _cflrCreativeFields = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-cflrNextPageToken :: Lens' CreativeFieldsListResponse (Maybe Text)
-cflrNextPageToken
-  = lens _cflrNextPageToken
-      (\ s a -> s{_cflrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeFieldsListResponse\".
-cflrKind :: Lens' CreativeFieldsListResponse Text
-cflrKind = lens _cflrKind (\ s a -> s{_cflrKind = a})
-
--- | Creative field collection.
-cflrCreativeFields :: Lens' CreativeFieldsListResponse [CreativeField]
-cflrCreativeFields
-  = lens _cflrCreativeFields
-      (\ s a -> s{_cflrCreativeFields = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CreativeFieldsListResponse where
-        parseJSON
-          = withObject "CreativeFieldsListResponse"
-              (\ o ->
-                 CreativeFieldsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#creativeFieldsListResponse")
-                     <*> (o .:? "creativeFields" .!= mempty))
-
-instance ToJSON CreativeFieldsListResponse where
-        toJSON CreativeFieldsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _cflrNextPageToken,
-                  Just ("kind" .= _cflrKind),
-                  ("creativeFields" .=) <$> _cflrCreativeFields])
-
--- | Targeting Template List Response
---
--- /See:/ 'targetingTemplatesListResponse' smart constructor.
-data TargetingTemplatesListResponse =
-  TargetingTemplatesListResponse'
-    { _ttlrNextPageToken      :: !(Maybe Text)
-    , _ttlrKind               :: !Text
-    , _ttlrTargetingTemplates :: !(Maybe [TargetingTemplate])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttlrNextPageToken'
---
--- * 'ttlrKind'
---
--- * 'ttlrTargetingTemplates'
-targetingTemplatesListResponse
-    :: TargetingTemplatesListResponse
-targetingTemplatesListResponse =
-  TargetingTemplatesListResponse'
-    { _ttlrNextPageToken = Nothing
-    , _ttlrKind = "dfareporting#targetingTemplatesListResponse"
-    , _ttlrTargetingTemplates = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-ttlrNextPageToken :: Lens' TargetingTemplatesListResponse (Maybe Text)
-ttlrNextPageToken
-  = lens _ttlrNextPageToken
-      (\ s a -> s{_ttlrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#targetingTemplatesListResponse\".
-ttlrKind :: Lens' TargetingTemplatesListResponse Text
-ttlrKind = lens _ttlrKind (\ s a -> s{_ttlrKind = a})
-
--- | Targeting template collection.
-ttlrTargetingTemplates :: Lens' TargetingTemplatesListResponse [TargetingTemplate]
-ttlrTargetingTemplates
-  = lens _ttlrTargetingTemplates
-      (\ s a -> s{_ttlrTargetingTemplates = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON TargetingTemplatesListResponse
-         where
-        parseJSON
-          = withObject "TargetingTemplatesListResponse"
-              (\ o ->
-                 TargetingTemplatesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#targetingTemplatesListResponse")
-                     <*> (o .:? "targetingTemplates" .!= mempty))
-
-instance ToJSON TargetingTemplatesListResponse where
-        toJSON TargetingTemplatesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _ttlrNextPageToken,
-                  Just ("kind" .= _ttlrKind),
-                  ("targetingTemplates" .=) <$>
-                    _ttlrTargetingTemplates])
-
--- | Placement GenerateTags Response
---
--- /See:/ 'placementsGenerateTagsResponse' smart constructor.
-data PlacementsGenerateTagsResponse =
-  PlacementsGenerateTagsResponse'
-    { _pgtrKind          :: !Text
-    , _pgtrPlacementTags :: !(Maybe [PlacementTag])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsGenerateTagsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgtrKind'
---
--- * 'pgtrPlacementTags'
-placementsGenerateTagsResponse
-    :: PlacementsGenerateTagsResponse
-placementsGenerateTagsResponse =
-  PlacementsGenerateTagsResponse'
-    { _pgtrKind = "dfareporting#placementsGenerateTagsResponse"
-    , _pgtrPlacementTags = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementsGenerateTagsResponse\".
-pgtrKind :: Lens' PlacementsGenerateTagsResponse Text
-pgtrKind = lens _pgtrKind (\ s a -> s{_pgtrKind = a})
-
--- | Set of generated tags for the specified placements.
-pgtrPlacementTags :: Lens' PlacementsGenerateTagsResponse [PlacementTag]
-pgtrPlacementTags
-  = lens _pgtrPlacementTags
-      (\ s a -> s{_pgtrPlacementTags = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON PlacementsGenerateTagsResponse
-         where
-        parseJSON
-          = withObject "PlacementsGenerateTagsResponse"
-              (\ o ->
-                 PlacementsGenerateTagsResponse' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#placementsGenerateTagsResponse")
-                     <*> (o .:? "placementTags" .!= mempty))
-
-instance ToJSON PlacementsGenerateTagsResponse where
-        toJSON PlacementsGenerateTagsResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _pgtrKind),
-                  ("placementTags" .=) <$> _pgtrPlacementTags])
-
--- | Creative Asset.
---
--- /See:/ 'creativeAsset' smart constructor.
-data CreativeAsset =
-  CreativeAsset'
-    { _caaZIndex                :: !(Maybe (Textual Int32))
-    , _caaPushdown              :: !(Maybe Bool)
-    , _caaFrameRate             :: !(Maybe (Textual Double))
-    , _caaOriginalBackup        :: !(Maybe Bool)
-    , _caaWindowMode            :: !(Maybe CreativeAssetWindowMode)
-    , _caaFlashVersion          :: !(Maybe (Textual Int32))
-    , _caaPushdownDuration      :: !(Maybe (Textual Double))
-    , _caaSize                  :: !(Maybe Size)
-    , _caaVerticallyLocked      :: !(Maybe Bool)
-    , _caaOffSet                :: !(Maybe OffSetPosition)
-    , _caaStreamingServingURL   :: !(Maybe Text)
-    , _caaZipFilesize           :: !(Maybe Text)
-    , _caaTransparency          :: !(Maybe Bool)
-    , _caaHideSelectionBoxes    :: !(Maybe Bool)
-    , _caaSSLCompliant          :: !(Maybe Bool)
-    , _caaFileSize              :: !(Maybe (Textual Int64))
-    , _caaAssetIdentifier       :: !(Maybe CreativeAssetId)
-    , _caaCompanionCreativeIds  :: !(Maybe [Textual Int64])
-    , _caaDurationType          :: !(Maybe CreativeAssetDurationType)
-    , _caaProgressiveServingURL :: !(Maybe Text)
-    , _caaIdDimensionValue      :: !(Maybe DimensionValue)
-    , _caaActive                :: !(Maybe Bool)
-    , _caaRole                  :: !(Maybe CreativeAssetRole)
-    , _caaMimeType              :: !(Maybe Text)
-    , _caaPositionTopUnit       :: !(Maybe CreativeAssetPositionTopUnit)
-    , _caaPositionLeftUnit      :: !(Maybe CreativeAssetPositionLeftUnit)
-    , _caaAlignment             :: !(Maybe CreativeAssetAlignment)
-    , _caaExpandedDimension     :: !(Maybe Size)
-    , _caaAdditionalSizes       :: !(Maybe [Size])
-    , _caaZipFilename           :: !(Maybe Text)
-    , _caaMediaDuration         :: !(Maybe (Textual Double))
-    , _caaActionScript3         :: !(Maybe Bool)
-    , _caaDisplayType           :: !(Maybe CreativeAssetDisplayType)
-    , _caaChildAssetType        :: !(Maybe CreativeAssetChildAssetType)
-    , _caaCollapsedSize         :: !(Maybe Size)
-    , _caaAudioSampleRate       :: !(Maybe (Textual Int32))
-    , _caaId                    :: !(Maybe (Textual Int64))
-    , _caaBitRate               :: !(Maybe (Textual Int32))
-    , _caaPoliteLoad            :: !(Maybe Bool)
-    , _caaCustomStartTimeValue  :: !(Maybe (Textual Int32))
-    , _caaStartTimeType         :: !(Maybe CreativeAssetStartTimeType)
-    , _caaAudioBitRate          :: !(Maybe (Textual Int32))
-    , _caaDuration              :: !(Maybe (Textual Int32))
-    , _caaOrientation           :: !(Maybe CreativeAssetOrientation)
-    , _caaArtworkType           :: !(Maybe CreativeAssetArtworkType)
-    , _caaHideFlashObjects      :: !(Maybe Bool)
-    , _caaDetectedFeatures      :: !(Maybe [CreativeAssetDetectedFeaturesItem])
-    , _caaBackupImageExit       :: !(Maybe CreativeCustomEvent)
-    , _caaPosition              :: !(Maybe OffSetPosition)
-    , _caaHorizontallyLocked    :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAsset' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'caaZIndex'
---
--- * 'caaPushdown'
---
--- * 'caaFrameRate'
---
--- * 'caaOriginalBackup'
---
--- * 'caaWindowMode'
---
--- * 'caaFlashVersion'
---
--- * 'caaPushdownDuration'
---
--- * 'caaSize'
---
--- * 'caaVerticallyLocked'
---
--- * 'caaOffSet'
---
--- * 'caaStreamingServingURL'
---
--- * 'caaZipFilesize'
---
--- * 'caaTransparency'
---
--- * 'caaHideSelectionBoxes'
---
--- * 'caaSSLCompliant'
---
--- * 'caaFileSize'
---
--- * 'caaAssetIdentifier'
---
--- * 'caaCompanionCreativeIds'
---
--- * 'caaDurationType'
---
--- * 'caaProgressiveServingURL'
---
--- * 'caaIdDimensionValue'
---
--- * 'caaActive'
---
--- * 'caaRole'
---
--- * 'caaMimeType'
---
--- * 'caaPositionTopUnit'
---
--- * 'caaPositionLeftUnit'
---
--- * 'caaAlignment'
---
--- * 'caaExpandedDimension'
---
--- * 'caaAdditionalSizes'
---
--- * 'caaZipFilename'
---
--- * 'caaMediaDuration'
---
--- * 'caaActionScript3'
---
--- * 'caaDisplayType'
---
--- * 'caaChildAssetType'
---
--- * 'caaCollapsedSize'
---
--- * 'caaAudioSampleRate'
---
--- * 'caaId'
---
--- * 'caaBitRate'
---
--- * 'caaPoliteLoad'
---
--- * 'caaCustomStartTimeValue'
---
--- * 'caaStartTimeType'
---
--- * 'caaAudioBitRate'
---
--- * 'caaDuration'
---
--- * 'caaOrientation'
---
--- * 'caaArtworkType'
---
--- * 'caaHideFlashObjects'
---
--- * 'caaDetectedFeatures'
---
--- * 'caaBackupImageExit'
---
--- * 'caaPosition'
---
--- * 'caaHorizontallyLocked'
-creativeAsset
-    :: CreativeAsset
-creativeAsset =
-  CreativeAsset'
-    { _caaZIndex = Nothing
-    , _caaPushdown = Nothing
-    , _caaFrameRate = Nothing
-    , _caaOriginalBackup = Nothing
-    , _caaWindowMode = Nothing
-    , _caaFlashVersion = Nothing
-    , _caaPushdownDuration = Nothing
-    , _caaSize = Nothing
-    , _caaVerticallyLocked = Nothing
-    , _caaOffSet = Nothing
-    , _caaStreamingServingURL = Nothing
-    , _caaZipFilesize = Nothing
-    , _caaTransparency = Nothing
-    , _caaHideSelectionBoxes = Nothing
-    , _caaSSLCompliant = Nothing
-    , _caaFileSize = Nothing
-    , _caaAssetIdentifier = Nothing
-    , _caaCompanionCreativeIds = Nothing
-    , _caaDurationType = Nothing
-    , _caaProgressiveServingURL = Nothing
-    , _caaIdDimensionValue = Nothing
-    , _caaActive = Nothing
-    , _caaRole = Nothing
-    , _caaMimeType = Nothing
-    , _caaPositionTopUnit = Nothing
-    , _caaPositionLeftUnit = Nothing
-    , _caaAlignment = Nothing
-    , _caaExpandedDimension = Nothing
-    , _caaAdditionalSizes = Nothing
-    , _caaZipFilename = Nothing
-    , _caaMediaDuration = Nothing
-    , _caaActionScript3 = Nothing
-    , _caaDisplayType = Nothing
-    , _caaChildAssetType = Nothing
-    , _caaCollapsedSize = Nothing
-    , _caaAudioSampleRate = Nothing
-    , _caaId = Nothing
-    , _caaBitRate = Nothing
-    , _caaPoliteLoad = Nothing
-    , _caaCustomStartTimeValue = Nothing
-    , _caaStartTimeType = Nothing
-    , _caaAudioBitRate = Nothing
-    , _caaDuration = Nothing
-    , _caaOrientation = Nothing
-    , _caaArtworkType = Nothing
-    , _caaHideFlashObjects = Nothing
-    , _caaDetectedFeatures = Nothing
-    , _caaBackupImageExit = Nothing
-    , _caaPosition = Nothing
-    , _caaHorizontallyLocked = Nothing
-    }
-
-
--- | zIndex value of an asset. Applicable to the following creative types:
--- all RICH_MEDIA.Additionally, only applicable to assets whose displayType
--- is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or
--- ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to
--- 999999999, inclusive.
-caaZIndex :: Lens' CreativeAsset (Maybe Int32)
-caaZIndex
-  = lens _caaZIndex (\ s a -> s{_caaZIndex = a}) .
-      mapping _Coerce
-
--- | Whether the asset pushes down other content. Applicable to the following
--- creative types: all RICH_MEDIA. Additionally, only applicable when the
--- asset offsets are 0, the collapsedSize.width matches size.width, and the
--- collapsedSize.height is less than size.height.
-caaPushdown :: Lens' CreativeAsset (Maybe Bool)
-caaPushdown
-  = lens _caaPushdown (\ s a -> s{_caaPushdown = a})
-
--- | Video frame rate for video asset in frames per second. This is a
--- read-only field. Applicable to the following creative types:
--- INSTREAM_VIDEO and all VPAID.
-caaFrameRate :: Lens' CreativeAsset (Maybe Double)
-caaFrameRate
-  = lens _caaFrameRate (\ s a -> s{_caaFrameRate = a})
-      . mapping _Coerce
-
--- | Whether the backup asset is original or changed by the user in Campaign
--- Manager. Applicable to the following creative types: all RICH_MEDIA.
-caaOriginalBackup :: Lens' CreativeAsset (Maybe Bool)
-caaOriginalBackup
-  = lens _caaOriginalBackup
-      (\ s a -> s{_caaOriginalBackup = a})
-
--- | Window mode options for flash assets. Applicable to the following
--- creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING,
--- RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and
--- RICH_MEDIA_INPAGE_FLOATING.
-caaWindowMode :: Lens' CreativeAsset (Maybe CreativeAssetWindowMode)
-caaWindowMode
-  = lens _caaWindowMode
-      (\ s a -> s{_caaWindowMode = a})
-
--- | Flash version of the asset. This is a read-only field. Applicable to the
--- following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID.
--- Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
-caaFlashVersion :: Lens' CreativeAsset (Maybe Int32)
-caaFlashVersion
-  = lens _caaFlashVersion
-      (\ s a -> s{_caaFlashVersion = a})
-      . mapping _Coerce
-
--- | Pushdown duration in seconds for an asset. Applicable to the following
--- creative types: all RICH_MEDIA.Additionally, only applicable when the
--- asset pushdown field is true, the offsets are 0, the collapsedSize.width
--- matches size.width, and the collapsedSize.height is less than
--- size.height. Acceptable values are 0 to 9.99, inclusive.
-caaPushdownDuration :: Lens' CreativeAsset (Maybe Double)
-caaPushdownDuration
-  = lens _caaPushdownDuration
-      (\ s a -> s{_caaPushdownDuration = a})
-      . mapping _Coerce
-
--- | Size associated with this creative asset. This is a required field when
--- applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank,
--- this field will be automatically set using the actual size of the
--- associated image asset. Applicable to the following creative types:
--- DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all
--- RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not
--- HTML_IMAGE.
-caaSize :: Lens' CreativeAsset (Maybe Size)
-caaSize = lens _caaSize (\ s a -> s{_caaSize = a})
-
--- | Whether the asset is vertically locked. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA.
-caaVerticallyLocked :: Lens' CreativeAsset (Maybe Bool)
-caaVerticallyLocked
-  = lens _caaVerticallyLocked
-      (\ s a -> s{_caaVerticallyLocked = a})
-
--- | Offset position for an asset in collapsed mode. This is a read-only
--- field. Applicable to the following creative types: all RICH_MEDIA and
--- all VPAID. Additionally, only applicable to assets whose displayType is
--- ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
-caaOffSet :: Lens' CreativeAsset (Maybe OffSetPosition)
-caaOffSet
-  = lens _caaOffSet (\ s a -> s{_caaOffSet = a})
-
--- | Streaming URL for video asset. This is a read-only field. Applicable to
--- the following creative types: INSTREAM_VIDEO and all VPAID.
-caaStreamingServingURL :: Lens' CreativeAsset (Maybe Text)
-caaStreamingServingURL
-  = lens _caaStreamingServingURL
-      (\ s a -> s{_caaStreamingServingURL = a})
-
--- | Size of zip file. This is a read-only field. Applicable to the following
--- creative types: HTML5_BANNER.
-caaZipFilesize :: Lens' CreativeAsset (Maybe Text)
-caaZipFilesize
-  = lens _caaZipFilesize
-      (\ s a -> s{_caaZipFilesize = a})
-
--- | Whether the asset is transparent. Applicable to the following creative
--- types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets.
-caaTransparency :: Lens' CreativeAsset (Maybe Bool)
-caaTransparency
-  = lens _caaTransparency
-      (\ s a -> s{_caaTransparency = a})
-
--- | Whether to hide selection boxes flag for an asset. Applicable to the
--- following creative types: all RICH_MEDIA.
-caaHideSelectionBoxes :: Lens' CreativeAsset (Maybe Bool)
-caaHideSelectionBoxes
-  = lens _caaHideSelectionBoxes
-      (\ s a -> s{_caaHideSelectionBoxes = a})
-
--- | Whether the asset is SSL-compliant. This is a read-only field.
--- Applicable to all but the following creative types: all REDIRECT and
--- TRACKING_TEXT.
-caaSSLCompliant :: Lens' CreativeAsset (Maybe Bool)
-caaSSLCompliant
-  = lens _caaSSLCompliant
-      (\ s a -> s{_caaSSLCompliant = a})
-
--- | File size associated with this creative asset. This is a read-only
--- field. Applicable to all but the following creative types: all REDIRECT
--- and TRACKING_TEXT.
-caaFileSize :: Lens' CreativeAsset (Maybe Int64)
-caaFileSize
-  = lens _caaFileSize (\ s a -> s{_caaFileSize = a}) .
-      mapping _Coerce
-
--- | Identifier of this asset. This is the same identifier returned during
--- creative asset insert operation. This is a required field. Applicable to
--- all but the following creative types: all REDIRECT and TRACKING_TEXT.
-caaAssetIdentifier :: Lens' CreativeAsset (Maybe CreativeAssetId)
-caaAssetIdentifier
-  = lens _caaAssetIdentifier
-      (\ s a -> s{_caaAssetIdentifier = a})
-
--- | List of companion creatives assigned to an in-stream video creative
--- asset. Acceptable values include IDs of existing flash and image
--- creatives. Applicable to INSTREAM_VIDEO creative type with
--- dynamicAssetSelection set to true.
-caaCompanionCreativeIds :: Lens' CreativeAsset [Int64]
-caaCompanionCreativeIds
-  = lens _caaCompanionCreativeIds
-      (\ s a -> s{_caaCompanionCreativeIds = a})
-      . _Default
-      . _Coerce
-
--- | Duration type for which an asset will be displayed. Applicable to the
--- following creative types: all RICH_MEDIA.
-caaDurationType :: Lens' CreativeAsset (Maybe CreativeAssetDurationType)
-caaDurationType
-  = lens _caaDurationType
-      (\ s a -> s{_caaDurationType = a})
-
--- | Progressive URL for video asset. This is a read-only field. Applicable
--- to the following creative types: INSTREAM_VIDEO and all VPAID.
-caaProgressiveServingURL :: Lens' CreativeAsset (Maybe Text)
-caaProgressiveServingURL
-  = lens _caaProgressiveServingURL
-      (\ s a -> s{_caaProgressiveServingURL = a})
-
--- | Dimension value for the ID of the asset. This is a read-only,
--- auto-generated field.
-caaIdDimensionValue :: Lens' CreativeAsset (Maybe DimensionValue)
-caaIdDimensionValue
-  = lens _caaIdDimensionValue
-      (\ s a -> s{_caaIdDimensionValue = a})
-
--- | Whether the video or audio asset is active. This is a read-only field
--- for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative
--- types: INSTREAM_AUDIO, INSTREAM_VIDEO and all VPAID.
-caaActive :: Lens' CreativeAsset (Maybe Bool)
-caaActive
-  = lens _caaActive (\ s a -> s{_caaActive = a})
-
--- | Role of the asset in relation to creative. Applicable to all but the
--- following creative types: all REDIRECT and TRACKING_TEXT. This is a
--- required field. PRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER,
--- IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple
--- primary assets), and all VPAID creatives. BACKUP_IMAGE applies to
--- FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.
--- Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
--- ADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.
--- OTHER refers to assets from sources other than Campaign Manager, such as
--- Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID
--- creatives. PARENT_VIDEO refers to videos uploaded by the user in
--- Campaign Manager and is applicable to INSTREAM_VIDEO and
--- VPAID_LINEAR_VIDEO creatives. TRANSCODED_VIDEO refers to videos
--- transcoded by Campaign Manager from PARENT_VIDEO assets and is
--- applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
--- ALTERNATE_VIDEO refers to the Campaign Manager representation of child
--- asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO
--- creatives. These cannot be added or removed within Campaign Manager. For
--- VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and
--- ALTERNATE_VIDEO assets that are marked active serve as backup in case
--- the VPAID creative cannot be served. Only PARENT_VIDEO assets can be
--- added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.
--- PARENT_AUDIO refers to audios uploaded by the user in Campaign Manager
--- and is applicable to INSTREAM_AUDIO creatives. TRANSCODED_AUDIO refers
--- to audios transcoded by Campaign Manager from PARENT_AUDIO assets and is
--- applicable to INSTREAM_AUDIO creatives.
-caaRole :: Lens' CreativeAsset (Maybe CreativeAssetRole)
-caaRole = lens _caaRole (\ s a -> s{_caaRole = a})
-
--- | Detected MIME type for audio or video asset. This is a read-only field.
--- Applicable to the following creative types: INSTREAM_AUDIO,
--- INSTREAM_VIDEO and all VPAID.
-caaMimeType :: Lens' CreativeAsset (Maybe Text)
-caaMimeType
-  = lens _caaMimeType (\ s a -> s{_caaMimeType = a})
-
--- | Offset top unit for an asset. This is a read-only field if the asset
--- displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following
--- creative types: all RICH_MEDIA.
-caaPositionTopUnit :: Lens' CreativeAsset (Maybe CreativeAssetPositionTopUnit)
-caaPositionTopUnit
-  = lens _caaPositionTopUnit
-      (\ s a -> s{_caaPositionTopUnit = a})
-
--- | Offset left unit for an asset. This is a read-only field. Applicable to
--- the following creative types: all RICH_MEDIA.
-caaPositionLeftUnit :: Lens' CreativeAsset (Maybe CreativeAssetPositionLeftUnit)
-caaPositionLeftUnit
-  = lens _caaPositionLeftUnit
-      (\ s a -> s{_caaPositionLeftUnit = a})
-
--- | Possible alignments for an asset. This is a read-only field. Applicable
--- to the following creative types:
--- RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.
-caaAlignment :: Lens' CreativeAsset (Maybe CreativeAssetAlignment)
-caaAlignment
-  = lens _caaAlignment (\ s a -> s{_caaAlignment = a})
-
--- | Detected expanded dimension for video asset. This is a read-only field.
--- Applicable to the following creative types: INSTREAM_VIDEO and all
--- VPAID.
-caaExpandedDimension :: Lens' CreativeAsset (Maybe Size)
-caaExpandedDimension
-  = lens _caaExpandedDimension
-      (\ s a -> s{_caaExpandedDimension = a})
-
--- | Additional sizes associated with this creative asset. HTML5 asset
--- generated by compatible software such as GWD will be able to support
--- more sizes this creative asset can render.
-caaAdditionalSizes :: Lens' CreativeAsset [Size]
-caaAdditionalSizes
-  = lens _caaAdditionalSizes
-      (\ s a -> s{_caaAdditionalSizes = a})
-      . _Default
-      . _Coerce
-
--- | File name of zip file. This is a read-only field. Applicable to the
--- following creative types: HTML5_BANNER.
-caaZipFilename :: Lens' CreativeAsset (Maybe Text)
-caaZipFilename
-  = lens _caaZipFilename
-      (\ s a -> s{_caaZipFilename = a})
-
--- | Detected duration for audio or video asset. This is a read-only field.
--- Applicable to the following creative types: INSTREAM_AUDIO,
--- INSTREAM_VIDEO and all VPAID.
-caaMediaDuration :: Lens' CreativeAsset (Maybe Double)
-caaMediaDuration
-  = lens _caaMediaDuration
-      (\ s a -> s{_caaMediaDuration = a})
-      . mapping _Coerce
-
--- | Whether ActionScript3 is enabled for the flash asset. This is a
--- read-only field. Applicable to the following creative type:
--- FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not
--- HTML_IMAGE.
-caaActionScript3 :: Lens' CreativeAsset (Maybe Bool)
-caaActionScript3
-  = lens _caaActionScript3
-      (\ s a -> s{_caaActionScript3 = a})
-
--- | Type of rich media asset. This is a read-only field. Applicable to the
--- following creative types: all RICH_MEDIA.
-caaDisplayType :: Lens' CreativeAsset (Maybe CreativeAssetDisplayType)
-caaDisplayType
-  = lens _caaDisplayType
-      (\ s a -> s{_caaDisplayType = a})
-
--- | Rich media child asset type. This is a read-only field. Applicable to
--- the following creative types: all VPAID.
-caaChildAssetType :: Lens' CreativeAsset (Maybe CreativeAssetChildAssetType)
-caaChildAssetType
-  = lens _caaChildAssetType
-      (\ s a -> s{_caaChildAssetType = a})
-
--- | Size of an asset when collapsed. This is a read-only field. Applicable
--- to the following creative types: all RICH_MEDIA and all VPAID.
--- Additionally, applicable to assets whose displayType is
--- ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
-caaCollapsedSize :: Lens' CreativeAsset (Maybe Size)
-caaCollapsedSize
-  = lens _caaCollapsedSize
-      (\ s a -> s{_caaCollapsedSize = a})
-
--- | Audio sample bit rate in hertz. This is a read-only field. Applicable to
--- the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and all
--- VPAID.
-caaAudioSampleRate :: Lens' CreativeAsset (Maybe Int32)
-caaAudioSampleRate
-  = lens _caaAudioSampleRate
-      (\ s a -> s{_caaAudioSampleRate = a})
-      . mapping _Coerce
-
--- | Numeric ID of this creative asset. This is a required field and should
--- not be modified. Applicable to all but the following creative types: all
--- REDIRECT and TRACKING_TEXT.
-caaId :: Lens' CreativeAsset (Maybe Int64)
-caaId
-  = lens _caaId (\ s a -> s{_caaId = a}) .
-      mapping _Coerce
-
--- | Detected bit-rate for audio or video asset. This is a read-only field.
--- Applicable to the following creative types: INSTREAM_AUDIO,
--- INSTREAM_VIDEO and all VPAID.
-caaBitRate :: Lens' CreativeAsset (Maybe Int32)
-caaBitRate
-  = lens _caaBitRate (\ s a -> s{_caaBitRate = a}) .
-      mapping _Coerce
-
--- | Whether this asset is used as a polite load asset.
-caaPoliteLoad :: Lens' CreativeAsset (Maybe Bool)
-caaPoliteLoad
-  = lens _caaPoliteLoad
-      (\ s a -> s{_caaPoliteLoad = a})
-
--- | Custom start time in seconds for making the asset visible. Applicable to
--- the following creative types: all RICH_MEDIA. Value must be greater than
--- or equal to 0.
-caaCustomStartTimeValue :: Lens' CreativeAsset (Maybe Int32)
-caaCustomStartTimeValue
-  = lens _caaCustomStartTimeValue
-      (\ s a -> s{_caaCustomStartTimeValue = a})
-      . mapping _Coerce
-
--- | Initial wait time type before making the asset visible. Applicable to
--- the following creative types: all RICH_MEDIA.
-caaStartTimeType :: Lens' CreativeAsset (Maybe CreativeAssetStartTimeType)
-caaStartTimeType
-  = lens _caaStartTimeType
-      (\ s a -> s{_caaStartTimeType = a})
-
--- | Audio stream bit rate in kbps. This is a read-only field. Applicable to
--- the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and all
--- VPAID.
-caaAudioBitRate :: Lens' CreativeAsset (Maybe Int32)
-caaAudioBitRate
-  = lens _caaAudioBitRate
-      (\ s a -> s{_caaAudioBitRate = a})
-      . mapping _Coerce
-
--- | Duration in seconds for which an asset will be displayed. Applicable to
--- the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and
--- VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.
-caaDuration :: Lens' CreativeAsset (Maybe Int32)
-caaDuration
-  = lens _caaDuration (\ s a -> s{_caaDuration = a}) .
-      mapping _Coerce
-
--- | Orientation of video asset. This is a read-only, auto-generated field.
-caaOrientation :: Lens' CreativeAsset (Maybe CreativeAssetOrientation)
-caaOrientation
-  = lens _caaOrientation
-      (\ s a -> s{_caaOrientation = a})
-
--- | Artwork type of rich media creative. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA.
-caaArtworkType :: Lens' CreativeAsset (Maybe CreativeAssetArtworkType)
-caaArtworkType
-  = lens _caaArtworkType
-      (\ s a -> s{_caaArtworkType = a})
-
--- | Whether to hide Flash objects flag for an asset. Applicable to the
--- following creative types: all RICH_MEDIA.
-caaHideFlashObjects :: Lens' CreativeAsset (Maybe Bool)
-caaHideFlashObjects
-  = lens _caaHideFlashObjects
-      (\ s a -> s{_caaHideFlashObjects = a})
-
--- | List of feature dependencies for the creative asset that are detected by
--- Campaign Manager. Feature dependencies are features that a browser must
--- be able to support in order to render your HTML5 creative correctly.
--- This is a read-only, auto-generated field. Applicable to the following
--- creative types: HTML5_BANNER. Applicable to DISPLAY when the primary
--- asset type is not HTML_IMAGE.
-caaDetectedFeatures :: Lens' CreativeAsset [CreativeAssetDetectedFeaturesItem]
-caaDetectedFeatures
-  = lens _caaDetectedFeatures
-      (\ s a -> s{_caaDetectedFeatures = a})
-      . _Default
-      . _Coerce
-
--- | Exit event configured for the backup image. Applicable to the following
--- creative types: all RICH_MEDIA.
-caaBackupImageExit :: Lens' CreativeAsset (Maybe CreativeCustomEvent)
-caaBackupImageExit
-  = lens _caaBackupImageExit
-      (\ s a -> s{_caaBackupImageExit = a})
-
--- | Offset position for an asset. Applicable to the following creative
--- types: all RICH_MEDIA.
-caaPosition :: Lens' CreativeAsset (Maybe OffSetPosition)
-caaPosition
-  = lens _caaPosition (\ s a -> s{_caaPosition = a})
-
--- | Whether the asset is horizontally locked. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA.
-caaHorizontallyLocked :: Lens' CreativeAsset (Maybe Bool)
-caaHorizontallyLocked
-  = lens _caaHorizontallyLocked
-      (\ s a -> s{_caaHorizontallyLocked = a})
-
-instance FromJSON CreativeAsset where
-        parseJSON
-          = withObject "CreativeAsset"
-              (\ o ->
-                 CreativeAsset' <$>
-                   (o .:? "zIndex") <*> (o .:? "pushdown") <*>
-                     (o .:? "frameRate")
-                     <*> (o .:? "originalBackup")
-                     <*> (o .:? "windowMode")
-                     <*> (o .:? "flashVersion")
-                     <*> (o .:? "pushdownDuration")
-                     <*> (o .:? "size")
-                     <*> (o .:? "verticallyLocked")
-                     <*> (o .:? "offset")
-                     <*> (o .:? "streamingServingUrl")
-                     <*> (o .:? "zipFilesize")
-                     <*> (o .:? "transparency")
-                     <*> (o .:? "hideSelectionBoxes")
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "fileSize")
-                     <*> (o .:? "assetIdentifier")
-                     <*> (o .:? "companionCreativeIds" .!= mempty)
-                     <*> (o .:? "durationType")
-                     <*> (o .:? "progressiveServingUrl")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "active")
-                     <*> (o .:? "role")
-                     <*> (o .:? "mimeType")
-                     <*> (o .:? "positionTopUnit")
-                     <*> (o .:? "positionLeftUnit")
-                     <*> (o .:? "alignment")
-                     <*> (o .:? "expandedDimension")
-                     <*> (o .:? "additionalSizes" .!= mempty)
-                     <*> (o .:? "zipFilename")
-                     <*> (o .:? "mediaDuration")
-                     <*> (o .:? "actionScript3")
-                     <*> (o .:? "displayType")
-                     <*> (o .:? "childAssetType")
-                     <*> (o .:? "collapsedSize")
-                     <*> (o .:? "audioSampleRate")
-                     <*> (o .:? "id")
-                     <*> (o .:? "bitRate")
-                     <*> (o .:? "politeLoad")
-                     <*> (o .:? "customStartTimeValue")
-                     <*> (o .:? "startTimeType")
-                     <*> (o .:? "audioBitRate")
-                     <*> (o .:? "duration")
-                     <*> (o .:? "orientation")
-                     <*> (o .:? "artworkType")
-                     <*> (o .:? "hideFlashObjects")
-                     <*> (o .:? "detectedFeatures" .!= mempty)
-                     <*> (o .:? "backupImageExit")
-                     <*> (o .:? "position")
-                     <*> (o .:? "horizontallyLocked"))
-
-instance ToJSON CreativeAsset where
-        toJSON CreativeAsset'{..}
-          = object
-              (catMaybes
-                 [("zIndex" .=) <$> _caaZIndex,
-                  ("pushdown" .=) <$> _caaPushdown,
-                  ("frameRate" .=) <$> _caaFrameRate,
-                  ("originalBackup" .=) <$> _caaOriginalBackup,
-                  ("windowMode" .=) <$> _caaWindowMode,
-                  ("flashVersion" .=) <$> _caaFlashVersion,
-                  ("pushdownDuration" .=) <$> _caaPushdownDuration,
-                  ("size" .=) <$> _caaSize,
-                  ("verticallyLocked" .=) <$> _caaVerticallyLocked,
-                  ("offset" .=) <$> _caaOffSet,
-                  ("streamingServingUrl" .=) <$>
-                    _caaStreamingServingURL,
-                  ("zipFilesize" .=) <$> _caaZipFilesize,
-                  ("transparency" .=) <$> _caaTransparency,
-                  ("hideSelectionBoxes" .=) <$> _caaHideSelectionBoxes,
-                  ("sslCompliant" .=) <$> _caaSSLCompliant,
-                  ("fileSize" .=) <$> _caaFileSize,
-                  ("assetIdentifier" .=) <$> _caaAssetIdentifier,
-                  ("companionCreativeIds" .=) <$>
-                    _caaCompanionCreativeIds,
-                  ("durationType" .=) <$> _caaDurationType,
-                  ("progressiveServingUrl" .=) <$>
-                    _caaProgressiveServingURL,
-                  ("idDimensionValue" .=) <$> _caaIdDimensionValue,
-                  ("active" .=) <$> _caaActive,
-                  ("role" .=) <$> _caaRole,
-                  ("mimeType" .=) <$> _caaMimeType,
-                  ("positionTopUnit" .=) <$> _caaPositionTopUnit,
-                  ("positionLeftUnit" .=) <$> _caaPositionLeftUnit,
-                  ("alignment" .=) <$> _caaAlignment,
-                  ("expandedDimension" .=) <$> _caaExpandedDimension,
-                  ("additionalSizes" .=) <$> _caaAdditionalSizes,
-                  ("zipFilename" .=) <$> _caaZipFilename,
-                  ("mediaDuration" .=) <$> _caaMediaDuration,
-                  ("actionScript3" .=) <$> _caaActionScript3,
-                  ("displayType" .=) <$> _caaDisplayType,
-                  ("childAssetType" .=) <$> _caaChildAssetType,
-                  ("collapsedSize" .=) <$> _caaCollapsedSize,
-                  ("audioSampleRate" .=) <$> _caaAudioSampleRate,
-                  ("id" .=) <$> _caaId, ("bitRate" .=) <$> _caaBitRate,
-                  ("politeLoad" .=) <$> _caaPoliteLoad,
-                  ("customStartTimeValue" .=) <$>
-                    _caaCustomStartTimeValue,
-                  ("startTimeType" .=) <$> _caaStartTimeType,
-                  ("audioBitRate" .=) <$> _caaAudioBitRate,
-                  ("duration" .=) <$> _caaDuration,
-                  ("orientation" .=) <$> _caaOrientation,
-                  ("artworkType" .=) <$> _caaArtworkType,
-                  ("hideFlashObjects" .=) <$> _caaHideFlashObjects,
-                  ("detectedFeatures" .=) <$> _caaDetectedFeatures,
-                  ("backupImageExit" .=) <$> _caaBackupImageExit,
-                  ("position" .=) <$> _caaPosition,
-                  ("horizontallyLocked" .=) <$>
-                    _caaHorizontallyLocked])
-
--- | Language Targeting.
---
--- /See:/ 'languageTargeting' smart constructor.
-newtype LanguageTargeting =
-  LanguageTargeting'
-    { _ltLanguages :: Maybe [Language]
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LanguageTargeting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ltLanguages'
-languageTargeting
-    :: LanguageTargeting
-languageTargeting = LanguageTargeting' {_ltLanguages = Nothing}
-
-
--- | Languages that this ad targets. For each language only languageId is
--- required. The other fields are populated automatically when the ad is
--- inserted or updated.
-ltLanguages :: Lens' LanguageTargeting [Language]
-ltLanguages
-  = lens _ltLanguages (\ s a -> s{_ltLanguages = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON LanguageTargeting where
-        parseJSON
-          = withObject "LanguageTargeting"
-              (\ o ->
-                 LanguageTargeting' <$>
-                   (o .:? "languages" .!= mempty))
-
-instance ToJSON LanguageTargeting where
-        toJSON LanguageTargeting'{..}
-          = object
-              (catMaybes [("languages" .=) <$> _ltLanguages])
-
--- | Encapsulates the list of rules for asset selection and a default asset
--- in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.
---
--- /See:/ 'creativeAssetSelection' smart constructor.
-data CreativeAssetSelection =
-  CreativeAssetSelection'
-    { _casRules          :: !(Maybe [Rule])
-    , _casDefaultAssetId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAssetSelection' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'casRules'
---
--- * 'casDefaultAssetId'
-creativeAssetSelection
-    :: CreativeAssetSelection
-creativeAssetSelection =
-  CreativeAssetSelection' {_casRules = Nothing, _casDefaultAssetId = Nothing}
-
-
--- | Rules determine which asset will be served to a viewer. Rules will be
--- evaluated in the order in which they are stored in this list. This list
--- must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.
-casRules :: Lens' CreativeAssetSelection [Rule]
-casRules
-  = lens _casRules (\ s a -> s{_casRules = a}) .
-      _Default
-      . _Coerce
-
--- | A creativeAssets[].id. This should refer to one of the parent assets in
--- this creative, and will be served if none of the rules match. This is a
--- required field.
-casDefaultAssetId :: Lens' CreativeAssetSelection (Maybe Int64)
-casDefaultAssetId
-  = lens _casDefaultAssetId
-      (\ s a -> s{_casDefaultAssetId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeAssetSelection where
-        parseJSON
-          = withObject "CreativeAssetSelection"
-              (\ o ->
-                 CreativeAssetSelection' <$>
-                   (o .:? "rules" .!= mempty) <*>
-                     (o .:? "defaultAssetId"))
-
-instance ToJSON CreativeAssetSelection where
-        toJSON CreativeAssetSelection'{..}
-          = object
-              (catMaybes
-                 [("rules" .=) <$> _casRules,
-                  ("defaultAssetId" .=) <$> _casDefaultAssetId])
-
--- | Placement List Response
---
--- /See:/ 'placementsListResponse' smart constructor.
-data PlacementsListResponse =
-  PlacementsListResponse'
-    { _plaNextPageToken :: !(Maybe Text)
-    , _plaKind          :: !Text
-    , _plaPlacements    :: !(Maybe [Placement])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'plaNextPageToken'
---
--- * 'plaKind'
---
--- * 'plaPlacements'
-placementsListResponse
-    :: PlacementsListResponse
-placementsListResponse =
-  PlacementsListResponse'
-    { _plaNextPageToken = Nothing
-    , _plaKind = "dfareporting#placementsListResponse"
-    , _plaPlacements = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-plaNextPageToken :: Lens' PlacementsListResponse (Maybe Text)
-plaNextPageToken
-  = lens _plaNextPageToken
-      (\ s a -> s{_plaNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementsListResponse\".
-plaKind :: Lens' PlacementsListResponse Text
-plaKind = lens _plaKind (\ s a -> s{_plaKind = a})
-
--- | Placement collection.
-plaPlacements :: Lens' PlacementsListResponse [Placement]
-plaPlacements
-  = lens _plaPlacements
-      (\ s a -> s{_plaPlacements = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON PlacementsListResponse where
-        parseJSON
-          = withObject "PlacementsListResponse"
-              (\ o ->
-                 PlacementsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#placementsListResponse")
-                     <*> (o .:? "placements" .!= mempty))
-
-instance ToJSON PlacementsListResponse where
-        toJSON PlacementsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _plaNextPageToken,
-                  Just ("kind" .= _plaKind),
-                  ("placements" .=) <$> _plaPlacements])
-
--- | The report\'s schedule. Can only be set if the report\'s \'dateRange\'
--- is a relative date range and the relative date range is not \"TODAY\".
---
--- /See:/ 'reportSchedule' smart constructor.
-data ReportSchedule =
-  ReportSchedule'
-    { _rsEvery             :: !(Maybe (Textual Int32))
-    , _rsActive            :: !(Maybe Bool)
-    , _rsRepeats           :: !(Maybe Text)
-    , _rsStartDate         :: !(Maybe Date')
-    , _rsExpirationDate    :: !(Maybe Date')
-    , _rsRunsOnDayOfMonth  :: !(Maybe ReportScheduleRunsOnDayOfMonth)
-    , _rsRepeatsOnWeekDays :: !(Maybe [ReportScheduleRepeatsOnWeekDaysItem])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportSchedule' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rsEvery'
---
--- * 'rsActive'
---
--- * 'rsRepeats'
---
--- * 'rsStartDate'
---
--- * 'rsExpirationDate'
---
--- * 'rsRunsOnDayOfMonth'
---
--- * 'rsRepeatsOnWeekDays'
-reportSchedule
-    :: ReportSchedule
-reportSchedule =
-  ReportSchedule'
-    { _rsEvery = Nothing
-    , _rsActive = Nothing
-    , _rsRepeats = Nothing
-    , _rsStartDate = Nothing
-    , _rsExpirationDate = Nothing
-    , _rsRunsOnDayOfMonth = Nothing
-    , _rsRepeatsOnWeekDays = Nothing
-    }
-
-
--- | Defines every how many days, weeks or months the report should be run.
--- Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or
--- \"MONTHLY\".
-rsEvery :: Lens' ReportSchedule (Maybe Int32)
-rsEvery
-  = lens _rsEvery (\ s a -> s{_rsEvery = a}) .
-      mapping _Coerce
-
--- | Whether the schedule is active or not. Must be set to either true or
--- false.
-rsActive :: Lens' ReportSchedule (Maybe Bool)
-rsActive = lens _rsActive (\ s a -> s{_rsActive = a})
-
--- | The interval for which the report is repeated. Note: - \"DAILY\" also
--- requires field \"every\" to be set. - \"WEEKLY\" also requires fields
--- \"every\" and \"repeatsOnWeekDays\" to be set. - \"MONTHLY\" also
--- requires fields \"every\" and \"runsOnDayOfMonth\" to be set.
-rsRepeats :: Lens' ReportSchedule (Maybe Text)
-rsRepeats
-  = lens _rsRepeats (\ s a -> s{_rsRepeats = a})
-
--- | Start date of date range for which scheduled reports should be run.
-rsStartDate :: Lens' ReportSchedule (Maybe Day)
-rsStartDate
-  = lens _rsStartDate (\ s a -> s{_rsStartDate = a}) .
-      mapping _Date
-
--- | The expiration date when the scheduled report stops running.
-rsExpirationDate :: Lens' ReportSchedule (Maybe Day)
-rsExpirationDate
-  = lens _rsExpirationDate
-      (\ s a -> s{_rsExpirationDate = a})
-      . mapping _Date
-
--- | Enum to define for \"MONTHLY\" scheduled reports whether reports should
--- be repeated on the same day of the month as \"startDate\" or the same
--- day of the week of the month. Example: If \'startDate\' is Monday, April
--- 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on
--- the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent
--- reports on the first Monday of the month.
-rsRunsOnDayOfMonth :: Lens' ReportSchedule (Maybe ReportScheduleRunsOnDayOfMonth)
-rsRunsOnDayOfMonth
-  = lens _rsRunsOnDayOfMonth
-      (\ s a -> s{_rsRunsOnDayOfMonth = a})
-
--- | List of week days \"WEEKLY\" on which scheduled reports should run.
-rsRepeatsOnWeekDays :: Lens' ReportSchedule [ReportScheduleRepeatsOnWeekDaysItem]
-rsRepeatsOnWeekDays
-  = lens _rsRepeatsOnWeekDays
-      (\ s a -> s{_rsRepeatsOnWeekDays = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportSchedule where
-        parseJSON
-          = withObject "ReportSchedule"
-              (\ o ->
-                 ReportSchedule' <$>
-                   (o .:? "every") <*> (o .:? "active") <*>
-                     (o .:? "repeats")
-                     <*> (o .:? "startDate")
-                     <*> (o .:? "expirationDate")
-                     <*> (o .:? "runsOnDayOfMonth")
-                     <*> (o .:? "repeatsOnWeekDays" .!= mempty))
-
-instance ToJSON ReportSchedule where
-        toJSON ReportSchedule'{..}
-          = object
-              (catMaybes
-                 [("every" .=) <$> _rsEvery,
-                  ("active" .=) <$> _rsActive,
-                  ("repeats" .=) <$> _rsRepeats,
-                  ("startDate" .=) <$> _rsStartDate,
-                  ("expirationDate" .=) <$> _rsExpirationDate,
-                  ("runsOnDayOfMonth" .=) <$> _rsRunsOnDayOfMonth,
-                  ("repeatsOnWeekDays" .=) <$> _rsRepeatsOnWeekDays])
-
--- | The report criteria for a report of type \"PATH_TO_CONVERSION\".
---
--- /See:/ 'reportPathToConversionCriteria' smart constructor.
-data ReportPathToConversionCriteria =
-  ReportPathToConversionCriteria'
-    { _rptccReportProperties          :: !(Maybe ReportPathToConversionCriteriaReportProperties)
-    , _rptccMetricNames               :: !(Maybe [Text])
-    , _rptccCustomRichMediaEvents     :: !(Maybe [DimensionValue])
-    , _rptccDateRange                 :: !(Maybe DateRange)
-    , _rptccConversionDimensions      :: !(Maybe [SortedDimension])
-    , _rptccCustomFloodlightVariables :: !(Maybe [SortedDimension])
-    , _rptccFloodlightConfigId        :: !(Maybe DimensionValue)
-    , _rptccActivityFilters           :: !(Maybe [DimensionValue])
-    , _rptccPerInteractionDimensions  :: !(Maybe [SortedDimension])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportPathToConversionCriteria' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rptccReportProperties'
---
--- * 'rptccMetricNames'
---
--- * 'rptccCustomRichMediaEvents'
---
--- * 'rptccDateRange'
---
--- * 'rptccConversionDimensions'
---
--- * 'rptccCustomFloodlightVariables'
---
--- * 'rptccFloodlightConfigId'
---
--- * 'rptccActivityFilters'
---
--- * 'rptccPerInteractionDimensions'
-reportPathToConversionCriteria
-    :: ReportPathToConversionCriteria
-reportPathToConversionCriteria =
-  ReportPathToConversionCriteria'
-    { _rptccReportProperties = Nothing
-    , _rptccMetricNames = Nothing
-    , _rptccCustomRichMediaEvents = Nothing
-    , _rptccDateRange = Nothing
-    , _rptccConversionDimensions = Nothing
-    , _rptccCustomFloodlightVariables = Nothing
-    , _rptccFloodlightConfigId = Nothing
-    , _rptccActivityFilters = Nothing
-    , _rptccPerInteractionDimensions = Nothing
-    }
-
-
--- | The properties of the report.
-rptccReportProperties :: Lens' ReportPathToConversionCriteria (Maybe ReportPathToConversionCriteriaReportProperties)
-rptccReportProperties
-  = lens _rptccReportProperties
-      (\ s a -> s{_rptccReportProperties = a})
-
--- | The list of names of metrics the report should include.
-rptccMetricNames :: Lens' ReportPathToConversionCriteria [Text]
-rptccMetricNames
-  = lens _rptccMetricNames
-      (\ s a -> s{_rptccMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | The list of custom rich media events to include.
-rptccCustomRichMediaEvents :: Lens' ReportPathToConversionCriteria [DimensionValue]
-rptccCustomRichMediaEvents
-  = lens _rptccCustomRichMediaEvents
-      (\ s a -> s{_rptccCustomRichMediaEvents = a})
-      . _Default
-      . _Coerce
-
--- | The date range this report should be run for.
-rptccDateRange :: Lens' ReportPathToConversionCriteria (Maybe DateRange)
-rptccDateRange
-  = lens _rptccDateRange
-      (\ s a -> s{_rptccDateRange = a})
-
--- | The list of conversion dimensions the report should include.
-rptccConversionDimensions :: Lens' ReportPathToConversionCriteria [SortedDimension]
-rptccConversionDimensions
-  = lens _rptccConversionDimensions
-      (\ s a -> s{_rptccConversionDimensions = a})
-      . _Default
-      . _Coerce
-
--- | The list of custom floodlight variables the report should include.
-rptccCustomFloodlightVariables :: Lens' ReportPathToConversionCriteria [SortedDimension]
-rptccCustomFloodlightVariables
-  = lens _rptccCustomFloodlightVariables
-      (\ s a -> s{_rptccCustomFloodlightVariables = a})
-      . _Default
-      . _Coerce
-
--- | The floodlight ID for which to show data in this report. All advertisers
--- associated with that ID will automatically be added. The dimension of
--- the value needs to be \'dfa:floodlightConfigId\'.
-rptccFloodlightConfigId :: Lens' ReportPathToConversionCriteria (Maybe DimensionValue)
-rptccFloodlightConfigId
-  = lens _rptccFloodlightConfigId
-      (\ s a -> s{_rptccFloodlightConfigId = a})
-
--- | The list of \'dfa:activity\' values to filter on.
-rptccActivityFilters :: Lens' ReportPathToConversionCriteria [DimensionValue]
-rptccActivityFilters
-  = lens _rptccActivityFilters
-      (\ s a -> s{_rptccActivityFilters = a})
-      . _Default
-      . _Coerce
-
--- | The list of per interaction dimensions the report should include.
-rptccPerInteractionDimensions :: Lens' ReportPathToConversionCriteria [SortedDimension]
-rptccPerInteractionDimensions
-  = lens _rptccPerInteractionDimensions
-      (\ s a -> s{_rptccPerInteractionDimensions = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportPathToConversionCriteria
-         where
-        parseJSON
-          = withObject "ReportPathToConversionCriteria"
-              (\ o ->
-                 ReportPathToConversionCriteria' <$>
-                   (o .:? "reportProperties") <*>
-                     (o .:? "metricNames" .!= mempty)
-                     <*> (o .:? "customRichMediaEvents" .!= mempty)
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "conversionDimensions" .!= mempty)
-                     <*> (o .:? "customFloodlightVariables" .!= mempty)
-                     <*> (o .:? "floodlightConfigId")
-                     <*> (o .:? "activityFilters" .!= mempty)
-                     <*> (o .:? "perInteractionDimensions" .!= mempty))
-
-instance ToJSON ReportPathToConversionCriteria where
-        toJSON ReportPathToConversionCriteria'{..}
-          = object
-              (catMaybes
-                 [("reportProperties" .=) <$> _rptccReportProperties,
-                  ("metricNames" .=) <$> _rptccMetricNames,
-                  ("customRichMediaEvents" .=) <$>
-                    _rptccCustomRichMediaEvents,
-                  ("dateRange" .=) <$> _rptccDateRange,
-                  ("conversionDimensions" .=) <$>
-                    _rptccConversionDimensions,
-                  ("customFloodlightVariables" .=) <$>
-                    _rptccCustomFloodlightVariables,
-                  ("floodlightConfigId" .=) <$>
-                    _rptccFloodlightConfigId,
-                  ("activityFilters" .=) <$> _rptccActivityFilters,
-                  ("perInteractionDimensions" .=) <$>
-                    _rptccPerInteractionDimensions])
-
--- | Metro List Response
---
--- /See:/ 'metrosListResponse' smart constructor.
-data MetrosListResponse =
-  MetrosListResponse'
-    { _mlrKind   :: !Text
-    , _mlrMetros :: !(Maybe [Metro])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MetrosListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mlrKind'
---
--- * 'mlrMetros'
-metrosListResponse
-    :: MetrosListResponse
-metrosListResponse =
-  MetrosListResponse'
-    {_mlrKind = "dfareporting#metrosListResponse", _mlrMetros = Nothing}
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#metrosListResponse\".
-mlrKind :: Lens' MetrosListResponse Text
-mlrKind = lens _mlrKind (\ s a -> s{_mlrKind = a})
-
--- | Metro collection.
-mlrMetros :: Lens' MetrosListResponse [Metro]
-mlrMetros
-  = lens _mlrMetros (\ s a -> s{_mlrMetros = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON MetrosListResponse where
-        parseJSON
-          = withObject "MetrosListResponse"
-              (\ o ->
-                 MetrosListResponse' <$>
-                   (o .:? "kind" .!= "dfareporting#metrosListResponse")
-                     <*> (o .:? "metros" .!= mempty))
-
-instance ToJSON MetrosListResponse where
-        toJSON MetrosListResponse'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _mlrKind),
-                  ("metros" .=) <$> _mlrMetros])
-
--- | Insert Conversions Response.
---
--- /See:/ 'conversionsBatchInsertResponse' smart constructor.
-data ConversionsBatchInsertResponse =
-  ConversionsBatchInsertResponse'
-    { _cbirbStatus      :: !(Maybe [ConversionStatus])
-    , _cbirbKind        :: !Text
-    , _cbirbHasFailures :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchInsertResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cbirbStatus'
---
--- * 'cbirbKind'
---
--- * 'cbirbHasFailures'
-conversionsBatchInsertResponse
-    :: ConversionsBatchInsertResponse
-conversionsBatchInsertResponse =
-  ConversionsBatchInsertResponse'
-    { _cbirbStatus = Nothing
-    , _cbirbKind = "dfareporting#conversionsBatchInsertResponse"
-    , _cbirbHasFailures = Nothing
-    }
-
-
--- | The insert status of each conversion. Statuses are returned in the same
--- order that conversions are inserted.
-cbirbStatus :: Lens' ConversionsBatchInsertResponse [ConversionStatus]
-cbirbStatus
-  = lens _cbirbStatus (\ s a -> s{_cbirbStatus = a}) .
-      _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#conversionsBatchInsertResponse\".
-cbirbKind :: Lens' ConversionsBatchInsertResponse Text
-cbirbKind
-  = lens _cbirbKind (\ s a -> s{_cbirbKind = a})
-
--- | Indicates that some or all conversions failed to insert.
-cbirbHasFailures :: Lens' ConversionsBatchInsertResponse (Maybe Bool)
-cbirbHasFailures
-  = lens _cbirbHasFailures
-      (\ s a -> s{_cbirbHasFailures = a})
-
-instance FromJSON ConversionsBatchInsertResponse
-         where
-        parseJSON
-          = withObject "ConversionsBatchInsertResponse"
-              (\ o ->
-                 ConversionsBatchInsertResponse' <$>
-                   (o .:? "status" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#conversionsBatchInsertResponse")
-                     <*> (o .:? "hasFailures"))
-
-instance ToJSON ConversionsBatchInsertResponse where
-        toJSON ConversionsBatchInsertResponse'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _cbirbStatus,
-                  Just ("kind" .= _cbirbKind),
-                  ("hasFailures" .=) <$> _cbirbHasFailures])
-
--- | Order document List Response
---
--- /See:/ 'orderDocumentsListResponse' smart constructor.
-data OrderDocumentsListResponse =
-  OrderDocumentsListResponse'
-    { _odlrNextPageToken  :: !(Maybe Text)
-    , _odlrKind           :: !Text
-    , _odlrOrderDocuments :: !(Maybe [OrderDocument])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrderDocumentsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'odlrNextPageToken'
---
--- * 'odlrKind'
---
--- * 'odlrOrderDocuments'
-orderDocumentsListResponse
-    :: OrderDocumentsListResponse
-orderDocumentsListResponse =
-  OrderDocumentsListResponse'
-    { _odlrNextPageToken = Nothing
-    , _odlrKind = "dfareporting#orderDocumentsListResponse"
-    , _odlrOrderDocuments = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-odlrNextPageToken :: Lens' OrderDocumentsListResponse (Maybe Text)
-odlrNextPageToken
-  = lens _odlrNextPageToken
-      (\ s a -> s{_odlrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#orderDocumentsListResponse\".
-odlrKind :: Lens' OrderDocumentsListResponse Text
-odlrKind = lens _odlrKind (\ s a -> s{_odlrKind = a})
-
--- | Order document collection
-odlrOrderDocuments :: Lens' OrderDocumentsListResponse [OrderDocument]
-odlrOrderDocuments
-  = lens _odlrOrderDocuments
-      (\ s a -> s{_odlrOrderDocuments = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON OrderDocumentsListResponse where
-        parseJSON
-          = withObject "OrderDocumentsListResponse"
-              (\ o ->
-                 OrderDocumentsListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#orderDocumentsListResponse")
-                     <*> (o .:? "orderDocuments" .!= mempty))
-
-instance ToJSON OrderDocumentsListResponse where
-        toJSON OrderDocumentsListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _odlrNextPageToken,
-                  Just ("kind" .= _odlrKind),
-                  ("orderDocuments" .=) <$> _odlrOrderDocuments])
-
--- | Represents a recipient.
---
--- /See:/ 'recipient' smart constructor.
-data Recipient =
-  Recipient'
-    { _recEmail        :: !(Maybe Text)
-    , _recKind         :: !Text
-    , _recDeliveryType :: !(Maybe RecipientDeliveryType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Recipient' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'recEmail'
---
--- * 'recKind'
---
--- * 'recDeliveryType'
-recipient
-    :: Recipient
-recipient =
-  Recipient'
-    { _recEmail = Nothing
-    , _recKind = "dfareporting#recipient"
-    , _recDeliveryType = Nothing
-    }
-
-
--- | The email address of the recipient.
-recEmail :: Lens' Recipient (Maybe Text)
-recEmail = lens _recEmail (\ s a -> s{_recEmail = a})
-
--- | The kind of resource this is, in this case dfareporting#recipient.
-recKind :: Lens' Recipient Text
-recKind = lens _recKind (\ s a -> s{_recKind = a})
-
--- | The delivery type for the recipient.
-recDeliveryType :: Lens' Recipient (Maybe RecipientDeliveryType)
-recDeliveryType
-  = lens _recDeliveryType
-      (\ s a -> s{_recDeliveryType = a})
-
-instance FromJSON Recipient where
-        parseJSON
-          = withObject "Recipient"
-              (\ o ->
-                 Recipient' <$>
-                   (o .:? "email") <*>
-                     (o .:? "kind" .!= "dfareporting#recipient")
-                     <*> (o .:? "deliveryType"))
-
-instance ToJSON Recipient where
-        toJSON Recipient'{..}
-          = object
-              (catMaybes
-                 [("email" .=) <$> _recEmail,
-                  Just ("kind" .= _recKind),
-                  ("deliveryType" .=) <$> _recDeliveryType])
-
--- | Contains properties of a site.
---
--- /See:/ 'site' smart constructor.
-data Site =
-  Site'
-    { _sitiVideoSettings                 :: !(Maybe SiteVideoSettings)
-    , _sitiKind                          :: !Text
-    , _sitiKeyName                       :: !(Maybe Text)
-    , _sitiSiteContacts                  :: !(Maybe [SiteContact])
-    , _sitiSiteSettings                  :: !(Maybe SiteSettings)
-    , _sitiIdDimensionValue              :: !(Maybe DimensionValue)
-    , _sitiDirectorySiteIdDimensionValue :: !(Maybe DimensionValue)
-    , _sitiAccountId                     :: !(Maybe (Textual Int64))
-    , _sitiName                          :: !(Maybe Text)
-    , _sitiDirectorySiteId               :: !(Maybe (Textual Int64))
-    , _sitiId                            :: !(Maybe (Textual Int64))
-    , _sitiSubAccountId                  :: !(Maybe (Textual Int64))
-    , _sitiApproved                      :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Site' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sitiVideoSettings'
---
--- * 'sitiKind'
---
--- * 'sitiKeyName'
---
--- * 'sitiSiteContacts'
---
--- * 'sitiSiteSettings'
---
--- * 'sitiIdDimensionValue'
---
--- * 'sitiDirectorySiteIdDimensionValue'
---
--- * 'sitiAccountId'
---
--- * 'sitiName'
---
--- * 'sitiDirectorySiteId'
---
--- * 'sitiId'
---
--- * 'sitiSubAccountId'
---
--- * 'sitiApproved'
-site
-    :: Site
-site =
-  Site'
-    { _sitiVideoSettings = Nothing
-    , _sitiKind = "dfareporting#site"
-    , _sitiKeyName = Nothing
-    , _sitiSiteContacts = Nothing
-    , _sitiSiteSettings = Nothing
-    , _sitiIdDimensionValue = Nothing
-    , _sitiDirectorySiteIdDimensionValue = Nothing
-    , _sitiAccountId = Nothing
-    , _sitiName = Nothing
-    , _sitiDirectorySiteId = Nothing
-    , _sitiId = Nothing
-    , _sitiSubAccountId = Nothing
-    , _sitiApproved = Nothing
-    }
-
-
--- | Default video settings for new placements created under this site. This
--- value will be used to populate the placements.videoSettings field, when
--- no value is specified for the new placement.
-sitiVideoSettings :: Lens' Site (Maybe SiteVideoSettings)
-sitiVideoSettings
-  = lens _sitiVideoSettings
-      (\ s a -> s{_sitiVideoSettings = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#site\".
-sitiKind :: Lens' Site Text
-sitiKind = lens _sitiKind (\ s a -> s{_sitiKind = a})
-
--- | Key name of this site. This is a read-only, auto-generated field.
-sitiKeyName :: Lens' Site (Maybe Text)
-sitiKeyName
-  = lens _sitiKeyName (\ s a -> s{_sitiKeyName = a})
-
--- | Site contacts.
-sitiSiteContacts :: Lens' Site [SiteContact]
-sitiSiteContacts
-  = lens _sitiSiteContacts
-      (\ s a -> s{_sitiSiteContacts = a})
-      . _Default
-      . _Coerce
-
--- | Site-wide settings.
-sitiSiteSettings :: Lens' Site (Maybe SiteSettings)
-sitiSiteSettings
-  = lens _sitiSiteSettings
-      (\ s a -> s{_sitiSiteSettings = a})
-
--- | Dimension value for the ID of this site. This is a read-only,
--- auto-generated field.
-sitiIdDimensionValue :: Lens' Site (Maybe DimensionValue)
-sitiIdDimensionValue
-  = lens _sitiIdDimensionValue
-      (\ s a -> s{_sitiIdDimensionValue = a})
-
--- | Dimension value for the ID of the directory site. This is a read-only,
--- auto-generated field.
-sitiDirectorySiteIdDimensionValue :: Lens' Site (Maybe DimensionValue)
-sitiDirectorySiteIdDimensionValue
-  = lens _sitiDirectorySiteIdDimensionValue
-      (\ s a -> s{_sitiDirectorySiteIdDimensionValue = a})
-
--- | Account ID of this site. This is a read-only field that can be left
--- blank.
-sitiAccountId :: Lens' Site (Maybe Int64)
-sitiAccountId
-  = lens _sitiAccountId
-      (\ s a -> s{_sitiAccountId = a})
-      . mapping _Coerce
-
--- | Name of this site.This is a required field. Must be less than 128
--- characters long. If this site is under a subaccount, the name must be
--- unique among sites of the same subaccount. Otherwise, this site is a
--- top-level site, and the name must be unique among top-level sites of the
--- same account.
-sitiName :: Lens' Site (Maybe Text)
-sitiName = lens _sitiName (\ s a -> s{_sitiName = a})
-
--- | Directory site associated with this site. This is a required field that
--- is read-only after insertion.
-sitiDirectorySiteId :: Lens' Site (Maybe Int64)
-sitiDirectorySiteId
-  = lens _sitiDirectorySiteId
-      (\ s a -> s{_sitiDirectorySiteId = a})
-      . mapping _Coerce
-
--- | ID of this site. This is a read-only, auto-generated field.
-sitiId :: Lens' Site (Maybe Int64)
-sitiId
-  = lens _sitiId (\ s a -> s{_sitiId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this site. This is a read-only field that can be left
--- blank.
-sitiSubAccountId :: Lens' Site (Maybe Int64)
-sitiSubAccountId
-  = lens _sitiSubAccountId
-      (\ s a -> s{_sitiSubAccountId = a})
-      . mapping _Coerce
-
--- | Whether this site is approved.
-sitiApproved :: Lens' Site (Maybe Bool)
-sitiApproved
-  = lens _sitiApproved (\ s a -> s{_sitiApproved = a})
-
-instance FromJSON Site where
-        parseJSON
-          = withObject "Site"
-              (\ o ->
-                 Site' <$>
-                   (o .:? "videoSettings") <*>
-                     (o .:? "kind" .!= "dfareporting#site")
-                     <*> (o .:? "keyName")
-                     <*> (o .:? "siteContacts" .!= mempty)
-                     <*> (o .:? "siteSettings")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "directorySiteIdDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "directorySiteId")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "approved"))
-
-instance ToJSON Site where
-        toJSON Site'{..}
-          = object
-              (catMaybes
-                 [("videoSettings" .=) <$> _sitiVideoSettings,
-                  Just ("kind" .= _sitiKind),
-                  ("keyName" .=) <$> _sitiKeyName,
-                  ("siteContacts" .=) <$> _sitiSiteContacts,
-                  ("siteSettings" .=) <$> _sitiSiteSettings,
-                  ("idDimensionValue" .=) <$> _sitiIdDimensionValue,
-                  ("directorySiteIdDimensionValue" .=) <$>
-                    _sitiDirectorySiteIdDimensionValue,
-                  ("accountId" .=) <$> _sitiAccountId,
-                  ("name" .=) <$> _sitiName,
-                  ("directorySiteId" .=) <$> _sitiDirectorySiteId,
-                  ("id" .=) <$> _sitiId,
-                  ("subaccountId" .=) <$> _sitiSubAccountId,
-                  ("approved" .=) <$> _sitiApproved])
-
--- | User Defined Variable configuration.
---
--- /See:/ 'userDefinedVariableConfiguration' smart constructor.
-data UserDefinedVariableConfiguration =
-  UserDefinedVariableConfiguration'
-    { _udvcReportName   :: !(Maybe Text)
-    , _udvcDataType     :: !(Maybe UserDefinedVariableConfigurationDataType)
-    , _udvcVariableType :: !(Maybe UserDefinedVariableConfigurationVariableType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserDefinedVariableConfiguration' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'udvcReportName'
---
--- * 'udvcDataType'
---
--- * 'udvcVariableType'
-userDefinedVariableConfiguration
-    :: UserDefinedVariableConfiguration
-userDefinedVariableConfiguration =
-  UserDefinedVariableConfiguration'
-    { _udvcReportName = Nothing
-    , _udvcDataType = Nothing
-    , _udvcVariableType = Nothing
-    }
-
-
--- | User-friendly name for the variable which will appear in reports. This
--- is a required field, must be less than 64 characters long, and cannot
--- contain the following characters: \"\"\<>\".
-udvcReportName :: Lens' UserDefinedVariableConfiguration (Maybe Text)
-udvcReportName
-  = lens _udvcReportName
-      (\ s a -> s{_udvcReportName = a})
-
--- | Data type for the variable. This is a required field.
-udvcDataType :: Lens' UserDefinedVariableConfiguration (Maybe UserDefinedVariableConfigurationDataType)
-udvcDataType
-  = lens _udvcDataType (\ s a -> s{_udvcDataType = a})
-
--- | Variable name in the tag. This is a required field.
-udvcVariableType :: Lens' UserDefinedVariableConfiguration (Maybe UserDefinedVariableConfigurationVariableType)
-udvcVariableType
-  = lens _udvcVariableType
-      (\ s a -> s{_udvcVariableType = a})
-
-instance FromJSON UserDefinedVariableConfiguration
-         where
-        parseJSON
-          = withObject "UserDefinedVariableConfiguration"
-              (\ o ->
-                 UserDefinedVariableConfiguration' <$>
-                   (o .:? "reportName") <*> (o .:? "dataType") <*>
-                     (o .:? "variableType"))
-
-instance ToJSON UserDefinedVariableConfiguration
-         where
-        toJSON UserDefinedVariableConfiguration'{..}
-          = object
-              (catMaybes
-                 [("reportName" .=) <$> _udvcReportName,
-                  ("dataType" .=) <$> _udvcDataType,
-                  ("variableType" .=) <$> _udvcVariableType])
-
--- | The report criteria for a report of type \"CROSS_DIMENSION_REACH\".
---
--- /See:/ 'reportCrossDimensionReachCriteria' smart constructor.
-data ReportCrossDimensionReachCriteria =
-  ReportCrossDimensionReachCriteria'
-    { _rcdrcPivoted            :: !(Maybe Bool)
-    , _rcdrcBreakdown          :: !(Maybe [SortedDimension])
-    , _rcdrcDimension          :: !(Maybe ReportCrossDimensionReachCriteriaDimension)
-    , _rcdrcMetricNames        :: !(Maybe [Text])
-    , _rcdrcDimensionFilters   :: !(Maybe [DimensionValue])
-    , _rcdrcDateRange          :: !(Maybe DateRange)
-    , _rcdrcOverlapMetricNames :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportCrossDimensionReachCriteria' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rcdrcPivoted'
---
--- * 'rcdrcBreakdown'
---
--- * 'rcdrcDimension'
---
--- * 'rcdrcMetricNames'
---
--- * 'rcdrcDimensionFilters'
---
--- * 'rcdrcDateRange'
---
--- * 'rcdrcOverlapMetricNames'
-reportCrossDimensionReachCriteria
-    :: ReportCrossDimensionReachCriteria
-reportCrossDimensionReachCriteria =
-  ReportCrossDimensionReachCriteria'
-    { _rcdrcPivoted = Nothing
-    , _rcdrcBreakdown = Nothing
-    , _rcdrcDimension = Nothing
-    , _rcdrcMetricNames = Nothing
-    , _rcdrcDimensionFilters = Nothing
-    , _rcdrcDateRange = Nothing
-    , _rcdrcOverlapMetricNames = Nothing
-    }
-
-
--- | Whether the report is pivoted or not. Defaults to true.
-rcdrcPivoted :: Lens' ReportCrossDimensionReachCriteria (Maybe Bool)
-rcdrcPivoted
-  = lens _rcdrcPivoted (\ s a -> s{_rcdrcPivoted = a})
-
--- | The list of dimensions the report should include.
-rcdrcBreakdown :: Lens' ReportCrossDimensionReachCriteria [SortedDimension]
-rcdrcBreakdown
-  = lens _rcdrcBreakdown
-      (\ s a -> s{_rcdrcBreakdown = a})
-      . _Default
-      . _Coerce
-
--- | The dimension option.
-rcdrcDimension :: Lens' ReportCrossDimensionReachCriteria (Maybe ReportCrossDimensionReachCriteriaDimension)
-rcdrcDimension
-  = lens _rcdrcDimension
-      (\ s a -> s{_rcdrcDimension = a})
-
--- | The list of names of metrics the report should include.
-rcdrcMetricNames :: Lens' ReportCrossDimensionReachCriteria [Text]
-rcdrcMetricNames
-  = lens _rcdrcMetricNames
-      (\ s a -> s{_rcdrcMetricNames = a})
-      . _Default
-      . _Coerce
-
--- | The list of filters on which dimensions are filtered.
-rcdrcDimensionFilters :: Lens' ReportCrossDimensionReachCriteria [DimensionValue]
-rcdrcDimensionFilters
-  = lens _rcdrcDimensionFilters
-      (\ s a -> s{_rcdrcDimensionFilters = a})
-      . _Default
-      . _Coerce
-
--- | The date range this report should be run for.
-rcdrcDateRange :: Lens' ReportCrossDimensionReachCriteria (Maybe DateRange)
-rcdrcDateRange
-  = lens _rcdrcDateRange
-      (\ s a -> s{_rcdrcDateRange = a})
-
--- | The list of names of overlap metrics the report should include.
-rcdrcOverlapMetricNames :: Lens' ReportCrossDimensionReachCriteria [Text]
-rcdrcOverlapMetricNames
-  = lens _rcdrcOverlapMetricNames
-      (\ s a -> s{_rcdrcOverlapMetricNames = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ReportCrossDimensionReachCriteria
-         where
-        parseJSON
-          = withObject "ReportCrossDimensionReachCriteria"
-              (\ o ->
-                 ReportCrossDimensionReachCriteria' <$>
-                   (o .:? "pivoted") <*> (o .:? "breakdown" .!= mempty)
-                     <*> (o .:? "dimension")
-                     <*> (o .:? "metricNames" .!= mempty)
-                     <*> (o .:? "dimensionFilters" .!= mempty)
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "overlapMetricNames" .!= mempty))
-
-instance ToJSON ReportCrossDimensionReachCriteria
-         where
-        toJSON ReportCrossDimensionReachCriteria'{..}
-          = object
-              (catMaybes
-                 [("pivoted" .=) <$> _rcdrcPivoted,
-                  ("breakdown" .=) <$> _rcdrcBreakdown,
-                  ("dimension" .=) <$> _rcdrcDimension,
-                  ("metricNames" .=) <$> _rcdrcMetricNames,
-                  ("dimensionFilters" .=) <$> _rcdrcDimensionFilters,
-                  ("dateRange" .=) <$> _rcdrcDateRange,
-                  ("overlapMetricNames" .=) <$>
-                    _rcdrcOverlapMetricNames])
-
--- | The URLs where the completed report file can be downloaded.
---
--- /See:/ 'fileURLs' smart constructor.
-data FileURLs =
-  FileURLs'
-    { _fuBrowserURL :: !(Maybe Text)
-    , _fuAPIURL     :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FileURLs' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fuBrowserURL'
---
--- * 'fuAPIURL'
-fileURLs
-    :: FileURLs
-fileURLs = FileURLs' {_fuBrowserURL = Nothing, _fuAPIURL = Nothing}
-
-
--- | The URL for downloading the report data through a browser.
-fuBrowserURL :: Lens' FileURLs (Maybe Text)
-fuBrowserURL
-  = lens _fuBrowserURL (\ s a -> s{_fuBrowserURL = a})
-
--- | The URL for downloading the report data through the API.
-fuAPIURL :: Lens' FileURLs (Maybe Text)
-fuAPIURL = lens _fuAPIURL (\ s a -> s{_fuAPIURL = a})
-
-instance FromJSON FileURLs where
-        parseJSON
-          = withObject "FileURLs"
-              (\ o ->
-                 FileURLs' <$>
-                   (o .:? "browserUrl") <*> (o .:? "apiUrl"))
-
-instance ToJSON FileURLs where
-        toJSON FileURLs'{..}
-          = object
-              (catMaybes
-                 [("browserUrl" .=) <$> _fuBrowserURL,
-                  ("apiUrl" .=) <$> _fuAPIURL])
-
--- | Campaign Creative Association List Response
---
--- /See:/ 'campaignCreativeAssociationsListResponse' smart constructor.
-data CampaignCreativeAssociationsListResponse =
-  CampaignCreativeAssociationsListResponse'
-    { _ccalrCampaignCreativeAssociations :: !(Maybe [CampaignCreativeAssociation])
-    , _ccalrNextPageToken                :: !(Maybe Text)
-    , _ccalrKind                         :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignCreativeAssociationsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccalrCampaignCreativeAssociations'
---
--- * 'ccalrNextPageToken'
---
--- * 'ccalrKind'
-campaignCreativeAssociationsListResponse
-    :: CampaignCreativeAssociationsListResponse
-campaignCreativeAssociationsListResponse =
-  CampaignCreativeAssociationsListResponse'
-    { _ccalrCampaignCreativeAssociations = Nothing
-    , _ccalrNextPageToken = Nothing
-    , _ccalrKind = "dfareporting#campaignCreativeAssociationsListResponse"
-    }
-
-
--- | Campaign creative association collection
-ccalrCampaignCreativeAssociations :: Lens' CampaignCreativeAssociationsListResponse [CampaignCreativeAssociation]
-ccalrCampaignCreativeAssociations
-  = lens _ccalrCampaignCreativeAssociations
-      (\ s a -> s{_ccalrCampaignCreativeAssociations = a})
-      . _Default
-      . _Coerce
-
--- | Pagination token to be used for the next list operation.
-ccalrNextPageToken :: Lens' CampaignCreativeAssociationsListResponse (Maybe Text)
-ccalrNextPageToken
-  = lens _ccalrNextPageToken
-      (\ s a -> s{_ccalrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#campaignCreativeAssociationsListResponse\".
-ccalrKind :: Lens' CampaignCreativeAssociationsListResponse Text
-ccalrKind
-  = lens _ccalrKind (\ s a -> s{_ccalrKind = a})
-
-instance FromJSON
-           CampaignCreativeAssociationsListResponse
-         where
-        parseJSON
-          = withObject
-              "CampaignCreativeAssociationsListResponse"
-              (\ o ->
-                 CampaignCreativeAssociationsListResponse' <$>
-                   (o .:? "campaignCreativeAssociations" .!= mempty) <*>
-                     (o .:? "nextPageToken")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#campaignCreativeAssociationsListResponse"))
-
-instance ToJSON
-           CampaignCreativeAssociationsListResponse
-         where
-        toJSON CampaignCreativeAssociationsListResponse'{..}
-          = object
-              (catMaybes
-                 [("campaignCreativeAssociations" .=) <$>
-                    _ccalrCampaignCreativeAssociations,
-                  ("nextPageToken" .=) <$> _ccalrNextPageToken,
-                  Just ("kind" .= _ccalrKind)])
-
--- | Describes properties of a Planning order.
---
--- /See:/ 'order' smart constructor.
-data Order =
-  Order'
-    { _oSellerOrderId          :: !(Maybe Text)
-    , _oSellerOrganizationName :: !(Maybe Text)
-    , _oKind                   :: !Text
-    , _oAdvertiserId           :: !(Maybe (Textual Int64))
-    , _oPlanningTermId         :: !(Maybe (Textual Int64))
-    , _oAccountId              :: !(Maybe (Textual Int64))
-    , _oName                   :: !(Maybe Text)
-    , _oSiteNames              :: !(Maybe [Text])
-    , _oLastModifiedInfo       :: !(Maybe LastModifiedInfo)
-    , _oBuyerOrganizationName  :: !(Maybe Text)
-    , _oId                     :: !(Maybe (Textual Int64))
-    , _oBuyerInvoiceId         :: !(Maybe Text)
-    , _oComments               :: !(Maybe Text)
-    , _oProjectId              :: !(Maybe (Textual Int64))
-    , _oSubAccountId           :: !(Maybe (Textual Int64))
-    , _oNotes                  :: !(Maybe Text)
-    , _oContacts               :: !(Maybe [OrderContact])
-    , _oSiteId                 :: !(Maybe [Textual Int64])
-    , _oTermsAndConditions     :: !(Maybe Text)
-    , _oApproverUserProFileIds :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Order' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'oSellerOrderId'
---
--- * 'oSellerOrganizationName'
---
--- * 'oKind'
---
--- * 'oAdvertiserId'
---
--- * 'oPlanningTermId'
---
--- * 'oAccountId'
---
--- * 'oName'
---
--- * 'oSiteNames'
---
--- * 'oLastModifiedInfo'
---
--- * 'oBuyerOrganizationName'
---
--- * 'oId'
---
--- * 'oBuyerInvoiceId'
---
--- * 'oComments'
---
--- * 'oProjectId'
---
--- * 'oSubAccountId'
---
--- * 'oNotes'
---
--- * 'oContacts'
---
--- * 'oSiteId'
---
--- * 'oTermsAndConditions'
---
--- * 'oApproverUserProFileIds'
-order
-    :: Order
-order =
-  Order'
-    { _oSellerOrderId = Nothing
-    , _oSellerOrganizationName = Nothing
-    , _oKind = "dfareporting#order"
-    , _oAdvertiserId = Nothing
-    , _oPlanningTermId = Nothing
-    , _oAccountId = Nothing
-    , _oName = Nothing
-    , _oSiteNames = Nothing
-    , _oLastModifiedInfo = Nothing
-    , _oBuyerOrganizationName = Nothing
-    , _oId = Nothing
-    , _oBuyerInvoiceId = Nothing
-    , _oComments = Nothing
-    , _oProjectId = Nothing
-    , _oSubAccountId = Nothing
-    , _oNotes = Nothing
-    , _oContacts = Nothing
-    , _oSiteId = Nothing
-    , _oTermsAndConditions = Nothing
-    , _oApproverUserProFileIds = Nothing
-    }
-
-
--- | Seller order ID associated with this order.
-oSellerOrderId :: Lens' Order (Maybe Text)
-oSellerOrderId
-  = lens _oSellerOrderId
-      (\ s a -> s{_oSellerOrderId = a})
-
--- | Name of the seller organization.
-oSellerOrganizationName :: Lens' Order (Maybe Text)
-oSellerOrganizationName
-  = lens _oSellerOrganizationName
-      (\ s a -> s{_oSellerOrganizationName = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#order\".
-oKind :: Lens' Order Text
-oKind = lens _oKind (\ s a -> s{_oKind = a})
-
--- | Advertiser ID of this order.
-oAdvertiserId :: Lens' Order (Maybe Int64)
-oAdvertiserId
-  = lens _oAdvertiserId
-      (\ s a -> s{_oAdvertiserId = a})
-      . mapping _Coerce
-
--- | ID of the terms and conditions template used in this order.
-oPlanningTermId :: Lens' Order (Maybe Int64)
-oPlanningTermId
-  = lens _oPlanningTermId
-      (\ s a -> s{_oPlanningTermId = a})
-      . mapping _Coerce
-
--- | Account ID of this order.
-oAccountId :: Lens' Order (Maybe Int64)
-oAccountId
-  = lens _oAccountId (\ s a -> s{_oAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this order.
-oName :: Lens' Order (Maybe Text)
-oName = lens _oName (\ s a -> s{_oName = a})
-
--- | Free-form site names this order is associated with.
-oSiteNames :: Lens' Order [Text]
-oSiteNames
-  = lens _oSiteNames (\ s a -> s{_oSiteNames = a}) .
-      _Default
-      . _Coerce
-
--- | Information about the most recent modification of this order.
-oLastModifiedInfo :: Lens' Order (Maybe LastModifiedInfo)
-oLastModifiedInfo
-  = lens _oLastModifiedInfo
-      (\ s a -> s{_oLastModifiedInfo = a})
-
--- | Name of the buyer organization.
-oBuyerOrganizationName :: Lens' Order (Maybe Text)
-oBuyerOrganizationName
-  = lens _oBuyerOrganizationName
-      (\ s a -> s{_oBuyerOrganizationName = a})
-
--- | ID of this order. This is a read-only, auto-generated field.
-oId :: Lens' Order (Maybe Int64)
-oId
-  = lens _oId (\ s a -> s{_oId = a}) . mapping _Coerce
-
--- | Buyer invoice ID associated with this order.
-oBuyerInvoiceId :: Lens' Order (Maybe Text)
-oBuyerInvoiceId
-  = lens _oBuyerInvoiceId
-      (\ s a -> s{_oBuyerInvoiceId = a})
-
--- | Comments in this order.
-oComments :: Lens' Order (Maybe Text)
-oComments
-  = lens _oComments (\ s a -> s{_oComments = a})
-
--- | Project ID of this order.
-oProjectId :: Lens' Order (Maybe Int64)
-oProjectId
-  = lens _oProjectId (\ s a -> s{_oProjectId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this order.
-oSubAccountId :: Lens' Order (Maybe Int64)
-oSubAccountId
-  = lens _oSubAccountId
-      (\ s a -> s{_oSubAccountId = a})
-      . mapping _Coerce
-
--- | Notes of this order.
-oNotes :: Lens' Order (Maybe Text)
-oNotes = lens _oNotes (\ s a -> s{_oNotes = a})
-
--- | Contacts for this order.
-oContacts :: Lens' Order [OrderContact]
-oContacts
-  = lens _oContacts (\ s a -> s{_oContacts = a}) .
-      _Default
-      . _Coerce
-
--- | Site IDs this order is associated with.
-oSiteId :: Lens' Order [Int64]
-oSiteId
-  = lens _oSiteId (\ s a -> s{_oSiteId = a}) . _Default
-      . _Coerce
-
--- | Terms and conditions of this order.
-oTermsAndConditions :: Lens' Order (Maybe Text)
-oTermsAndConditions
-  = lens _oTermsAndConditions
-      (\ s a -> s{_oTermsAndConditions = a})
-
--- | IDs for users that have to approve documents created for this order.
-oApproverUserProFileIds :: Lens' Order [Int64]
-oApproverUserProFileIds
-  = lens _oApproverUserProFileIds
-      (\ s a -> s{_oApproverUserProFileIds = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON Order where
-        parseJSON
-          = withObject "Order"
-              (\ o ->
-                 Order' <$>
-                   (o .:? "sellerOrderId") <*>
-                     (o .:? "sellerOrganizationName")
-                     <*> (o .:? "kind" .!= "dfareporting#order")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "planningTermId")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "siteNames" .!= mempty)
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "buyerOrganizationName")
-                     <*> (o .:? "id")
-                     <*> (o .:? "buyerInvoiceId")
-                     <*> (o .:? "comments")
-                     <*> (o .:? "projectId")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "notes")
-                     <*> (o .:? "contacts" .!= mempty)
-                     <*> (o .:? "siteId" .!= mempty)
-                     <*> (o .:? "termsAndConditions")
-                     <*> (o .:? "approverUserProfileIds" .!= mempty))
-
-instance ToJSON Order where
-        toJSON Order'{..}
-          = object
-              (catMaybes
-                 [("sellerOrderId" .=) <$> _oSellerOrderId,
-                  ("sellerOrganizationName" .=) <$>
-                    _oSellerOrganizationName,
-                  Just ("kind" .= _oKind),
-                  ("advertiserId" .=) <$> _oAdvertiserId,
-                  ("planningTermId" .=) <$> _oPlanningTermId,
-                  ("accountId" .=) <$> _oAccountId,
-                  ("name" .=) <$> _oName,
-                  ("siteNames" .=) <$> _oSiteNames,
-                  ("lastModifiedInfo" .=) <$> _oLastModifiedInfo,
-                  ("buyerOrganizationName" .=) <$>
-                    _oBuyerOrganizationName,
-                  ("id" .=) <$> _oId,
-                  ("buyerInvoiceId" .=) <$> _oBuyerInvoiceId,
-                  ("comments" .=) <$> _oComments,
-                  ("projectId" .=) <$> _oProjectId,
-                  ("subaccountId" .=) <$> _oSubAccountId,
-                  ("notes" .=) <$> _oNotes,
-                  ("contacts" .=) <$> _oContacts,
-                  ("siteId" .=) <$> _oSiteId,
-                  ("termsAndConditions" .=) <$> _oTermsAndConditions,
-                  ("approverUserProfileIds" .=) <$>
-                    _oApproverUserProFileIds])
-
--- | Creative Asset ID.
---
--- /See:/ 'creativeAssetId' smart constructor.
-data CreativeAssetId =
-  CreativeAssetId'
-    { _caiName :: !(Maybe Text)
-    , _caiType :: !(Maybe CreativeAssetIdType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAssetId' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'caiName'
---
--- * 'caiType'
-creativeAssetId
-    :: CreativeAssetId
-creativeAssetId = CreativeAssetId' {_caiName = Nothing, _caiType = Nothing}
-
-
--- | Name of the creative asset. This is a required field while inserting an
--- asset. After insertion, this assetIdentifier is used to identify the
--- uploaded asset. Characters in the name must be alphanumeric or one of
--- the following: \".-_ \". Spaces are allowed.
-caiName :: Lens' CreativeAssetId (Maybe Text)
-caiName = lens _caiName (\ s a -> s{_caiName = a})
-
--- | Type of asset to upload. This is a required field. FLASH and IMAGE are
--- no longer supported for new uploads. All image assets should use
--- HTML_IMAGE.
-caiType :: Lens' CreativeAssetId (Maybe CreativeAssetIdType)
-caiType = lens _caiType (\ s a -> s{_caiType = a})
-
-instance FromJSON CreativeAssetId where
-        parseJSON
-          = withObject "CreativeAssetId"
-              (\ o ->
-                 CreativeAssetId' <$>
-                   (o .:? "name") <*> (o .:? "type"))
-
-instance ToJSON CreativeAssetId where
-        toJSON CreativeAssetId'{..}
-          = object
-              (catMaybes
-                 [("name" .=) <$> _caiName, ("type" .=) <$> _caiType])
-
--- | Frequency Cap.
---
--- /See:/ 'frequencyCap' smart constructor.
-data FrequencyCap =
-  FrequencyCap'
-    { _fcImpressions :: !(Maybe (Textual Int64))
-    , _fcDuration    :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FrequencyCap' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcImpressions'
---
--- * 'fcDuration'
-frequencyCap
-    :: FrequencyCap
-frequencyCap = FrequencyCap' {_fcImpressions = Nothing, _fcDuration = Nothing}
-
-
--- | Number of times an individual user can be served the ad within the
--- specified duration. Acceptable values are 1 to 15, inclusive.
-fcImpressions :: Lens' FrequencyCap (Maybe Int64)
-fcImpressions
-  = lens _fcImpressions
-      (\ s a -> s{_fcImpressions = a})
-      . mapping _Coerce
-
--- | Duration of time, in seconds, for this frequency cap. The maximum
--- duration is 90 days. Acceptable values are 1 to 7776000, inclusive.
-fcDuration :: Lens' FrequencyCap (Maybe Int64)
-fcDuration
-  = lens _fcDuration (\ s a -> s{_fcDuration = a}) .
-      mapping _Coerce
-
-instance FromJSON FrequencyCap where
-        parseJSON
-          = withObject "FrequencyCap"
-              (\ o ->
-                 FrequencyCap' <$>
-                   (o .:? "impressions") <*> (o .:? "duration"))
-
-instance ToJSON FrequencyCap where
-        toJSON FrequencyCap'{..}
-          = object
-              (catMaybes
-                 [("impressions" .=) <$> _fcImpressions,
-                  ("duration" .=) <$> _fcDuration])
-
--- | Represents a File resource. A file contains the metadata for a report
--- run. It shows the status of the run and holds the URLs to the generated
--- report data if the run is finished and the status is
--- \"REPORT_AVAILABLE\".
---
--- /See:/ 'file' smart constructor.
-data File =
-  File'
-    { _filStatus           :: !(Maybe FileStatus)
-    , _filEtag             :: !(Maybe Text)
-    , _filKind             :: !Text
-    , _filURLs             :: !(Maybe FileURLs)
-    , _filReportId         :: !(Maybe (Textual Int64))
-    , _filDateRange        :: !(Maybe DateRange)
-    , _filFormat           :: !(Maybe FileFormat)
-    , _filLastModifiedTime :: !(Maybe (Textual Int64))
-    , _filId               :: !(Maybe (Textual Int64))
-    , _filFileName         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'File' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'filStatus'
---
--- * 'filEtag'
---
--- * 'filKind'
---
--- * 'filURLs'
---
--- * 'filReportId'
---
--- * 'filDateRange'
---
--- * 'filFormat'
---
--- * 'filLastModifiedTime'
---
--- * 'filId'
---
--- * 'filFileName'
-file
-    :: File
-file =
-  File'
-    { _filStatus = Nothing
-    , _filEtag = Nothing
-    , _filKind = "dfareporting#file"
-    , _filURLs = Nothing
-    , _filReportId = Nothing
-    , _filDateRange = Nothing
-    , _filFormat = Nothing
-    , _filLastModifiedTime = Nothing
-    , _filId = Nothing
-    , _filFileName = Nothing
-    }
-
-
--- | The status of the report file.
-filStatus :: Lens' File (Maybe FileStatus)
-filStatus
-  = lens _filStatus (\ s a -> s{_filStatus = a})
-
--- | The eTag of this response for caching purposes.
-filEtag :: Lens' File (Maybe Text)
-filEtag = lens _filEtag (\ s a -> s{_filEtag = a})
-
--- | The kind of resource this is, in this case dfareporting#file.
-filKind :: Lens' File Text
-filKind = lens _filKind (\ s a -> s{_filKind = a})
-
--- | The URLs where the completed report file can be downloaded.
-filURLs :: Lens' File (Maybe FileURLs)
-filURLs = lens _filURLs (\ s a -> s{_filURLs = a})
-
--- | The ID of the report this file was generated from.
-filReportId :: Lens' File (Maybe Int64)
-filReportId
-  = lens _filReportId (\ s a -> s{_filReportId = a}) .
-      mapping _Coerce
-
--- | The date range for which the file has report data. The date range will
--- always be the absolute date range for which the report is run.
-filDateRange :: Lens' File (Maybe DateRange)
-filDateRange
-  = lens _filDateRange (\ s a -> s{_filDateRange = a})
-
--- | The output format of the report. Only available once the file is
--- available.
-filFormat :: Lens' File (Maybe FileFormat)
-filFormat
-  = lens _filFormat (\ s a -> s{_filFormat = a})
-
--- | The timestamp in milliseconds since epoch when this file was last
--- modified.
-filLastModifiedTime :: Lens' File (Maybe Int64)
-filLastModifiedTime
-  = lens _filLastModifiedTime
-      (\ s a -> s{_filLastModifiedTime = a})
-      . mapping _Coerce
-
--- | The unique ID of this report file.
-filId :: Lens' File (Maybe Int64)
-filId
-  = lens _filId (\ s a -> s{_filId = a}) .
-      mapping _Coerce
-
--- | The filename of the file.
-filFileName :: Lens' File (Maybe Text)
-filFileName
-  = lens _filFileName (\ s a -> s{_filFileName = a})
-
-instance FromJSON File where
-        parseJSON
-          = withObject "File"
-              (\ o ->
-                 File' <$>
-                   (o .:? "status") <*> (o .:? "etag") <*>
-                     (o .:? "kind" .!= "dfareporting#file")
-                     <*> (o .:? "urls")
-                     <*> (o .:? "reportId")
-                     <*> (o .:? "dateRange")
-                     <*> (o .:? "format")
-                     <*> (o .:? "lastModifiedTime")
-                     <*> (o .:? "id")
-                     <*> (o .:? "fileName"))
-
-instance ToJSON File where
-        toJSON File'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _filStatus,
-                  ("etag" .=) <$> _filEtag, Just ("kind" .= _filKind),
-                  ("urls" .=) <$> _filURLs,
-                  ("reportId" .=) <$> _filReportId,
-                  ("dateRange" .=) <$> _filDateRange,
-                  ("format" .=) <$> _filFormat,
-                  ("lastModifiedTime" .=) <$> _filLastModifiedTime,
-                  ("id" .=) <$> _filId,
-                  ("fileName" .=) <$> _filFileName])
-
--- | Creative Group List Response
---
--- /See:/ 'creativeGroupsListResponse' smart constructor.
-data CreativeGroupsListResponse =
-  CreativeGroupsListResponse'
-    { _cglrCreativeGroups :: !(Maybe [CreativeGroup])
-    , _cglrNextPageToken  :: !(Maybe Text)
-    , _cglrKind           :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cglrCreativeGroups'
---
--- * 'cglrNextPageToken'
---
--- * 'cglrKind'
-creativeGroupsListResponse
-    :: CreativeGroupsListResponse
-creativeGroupsListResponse =
-  CreativeGroupsListResponse'
-    { _cglrCreativeGroups = Nothing
-    , _cglrNextPageToken = Nothing
-    , _cglrKind = "dfareporting#creativeGroupsListResponse"
-    }
-
-
--- | Creative group collection.
-cglrCreativeGroups :: Lens' CreativeGroupsListResponse [CreativeGroup]
-cglrCreativeGroups
-  = lens _cglrCreativeGroups
-      (\ s a -> s{_cglrCreativeGroups = a})
-      . _Default
-      . _Coerce
-
--- | Pagination token to be used for the next list operation.
-cglrNextPageToken :: Lens' CreativeGroupsListResponse (Maybe Text)
-cglrNextPageToken
-  = lens _cglrNextPageToken
-      (\ s a -> s{_cglrNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeGroupsListResponse\".
-cglrKind :: Lens' CreativeGroupsListResponse Text
-cglrKind = lens _cglrKind (\ s a -> s{_cglrKind = a})
-
-instance FromJSON CreativeGroupsListResponse where
-        parseJSON
-          = withObject "CreativeGroupsListResponse"
-              (\ o ->
-                 CreativeGroupsListResponse' <$>
-                   (o .:? "creativeGroups" .!= mempty) <*>
-                     (o .:? "nextPageToken")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#creativeGroupsListResponse"))
-
-instance ToJSON CreativeGroupsListResponse where
-        toJSON CreativeGroupsListResponse'{..}
-          = object
-              (catMaybes
-                 [("creativeGroups" .=) <$> _cglrCreativeGroups,
-                  ("nextPageToken" .=) <$> _cglrNextPageToken,
-                  Just ("kind" .= _cglrKind)])
-
--- | Mobile Carrier List Response
---
--- /See:/ 'mobileCarriersListResponse' smart constructor.
-data MobileCarriersListResponse =
-  MobileCarriersListResponse'
-    { _mclrMobileCarriers :: !(Maybe [MobileCarrier])
-    , _mclrKind           :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileCarriersListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mclrMobileCarriers'
---
--- * 'mclrKind'
-mobileCarriersListResponse
-    :: MobileCarriersListResponse
-mobileCarriersListResponse =
-  MobileCarriersListResponse'
-    { _mclrMobileCarriers = Nothing
-    , _mclrKind = "dfareporting#mobileCarriersListResponse"
-    }
-
-
--- | Mobile carrier collection.
-mclrMobileCarriers :: Lens' MobileCarriersListResponse [MobileCarrier]
-mclrMobileCarriers
-  = lens _mclrMobileCarriers
-      (\ s a -> s{_mclrMobileCarriers = a})
-      . _Default
-      . _Coerce
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#mobileCarriersListResponse\".
-mclrKind :: Lens' MobileCarriersListResponse Text
-mclrKind = lens _mclrKind (\ s a -> s{_mclrKind = a})
-
-instance FromJSON MobileCarriersListResponse where
-        parseJSON
-          = withObject "MobileCarriersListResponse"
-              (\ o ->
-                 MobileCarriersListResponse' <$>
-                   (o .:? "mobileCarriers" .!= mempty) <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#mobileCarriersListResponse"))
-
-instance ToJSON MobileCarriersListResponse where
-        toJSON MobileCarriersListResponse'{..}
-          = object
-              (catMaybes
-                 [("mobileCarriers" .=) <$> _mclrMobileCarriers,
-                  Just ("kind" .= _mclrKind)])
-
--- | CreativeAssets contains properties of a creative asset file which will
--- be uploaded or has already been uploaded. Refer to the creative sample
--- code for how to upload assets and insert a creative.
---
--- /See:/ 'creativeAssetMetadata' smart constructor.
-data CreativeAssetMetadata =
-  CreativeAssetMetadata'
-    { _camaKind                  :: !Text
-    , _camaAssetIdentifier       :: !(Maybe CreativeAssetId)
-    , _camaIdDimensionValue      :: !(Maybe DimensionValue)
-    , _camaClickTags             :: !(Maybe [ClickTag])
-    , _camaWarnedValidationRules :: !(Maybe [CreativeAssetMetadataWarnedValidationRulesItem])
-    , _camaId                    :: !(Maybe (Textual Int64))
-    , _camaDetectedFeatures      :: !(Maybe [CreativeAssetMetadataDetectedFeaturesItem])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAssetMetadata' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'camaKind'
---
--- * 'camaAssetIdentifier'
---
--- * 'camaIdDimensionValue'
---
--- * 'camaClickTags'
---
--- * 'camaWarnedValidationRules'
---
--- * 'camaId'
---
--- * 'camaDetectedFeatures'
-creativeAssetMetadata
-    :: CreativeAssetMetadata
-creativeAssetMetadata =
-  CreativeAssetMetadata'
-    { _camaKind = "dfareporting#creativeAssetMetadata"
-    , _camaAssetIdentifier = Nothing
-    , _camaIdDimensionValue = Nothing
-    , _camaClickTags = Nothing
-    , _camaWarnedValidationRules = Nothing
-    , _camaId = Nothing
-    , _camaDetectedFeatures = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeAssetMetadata\".
-camaKind :: Lens' CreativeAssetMetadata Text
-camaKind = lens _camaKind (\ s a -> s{_camaKind = a})
-
--- | ID of the creative asset. This is a required field.
-camaAssetIdentifier :: Lens' CreativeAssetMetadata (Maybe CreativeAssetId)
-camaAssetIdentifier
-  = lens _camaAssetIdentifier
-      (\ s a -> s{_camaAssetIdentifier = a})
-
--- | Dimension value for the numeric ID of the asset. This is a read-only,
--- auto-generated field.
-camaIdDimensionValue :: Lens' CreativeAssetMetadata (Maybe DimensionValue)
-camaIdDimensionValue
-  = lens _camaIdDimensionValue
-      (\ s a -> s{_camaIdDimensionValue = a})
-
--- | List of detected click tags for assets. This is a read-only
--- auto-generated field.
-camaClickTags :: Lens' CreativeAssetMetadata [ClickTag]
-camaClickTags
-  = lens _camaClickTags
-      (\ s a -> s{_camaClickTags = a})
-      . _Default
-      . _Coerce
-
--- | Rules validated during code generation that generated a warning. This is
--- a read-only, auto-generated field. Possible values are: -
--- \"ADMOB_REFERENCED\" - \"ASSET_FORMAT_UNSUPPORTED_DCM\" -
--- \"ASSET_INVALID\" - \"CLICK_TAG_HARD_CODED\" - \"CLICK_TAG_INVALID\" -
--- \"CLICK_TAG_IN_GWD\" - \"CLICK_TAG_MISSING\" -
--- \"CLICK_TAG_MORE_THAN_ONE\" - \"CLICK_TAG_NON_TOP_LEVEL\" -
--- \"COMPONENT_UNSUPPORTED_DCM\" - \"ENABLER_UNSUPPORTED_METHOD_DCM\" -
--- \"EXTERNAL_FILE_REFERENCED\" - \"FILE_DETAIL_EMPTY\" -
--- \"FILE_TYPE_INVALID\" - \"GWD_PROPERTIES_INVALID\" -
--- \"HTML5_FEATURE_UNSUPPORTED\" - \"LINKED_FILE_NOT_FOUND\" -
--- \"MAX_FLASH_VERSION_11\" - \"MRAID_REFERENCED\" - \"NOT_SSL_COMPLIANT\"
--- - \"ORPHANED_ASSET\" - \"PRIMARY_HTML_MISSING\" - \"SVG_INVALID\" -
--- \"ZIP_INVALID\"
-camaWarnedValidationRules :: Lens' CreativeAssetMetadata [CreativeAssetMetadataWarnedValidationRulesItem]
-camaWarnedValidationRules
-  = lens _camaWarnedValidationRules
-      (\ s a -> s{_camaWarnedValidationRules = a})
-      . _Default
-      . _Coerce
-
--- | Numeric ID of the asset. This is a read-only, auto-generated field.
-camaId :: Lens' CreativeAssetMetadata (Maybe Int64)
-camaId
-  = lens _camaId (\ s a -> s{_camaId = a}) .
-      mapping _Coerce
-
--- | List of feature dependencies for the creative asset that are detected by
--- Campaign Manager. Feature dependencies are features that a browser must
--- be able to support in order to render your HTML5 creative correctly.
--- This is a read-only, auto-generated field.
-camaDetectedFeatures :: Lens' CreativeAssetMetadata [CreativeAssetMetadataDetectedFeaturesItem]
-camaDetectedFeatures
-  = lens _camaDetectedFeatures
-      (\ s a -> s{_camaDetectedFeatures = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON CreativeAssetMetadata where
-        parseJSON
-          = withObject "CreativeAssetMetadata"
-              (\ o ->
-                 CreativeAssetMetadata' <$>
-                   (o .:? "kind" .!=
-                      "dfareporting#creativeAssetMetadata")
-                     <*> (o .:? "assetIdentifier")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "clickTags" .!= mempty)
-                     <*> (o .:? "warnedValidationRules" .!= mempty)
-                     <*> (o .:? "id")
-                     <*> (o .:? "detectedFeatures" .!= mempty))
-
-instance ToJSON CreativeAssetMetadata where
-        toJSON CreativeAssetMetadata'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _camaKind),
-                  ("assetIdentifier" .=) <$> _camaAssetIdentifier,
-                  ("idDimensionValue" .=) <$> _camaIdDimensionValue,
-                  ("clickTags" .=) <$> _camaClickTags,
-                  ("warnedValidationRules" .=) <$>
-                    _camaWarnedValidationRules,
-                  ("id" .=) <$> _camaId,
-                  ("detectedFeatures" .=) <$> _camaDetectedFeatures])
-
--- | Omniture Integration Settings.
---
--- /See:/ 'omnitureSettings' smart constructor.
-data OmnitureSettings =
-  OmnitureSettings'
-    { _osOmnitureCostDataEnabled    :: !(Maybe Bool)
-    , _osOmnitureIntegrationEnabled :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OmnitureSettings' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osOmnitureCostDataEnabled'
---
--- * 'osOmnitureIntegrationEnabled'
-omnitureSettings
-    :: OmnitureSettings
-omnitureSettings =
-  OmnitureSettings'
-    { _osOmnitureCostDataEnabled = Nothing
-    , _osOmnitureIntegrationEnabled = Nothing
-    }
-
-
--- | Whether placement cost data will be sent to Omniture. This property can
--- be enabled only if omnitureIntegrationEnabled is true.
-osOmnitureCostDataEnabled :: Lens' OmnitureSettings (Maybe Bool)
-osOmnitureCostDataEnabled
-  = lens _osOmnitureCostDataEnabled
-      (\ s a -> s{_osOmnitureCostDataEnabled = a})
-
--- | Whether Omniture integration is enabled. This property can be enabled
--- only when the \"Advanced Ad Serving\" account setting is enabled.
-osOmnitureIntegrationEnabled :: Lens' OmnitureSettings (Maybe Bool)
-osOmnitureIntegrationEnabled
-  = lens _osOmnitureIntegrationEnabled
-      (\ s a -> s{_osOmnitureIntegrationEnabled = a})
-
-instance FromJSON OmnitureSettings where
-        parseJSON
-          = withObject "OmnitureSettings"
-              (\ o ->
-                 OmnitureSettings' <$>
-                   (o .:? "omnitureCostDataEnabled") <*>
-                     (o .:? "omnitureIntegrationEnabled"))
-
-instance ToJSON OmnitureSettings where
-        toJSON OmnitureSettings'{..}
-          = object
-              (catMaybes
-                 [("omnitureCostDataEnabled" .=) <$>
-                    _osOmnitureCostDataEnabled,
-                  ("omnitureIntegrationEnabled" .=) <$>
-                    _osOmnitureIntegrationEnabled])
-
--- | Contains information about an internet connection type that can be
--- targeted by ads. Clients can use the connection type to target mobile
--- vs. broadband users.
---
--- /See:/ 'connectionType' smart constructor.
-data ConnectionType =
-  ConnectionType'
-    { _cttKind :: !Text
-    , _cttName :: !(Maybe Text)
-    , _cttId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConnectionType' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cttKind'
---
--- * 'cttName'
---
--- * 'cttId'
-connectionType
-    :: ConnectionType
-connectionType =
-  ConnectionType'
-    { _cttKind = "dfareporting#connectionType"
-    , _cttName = Nothing
-    , _cttId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#connectionType\".
-cttKind :: Lens' ConnectionType Text
-cttKind = lens _cttKind (\ s a -> s{_cttKind = a})
-
--- | Name of this connection type.
-cttName :: Lens' ConnectionType (Maybe Text)
-cttName = lens _cttName (\ s a -> s{_cttName = a})
-
--- | ID of this connection type.
-cttId :: Lens' ConnectionType (Maybe Int64)
-cttId
-  = lens _cttId (\ s a -> s{_cttId = a}) .
-      mapping _Coerce
-
-instance FromJSON ConnectionType where
-        parseJSON
-          = withObject "ConnectionType"
-              (\ o ->
-                 ConnectionType' <$>
-                   (o .:? "kind" .!= "dfareporting#connectionType") <*>
-                     (o .:? "name")
-                     <*> (o .:? "id"))
-
-instance ToJSON ConnectionType where
-        toJSON ConnectionType'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cttKind), ("name" .=) <$> _cttName,
-                  ("id" .=) <$> _cttId])
-
--- | Contains properties of a package or roadblock.
---
--- /See:/ 'placementGroup' smart constructor.
-data PlacementGroup =
-  PlacementGroup'
-    { _plalPlacementStrategyId              :: !(Maybe (Textual Int64))
-    , _plalSiteIdDimensionValue             :: !(Maybe DimensionValue)
-    , _plalPricingSchedule                  :: !(Maybe PricingSchedule)
-    , _plalKind                             :: !Text
-    , _plalCampaignIdDimensionValue         :: !(Maybe DimensionValue)
-    , _plalAdvertiserId                     :: !(Maybe (Textual Int64))
-    , _plalAdvertiserIdDimensionValue       :: !(Maybe DimensionValue)
-    , _plalCampaignId                       :: !(Maybe (Textual Int64))
-    , _plalIdDimensionValue                 :: !(Maybe DimensionValue)
-    , _plalPlacementGroupType               :: !(Maybe PlacementGroupPlacementGroupType)
-    , _plalContentCategoryId                :: !(Maybe (Textual Int64))
-    , _plalDirectorySiteIdDimensionValue    :: !(Maybe DimensionValue)
-    , _plalAccountId                        :: !(Maybe (Textual Int64))
-    , _plalName                             :: !(Maybe Text)
-    , _plalDirectorySiteId                  :: !(Maybe (Textual Int64))
-    , _plalCreateInfo                       :: !(Maybe LastModifiedInfo)
-    , _plalChildPlacementIds                :: !(Maybe [Textual Int64])
-    , _plalLastModifiedInfo                 :: !(Maybe LastModifiedInfo)
-    , _plalId                               :: !(Maybe (Textual Int64))
-    , _plalPrimaryPlacementId               :: !(Maybe (Textual Int64))
-    , _plalSubAccountId                     :: !(Maybe (Textual Int64))
-    , _plalExternalId                       :: !(Maybe Text)
-    , _plalComment                          :: !(Maybe Text)
-    , _plalPrimaryPlacementIdDimensionValue :: !(Maybe DimensionValue)
-    , _plalSiteId                           :: !(Maybe (Textual Int64))
-    , _plalArchived                         :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'plalPlacementStrategyId'
---
--- * 'plalSiteIdDimensionValue'
---
--- * 'plalPricingSchedule'
---
--- * 'plalKind'
---
--- * 'plalCampaignIdDimensionValue'
---
--- * 'plalAdvertiserId'
---
--- * 'plalAdvertiserIdDimensionValue'
---
--- * 'plalCampaignId'
---
--- * 'plalIdDimensionValue'
---
--- * 'plalPlacementGroupType'
---
--- * 'plalContentCategoryId'
---
--- * 'plalDirectorySiteIdDimensionValue'
---
--- * 'plalAccountId'
---
--- * 'plalName'
---
--- * 'plalDirectorySiteId'
---
--- * 'plalCreateInfo'
---
--- * 'plalChildPlacementIds'
---
--- * 'plalLastModifiedInfo'
---
--- * 'plalId'
---
--- * 'plalPrimaryPlacementId'
---
--- * 'plalSubAccountId'
---
--- * 'plalExternalId'
---
--- * 'plalComment'
---
--- * 'plalPrimaryPlacementIdDimensionValue'
---
--- * 'plalSiteId'
---
--- * 'plalArchived'
-placementGroup
-    :: PlacementGroup
-placementGroup =
-  PlacementGroup'
-    { _plalPlacementStrategyId = Nothing
-    , _plalSiteIdDimensionValue = Nothing
-    , _plalPricingSchedule = Nothing
-    , _plalKind = "dfareporting#placementGroup"
-    , _plalCampaignIdDimensionValue = Nothing
-    , _plalAdvertiserId = Nothing
-    , _plalAdvertiserIdDimensionValue = Nothing
-    , _plalCampaignId = Nothing
-    , _plalIdDimensionValue = Nothing
-    , _plalPlacementGroupType = Nothing
-    , _plalContentCategoryId = Nothing
-    , _plalDirectorySiteIdDimensionValue = Nothing
-    , _plalAccountId = Nothing
-    , _plalName = Nothing
-    , _plalDirectorySiteId = Nothing
-    , _plalCreateInfo = Nothing
-    , _plalChildPlacementIds = Nothing
-    , _plalLastModifiedInfo = Nothing
-    , _plalId = Nothing
-    , _plalPrimaryPlacementId = Nothing
-    , _plalSubAccountId = Nothing
-    , _plalExternalId = Nothing
-    , _plalComment = Nothing
-    , _plalPrimaryPlacementIdDimensionValue = Nothing
-    , _plalSiteId = Nothing
-    , _plalArchived = Nothing
-    }
-
-
--- | ID of the placement strategy assigned to this placement group.
-plalPlacementStrategyId :: Lens' PlacementGroup (Maybe Int64)
-plalPlacementStrategyId
-  = lens _plalPlacementStrategyId
-      (\ s a -> s{_plalPlacementStrategyId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the site. This is a read-only,
--- auto-generated field.
-plalSiteIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalSiteIdDimensionValue
-  = lens _plalSiteIdDimensionValue
-      (\ s a -> s{_plalSiteIdDimensionValue = a})
-
--- | Pricing schedule of this placement group. This field is required on
--- insertion.
-plalPricingSchedule :: Lens' PlacementGroup (Maybe PricingSchedule)
-plalPricingSchedule
-  = lens _plalPricingSchedule
-      (\ s a -> s{_plalPricingSchedule = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placementGroup\".
-plalKind :: Lens' PlacementGroup Text
-plalKind = lens _plalKind (\ s a -> s{_plalKind = a})
-
--- | Dimension value for the ID of the campaign. This is a read-only,
--- auto-generated field.
-plalCampaignIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalCampaignIdDimensionValue
-  = lens _plalCampaignIdDimensionValue
-      (\ s a -> s{_plalCampaignIdDimensionValue = a})
-
--- | Advertiser ID of this placement group. This is a required field on
--- insertion.
-plalAdvertiserId :: Lens' PlacementGroup (Maybe Int64)
-plalAdvertiserId
-  = lens _plalAdvertiserId
-      (\ s a -> s{_plalAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-plalAdvertiserIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalAdvertiserIdDimensionValue
-  = lens _plalAdvertiserIdDimensionValue
-      (\ s a -> s{_plalAdvertiserIdDimensionValue = a})
-
--- | Campaign ID of this placement group. This field is required on
--- insertion.
-plalCampaignId :: Lens' PlacementGroup (Maybe Int64)
-plalCampaignId
-  = lens _plalCampaignId
-      (\ s a -> s{_plalCampaignId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of this placement group. This is a read-only,
--- auto-generated field.
-plalIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalIdDimensionValue
-  = lens _plalIdDimensionValue
-      (\ s a -> s{_plalIdDimensionValue = a})
-
--- | Type of this placement group. A package is a simple group of placements
--- that acts as a single pricing point for a group of tags. A roadblock is
--- a group of placements that not only acts as a single pricing point, but
--- also assumes that all the tags in it will be served at the same time. A
--- roadblock requires one of its assigned placements to be marked as
--- primary for reporting. This field is required on insertion.
-plalPlacementGroupType :: Lens' PlacementGroup (Maybe PlacementGroupPlacementGroupType)
-plalPlacementGroupType
-  = lens _plalPlacementGroupType
-      (\ s a -> s{_plalPlacementGroupType = a})
-
--- | ID of the content category assigned to this placement group.
-plalContentCategoryId :: Lens' PlacementGroup (Maybe Int64)
-plalContentCategoryId
-  = lens _plalContentCategoryId
-      (\ s a -> s{_plalContentCategoryId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the directory site. This is a read-only,
--- auto-generated field.
-plalDirectorySiteIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalDirectorySiteIdDimensionValue
-  = lens _plalDirectorySiteIdDimensionValue
-      (\ s a -> s{_plalDirectorySiteIdDimensionValue = a})
-
--- | Account ID of this placement group. This is a read-only field that can
--- be left blank.
-plalAccountId :: Lens' PlacementGroup (Maybe Int64)
-plalAccountId
-  = lens _plalAccountId
-      (\ s a -> s{_plalAccountId = a})
-      . mapping _Coerce
-
--- | Name of this placement group. This is a required field and must be less
--- than 256 characters long.
-plalName :: Lens' PlacementGroup (Maybe Text)
-plalName = lens _plalName (\ s a -> s{_plalName = a})
-
--- | Directory site ID associated with this placement group. On insert, you
--- must set either this field or the site_id field to specify the site
--- associated with this placement group. This is a required field that is
--- read-only after insertion.
-plalDirectorySiteId :: Lens' PlacementGroup (Maybe Int64)
-plalDirectorySiteId
-  = lens _plalDirectorySiteId
-      (\ s a -> s{_plalDirectorySiteId = a})
-      . mapping _Coerce
-
--- | Information about the creation of this placement group. This is a
--- read-only field.
-plalCreateInfo :: Lens' PlacementGroup (Maybe LastModifiedInfo)
-plalCreateInfo
-  = lens _plalCreateInfo
-      (\ s a -> s{_plalCreateInfo = a})
-
--- | IDs of placements which are assigned to this placement group. This is a
--- read-only, auto-generated field.
-plalChildPlacementIds :: Lens' PlacementGroup [Int64]
-plalChildPlacementIds
-  = lens _plalChildPlacementIds
-      (\ s a -> s{_plalChildPlacementIds = a})
-      . _Default
-      . _Coerce
-
--- | Information about the most recent modification of this placement group.
--- This is a read-only field.
-plalLastModifiedInfo :: Lens' PlacementGroup (Maybe LastModifiedInfo)
-plalLastModifiedInfo
-  = lens _plalLastModifiedInfo
-      (\ s a -> s{_plalLastModifiedInfo = a})
-
--- | ID of this placement group. This is a read-only, auto-generated field.
-plalId :: Lens' PlacementGroup (Maybe Int64)
-plalId
-  = lens _plalId (\ s a -> s{_plalId = a}) .
-      mapping _Coerce
-
--- | ID of the primary placement, used to calculate the media cost of a
--- roadblock (placement group). Modifying this field will automatically
--- modify the primary field on all affected roadblock child placements.
-plalPrimaryPlacementId :: Lens' PlacementGroup (Maybe Int64)
-plalPrimaryPlacementId
-  = lens _plalPrimaryPlacementId
-      (\ s a -> s{_plalPrimaryPlacementId = a})
-      . mapping _Coerce
-
--- | Subaccount ID of this placement group. This is a read-only field that
--- can be left blank.
-plalSubAccountId :: Lens' PlacementGroup (Maybe Int64)
-plalSubAccountId
-  = lens _plalSubAccountId
-      (\ s a -> s{_plalSubAccountId = a})
-      . mapping _Coerce
-
--- | External ID for this placement.
-plalExternalId :: Lens' PlacementGroup (Maybe Text)
-plalExternalId
-  = lens _plalExternalId
-      (\ s a -> s{_plalExternalId = a})
-
--- | Comments for this placement group.
-plalComment :: Lens' PlacementGroup (Maybe Text)
-plalComment
-  = lens _plalComment (\ s a -> s{_plalComment = a})
-
--- | Dimension value for the ID of the primary placement. This is a
--- read-only, auto-generated field.
-plalPrimaryPlacementIdDimensionValue :: Lens' PlacementGroup (Maybe DimensionValue)
-plalPrimaryPlacementIdDimensionValue
-  = lens _plalPrimaryPlacementIdDimensionValue
-      (\ s a ->
-         s{_plalPrimaryPlacementIdDimensionValue = a})
-
--- | Site ID associated with this placement group. On insert, you must set
--- either this field or the directorySiteId field to specify the site
--- associated with this placement group. This is a required field that is
--- read-only after insertion.
-plalSiteId :: Lens' PlacementGroup (Maybe Int64)
-plalSiteId
-  = lens _plalSiteId (\ s a -> s{_plalSiteId = a}) .
-      mapping _Coerce
-
--- | Whether this placement group is archived.
-plalArchived :: Lens' PlacementGroup (Maybe Bool)
-plalArchived
-  = lens _plalArchived (\ s a -> s{_plalArchived = a})
-
-instance FromJSON PlacementGroup where
-        parseJSON
-          = withObject "PlacementGroup"
-              (\ o ->
-                 PlacementGroup' <$>
-                   (o .:? "placementStrategyId") <*>
-                     (o .:? "siteIdDimensionValue")
-                     <*> (o .:? "pricingSchedule")
-                     <*> (o .:? "kind" .!= "dfareporting#placementGroup")
-                     <*> (o .:? "campaignIdDimensionValue")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "campaignId")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "placementGroupType")
-                     <*> (o .:? "contentCategoryId")
-                     <*> (o .:? "directorySiteIdDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "directorySiteId")
-                     <*> (o .:? "createInfo")
-                     <*> (o .:? "childPlacementIds" .!= mempty)
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "primaryPlacementId")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "externalId")
-                     <*> (o .:? "comment")
-                     <*> (o .:? "primaryPlacementIdDimensionValue")
-                     <*> (o .:? "siteId")
-                     <*> (o .:? "archived"))
-
-instance ToJSON PlacementGroup where
-        toJSON PlacementGroup'{..}
-          = object
-              (catMaybes
-                 [("placementStrategyId" .=) <$>
-                    _plalPlacementStrategyId,
-                  ("siteIdDimensionValue" .=) <$>
-                    _plalSiteIdDimensionValue,
-                  ("pricingSchedule" .=) <$> _plalPricingSchedule,
-                  Just ("kind" .= _plalKind),
-                  ("campaignIdDimensionValue" .=) <$>
-                    _plalCampaignIdDimensionValue,
-                  ("advertiserId" .=) <$> _plalAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _plalAdvertiserIdDimensionValue,
-                  ("campaignId" .=) <$> _plalCampaignId,
-                  ("idDimensionValue" .=) <$> _plalIdDimensionValue,
-                  ("placementGroupType" .=) <$>
-                    _plalPlacementGroupType,
-                  ("contentCategoryId" .=) <$> _plalContentCategoryId,
-                  ("directorySiteIdDimensionValue" .=) <$>
-                    _plalDirectorySiteIdDimensionValue,
-                  ("accountId" .=) <$> _plalAccountId,
-                  ("name" .=) <$> _plalName,
-                  ("directorySiteId" .=) <$> _plalDirectorySiteId,
-                  ("createInfo" .=) <$> _plalCreateInfo,
-                  ("childPlacementIds" .=) <$> _plalChildPlacementIds,
-                  ("lastModifiedInfo" .=) <$> _plalLastModifiedInfo,
-                  ("id" .=) <$> _plalId,
-                  ("primaryPlacementId" .=) <$>
-                    _plalPrimaryPlacementId,
-                  ("subaccountId" .=) <$> _plalSubAccountId,
-                  ("externalId" .=) <$> _plalExternalId,
-                  ("comment" .=) <$> _plalComment,
-                  ("primaryPlacementIdDimensionValue" .=) <$>
-                    _plalPrimaryPlacementIdDimensionValue,
-                  ("siteId" .=) <$> _plalSiteId,
-                  ("archived" .=) <$> _plalArchived])
-
--- | Contains properties of an event tag.
---
--- /See:/ 'eventTag' smart constructor.
-data EventTag =
-  EventTag'
-    { _etStatus                     :: !(Maybe EventTagStatus)
-    , _etExcludeFromAdxRequests     :: !(Maybe Bool)
-    , _etEnabledByDefault           :: !(Maybe Bool)
-    , _etKind                       :: !Text
-    , _etCampaignIdDimensionValue   :: !(Maybe DimensionValue)
-    , _etAdvertiserId               :: !(Maybe (Textual Int64))
-    , _etURL                        :: !(Maybe Text)
-    , _etAdvertiserIdDimensionValue :: !(Maybe DimensionValue)
-    , _etSSLCompliant               :: !(Maybe Bool)
-    , _etCampaignId                 :: !(Maybe (Textual Int64))
-    , _etAccountId                  :: !(Maybe (Textual Int64))
-    , _etName                       :: !(Maybe Text)
-    , _etURLEscapeLevels            :: !(Maybe (Textual Int32))
-    , _etSiteIds                    :: !(Maybe [Textual Int64])
-    , _etId                         :: !(Maybe (Textual Int64))
-    , _etSubAccountId               :: !(Maybe (Textual Int64))
-    , _etType                       :: !(Maybe EventTagType)
-    , _etSiteFilterType             :: !(Maybe EventTagSiteFilterType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etStatus'
---
--- * 'etExcludeFromAdxRequests'
---
--- * 'etEnabledByDefault'
---
--- * 'etKind'
---
--- * 'etCampaignIdDimensionValue'
---
--- * 'etAdvertiserId'
---
--- * 'etURL'
---
--- * 'etAdvertiserIdDimensionValue'
---
--- * 'etSSLCompliant'
---
--- * 'etCampaignId'
---
--- * 'etAccountId'
---
--- * 'etName'
---
--- * 'etURLEscapeLevels'
---
--- * 'etSiteIds'
---
--- * 'etId'
---
--- * 'etSubAccountId'
---
--- * 'etType'
---
--- * 'etSiteFilterType'
-eventTag
-    :: EventTag
-eventTag =
-  EventTag'
-    { _etStatus = Nothing
-    , _etExcludeFromAdxRequests = Nothing
-    , _etEnabledByDefault = Nothing
-    , _etKind = "dfareporting#eventTag"
-    , _etCampaignIdDimensionValue = Nothing
-    , _etAdvertiserId = Nothing
-    , _etURL = Nothing
-    , _etAdvertiserIdDimensionValue = Nothing
-    , _etSSLCompliant = Nothing
-    , _etCampaignId = Nothing
-    , _etAccountId = Nothing
-    , _etName = Nothing
-    , _etURLEscapeLevels = Nothing
-    , _etSiteIds = Nothing
-    , _etId = Nothing
-    , _etSubAccountId = Nothing
-    , _etType = Nothing
-    , _etSiteFilterType = Nothing
-    }
-
-
--- | Status of this event tag. Must be ENABLED for this event tag to fire.
--- This is a required field.
-etStatus :: Lens' EventTag (Maybe EventTagStatus)
-etStatus = lens _etStatus (\ s a -> s{_etStatus = a})
-
--- | Whether to remove this event tag from ads that are trafficked through
--- Display & Video 360 to Ad Exchange. This may be useful if the event tag
--- uses a pixel that is unapproved for Ad Exchange bids on one or more
--- networks, such as the Google Display Network.
-etExcludeFromAdxRequests :: Lens' EventTag (Maybe Bool)
-etExcludeFromAdxRequests
-  = lens _etExcludeFromAdxRequests
-      (\ s a -> s{_etExcludeFromAdxRequests = a})
-
--- | Whether this event tag should be automatically enabled for all of the
--- advertiser\'s campaigns and ads.
-etEnabledByDefault :: Lens' EventTag (Maybe Bool)
-etEnabledByDefault
-  = lens _etEnabledByDefault
-      (\ s a -> s{_etEnabledByDefault = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#eventTag\".
-etKind :: Lens' EventTag Text
-etKind = lens _etKind (\ s a -> s{_etKind = a})
-
--- | Dimension value for the ID of the campaign. This is a read-only,
--- auto-generated field.
-etCampaignIdDimensionValue :: Lens' EventTag (Maybe DimensionValue)
-etCampaignIdDimensionValue
-  = lens _etCampaignIdDimensionValue
-      (\ s a -> s{_etCampaignIdDimensionValue = a})
-
--- | Advertiser ID of this event tag. This field or the campaignId field is
--- required on insertion.
-etAdvertiserId :: Lens' EventTag (Maybe Int64)
-etAdvertiserId
-  = lens _etAdvertiserId
-      (\ s a -> s{_etAdvertiserId = a})
-      . mapping _Coerce
-
--- | Payload URL for this event tag. The URL on a click-through event tag
--- should have a landing page URL appended to the end of it. This field is
--- required on insertion.
-etURL :: Lens' EventTag (Maybe Text)
-etURL = lens _etURL (\ s a -> s{_etURL = a})
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-etAdvertiserIdDimensionValue :: Lens' EventTag (Maybe DimensionValue)
-etAdvertiserIdDimensionValue
-  = lens _etAdvertiserIdDimensionValue
-      (\ s a -> s{_etAdvertiserIdDimensionValue = a})
-
--- | Whether this tag is SSL-compliant or not. This is a read-only field.
-etSSLCompliant :: Lens' EventTag (Maybe Bool)
-etSSLCompliant
-  = lens _etSSLCompliant
-      (\ s a -> s{_etSSLCompliant = a})
-
--- | Campaign ID of this event tag. This field or the advertiserId field is
--- required on insertion.
-etCampaignId :: Lens' EventTag (Maybe Int64)
-etCampaignId
-  = lens _etCampaignId (\ s a -> s{_etCampaignId = a})
-      . mapping _Coerce
-
--- | Account ID of this event tag. This is a read-only field that can be left
--- blank.
-etAccountId :: Lens' EventTag (Maybe Int64)
-etAccountId
-  = lens _etAccountId (\ s a -> s{_etAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this event tag. This is a required field and must be less than
--- 256 characters long.
-etName :: Lens' EventTag (Maybe Text)
-etName = lens _etName (\ s a -> s{_etName = a})
-
--- | Number of times the landing page URL should be URL-escaped before being
--- appended to the click-through event tag URL. Only applies to
--- click-through event tags as specified by the event tag type.
-etURLEscapeLevels :: Lens' EventTag (Maybe Int32)
-etURLEscapeLevels
-  = lens _etURLEscapeLevels
-      (\ s a -> s{_etURLEscapeLevels = a})
-      . mapping _Coerce
-
--- | Filter list of site IDs associated with this event tag. The
--- siteFilterType determines whether this is a whitelist or blacklist
--- filter.
-etSiteIds :: Lens' EventTag [Int64]
-etSiteIds
-  = lens _etSiteIds (\ s a -> s{_etSiteIds = a}) .
-      _Default
-      . _Coerce
-
--- | ID of this event tag. This is a read-only, auto-generated field.
-etId :: Lens' EventTag (Maybe Int64)
-etId
-  = lens _etId (\ s a -> s{_etId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this event tag. This is a read-only field that can be
--- left blank.
-etSubAccountId :: Lens' EventTag (Maybe Int64)
-etSubAccountId
-  = lens _etSubAccountId
-      (\ s a -> s{_etSubAccountId = a})
-      . mapping _Coerce
-
--- | Event tag type. Can be used to specify whether to use a third-party
--- pixel, a third-party JavaScript URL, or a third-party click-through URL
--- for either impression or click tracking. This is a required field.
-etType :: Lens' EventTag (Maybe EventTagType)
-etType = lens _etType (\ s a -> s{_etType = a})
-
--- | Site filter type for this event tag. If no type is specified then the
--- event tag will be applied to all sites.
-etSiteFilterType :: Lens' EventTag (Maybe EventTagSiteFilterType)
-etSiteFilterType
-  = lens _etSiteFilterType
-      (\ s a -> s{_etSiteFilterType = a})
-
-instance FromJSON EventTag where
-        parseJSON
-          = withObject "EventTag"
-              (\ o ->
-                 EventTag' <$>
-                   (o .:? "status") <*> (o .:? "excludeFromAdxRequests")
-                     <*> (o .:? "enabledByDefault")
-                     <*> (o .:? "kind" .!= "dfareporting#eventTag")
-                     <*> (o .:? "campaignIdDimensionValue")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "url")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "sslCompliant")
-                     <*> (o .:? "campaignId")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "urlEscapeLevels")
-                     <*> (o .:? "siteIds" .!= mempty)
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "siteFilterType"))
-
-instance ToJSON EventTag where
-        toJSON EventTag'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _etStatus,
-                  ("excludeFromAdxRequests" .=) <$>
-                    _etExcludeFromAdxRequests,
-                  ("enabledByDefault" .=) <$> _etEnabledByDefault,
-                  Just ("kind" .= _etKind),
-                  ("campaignIdDimensionValue" .=) <$>
-                    _etCampaignIdDimensionValue,
-                  ("advertiserId" .=) <$> _etAdvertiserId,
-                  ("url" .=) <$> _etURL,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _etAdvertiserIdDimensionValue,
-                  ("sslCompliant" .=) <$> _etSSLCompliant,
-                  ("campaignId" .=) <$> _etCampaignId,
-                  ("accountId" .=) <$> _etAccountId,
-                  ("name" .=) <$> _etName,
-                  ("urlEscapeLevels" .=) <$> _etURLEscapeLevels,
-                  ("siteIds" .=) <$> _etSiteIds, ("id" .=) <$> _etId,
-                  ("subaccountId" .=) <$> _etSubAccountId,
-                  ("type" .=) <$> _etType,
-                  ("siteFilterType" .=) <$> _etSiteFilterType])
-
--- | Contains properties of a user role permission.
---
--- /See:/ 'userRolePermission' smart constructor.
-data UserRolePermission =
-  UserRolePermission'
-    { _useKind              :: !Text
-    , _useAvailability      :: !(Maybe UserRolePermissionAvailability)
-    , _useName              :: !(Maybe Text)
-    , _useId                :: !(Maybe (Textual Int64))
-    , _usePermissionGroupId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermission' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'useKind'
---
--- * 'useAvailability'
---
--- * 'useName'
---
--- * 'useId'
---
--- * 'usePermissionGroupId'
-userRolePermission
-    :: UserRolePermission
-userRolePermission =
-  UserRolePermission'
-    { _useKind = "dfareporting#userRolePermission"
-    , _useAvailability = Nothing
-    , _useName = Nothing
-    , _useId = Nothing
-    , _usePermissionGroupId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#userRolePermission\".
-useKind :: Lens' UserRolePermission Text
-useKind = lens _useKind (\ s a -> s{_useKind = a})
-
--- | Levels of availability for a user role permission.
-useAvailability :: Lens' UserRolePermission (Maybe UserRolePermissionAvailability)
-useAvailability
-  = lens _useAvailability
-      (\ s a -> s{_useAvailability = a})
-
--- | Name of this user role permission.
-useName :: Lens' UserRolePermission (Maybe Text)
-useName = lens _useName (\ s a -> s{_useName = a})
-
--- | ID of this user role permission.
-useId :: Lens' UserRolePermission (Maybe Int64)
-useId
-  = lens _useId (\ s a -> s{_useId = a}) .
-      mapping _Coerce
-
--- | ID of the permission group that this user role permission belongs to.
-usePermissionGroupId :: Lens' UserRolePermission (Maybe Int64)
-usePermissionGroupId
-  = lens _usePermissionGroupId
-      (\ s a -> s{_usePermissionGroupId = a})
-      . mapping _Coerce
-
-instance FromJSON UserRolePermission where
-        parseJSON
-          = withObject "UserRolePermission"
-              (\ o ->
-                 UserRolePermission' <$>
-                   (o .:? "kind" .!= "dfareporting#userRolePermission")
-                     <*> (o .:? "availability")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "permissionGroupId"))
-
-instance ToJSON UserRolePermission where
-        toJSON UserRolePermission'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _useKind),
-                  ("availability" .=) <$> _useAvailability,
-                  ("name" .=) <$> _useName, ("id" .=) <$> _useId,
-                  ("permissionGroupId" .=) <$> _usePermissionGroupId])
-
--- | Contact of an order.
---
--- /See:/ 'orderContact' smart constructor.
-data OrderContact =
-  OrderContact'
-    { _ocSignatureUserProFileId :: !(Maybe (Textual Int64))
-    , _ocContactName            :: !(Maybe Text)
-    , _ocContactTitle           :: !(Maybe Text)
-    , _ocContactType            :: !(Maybe OrderContactContactType)
-    , _ocContactInfo            :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrderContact' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ocSignatureUserProFileId'
---
--- * 'ocContactName'
---
--- * 'ocContactTitle'
---
--- * 'ocContactType'
---
--- * 'ocContactInfo'
-orderContact
-    :: OrderContact
-orderContact =
-  OrderContact'
-    { _ocSignatureUserProFileId = Nothing
-    , _ocContactName = Nothing
-    , _ocContactTitle = Nothing
-    , _ocContactType = Nothing
-    , _ocContactInfo = Nothing
-    }
-
-
--- | ID of the user profile containing the signature that will be embedded
--- into order documents.
-ocSignatureUserProFileId :: Lens' OrderContact (Maybe Int64)
-ocSignatureUserProFileId
-  = lens _ocSignatureUserProFileId
-      (\ s a -> s{_ocSignatureUserProFileId = a})
-      . mapping _Coerce
-
--- | Name of this contact.
-ocContactName :: Lens' OrderContact (Maybe Text)
-ocContactName
-  = lens _ocContactName
-      (\ s a -> s{_ocContactName = a})
-
--- | Title of this contact.
-ocContactTitle :: Lens' OrderContact (Maybe Text)
-ocContactTitle
-  = lens _ocContactTitle
-      (\ s a -> s{_ocContactTitle = a})
-
--- | Type of this contact.
-ocContactType :: Lens' OrderContact (Maybe OrderContactContactType)
-ocContactType
-  = lens _ocContactType
-      (\ s a -> s{_ocContactType = a})
-
--- | Free-form information about this contact. It could be any information
--- related to this contact in addition to type, title, name, and signature
--- user profile ID.
-ocContactInfo :: Lens' OrderContact (Maybe Text)
-ocContactInfo
-  = lens _ocContactInfo
-      (\ s a -> s{_ocContactInfo = a})
-
-instance FromJSON OrderContact where
-        parseJSON
-          = withObject "OrderContact"
-              (\ o ->
-                 OrderContact' <$>
-                   (o .:? "signatureUserProfileId") <*>
-                     (o .:? "contactName")
-                     <*> (o .:? "contactTitle")
-                     <*> (o .:? "contactType")
-                     <*> (o .:? "contactInfo"))
-
-instance ToJSON OrderContact where
-        toJSON OrderContact'{..}
-          = object
-              (catMaybes
-                 [("signatureUserProfileId" .=) <$>
-                    _ocSignatureUserProFileId,
-                  ("contactName" .=) <$> _ocContactName,
-                  ("contactTitle" .=) <$> _ocContactTitle,
-                  ("contactType" .=) <$> _ocContactType,
-                  ("contactInfo" .=) <$> _ocContactInfo])
-
--- | Transcode Settings
---
--- /See:/ 'transcodeSetting' smart constructor.
-data TranscodeSetting =
-  TranscodeSetting'
-    { _tsKind                :: !Text
-    , _tsEnabledVideoFormats :: !(Maybe [Textual Int32])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TranscodeSetting' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tsKind'
---
--- * 'tsEnabledVideoFormats'
-transcodeSetting
-    :: TranscodeSetting
-transcodeSetting =
-  TranscodeSetting'
-    { _tsKind = "dfareporting#transcodeSetting"
-    , _tsEnabledVideoFormats = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#transcodeSetting\".
-tsKind :: Lens' TranscodeSetting Text
-tsKind = lens _tsKind (\ s a -> s{_tsKind = a})
-
--- | Whitelist of video formats to be served to this placement. Set this list
--- to null or empty to serve all video formats.
-tsEnabledVideoFormats :: Lens' TranscodeSetting [Int32]
-tsEnabledVideoFormats
-  = lens _tsEnabledVideoFormats
-      (\ s a -> s{_tsEnabledVideoFormats = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON TranscodeSetting where
-        parseJSON
-          = withObject "TranscodeSetting"
-              (\ o ->
-                 TranscodeSetting' <$>
-                   (o .:? "kind" .!= "dfareporting#transcodeSetting")
-                     <*> (o .:? "enabledVideoFormats" .!= mempty))
-
-instance ToJSON TranscodeSetting where
-        toJSON TranscodeSetting'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _tsKind),
-                  ("enabledVideoFormats" .=) <$>
-                    _tsEnabledVideoFormats])
-
--- | Floodlight Activity GenerateTag Response
---
--- /See:/ 'floodlightActivitiesGenerateTagResponse' smart constructor.
-data FloodlightActivitiesGenerateTagResponse =
-  FloodlightActivitiesGenerateTagResponse'
-    { _fagtrGlobalSiteTagGlobalSnippet :: !(Maybe Text)
-    , _fagtrFloodlightActivityTag      :: !(Maybe Text)
-    , _fagtrKind                       :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesGenerateTagResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fagtrGlobalSiteTagGlobalSnippet'
---
--- * 'fagtrFloodlightActivityTag'
---
--- * 'fagtrKind'
-floodlightActivitiesGenerateTagResponse
-    :: FloodlightActivitiesGenerateTagResponse
-floodlightActivitiesGenerateTagResponse =
-  FloodlightActivitiesGenerateTagResponse'
-    { _fagtrGlobalSiteTagGlobalSnippet = Nothing
-    , _fagtrFloodlightActivityTag = Nothing
-    , _fagtrKind = "dfareporting#floodlightActivitiesGenerateTagResponse"
-    }
-
-
--- | The global snippet section of a global site tag. The global site tag
--- sets new cookies on your domain, which will store a unique identifier
--- for a user or the ad click that brought the user to your site. Learn
--- more.
-fagtrGlobalSiteTagGlobalSnippet :: Lens' FloodlightActivitiesGenerateTagResponse (Maybe Text)
-fagtrGlobalSiteTagGlobalSnippet
-  = lens _fagtrGlobalSiteTagGlobalSnippet
-      (\ s a -> s{_fagtrGlobalSiteTagGlobalSnippet = a})
-
--- | Generated tag for this Floodlight activity. For global site tags, this
--- is the event snippet.
-fagtrFloodlightActivityTag :: Lens' FloodlightActivitiesGenerateTagResponse (Maybe Text)
-fagtrFloodlightActivityTag
-  = lens _fagtrFloodlightActivityTag
-      (\ s a -> s{_fagtrFloodlightActivityTag = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#floodlightActivitiesGenerateTagResponse\".
-fagtrKind :: Lens' FloodlightActivitiesGenerateTagResponse Text
-fagtrKind
-  = lens _fagtrKind (\ s a -> s{_fagtrKind = a})
-
-instance FromJSON
-           FloodlightActivitiesGenerateTagResponse
-         where
-        parseJSON
-          = withObject
-              "FloodlightActivitiesGenerateTagResponse"
-              (\ o ->
-                 FloodlightActivitiesGenerateTagResponse' <$>
-                   (o .:? "globalSiteTagGlobalSnippet") <*>
-                     (o .:? "floodlightActivityTag")
-                     <*>
-                     (o .:? "kind" .!=
-                        "dfareporting#floodlightActivitiesGenerateTagResponse"))
-
-instance ToJSON
-           FloodlightActivitiesGenerateTagResponse
-         where
-        toJSON FloodlightActivitiesGenerateTagResponse'{..}
-          = object
-              (catMaybes
-                 [("globalSiteTagGlobalSnippet" .=) <$>
-                    _fagtrGlobalSiteTagGlobalSnippet,
-                  ("floodlightActivityTag" .=) <$>
-                    _fagtrFloodlightActivityTag,
-                  Just ("kind" .= _fagtrKind)])
-
--- | Ad Slot
---
--- /See:/ 'adSlot' smart constructor.
-data AdSlot =
-  AdSlot'
-    { _assHeight            :: !(Maybe (Textual Int64))
-    , _assPaymentSourceType :: !(Maybe AdSlotPaymentSourceType)
-    , _assLinkedPlacementId :: !(Maybe (Textual Int64))
-    , _assWidth             :: !(Maybe (Textual Int64))
-    , _assPrimary           :: !(Maybe Bool)
-    , _assName              :: !(Maybe Text)
-    , _assComment           :: !(Maybe Text)
-    , _assCompatibility     :: !(Maybe AdSlotCompatibility)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdSlot' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'assHeight'
---
--- * 'assPaymentSourceType'
---
--- * 'assLinkedPlacementId'
---
--- * 'assWidth'
---
--- * 'assPrimary'
---
--- * 'assName'
---
--- * 'assComment'
---
--- * 'assCompatibility'
-adSlot
-    :: AdSlot
-adSlot =
-  AdSlot'
-    { _assHeight = Nothing
-    , _assPaymentSourceType = Nothing
-    , _assLinkedPlacementId = Nothing
-    , _assWidth = Nothing
-    , _assPrimary = Nothing
-    , _assName = Nothing
-    , _assComment = Nothing
-    , _assCompatibility = Nothing
-    }
-
-
--- | Height of this ad slot.
-assHeight :: Lens' AdSlot (Maybe Int64)
-assHeight
-  = lens _assHeight (\ s a -> s{_assHeight = a}) .
-      mapping _Coerce
-
--- | Payment source type of this ad slot.
-assPaymentSourceType :: Lens' AdSlot (Maybe AdSlotPaymentSourceType)
-assPaymentSourceType
-  = lens _assPaymentSourceType
-      (\ s a -> s{_assPaymentSourceType = a})
-
--- | ID of the placement from an external platform that is linked to this ad
--- slot.
-assLinkedPlacementId :: Lens' AdSlot (Maybe Int64)
-assLinkedPlacementId
-  = lens _assLinkedPlacementId
-      (\ s a -> s{_assLinkedPlacementId = a})
-      . mapping _Coerce
-
--- | Width of this ad slot.
-assWidth :: Lens' AdSlot (Maybe Int64)
-assWidth
-  = lens _assWidth (\ s a -> s{_assWidth = a}) .
-      mapping _Coerce
-
--- | Primary ad slot of a roadblock inventory item.
-assPrimary :: Lens' AdSlot (Maybe Bool)
-assPrimary
-  = lens _assPrimary (\ s a -> s{_assPrimary = a})
-
--- | Name of this ad slot.
-assName :: Lens' AdSlot (Maybe Text)
-assName = lens _assName (\ s a -> s{_assName = a})
-
--- | Comment for this ad slot.
-assComment :: Lens' AdSlot (Maybe Text)
-assComment
-  = lens _assComment (\ s a -> s{_assComment = a})
-
--- | Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering either on desktop, mobile devices or in mobile apps for
--- regular or interstitial ads respectively. APP and APP_INTERSTITIAL are
--- for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in
--- in-stream video ads developed with the VAST standard.
-assCompatibility :: Lens' AdSlot (Maybe AdSlotCompatibility)
-assCompatibility
-  = lens _assCompatibility
-      (\ s a -> s{_assCompatibility = a})
-
-instance FromJSON AdSlot where
-        parseJSON
-          = withObject "AdSlot"
-              (\ o ->
-                 AdSlot' <$>
-                   (o .:? "height") <*> (o .:? "paymentSourceType") <*>
-                     (o .:? "linkedPlacementId")
-                     <*> (o .:? "width")
-                     <*> (o .:? "primary")
-                     <*> (o .:? "name")
-                     <*> (o .:? "comment")
-                     <*> (o .:? "compatibility"))
-
-instance ToJSON AdSlot where
-        toJSON AdSlot'{..}
-          = object
-              (catMaybes
-                 [("height" .=) <$> _assHeight,
-                  ("paymentSourceType" .=) <$> _assPaymentSourceType,
-                  ("linkedPlacementId" .=) <$> _assLinkedPlacementId,
-                  ("width" .=) <$> _assWidth,
-                  ("primary" .=) <$> _assPrimary,
-                  ("name" .=) <$> _assName,
-                  ("comment" .=) <$> _assComment,
-                  ("compatibility" .=) <$> _assCompatibility])
-
--- | Third-party Tracking URL.
---
--- /See:/ 'thirdPartyTrackingURL' smart constructor.
-data ThirdPartyTrackingURL =
-  ThirdPartyTrackingURL'
-    { _tptuURL               :: !(Maybe Text)
-    , _tptuThirdPartyURLType :: !(Maybe ThirdPartyTrackingURLThirdPartyURLType)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ThirdPartyTrackingURL' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tptuURL'
---
--- * 'tptuThirdPartyURLType'
-thirdPartyTrackingURL
-    :: ThirdPartyTrackingURL
-thirdPartyTrackingURL =
-  ThirdPartyTrackingURL' {_tptuURL = Nothing, _tptuThirdPartyURLType = Nothing}
-
-
--- | URL for the specified third-party URL type.
-tptuURL :: Lens' ThirdPartyTrackingURL (Maybe Text)
-tptuURL = lens _tptuURL (\ s a -> s{_tptuURL = a})
-
--- | Third-party URL type for in-stream video and in-stream audio creatives.
-tptuThirdPartyURLType :: Lens' ThirdPartyTrackingURL (Maybe ThirdPartyTrackingURLThirdPartyURLType)
-tptuThirdPartyURLType
-  = lens _tptuThirdPartyURLType
-      (\ s a -> s{_tptuThirdPartyURLType = a})
-
-instance FromJSON ThirdPartyTrackingURL where
-        parseJSON
-          = withObject "ThirdPartyTrackingURL"
-              (\ o ->
-                 ThirdPartyTrackingURL' <$>
-                   (o .:? "url") <*> (o .:? "thirdPartyUrlType"))
-
-instance ToJSON ThirdPartyTrackingURL where
-        toJSON ThirdPartyTrackingURL'{..}
-          = object
-              (catMaybes
-                 [("url" .=) <$> _tptuURL,
-                  ("thirdPartyUrlType" .=) <$> _tptuThirdPartyURLType])
-
--- | Contains properties of a Planning order document.
---
--- /See:/ 'orderDocument' smart constructor.
-data OrderDocument =
-  OrderDocument'
-    { _odSigned                   :: !(Maybe Bool)
-    , _odKind                     :: !Text
-    , _odAdvertiserId             :: !(Maybe (Textual Int64))
-    , _odLastSentTime             :: !(Maybe DateTime')
-    , _odAmendedOrderDocumentId   :: !(Maybe (Textual Int64))
-    , _odLastSentRecipients       :: !(Maybe [Text])
-    , _odEffectiveDate            :: !(Maybe Date')
-    , _odApprovedByUserProFileIds :: !(Maybe [Textual Int64])
-    , _odAccountId                :: !(Maybe (Textual Int64))
-    , _odId                       :: !(Maybe (Textual Int64))
-    , _odProjectId                :: !(Maybe (Textual Int64))
-    , _odTitle                    :: !(Maybe Text)
-    , _odSubAccountId             :: !(Maybe (Textual Int64))
-    , _odType                     :: !(Maybe OrderDocumentType)
-    , _odOrderId                  :: !(Maybe (Textual Int64))
-    , _odCancelled                :: !(Maybe Bool)
-    , _odCreatedInfo              :: !(Maybe LastModifiedInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrderDocument' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'odSigned'
---
--- * 'odKind'
---
--- * 'odAdvertiserId'
---
--- * 'odLastSentTime'
---
--- * 'odAmendedOrderDocumentId'
---
--- * 'odLastSentRecipients'
---
--- * 'odEffectiveDate'
---
--- * 'odApprovedByUserProFileIds'
---
--- * 'odAccountId'
---
--- * 'odId'
---
--- * 'odProjectId'
---
--- * 'odTitle'
---
--- * 'odSubAccountId'
---
--- * 'odType'
---
--- * 'odOrderId'
---
--- * 'odCancelled'
---
--- * 'odCreatedInfo'
-orderDocument
-    :: OrderDocument
-orderDocument =
-  OrderDocument'
-    { _odSigned = Nothing
-    , _odKind = "dfareporting#orderDocument"
-    , _odAdvertiserId = Nothing
-    , _odLastSentTime = Nothing
-    , _odAmendedOrderDocumentId = Nothing
-    , _odLastSentRecipients = Nothing
-    , _odEffectiveDate = Nothing
-    , _odApprovedByUserProFileIds = Nothing
-    , _odAccountId = Nothing
-    , _odId = Nothing
-    , _odProjectId = Nothing
-    , _odTitle = Nothing
-    , _odSubAccountId = Nothing
-    , _odType = Nothing
-    , _odOrderId = Nothing
-    , _odCancelled = Nothing
-    , _odCreatedInfo = Nothing
-    }
-
-
--- | Whether this order document has been signed.
-odSigned :: Lens' OrderDocument (Maybe Bool)
-odSigned = lens _odSigned (\ s a -> s{_odSigned = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#orderDocument\".
-odKind :: Lens' OrderDocument Text
-odKind = lens _odKind (\ s a -> s{_odKind = a})
-
--- | Advertiser ID of this order document.
-odAdvertiserId :: Lens' OrderDocument (Maybe Int64)
-odAdvertiserId
-  = lens _odAdvertiserId
-      (\ s a -> s{_odAdvertiserId = a})
-      . mapping _Coerce
-
--- | Timestamp of the last email sent with this order document.
-odLastSentTime :: Lens' OrderDocument (Maybe UTCTime)
-odLastSentTime
-  = lens _odLastSentTime
-      (\ s a -> s{_odLastSentTime = a})
-      . mapping _DateTime
-
--- | The amended order document ID of this order document. An order document
--- can be created by optionally amending another order document so that the
--- change history can be preserved.
-odAmendedOrderDocumentId :: Lens' OrderDocument (Maybe Int64)
-odAmendedOrderDocumentId
-  = lens _odAmendedOrderDocumentId
-      (\ s a -> s{_odAmendedOrderDocumentId = a})
-      . mapping _Coerce
-
--- | List of email addresses that received the last sent document.
-odLastSentRecipients :: Lens' OrderDocument [Text]
-odLastSentRecipients
-  = lens _odLastSentRecipients
-      (\ s a -> s{_odLastSentRecipients = a})
-      . _Default
-      . _Coerce
-
--- | Effective date of this order document.
-odEffectiveDate :: Lens' OrderDocument (Maybe Day)
-odEffectiveDate
-  = lens _odEffectiveDate
-      (\ s a -> s{_odEffectiveDate = a})
-      . mapping _Date
-
--- | IDs of users who have approved this order document.
-odApprovedByUserProFileIds :: Lens' OrderDocument [Int64]
-odApprovedByUserProFileIds
-  = lens _odApprovedByUserProFileIds
-      (\ s a -> s{_odApprovedByUserProFileIds = a})
-      . _Default
-      . _Coerce
-
--- | Account ID of this order document.
-odAccountId :: Lens' OrderDocument (Maybe Int64)
-odAccountId
-  = lens _odAccountId (\ s a -> s{_odAccountId = a}) .
-      mapping _Coerce
-
--- | ID of this order document.
-odId :: Lens' OrderDocument (Maybe Int64)
-odId
-  = lens _odId (\ s a -> s{_odId = a}) .
-      mapping _Coerce
-
--- | Project ID of this order document.
-odProjectId :: Lens' OrderDocument (Maybe Int64)
-odProjectId
-  = lens _odProjectId (\ s a -> s{_odProjectId = a}) .
-      mapping _Coerce
-
--- | Title of this order document.
-odTitle :: Lens' OrderDocument (Maybe Text)
-odTitle = lens _odTitle (\ s a -> s{_odTitle = a})
-
--- | Subaccount ID of this order document.
-odSubAccountId :: Lens' OrderDocument (Maybe Int64)
-odSubAccountId
-  = lens _odSubAccountId
-      (\ s a -> s{_odSubAccountId = a})
-      . mapping _Coerce
-
--- | Type of this order document
-odType :: Lens' OrderDocument (Maybe OrderDocumentType)
-odType = lens _odType (\ s a -> s{_odType = a})
-
--- | ID of the order from which this order document is created.
-odOrderId :: Lens' OrderDocument (Maybe Int64)
-odOrderId
-  = lens _odOrderId (\ s a -> s{_odOrderId = a}) .
-      mapping _Coerce
-
--- | Whether this order document is cancelled.
-odCancelled :: Lens' OrderDocument (Maybe Bool)
-odCancelled
-  = lens _odCancelled (\ s a -> s{_odCancelled = a})
-
--- | Information about the creation of this order document.
-odCreatedInfo :: Lens' OrderDocument (Maybe LastModifiedInfo)
-odCreatedInfo
-  = lens _odCreatedInfo
-      (\ s a -> s{_odCreatedInfo = a})
-
-instance FromJSON OrderDocument where
-        parseJSON
-          = withObject "OrderDocument"
-              (\ o ->
-                 OrderDocument' <$>
-                   (o .:? "signed") <*>
-                     (o .:? "kind" .!= "dfareporting#orderDocument")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "lastSentTime")
-                     <*> (o .:? "amendedOrderDocumentId")
-                     <*> (o .:? "lastSentRecipients" .!= mempty)
-                     <*> (o .:? "effectiveDate")
-                     <*> (o .:? "approvedByUserProfileIds" .!= mempty)
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "id")
-                     <*> (o .:? "projectId")
-                     <*> (o .:? "title")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "type")
-                     <*> (o .:? "orderId")
-                     <*> (o .:? "cancelled")
-                     <*> (o .:? "createdInfo"))
-
-instance ToJSON OrderDocument where
-        toJSON OrderDocument'{..}
-          = object
-              (catMaybes
-                 [("signed" .=) <$> _odSigned,
-                  Just ("kind" .= _odKind),
-                  ("advertiserId" .=) <$> _odAdvertiserId,
-                  ("lastSentTime" .=) <$> _odLastSentTime,
-                  ("amendedOrderDocumentId" .=) <$>
-                    _odAmendedOrderDocumentId,
-                  ("lastSentRecipients" .=) <$> _odLastSentRecipients,
-                  ("effectiveDate" .=) <$> _odEffectiveDate,
-                  ("approvedByUserProfileIds" .=) <$>
-                    _odApprovedByUserProFileIds,
-                  ("accountId" .=) <$> _odAccountId,
-                  ("id" .=) <$> _odId,
-                  ("projectId" .=) <$> _odProjectId,
-                  ("title" .=) <$> _odTitle,
-                  ("subaccountId" .=) <$> _odSubAccountId,
-                  ("type" .=) <$> _odType,
-                  ("orderId" .=) <$> _odOrderId,
-                  ("cancelled" .=) <$> _odCancelled,
-                  ("createdInfo" .=) <$> _odCreatedInfo])
-
--- | Contains information about a metro region that can be targeted by ads.
---
--- /See:/ 'metro' smart constructor.
-data Metro =
-  Metro'
-    { _metMetroCode     :: !(Maybe Text)
-    , _metKind          :: !Text
-    , _metName          :: !(Maybe Text)
-    , _metCountryCode   :: !(Maybe Text)
-    , _metDmaId         :: !(Maybe (Textual Int64))
-    , _metCountryDartId :: !(Maybe (Textual Int64))
-    , _metDartId        :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Metro' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'metMetroCode'
---
--- * 'metKind'
---
--- * 'metName'
---
--- * 'metCountryCode'
---
--- * 'metDmaId'
---
--- * 'metCountryDartId'
---
--- * 'metDartId'
-metro
-    :: Metro
-metro =
-  Metro'
-    { _metMetroCode = Nothing
-    , _metKind = "dfareporting#metro"
-    , _metName = Nothing
-    , _metCountryCode = Nothing
-    , _metDmaId = Nothing
-    , _metCountryDartId = Nothing
-    , _metDartId = Nothing
-    }
-
-
--- | Metro code of this metro region. This is equivalent to dma_id.
-metMetroCode :: Lens' Metro (Maybe Text)
-metMetroCode
-  = lens _metMetroCode (\ s a -> s{_metMetroCode = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#metro\".
-metKind :: Lens' Metro Text
-metKind = lens _metKind (\ s a -> s{_metKind = a})
-
--- | Name of this metro region.
-metName :: Lens' Metro (Maybe Text)
-metName = lens _metName (\ s a -> s{_metName = a})
-
--- | Country code of the country to which this metro region belongs.
-metCountryCode :: Lens' Metro (Maybe Text)
-metCountryCode
-  = lens _metCountryCode
-      (\ s a -> s{_metCountryCode = a})
-
--- | DMA ID of this metro region. This is the ID used for targeting and
--- generating reports, and is equivalent to metro_code.
-metDmaId :: Lens' Metro (Maybe Int64)
-metDmaId
-  = lens _metDmaId (\ s a -> s{_metDmaId = a}) .
-      mapping _Coerce
-
--- | DART ID of the country to which this metro region belongs.
-metCountryDartId :: Lens' Metro (Maybe Int64)
-metCountryDartId
-  = lens _metCountryDartId
-      (\ s a -> s{_metCountryDartId = a})
-      . mapping _Coerce
-
--- | DART ID of this metro region.
-metDartId :: Lens' Metro (Maybe Int64)
-metDartId
-  = lens _metDartId (\ s a -> s{_metDartId = a}) .
-      mapping _Coerce
-
-instance FromJSON Metro where
-        parseJSON
-          = withObject "Metro"
-              (\ o ->
-                 Metro' <$>
-                   (o .:? "metroCode") <*>
-                     (o .:? "kind" .!= "dfareporting#metro")
-                     <*> (o .:? "name")
-                     <*> (o .:? "countryCode")
-                     <*> (o .:? "dmaId")
-                     <*> (o .:? "countryDartId")
-                     <*> (o .:? "dartId"))
-
-instance ToJSON Metro where
-        toJSON Metro'{..}
-          = object
-              (catMaybes
-                 [("metroCode" .=) <$> _metMetroCode,
-                  Just ("kind" .= _metKind), ("name" .=) <$> _metName,
-                  ("countryCode" .=) <$> _metCountryCode,
-                  ("dmaId" .=) <$> _metDmaId,
-                  ("countryDartId" .=) <$> _metCountryDartId,
-                  ("dartId" .=) <$> _metDartId])
-
--- | Contains information about a mobile app. Used as a landing page deep
--- link.
---
--- /See:/ 'mobileApp' smart constructor.
-data MobileApp =
-  MobileApp'
-    { _maKind          :: !Text
-    , _maId            :: !(Maybe Text)
-    , _maTitle         :: !(Maybe Text)
-    , _maPublisherName :: !(Maybe Text)
-    , _maDirectory     :: !(Maybe MobileAppDirectory)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileApp' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'maKind'
---
--- * 'maId'
---
--- * 'maTitle'
---
--- * 'maPublisherName'
---
--- * 'maDirectory'
-mobileApp
-    :: MobileApp
-mobileApp =
-  MobileApp'
-    { _maKind = "dfareporting#mobileApp"
-    , _maId = Nothing
-    , _maTitle = Nothing
-    , _maPublisherName = Nothing
-    , _maDirectory = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#mobileApp\".
-maKind :: Lens' MobileApp Text
-maKind = lens _maKind (\ s a -> s{_maKind = a})
-
--- | ID of this mobile app.
-maId :: Lens' MobileApp (Maybe Text)
-maId = lens _maId (\ s a -> s{_maId = a})
-
--- | Title of this mobile app.
-maTitle :: Lens' MobileApp (Maybe Text)
-maTitle = lens _maTitle (\ s a -> s{_maTitle = a})
-
--- | Publisher name.
-maPublisherName :: Lens' MobileApp (Maybe Text)
-maPublisherName
-  = lens _maPublisherName
-      (\ s a -> s{_maPublisherName = a})
-
--- | Mobile app directory.
-maDirectory :: Lens' MobileApp (Maybe MobileAppDirectory)
-maDirectory
-  = lens _maDirectory (\ s a -> s{_maDirectory = a})
-
-instance FromJSON MobileApp where
-        parseJSON
-          = withObject "MobileApp"
-              (\ o ->
-                 MobileApp' <$>
-                   (o .:? "kind" .!= "dfareporting#mobileApp") <*>
-                     (o .:? "id")
-                     <*> (o .:? "title")
-                     <*> (o .:? "publisherName")
-                     <*> (o .:? "directory"))
-
-instance ToJSON MobileApp where
-        toJSON MobileApp'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _maKind), ("id" .=) <$> _maId,
-                  ("title" .=) <$> _maTitle,
-                  ("publisherName" .=) <$> _maPublisherName,
-                  ("directory" .=) <$> _maDirectory])
-
--- | Contains properties of a placement.
---
--- /See:/ 'placement' smart constructor.
-data Placement =
-  Placement'
-    { _p1Status                         :: !(Maybe PlacementStatus)
-    , _p1VideoSettings                  :: !(Maybe VideoSettings)
-    , _p1PlacementStrategyId            :: !(Maybe (Textual Int64))
-    , _p1TagFormats                     :: !(Maybe [PlacementTagFormatsItem])
-    , _p1SiteIdDimensionValue           :: !(Maybe DimensionValue)
-    , _p1PricingSchedule                :: !(Maybe PricingSchedule)
-    , _p1Size                           :: !(Maybe Size)
-    , _p1Kind                           :: !Text
-    , _p1KeyName                        :: !(Maybe Text)
-    , _p1CampaignIdDimensionValue       :: !(Maybe DimensionValue)
-    , _p1AdvertiserId                   :: !(Maybe (Textual Int64))
-    , _p1AdvertiserIdDimensionValue     :: !(Maybe DimensionValue)
-    , _p1CampaignId                     :: !(Maybe (Textual Int64))
-    , _p1IdDimensionValue               :: !(Maybe DimensionValue)
-    , _p1VpaidAdapterChoice             :: !(Maybe PlacementVpaidAdapterChoice)
-    , _p1AdBlockingOptOut               :: !(Maybe Bool)
-    , _p1Primary                        :: !(Maybe Bool)
-    , _p1LookbackConfiguration          :: !(Maybe LookbackConfiguration)
-    , _p1TagSetting                     :: !(Maybe TagSetting)
-    , _p1ContentCategoryId              :: !(Maybe (Textual Int64))
-    , _p1DirectorySiteIdDimensionValue  :: !(Maybe DimensionValue)
-    , _p1AccountId                      :: !(Maybe (Textual Int64))
-    , _p1PaymentSource                  :: !(Maybe PlacementPaymentSource)
-    , _p1Name                           :: !(Maybe Text)
-    , _p1AdditionalSizes                :: !(Maybe [Size])
-    , _p1DirectorySiteId                :: !(Maybe (Textual Int64))
-    , _p1CreateInfo                     :: !(Maybe LastModifiedInfo)
-    , _p1VideoActiveViewOptOut          :: !(Maybe Bool)
-    , _p1LastModifiedInfo               :: !(Maybe LastModifiedInfo)
-    , _p1Id                             :: !(Maybe (Textual Int64))
-    , _p1SSLRequired                    :: !(Maybe Bool)
-    , _p1SubAccountId                   :: !(Maybe (Textual Int64))
-    , _p1PlacementGroupIdDimensionValue :: !(Maybe DimensionValue)
-    , _p1ExternalId                     :: !(Maybe Text)
-    , _p1PlacementGroupId               :: !(Maybe (Textual Int64))
-    , _p1Comment                        :: !(Maybe Text)
-    , _p1SiteId                         :: !(Maybe (Textual Int64))
-    , _p1Compatibility                  :: !(Maybe PlacementCompatibility)
-    , _p1Archived                       :: !(Maybe Bool)
-    , _p1PaymentApproved                :: !(Maybe Bool)
-    , _p1PublisherUpdateInfo            :: !(Maybe LastModifiedInfo)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Placement' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'p1Status'
---
--- * 'p1VideoSettings'
---
--- * 'p1PlacementStrategyId'
---
--- * 'p1TagFormats'
---
--- * 'p1SiteIdDimensionValue'
---
--- * 'p1PricingSchedule'
---
--- * 'p1Size'
---
--- * 'p1Kind'
---
--- * 'p1KeyName'
---
--- * 'p1CampaignIdDimensionValue'
---
--- * 'p1AdvertiserId'
---
--- * 'p1AdvertiserIdDimensionValue'
---
--- * 'p1CampaignId'
---
--- * 'p1IdDimensionValue'
---
--- * 'p1VpaidAdapterChoice'
---
--- * 'p1AdBlockingOptOut'
---
--- * 'p1Primary'
---
--- * 'p1LookbackConfiguration'
---
--- * 'p1TagSetting'
---
--- * 'p1ContentCategoryId'
---
--- * 'p1DirectorySiteIdDimensionValue'
---
--- * 'p1AccountId'
---
--- * 'p1PaymentSource'
---
--- * 'p1Name'
---
--- * 'p1AdditionalSizes'
---
--- * 'p1DirectorySiteId'
---
--- * 'p1CreateInfo'
---
--- * 'p1VideoActiveViewOptOut'
---
--- * 'p1LastModifiedInfo'
---
--- * 'p1Id'
---
--- * 'p1SSLRequired'
---
--- * 'p1SubAccountId'
---
--- * 'p1PlacementGroupIdDimensionValue'
---
--- * 'p1ExternalId'
---
--- * 'p1PlacementGroupId'
---
--- * 'p1Comment'
---
--- * 'p1SiteId'
---
--- * 'p1Compatibility'
---
--- * 'p1Archived'
---
--- * 'p1PaymentApproved'
---
--- * 'p1PublisherUpdateInfo'
-placement
-    :: Placement
-placement =
-  Placement'
-    { _p1Status = Nothing
-    , _p1VideoSettings = Nothing
-    , _p1PlacementStrategyId = Nothing
-    , _p1TagFormats = Nothing
-    , _p1SiteIdDimensionValue = Nothing
-    , _p1PricingSchedule = Nothing
-    , _p1Size = Nothing
-    , _p1Kind = "dfareporting#placement"
-    , _p1KeyName = Nothing
-    , _p1CampaignIdDimensionValue = Nothing
-    , _p1AdvertiserId = Nothing
-    , _p1AdvertiserIdDimensionValue = Nothing
-    , _p1CampaignId = Nothing
-    , _p1IdDimensionValue = Nothing
-    , _p1VpaidAdapterChoice = Nothing
-    , _p1AdBlockingOptOut = Nothing
-    , _p1Primary = Nothing
-    , _p1LookbackConfiguration = Nothing
-    , _p1TagSetting = Nothing
-    , _p1ContentCategoryId = Nothing
-    , _p1DirectorySiteIdDimensionValue = Nothing
-    , _p1AccountId = Nothing
-    , _p1PaymentSource = Nothing
-    , _p1Name = Nothing
-    , _p1AdditionalSizes = Nothing
-    , _p1DirectorySiteId = Nothing
-    , _p1CreateInfo = Nothing
-    , _p1VideoActiveViewOptOut = Nothing
-    , _p1LastModifiedInfo = Nothing
-    , _p1Id = Nothing
-    , _p1SSLRequired = Nothing
-    , _p1SubAccountId = Nothing
-    , _p1PlacementGroupIdDimensionValue = Nothing
-    , _p1ExternalId = Nothing
-    , _p1PlacementGroupId = Nothing
-    , _p1Comment = Nothing
-    , _p1SiteId = Nothing
-    , _p1Compatibility = Nothing
-    , _p1Archived = Nothing
-    , _p1PaymentApproved = Nothing
-    , _p1PublisherUpdateInfo = Nothing
-    }
-
-
--- | Third-party placement status.
-p1Status :: Lens' Placement (Maybe PlacementStatus)
-p1Status = lens _p1Status (\ s a -> s{_p1Status = a})
-
--- | A collection of settings which affect video creatives served through
--- this placement. Applicable to placements with IN_STREAM_VIDEO
--- compatibility.
-p1VideoSettings :: Lens' Placement (Maybe VideoSettings)
-p1VideoSettings
-  = lens _p1VideoSettings
-      (\ s a -> s{_p1VideoSettings = a})
-
--- | ID of the placement strategy assigned to this placement.
-p1PlacementStrategyId :: Lens' Placement (Maybe Int64)
-p1PlacementStrategyId
-  = lens _p1PlacementStrategyId
-      (\ s a -> s{_p1PlacementStrategyId = a})
-      . mapping _Coerce
-
--- | Tag formats to generate for this placement. This field is required on
--- insertion. Acceptable values are: - \"PLACEMENT_TAG_STANDARD\" -
--- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\" - \"PLACEMENT_TAG_IFRAME_ILAYER\" -
--- \"PLACEMENT_TAG_INTERNAL_REDIRECT\" - \"PLACEMENT_TAG_JAVASCRIPT\" -
--- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\" -
--- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\" -
--- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\" -
--- \"PLACEMENT_TAG_CLICK_COMMANDS\" -
--- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\" -
--- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3\" -
--- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4\" -
--- \"PLACEMENT_TAG_TRACKING\" - \"PLACEMENT_TAG_TRACKING_IFRAME\" -
--- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"
-p1TagFormats :: Lens' Placement [PlacementTagFormatsItem]
-p1TagFormats
-  = lens _p1TagFormats (\ s a -> s{_p1TagFormats = a})
-      . _Default
-      . _Coerce
-
--- | Dimension value for the ID of the site. This is a read-only,
--- auto-generated field.
-p1SiteIdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1SiteIdDimensionValue
-  = lens _p1SiteIdDimensionValue
-      (\ s a -> s{_p1SiteIdDimensionValue = a})
-
--- | Pricing schedule of this placement. This field is required on insertion,
--- specifically subfields startDate, endDate and pricingType.
-p1PricingSchedule :: Lens' Placement (Maybe PricingSchedule)
-p1PricingSchedule
-  = lens _p1PricingSchedule
-      (\ s a -> s{_p1PricingSchedule = a})
-
--- | Size associated with this placement. When inserting or updating a
--- placement, only the size ID field is used. This field is required on
--- insertion.
-p1Size :: Lens' Placement (Maybe Size)
-p1Size = lens _p1Size (\ s a -> s{_p1Size = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#placement\".
-p1Kind :: Lens' Placement Text
-p1Kind = lens _p1Kind (\ s a -> s{_p1Kind = a})
-
--- | Key name of this placement. This is a read-only, auto-generated field.
-p1KeyName :: Lens' Placement (Maybe Text)
-p1KeyName
-  = lens _p1KeyName (\ s a -> s{_p1KeyName = a})
-
--- | Dimension value for the ID of the campaign. This is a read-only,
--- auto-generated field.
-p1CampaignIdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1CampaignIdDimensionValue
-  = lens _p1CampaignIdDimensionValue
-      (\ s a -> s{_p1CampaignIdDimensionValue = a})
-
--- | Advertiser ID of this placement. This field can be left blank.
-p1AdvertiserId :: Lens' Placement (Maybe Int64)
-p1AdvertiserId
-  = lens _p1AdvertiserId
-      (\ s a -> s{_p1AdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-p1AdvertiserIdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1AdvertiserIdDimensionValue
-  = lens _p1AdvertiserIdDimensionValue
-      (\ s a -> s{_p1AdvertiserIdDimensionValue = a})
-
--- | Campaign ID of this placement. This field is a required field on
--- insertion.
-p1CampaignId :: Lens' Placement (Maybe Int64)
-p1CampaignId
-  = lens _p1CampaignId (\ s a -> s{_p1CampaignId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of this placement. This is a read-only,
--- auto-generated field.
-p1IdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1IdDimensionValue
-  = lens _p1IdDimensionValue
-      (\ s a -> s{_p1IdDimensionValue = a})
-
--- | VPAID adapter setting for this placement. Controls which VPAID format
--- the measurement adapter will use for in-stream video creatives assigned
--- to this placement. Note: Flash is no longer supported. This field now
--- defaults to HTML5 when the following values are provided: FLASH, BOTH.
-p1VpaidAdapterChoice :: Lens' Placement (Maybe PlacementVpaidAdapterChoice)
-p1VpaidAdapterChoice
-  = lens _p1VpaidAdapterChoice
-      (\ s a -> s{_p1VpaidAdapterChoice = a})
-
--- | Whether this placement opts out of ad blocking. When true, ad blocking
--- is disabled for this placement. When false, the campaign and site
--- settings take effect.
-p1AdBlockingOptOut :: Lens' Placement (Maybe Bool)
-p1AdBlockingOptOut
-  = lens _p1AdBlockingOptOut
-      (\ s a -> s{_p1AdBlockingOptOut = a})
-
--- | Whether this placement is the primary placement of a roadblock
--- (placement group). You cannot change this field from true to false.
--- Setting this field to true will automatically set the primary field on
--- the original primary placement of the roadblock to false, and it will
--- automatically set the roadblock\'s primaryPlacementId field to the ID of
--- this placement.
-p1Primary :: Lens' Placement (Maybe Bool)
-p1Primary
-  = lens _p1Primary (\ s a -> s{_p1Primary = a})
-
--- | Lookback window settings for this placement.
-p1LookbackConfiguration :: Lens' Placement (Maybe LookbackConfiguration)
-p1LookbackConfiguration
-  = lens _p1LookbackConfiguration
-      (\ s a -> s{_p1LookbackConfiguration = a})
-
--- | Tag settings for this placement.
-p1TagSetting :: Lens' Placement (Maybe TagSetting)
-p1TagSetting
-  = lens _p1TagSetting (\ s a -> s{_p1TagSetting = a})
-
--- | ID of the content category assigned to this placement.
-p1ContentCategoryId :: Lens' Placement (Maybe Int64)
-p1ContentCategoryId
-  = lens _p1ContentCategoryId
-      (\ s a -> s{_p1ContentCategoryId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the directory site. This is a read-only,
--- auto-generated field.
-p1DirectorySiteIdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1DirectorySiteIdDimensionValue
-  = lens _p1DirectorySiteIdDimensionValue
-      (\ s a -> s{_p1DirectorySiteIdDimensionValue = a})
-
--- | Account ID of this placement. This field can be left blank.
-p1AccountId :: Lens' Placement (Maybe Int64)
-p1AccountId
-  = lens _p1AccountId (\ s a -> s{_p1AccountId = a}) .
-      mapping _Coerce
-
--- | Payment source for this placement. This is a required field that is
--- read-only after insertion.
-p1PaymentSource :: Lens' Placement (Maybe PlacementPaymentSource)
-p1PaymentSource
-  = lens _p1PaymentSource
-      (\ s a -> s{_p1PaymentSource = a})
-
--- | Name of this placement.This is a required field and must be less than
--- 256 characters long.
-p1Name :: Lens' Placement (Maybe Text)
-p1Name = lens _p1Name (\ s a -> s{_p1Name = a})
-
--- | Additional sizes associated with this placement. When inserting or
--- updating a placement, only the size ID field is used.
-p1AdditionalSizes :: Lens' Placement [Size]
-p1AdditionalSizes
-  = lens _p1AdditionalSizes
-      (\ s a -> s{_p1AdditionalSizes = a})
-      . _Default
-      . _Coerce
-
--- | Directory site ID of this placement. On insert, you must set either this
--- field or the siteId field to specify the site associated with this
--- placement. This is a required field that is read-only after insertion.
-p1DirectorySiteId :: Lens' Placement (Maybe Int64)
-p1DirectorySiteId
-  = lens _p1DirectorySiteId
-      (\ s a -> s{_p1DirectorySiteId = a})
-      . mapping _Coerce
-
--- | Information about the creation of this placement. This is a read-only
--- field.
-p1CreateInfo :: Lens' Placement (Maybe LastModifiedInfo)
-p1CreateInfo
-  = lens _p1CreateInfo (\ s a -> s{_p1CreateInfo = a})
-
--- | Whether Verification and ActiveView are disabled for in-stream video
--- creatives for this placement. The same setting videoActiveViewOptOut
--- exists on the site level -- the opt out occurs if either of these
--- settings are true. These settings are distinct from
--- DirectorySites.settings.activeViewOptOut or
--- Sites.siteSettings.activeViewOptOut which only apply to display ads.
--- However, Accounts.activeViewOptOut opts out both video traffic, as well
--- as display ads, from Verification and ActiveView.
-p1VideoActiveViewOptOut :: Lens' Placement (Maybe Bool)
-p1VideoActiveViewOptOut
-  = lens _p1VideoActiveViewOptOut
-      (\ s a -> s{_p1VideoActiveViewOptOut = a})
-
--- | Information about the most recent modification of this placement. This
--- is a read-only field.
-p1LastModifiedInfo :: Lens' Placement (Maybe LastModifiedInfo)
-p1LastModifiedInfo
-  = lens _p1LastModifiedInfo
-      (\ s a -> s{_p1LastModifiedInfo = a})
-
--- | ID of this placement. This is a read-only, auto-generated field.
-p1Id :: Lens' Placement (Maybe Int64)
-p1Id
-  = lens _p1Id (\ s a -> s{_p1Id = a}) .
-      mapping _Coerce
-
--- | Whether creatives assigned to this placement must be SSL-compliant.
-p1SSLRequired :: Lens' Placement (Maybe Bool)
-p1SSLRequired
-  = lens _p1SSLRequired
-      (\ s a -> s{_p1SSLRequired = a})
-
--- | Subaccount ID of this placement. This field can be left blank.
-p1SubAccountId :: Lens' Placement (Maybe Int64)
-p1SubAccountId
-  = lens _p1SubAccountId
-      (\ s a -> s{_p1SubAccountId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the placement group. This is a read-only,
--- auto-generated field.
-p1PlacementGroupIdDimensionValue :: Lens' Placement (Maybe DimensionValue)
-p1PlacementGroupIdDimensionValue
-  = lens _p1PlacementGroupIdDimensionValue
-      (\ s a -> s{_p1PlacementGroupIdDimensionValue = a})
-
--- | External ID for this placement.
-p1ExternalId :: Lens' Placement (Maybe Text)
-p1ExternalId
-  = lens _p1ExternalId (\ s a -> s{_p1ExternalId = a})
-
--- | ID of this placement\'s group, if applicable.
-p1PlacementGroupId :: Lens' Placement (Maybe Int64)
-p1PlacementGroupId
-  = lens _p1PlacementGroupId
-      (\ s a -> s{_p1PlacementGroupId = a})
-      . mapping _Coerce
-
--- | Comments for this placement.
-p1Comment :: Lens' Placement (Maybe Text)
-p1Comment
-  = lens _p1Comment (\ s a -> s{_p1Comment = a})
-
--- | Site ID associated with this placement. On insert, you must set either
--- this field or the directorySiteId field to specify the site associated
--- with this placement. This is a required field that is read-only after
--- insertion.
-p1SiteId :: Lens' Placement (Maybe Int64)
-p1SiteId
-  = lens _p1SiteId (\ s a -> s{_p1SiteId = a}) .
-      mapping _Coerce
-
--- | Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering on desktop, on mobile devices or in mobile apps for regular or
--- interstitial ads respectively. APP and APP_INTERSTITIAL are no longer
--- allowed for new placement insertions. Instead, use DISPLAY or
--- DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream
--- video ads developed with the VAST standard. This field is required on
--- insertion.
-p1Compatibility :: Lens' Placement (Maybe PlacementCompatibility)
-p1Compatibility
-  = lens _p1Compatibility
-      (\ s a -> s{_p1Compatibility = a})
-
--- | Whether this placement is archived.
-p1Archived :: Lens' Placement (Maybe Bool)
-p1Archived
-  = lens _p1Archived (\ s a -> s{_p1Archived = a})
-
--- | Whether payment was approved for this placement. This is a read-only
--- field relevant only to publisher-paid placements.
-p1PaymentApproved :: Lens' Placement (Maybe Bool)
-p1PaymentApproved
-  = lens _p1PaymentApproved
-      (\ s a -> s{_p1PaymentApproved = a})
-
--- | Information about the last publisher update. This is a read-only field.
-p1PublisherUpdateInfo :: Lens' Placement (Maybe LastModifiedInfo)
-p1PublisherUpdateInfo
-  = lens _p1PublisherUpdateInfo
-      (\ s a -> s{_p1PublisherUpdateInfo = a})
-
-instance FromJSON Placement where
-        parseJSON
-          = withObject "Placement"
-              (\ o ->
-                 Placement' <$>
-                   (o .:? "status") <*> (o .:? "videoSettings") <*>
-                     (o .:? "placementStrategyId")
-                     <*> (o .:? "tagFormats" .!= mempty)
-                     <*> (o .:? "siteIdDimensionValue")
-                     <*> (o .:? "pricingSchedule")
-                     <*> (o .:? "size")
-                     <*> (o .:? "kind" .!= "dfareporting#placement")
-                     <*> (o .:? "keyName")
-                     <*> (o .:? "campaignIdDimensionValue")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "campaignId")
-                     <*> (o .:? "idDimensionValue")
-                     <*> (o .:? "vpaidAdapterChoice")
-                     <*> (o .:? "adBlockingOptOut")
-                     <*> (o .:? "primary")
-                     <*> (o .:? "lookbackConfiguration")
-                     <*> (o .:? "tagSetting")
-                     <*> (o .:? "contentCategoryId")
-                     <*> (o .:? "directorySiteIdDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "paymentSource")
-                     <*> (o .:? "name")
-                     <*> (o .:? "additionalSizes" .!= mempty)
-                     <*> (o .:? "directorySiteId")
-                     <*> (o .:? "createInfo")
-                     <*> (o .:? "videoActiveViewOptOut")
-                     <*> (o .:? "lastModifiedInfo")
-                     <*> (o .:? "id")
-                     <*> (o .:? "sslRequired")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "placementGroupIdDimensionValue")
-                     <*> (o .:? "externalId")
-                     <*> (o .:? "placementGroupId")
-                     <*> (o .:? "comment")
-                     <*> (o .:? "siteId")
-                     <*> (o .:? "compatibility")
-                     <*> (o .:? "archived")
-                     <*> (o .:? "paymentApproved")
-                     <*> (o .:? "publisherUpdateInfo"))
-
-instance ToJSON Placement where
-        toJSON Placement'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _p1Status,
-                  ("videoSettings" .=) <$> _p1VideoSettings,
-                  ("placementStrategyId" .=) <$>
-                    _p1PlacementStrategyId,
-                  ("tagFormats" .=) <$> _p1TagFormats,
-                  ("siteIdDimensionValue" .=) <$>
-                    _p1SiteIdDimensionValue,
-                  ("pricingSchedule" .=) <$> _p1PricingSchedule,
-                  ("size" .=) <$> _p1Size, Just ("kind" .= _p1Kind),
-                  ("keyName" .=) <$> _p1KeyName,
-                  ("campaignIdDimensionValue" .=) <$>
-                    _p1CampaignIdDimensionValue,
-                  ("advertiserId" .=) <$> _p1AdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _p1AdvertiserIdDimensionValue,
-                  ("campaignId" .=) <$> _p1CampaignId,
-                  ("idDimensionValue" .=) <$> _p1IdDimensionValue,
-                  ("vpaidAdapterChoice" .=) <$> _p1VpaidAdapterChoice,
-                  ("adBlockingOptOut" .=) <$> _p1AdBlockingOptOut,
-                  ("primary" .=) <$> _p1Primary,
-                  ("lookbackConfiguration" .=) <$>
-                    _p1LookbackConfiguration,
-                  ("tagSetting" .=) <$> _p1TagSetting,
-                  ("contentCategoryId" .=) <$> _p1ContentCategoryId,
-                  ("directorySiteIdDimensionValue" .=) <$>
-                    _p1DirectorySiteIdDimensionValue,
-                  ("accountId" .=) <$> _p1AccountId,
-                  ("paymentSource" .=) <$> _p1PaymentSource,
-                  ("name" .=) <$> _p1Name,
-                  ("additionalSizes" .=) <$> _p1AdditionalSizes,
-                  ("directorySiteId" .=) <$> _p1DirectorySiteId,
-                  ("createInfo" .=) <$> _p1CreateInfo,
-                  ("videoActiveViewOptOut" .=) <$>
-                    _p1VideoActiveViewOptOut,
-                  ("lastModifiedInfo" .=) <$> _p1LastModifiedInfo,
-                  ("id" .=) <$> _p1Id,
-                  ("sslRequired" .=) <$> _p1SSLRequired,
-                  ("subaccountId" .=) <$> _p1SubAccountId,
-                  ("placementGroupIdDimensionValue" .=) <$>
-                    _p1PlacementGroupIdDimensionValue,
-                  ("externalId" .=) <$> _p1ExternalId,
-                  ("placementGroupId" .=) <$> _p1PlacementGroupId,
-                  ("comment" .=) <$> _p1Comment,
-                  ("siteId" .=) <$> _p1SiteId,
-                  ("compatibility" .=) <$> _p1Compatibility,
-                  ("archived" .=) <$> _p1Archived,
-                  ("paymentApproved" .=) <$> _p1PaymentApproved,
-                  ("publisherUpdateInfo" .=) <$>
-                    _p1PublisherUpdateInfo])
-
--- | A description of how user IDs are encrypted.
---
--- /See:/ 'encryptionInfo' smart constructor.
-data EncryptionInfo =
-  EncryptionInfo'
-    { _eiEncryptionSource     :: !(Maybe EncryptionInfoEncryptionSource)
-    , _eiKind                 :: !Text
-    , _eiEncryptionEntityType :: !(Maybe EncryptionInfoEncryptionEntityType)
-    , _eiEncryptionEntityId   :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EncryptionInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'eiEncryptionSource'
---
--- * 'eiKind'
---
--- * 'eiEncryptionEntityType'
---
--- * 'eiEncryptionEntityId'
-encryptionInfo
-    :: EncryptionInfo
-encryptionInfo =
-  EncryptionInfo'
-    { _eiEncryptionSource = Nothing
-    , _eiKind = "dfareporting#encryptionInfo"
-    , _eiEncryptionEntityType = Nothing
-    , _eiEncryptionEntityId = Nothing
-    }
-
-
--- | Describes whether the encrypted cookie was received from ad serving (the
--- %m macro) or from Data Transfer.
-eiEncryptionSource :: Lens' EncryptionInfo (Maybe EncryptionInfoEncryptionSource)
-eiEncryptionSource
-  = lens _eiEncryptionSource
-      (\ s a -> s{_eiEncryptionSource = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#encryptionInfo\".
-eiKind :: Lens' EncryptionInfo Text
-eiKind = lens _eiKind (\ s a -> s{_eiKind = a})
-
--- | The encryption entity type. This should match the encryption
--- configuration for ad serving or Data Transfer.
-eiEncryptionEntityType :: Lens' EncryptionInfo (Maybe EncryptionInfoEncryptionEntityType)
-eiEncryptionEntityType
-  = lens _eiEncryptionEntityType
-      (\ s a -> s{_eiEncryptionEntityType = a})
-
--- | The encryption entity ID. This should match the encryption configuration
--- for ad serving or Data Transfer.
-eiEncryptionEntityId :: Lens' EncryptionInfo (Maybe Int64)
-eiEncryptionEntityId
-  = lens _eiEncryptionEntityId
-      (\ s a -> s{_eiEncryptionEntityId = a})
-      . mapping _Coerce
-
-instance FromJSON EncryptionInfo where
-        parseJSON
-          = withObject "EncryptionInfo"
-              (\ o ->
-                 EncryptionInfo' <$>
-                   (o .:? "encryptionSource") <*>
-                     (o .:? "kind" .!= "dfareporting#encryptionInfo")
-                     <*> (o .:? "encryptionEntityType")
-                     <*> (o .:? "encryptionEntityId"))
-
-instance ToJSON EncryptionInfo where
-        toJSON EncryptionInfo'{..}
-          = object
-              (catMaybes
-                 [("encryptionSource" .=) <$> _eiEncryptionSource,
-                  Just ("kind" .= _eiKind),
-                  ("encryptionEntityType" .=) <$>
-                    _eiEncryptionEntityType,
-                  ("encryptionEntityId" .=) <$> _eiEncryptionEntityId])
-
--- | Site List Response
---
--- /See:/ 'sitesListResponse' smart constructor.
-data SitesListResponse =
-  SitesListResponse'
-    { _sitNextPageToken :: !(Maybe Text)
-    , _sitKind          :: !Text
-    , _sitSites         :: !(Maybe [Site])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sitNextPageToken'
---
--- * 'sitKind'
---
--- * 'sitSites'
-sitesListResponse
-    :: SitesListResponse
-sitesListResponse =
-  SitesListResponse'
-    { _sitNextPageToken = Nothing
-    , _sitKind = "dfareporting#sitesListResponse"
-    , _sitSites = Nothing
-    }
-
-
--- | Pagination token to be used for the next list operation.
-sitNextPageToken :: Lens' SitesListResponse (Maybe Text)
-sitNextPageToken
-  = lens _sitNextPageToken
-      (\ s a -> s{_sitNextPageToken = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#sitesListResponse\".
-sitKind :: Lens' SitesListResponse Text
-sitKind = lens _sitKind (\ s a -> s{_sitKind = a})
-
--- | Site collection.
-sitSites :: Lens' SitesListResponse [Site]
-sitSites
-  = lens _sitSites (\ s a -> s{_sitSites = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON SitesListResponse where
-        parseJSON
-          = withObject "SitesListResponse"
-              (\ o ->
-                 SitesListResponse' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "kind" .!= "dfareporting#sitesListResponse")
-                     <*> (o .:? "sites" .!= mempty))
-
-instance ToJSON SitesListResponse where
-        toJSON SitesListResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _sitNextPageToken,
-                  Just ("kind" .= _sitKind),
-                  ("sites" .=) <$> _sitSites])
-
--- | Contains properties of a targeting template. A targeting template
--- encapsulates targeting information which can be reused across multiple
--- ads.
---
--- /See:/ 'targetingTemplate' smart constructor.
-data TargetingTemplate =
-  TargetingTemplate'
-    { _ttGeoTargeting                :: !(Maybe GeoTargeting)
-    , _ttTechnologyTargeting         :: !(Maybe TechnologyTargeting)
-    , _ttDayPartTargeting            :: !(Maybe DayPartTargeting)
-    , _ttKind                        :: !Text
-    , _ttAdvertiserId                :: !(Maybe (Textual Int64))
-    , _ttAdvertiserIdDimensionValue  :: !(Maybe DimensionValue)
-    , _ttAccountId                   :: !(Maybe (Textual Int64))
-    , _ttName                        :: !(Maybe Text)
-    , _ttKeyValueTargetingExpression :: !(Maybe KeyValueTargetingExpression)
-    , _ttId                          :: !(Maybe (Textual Int64))
-    , _ttSubAccountId                :: !(Maybe (Textual Int64))
-    , _ttLanguageTargeting           :: !(Maybe LanguageTargeting)
-    , _ttListTargetingExpression     :: !(Maybe ListTargetingExpression)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttGeoTargeting'
---
--- * 'ttTechnologyTargeting'
---
--- * 'ttDayPartTargeting'
---
--- * 'ttKind'
---
--- * 'ttAdvertiserId'
---
--- * 'ttAdvertiserIdDimensionValue'
---
--- * 'ttAccountId'
---
--- * 'ttName'
---
--- * 'ttKeyValueTargetingExpression'
---
--- * 'ttId'
---
--- * 'ttSubAccountId'
---
--- * 'ttLanguageTargeting'
---
--- * 'ttListTargetingExpression'
-targetingTemplate
-    :: TargetingTemplate
-targetingTemplate =
-  TargetingTemplate'
-    { _ttGeoTargeting = Nothing
-    , _ttTechnologyTargeting = Nothing
-    , _ttDayPartTargeting = Nothing
-    , _ttKind = "dfareporting#targetingTemplate"
-    , _ttAdvertiserId = Nothing
-    , _ttAdvertiserIdDimensionValue = Nothing
-    , _ttAccountId = Nothing
-    , _ttName = Nothing
-    , _ttKeyValueTargetingExpression = Nothing
-    , _ttId = Nothing
-    , _ttSubAccountId = Nothing
-    , _ttLanguageTargeting = Nothing
-    , _ttListTargetingExpression = Nothing
-    }
-
-
--- | Geographical targeting criteria.
-ttGeoTargeting :: Lens' TargetingTemplate (Maybe GeoTargeting)
-ttGeoTargeting
-  = lens _ttGeoTargeting
-      (\ s a -> s{_ttGeoTargeting = a})
-
--- | Technology platform targeting criteria.
-ttTechnologyTargeting :: Lens' TargetingTemplate (Maybe TechnologyTargeting)
-ttTechnologyTargeting
-  = lens _ttTechnologyTargeting
-      (\ s a -> s{_ttTechnologyTargeting = a})
-
--- | Time and day targeting criteria.
-ttDayPartTargeting :: Lens' TargetingTemplate (Maybe DayPartTargeting)
-ttDayPartTargeting
-  = lens _ttDayPartTargeting
-      (\ s a -> s{_ttDayPartTargeting = a})
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#targetingTemplate\".
-ttKind :: Lens' TargetingTemplate Text
-ttKind = lens _ttKind (\ s a -> s{_ttKind = a})
-
--- | Advertiser ID of this targeting template. This is a required field on
--- insert and is read-only after insert.
-ttAdvertiserId :: Lens' TargetingTemplate (Maybe Int64)
-ttAdvertiserId
-  = lens _ttAdvertiserId
-      (\ s a -> s{_ttAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-ttAdvertiserIdDimensionValue :: Lens' TargetingTemplate (Maybe DimensionValue)
-ttAdvertiserIdDimensionValue
-  = lens _ttAdvertiserIdDimensionValue
-      (\ s a -> s{_ttAdvertiserIdDimensionValue = a})
-
--- | Account ID of this targeting template. This field, if left unset, will
--- be auto-generated on insert and is read-only after insert.
-ttAccountId :: Lens' TargetingTemplate (Maybe Int64)
-ttAccountId
-  = lens _ttAccountId (\ s a -> s{_ttAccountId = a}) .
-      mapping _Coerce
-
--- | Name of this targeting template. This field is required. It must be less
--- than 256 characters long and unique within an advertiser.
-ttName :: Lens' TargetingTemplate (Maybe Text)
-ttName = lens _ttName (\ s a -> s{_ttName = a})
-
--- | Key-value targeting criteria.
-ttKeyValueTargetingExpression :: Lens' TargetingTemplate (Maybe KeyValueTargetingExpression)
-ttKeyValueTargetingExpression
-  = lens _ttKeyValueTargetingExpression
-      (\ s a -> s{_ttKeyValueTargetingExpression = a})
-
--- | ID of this targeting template. This is a read-only, auto-generated
--- field.
-ttId :: Lens' TargetingTemplate (Maybe Int64)
-ttId
-  = lens _ttId (\ s a -> s{_ttId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this targeting template. This field, if left unset,
--- will be auto-generated on insert and is read-only after insert.
-ttSubAccountId :: Lens' TargetingTemplate (Maybe Int64)
-ttSubAccountId
-  = lens _ttSubAccountId
-      (\ s a -> s{_ttSubAccountId = a})
-      . mapping _Coerce
-
--- | Language targeting criteria.
-ttLanguageTargeting :: Lens' TargetingTemplate (Maybe LanguageTargeting)
-ttLanguageTargeting
-  = lens _ttLanguageTargeting
-      (\ s a -> s{_ttLanguageTargeting = a})
-
--- | Remarketing list targeting criteria.
-ttListTargetingExpression :: Lens' TargetingTemplate (Maybe ListTargetingExpression)
-ttListTargetingExpression
-  = lens _ttListTargetingExpression
-      (\ s a -> s{_ttListTargetingExpression = a})
-
-instance FromJSON TargetingTemplate where
-        parseJSON
-          = withObject "TargetingTemplate"
-              (\ o ->
-                 TargetingTemplate' <$>
-                   (o .:? "geoTargeting") <*>
-                     (o .:? "technologyTargeting")
-                     <*> (o .:? "dayPartTargeting")
-                     <*>
-                     (o .:? "kind" .!= "dfareporting#targetingTemplate")
-                     <*> (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "keyValueTargetingExpression")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId")
-                     <*> (o .:? "languageTargeting")
-                     <*> (o .:? "listTargetingExpression"))
-
-instance ToJSON TargetingTemplate where
-        toJSON TargetingTemplate'{..}
-          = object
-              (catMaybes
-                 [("geoTargeting" .=) <$> _ttGeoTargeting,
-                  ("technologyTargeting" .=) <$>
-                    _ttTechnologyTargeting,
-                  ("dayPartTargeting" .=) <$> _ttDayPartTargeting,
-                  Just ("kind" .= _ttKind),
-                  ("advertiserId" .=) <$> _ttAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _ttAdvertiserIdDimensionValue,
-                  ("accountId" .=) <$> _ttAccountId,
-                  ("name" .=) <$> _ttName,
-                  ("keyValueTargetingExpression" .=) <$>
-                    _ttKeyValueTargetingExpression,
-                  ("id" .=) <$> _ttId,
-                  ("subaccountId" .=) <$> _ttSubAccountId,
-                  ("languageTargeting" .=) <$> _ttLanguageTargeting,
-                  ("listTargetingExpression" .=) <$>
-                    _ttListTargetingExpression])
-
--- | Contains properties of a creative field.
---
--- /See:/ 'creativeField' smart constructor.
-data CreativeField =
-  CreativeField'
-    { _cffKind                       :: !Text
-    , _cffAdvertiserId               :: !(Maybe (Textual Int64))
-    , _cffAdvertiserIdDimensionValue :: !(Maybe DimensionValue)
-    , _cffAccountId                  :: !(Maybe (Textual Int64))
-    , _cffName                       :: !(Maybe Text)
-    , _cffId                         :: !(Maybe (Textual Int64))
-    , _cffSubAccountId               :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeField' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cffKind'
---
--- * 'cffAdvertiserId'
---
--- * 'cffAdvertiserIdDimensionValue'
---
--- * 'cffAccountId'
---
--- * 'cffName'
---
--- * 'cffId'
---
--- * 'cffSubAccountId'
-creativeField
-    :: CreativeField
-creativeField =
-  CreativeField'
-    { _cffKind = "dfareporting#creativeField"
-    , _cffAdvertiserId = Nothing
-    , _cffAdvertiserIdDimensionValue = Nothing
-    , _cffAccountId = Nothing
-    , _cffName = Nothing
-    , _cffId = Nothing
-    , _cffSubAccountId = Nothing
-    }
-
-
--- | Identifies what kind of resource this is. Value: the fixed string
--- \"dfareporting#creativeField\".
-cffKind :: Lens' CreativeField Text
-cffKind = lens _cffKind (\ s a -> s{_cffKind = a})
-
--- | Advertiser ID of this creative field. This is a required field on
--- insertion.
-cffAdvertiserId :: Lens' CreativeField (Maybe Int64)
-cffAdvertiserId
-  = lens _cffAdvertiserId
-      (\ s a -> s{_cffAdvertiserId = a})
-      . mapping _Coerce
-
--- | Dimension value for the ID of the advertiser. This is a read-only,
--- auto-generated field.
-cffAdvertiserIdDimensionValue :: Lens' CreativeField (Maybe DimensionValue)
-cffAdvertiserIdDimensionValue
-  = lens _cffAdvertiserIdDimensionValue
-      (\ s a -> s{_cffAdvertiserIdDimensionValue = a})
-
--- | Account ID of this creative field. This is a read-only field that can be
--- left blank.
-cffAccountId :: Lens' CreativeField (Maybe Int64)
-cffAccountId
-  = lens _cffAccountId (\ s a -> s{_cffAccountId = a})
-      . mapping _Coerce
-
--- | Name of this creative field. This is a required field and must be less
--- than 256 characters long and unique among creative fields of the same
--- advertiser.
-cffName :: Lens' CreativeField (Maybe Text)
-cffName = lens _cffName (\ s a -> s{_cffName = a})
-
--- | ID of this creative field. This is a read-only, auto-generated field.
-cffId :: Lens' CreativeField (Maybe Int64)
-cffId
-  = lens _cffId (\ s a -> s{_cffId = a}) .
-      mapping _Coerce
-
--- | Subaccount ID of this creative field. This is a read-only field that can
--- be left blank.
-cffSubAccountId :: Lens' CreativeField (Maybe Int64)
-cffSubAccountId
-  = lens _cffSubAccountId
-      (\ s a -> s{_cffSubAccountId = a})
-      . mapping _Coerce
-
-instance FromJSON CreativeField where
-        parseJSON
-          = withObject "CreativeField"
-              (\ o ->
-                 CreativeField' <$>
-                   (o .:? "kind" .!= "dfareporting#creativeField") <*>
-                     (o .:? "advertiserId")
-                     <*> (o .:? "advertiserIdDimensionValue")
-                     <*> (o .:? "accountId")
-                     <*> (o .:? "name")
-                     <*> (o .:? "id")
-                     <*> (o .:? "subaccountId"))
-
-instance ToJSON CreativeField where
-        toJSON CreativeField'{..}
-          = object
-              (catMaybes
-                 [Just ("kind" .= _cffKind),
-                  ("advertiserId" .=) <$> _cffAdvertiserId,
-                  ("advertiserIdDimensionValue" .=) <$>
-                    _cffAdvertiserIdDimensionValue,
-                  ("accountId" .=) <$> _cffAccountId,
-                  ("name" .=) <$> _cffName, ("id" .=) <$> _cffId,
-                  ("subaccountId" .=) <$> _cffSubAccountId])
-
--- | Properties of inheriting and overriding the default click-through event
--- tag. A campaign may override the event tag defined at the advertiser
--- level, and an ad may also override the campaign\'s setting further.
---
--- /See:/ 'defaultClickThroughEventTagProperties' smart constructor.
-data DefaultClickThroughEventTagProperties =
-  DefaultClickThroughEventTagProperties'
-    { _dctetpOverrideInheritedEventTag     :: !(Maybe Bool)
-    , _dctetpDefaultClickThroughEventTagId :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DefaultClickThroughEventTagProperties' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dctetpOverrideInheritedEventTag'
---
--- * 'dctetpDefaultClickThroughEventTagId'
-defaultClickThroughEventTagProperties
-    :: DefaultClickThroughEventTagProperties
-defaultClickThroughEventTagProperties =
-  DefaultClickThroughEventTagProperties'
-    { _dctetpOverrideInheritedEventTag = Nothing
-    , _dctetpDefaultClickThroughEventTagId = Nothing
-    }
-
-
--- | Whether this entity should override the inherited default click-through
--- event tag with its own defined value.
-dctetpOverrideInheritedEventTag :: Lens' DefaultClickThroughEventTagProperties (Maybe Bool)
-dctetpOverrideInheritedEventTag
-  = lens _dctetpOverrideInheritedEventTag
-      (\ s a -> s{_dctetpOverrideInheritedEventTag = a})
-
--- | ID of the click-through event tag to apply to all ads in this entity\'s
--- scope.
-dctetpDefaultClickThroughEventTagId :: Lens' DefaultClickThroughEventTagProperties (Maybe Int64)
-dctetpDefaultClickThroughEventTagId
-  = lens _dctetpDefaultClickThroughEventTagId
-      (\ s a ->
-         s{_dctetpDefaultClickThroughEventTagId = a})
-      . mapping _Coerce
-
-instance FromJSON
-           DefaultClickThroughEventTagProperties
-         where
-        parseJSON
-          = withObject "DefaultClickThroughEventTagProperties"
-              (\ o ->
-                 DefaultClickThroughEventTagProperties' <$>
-                   (o .:? "overrideInheritedEventTag") <*>
-                     (o .:? "defaultClickThroughEventTagId"))
-
-instance ToJSON DefaultClickThroughEventTagProperties
-         where
-        toJSON DefaultClickThroughEventTagProperties'{..}
-          = object
-              (catMaybes
-                 [("overrideInheritedEventTag" .=) <$>
-                    _dctetpOverrideInheritedEventTag,
-                  ("defaultClickThroughEventTagId" .=) <$>
-                    _dctetpDefaultClickThroughEventTagId])
-
--- | Remarketing List Targeting Expression.
---
--- /See:/ 'listTargetingExpression' smart constructor.
-newtype ListTargetingExpression =
-  ListTargetingExpression'
-    { _lteExpression :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListTargetingExpression' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lteExpression'
-listTargetingExpression
-    :: ListTargetingExpression
-listTargetingExpression = ListTargetingExpression' {_lteExpression = Nothing}
-
-
--- | Expression describing which lists are being targeted by the ad.
-lteExpression :: Lens' ListTargetingExpression (Maybe Text)
-lteExpression
-  = lens _lteExpression
-      (\ s a -> s{_lteExpression = a})
-
-instance FromJSON ListTargetingExpression where
-        parseJSON
-          = withObject "ListTargetingExpression"
-              (\ o ->
-                 ListTargetingExpression' <$> (o .:? "expression"))
-
-instance ToJSON ListTargetingExpression where
-        toJSON ListTargetingExpression'{..}
-          = object
-              (catMaybes [("expression" .=) <$> _lteExpression])
diff --git a/gen/Network/Google/DFAReporting/Types/Sum.hs b/gen/Network/Google/DFAReporting/Types/Sum.hs
deleted file mode 100644
--- a/gen/Network/Google/DFAReporting/Types/Sum.hs
+++ /dev/null
@@ -1,9127 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE LambdaCase         #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.DFAReporting.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.DFAReporting.Types.Sum where
-
-import           Network.Google.Prelude hiding (Bytes)
-
--- | Order of sorted results.
-data PlacementsListSortOrder
-    = Ascending
-      -- ^ @ASCENDING@
-    | Descending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsListSortOrder
-
-instance FromHttpApiData PlacementsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right Ascending
-        "DESCENDING" -> Right Descending
-        x -> Left ("Unable to parse PlacementsListSortOrder from: " <> x)
-
-instance ToHttpApiData PlacementsListSortOrder where
-    toQueryParam = \case
-        Ascending -> "ASCENDING"
-        Descending -> "DESCENDING"
-
-instance FromJSON PlacementsListSortOrder where
-    parseJSON = parseJSONText "PlacementsListSortOrder"
-
-instance ToJSON PlacementsListSortOrder where
-    toJSON = toJSONText
-
--- | The date range relative to the date of when the report is run.
-data DateRangeRelativeDateRange
-    = Last14Days
-      -- ^ @LAST_14_DAYS@
-    | Last24Months
-      -- ^ @LAST_24_MONTHS@
-    | Last30Days
-      -- ^ @LAST_30_DAYS@
-    | Last365Days
-      -- ^ @LAST_365_DAYS@
-    | Last60Days
-      -- ^ @LAST_60_DAYS@
-    | Last7Days
-      -- ^ @LAST_7_DAYS@
-    | Last90Days
-      -- ^ @LAST_90_DAYS@
-    | MonthToDate
-      -- ^ @MONTH_TO_DATE@
-    | PreviousMonth
-      -- ^ @PREVIOUS_MONTH@
-    | PreviousQuarter
-      -- ^ @PREVIOUS_QUARTER@
-    | PreviousWeek
-      -- ^ @PREVIOUS_WEEK@
-    | PreviousYear
-      -- ^ @PREVIOUS_YEAR@
-    | QuarterToDate
-      -- ^ @QUARTER_TO_DATE@
-    | Today
-      -- ^ @TODAY@
-    | WeekToDate
-      -- ^ @WEEK_TO_DATE@
-    | YearToDate
-      -- ^ @YEAR_TO_DATE@
-    | Yesterday
-      -- ^ @YESTERDAY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DateRangeRelativeDateRange
-
-instance FromHttpApiData DateRangeRelativeDateRange where
-    parseQueryParam = \case
-        "LAST_14_DAYS" -> Right Last14Days
-        "LAST_24_MONTHS" -> Right Last24Months
-        "LAST_30_DAYS" -> Right Last30Days
-        "LAST_365_DAYS" -> Right Last365Days
-        "LAST_60_DAYS" -> Right Last60Days
-        "LAST_7_DAYS" -> Right Last7Days
-        "LAST_90_DAYS" -> Right Last90Days
-        "MONTH_TO_DATE" -> Right MonthToDate
-        "PREVIOUS_MONTH" -> Right PreviousMonth
-        "PREVIOUS_QUARTER" -> Right PreviousQuarter
-        "PREVIOUS_WEEK" -> Right PreviousWeek
-        "PREVIOUS_YEAR" -> Right PreviousYear
-        "QUARTER_TO_DATE" -> Right QuarterToDate
-        "TODAY" -> Right Today
-        "WEEK_TO_DATE" -> Right WeekToDate
-        "YEAR_TO_DATE" -> Right YearToDate
-        "YESTERDAY" -> Right Yesterday
-        x -> Left ("Unable to parse DateRangeRelativeDateRange from: " <> x)
-
-instance ToHttpApiData DateRangeRelativeDateRange where
-    toQueryParam = \case
-        Last14Days -> "LAST_14_DAYS"
-        Last24Months -> "LAST_24_MONTHS"
-        Last30Days -> "LAST_30_DAYS"
-        Last365Days -> "LAST_365_DAYS"
-        Last60Days -> "LAST_60_DAYS"
-        Last7Days -> "LAST_7_DAYS"
-        Last90Days -> "LAST_90_DAYS"
-        MonthToDate -> "MONTH_TO_DATE"
-        PreviousMonth -> "PREVIOUS_MONTH"
-        PreviousQuarter -> "PREVIOUS_QUARTER"
-        PreviousWeek -> "PREVIOUS_WEEK"
-        PreviousYear -> "PREVIOUS_YEAR"
-        QuarterToDate -> "QUARTER_TO_DATE"
-        Today -> "TODAY"
-        WeekToDate -> "WEEK_TO_DATE"
-        YearToDate -> "YEAR_TO_DATE"
-        Yesterday -> "YESTERDAY"
-
-instance FromJSON DateRangeRelativeDateRange where
-    parseJSON = parseJSONText "DateRangeRelativeDateRange"
-
-instance ToJSON DateRangeRelativeDateRange where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AdvertisersListSortField
-    = ID
-      -- ^ @ID@
-    | Name
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertisersListSortField
-
-instance FromHttpApiData AdvertisersListSortField where
-    parseQueryParam = \case
-        "ID" -> Right ID
-        "NAME" -> Right Name
-        x -> Left ("Unable to parse AdvertisersListSortField from: " <> x)
-
-instance ToHttpApiData AdvertisersListSortField where
-    toQueryParam = \case
-        ID -> "ID"
-        Name -> "NAME"
-
-instance FromJSON AdvertisersListSortField where
-    parseJSON = parseJSONText "AdvertisersListSortField"
-
-instance ToJSON AdvertisersListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CreativeFieldsListSortOrder
-    = CFLSOAscending
-      -- ^ @ASCENDING@
-    | CFLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeFieldsListSortOrder
-
-instance FromHttpApiData CreativeFieldsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CFLSOAscending
-        "DESCENDING" -> Right CFLSODescending
-        x -> Left ("Unable to parse CreativeFieldsListSortOrder from: " <> x)
-
-instance ToHttpApiData CreativeFieldsListSortOrder where
-    toQueryParam = \case
-        CFLSOAscending -> "ASCENDING"
-        CFLSODescending -> "DESCENDING"
-
-instance FromJSON CreativeFieldsListSortOrder where
-    parseJSON = parseJSONText "CreativeFieldsListSortOrder"
-
-instance ToJSON CreativeFieldsListSortOrder where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data TargetingTemplatesListSortOrder
-    = TTLSOAscending
-      -- ^ @ASCENDING@
-    | TTLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetingTemplatesListSortOrder
-
-instance FromHttpApiData TargetingTemplatesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right TTLSOAscending
-        "DESCENDING" -> Right TTLSODescending
-        x -> Left ("Unable to parse TargetingTemplatesListSortOrder from: " <> x)
-
-instance ToHttpApiData TargetingTemplatesListSortOrder where
-    toQueryParam = \case
-        TTLSOAscending -> "ASCENDING"
-        TTLSODescending -> "DESCENDING"
-
-instance FromJSON TargetingTemplatesListSortOrder where
-    parseJSON = parseJSONText "TargetingTemplatesListSortOrder"
-
-instance ToJSON TargetingTemplatesListSortOrder where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AdvertiserLandingPagesListSortOrder
-    = ALPLSOAscending
-      -- ^ @ASCENDING@
-    | ALPLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertiserLandingPagesListSortOrder
-
-instance FromHttpApiData AdvertiserLandingPagesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right ALPLSOAscending
-        "DESCENDING" -> Right ALPLSODescending
-        x -> Left ("Unable to parse AdvertiserLandingPagesListSortOrder from: " <> x)
-
-instance ToHttpApiData AdvertiserLandingPagesListSortOrder where
-    toQueryParam = \case
-        ALPLSOAscending -> "ASCENDING"
-        ALPLSODescending -> "DESCENDING"
-
-instance FromJSON AdvertiserLandingPagesListSortOrder where
-    parseJSON = parseJSONText "AdvertiserLandingPagesListSortOrder"
-
-instance ToJSON AdvertiserLandingPagesListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data UserRolesListSortField
-    = URLSFID
-      -- ^ @ID@
-    | URLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UserRolesListSortField
-
-instance FromHttpApiData UserRolesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right URLSFID
-        "NAME" -> Right URLSFName
-        x -> Left ("Unable to parse UserRolesListSortField from: " <> x)
-
-instance ToHttpApiData UserRolesListSortField where
-    toQueryParam = \case
-        URLSFID -> "ID"
-        URLSFName -> "NAME"
-
-instance FromJSON UserRolesListSortField where
-    parseJSON = parseJSONText "UserRolesListSortField"
-
-instance ToJSON UserRolesListSortField where
-    toJSON = toJSONText
-
--- | Tag format type for the floodlight activity. If left blank, the tag
--- format will default to HTML.
-data FloodlightActivityTagFormat
-    = HTML
-      -- ^ @HTML@
-    | Xhtml
-      -- ^ @XHTML@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityTagFormat
-
-instance FromHttpApiData FloodlightActivityTagFormat where
-    parseQueryParam = \case
-        "HTML" -> Right HTML
-        "XHTML" -> Right Xhtml
-        x -> Left ("Unable to parse FloodlightActivityTagFormat from: " <> x)
-
-instance ToHttpApiData FloodlightActivityTagFormat where
-    toQueryParam = \case
-        HTML -> "HTML"
-        Xhtml -> "XHTML"
-
-instance FromJSON FloodlightActivityTagFormat where
-    parseJSON = parseJSONText "FloodlightActivityTagFormat"
-
-instance ToJSON FloodlightActivityTagFormat where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data OrderDocumentsListSortOrder
-    = ODLSOAscending
-      -- ^ @ASCENDING@
-    | ODLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrderDocumentsListSortOrder
-
-instance FromHttpApiData OrderDocumentsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right ODLSOAscending
-        "DESCENDING" -> Right ODLSODescending
-        x -> Left ("Unable to parse OrderDocumentsListSortOrder from: " <> x)
-
-instance ToHttpApiData OrderDocumentsListSortOrder where
-    toQueryParam = \case
-        ODLSOAscending -> "ASCENDING"
-        ODLSODescending -> "DESCENDING"
-
-instance FromJSON OrderDocumentsListSortOrder where
-    parseJSON = parseJSONText "OrderDocumentsListSortOrder"
-
-instance ToJSON OrderDocumentsListSortOrder where
-    toJSON = toJSONText
-
--- | Role of the asset in relation to creative. Applicable to all but the
--- following creative types: all REDIRECT and TRACKING_TEXT. This is a
--- required field. PRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER,
--- IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple
--- primary assets), and all VPAID creatives. BACKUP_IMAGE applies to
--- FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.
--- Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
--- ADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.
--- OTHER refers to assets from sources other than Campaign Manager, such as
--- Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID
--- creatives. PARENT_VIDEO refers to videos uploaded by the user in
--- Campaign Manager and is applicable to INSTREAM_VIDEO and
--- VPAID_LINEAR_VIDEO creatives. TRANSCODED_VIDEO refers to videos
--- transcoded by Campaign Manager from PARENT_VIDEO assets and is
--- applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
--- ALTERNATE_VIDEO refers to the Campaign Manager representation of child
--- asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO
--- creatives. These cannot be added or removed within Campaign Manager. For
--- VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and
--- ALTERNATE_VIDEO assets that are marked active serve as backup in case
--- the VPAID creative cannot be served. Only PARENT_VIDEO assets can be
--- added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.
--- PARENT_AUDIO refers to audios uploaded by the user in Campaign Manager
--- and is applicable to INSTREAM_AUDIO creatives. TRANSCODED_AUDIO refers
--- to audios transcoded by Campaign Manager from PARENT_AUDIO assets and is
--- applicable to INSTREAM_AUDIO creatives.
-data CreativeAssetRole
-    = AdditionalFlash
-      -- ^ @ADDITIONAL_FLASH@
-    | AdditionalImage
-      -- ^ @ADDITIONAL_IMAGE@
-    | AlternateVideo
-      -- ^ @ALTERNATE_VIDEO@
-    | BackupImage
-      -- ^ @BACKUP_IMAGE@
-    | Other
-      -- ^ @OTHER@
-    | ParentAudio
-      -- ^ @PARENT_AUDIO@
-    | ParentVideo
-      -- ^ @PARENT_VIDEO@
-    | Primary
-      -- ^ @PRIMARY@
-    | TranscodedAudio
-      -- ^ @TRANSCODED_AUDIO@
-    | TranscodedVideo
-      -- ^ @TRANSCODED_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetRole
-
-instance FromHttpApiData CreativeAssetRole where
-    parseQueryParam = \case
-        "ADDITIONAL_FLASH" -> Right AdditionalFlash
-        "ADDITIONAL_IMAGE" -> Right AdditionalImage
-        "ALTERNATE_VIDEO" -> Right AlternateVideo
-        "BACKUP_IMAGE" -> Right BackupImage
-        "OTHER" -> Right Other
-        "PARENT_AUDIO" -> Right ParentAudio
-        "PARENT_VIDEO" -> Right ParentVideo
-        "PRIMARY" -> Right Primary
-        "TRANSCODED_AUDIO" -> Right TranscodedAudio
-        "TRANSCODED_VIDEO" -> Right TranscodedVideo
-        x -> Left ("Unable to parse CreativeAssetRole from: " <> x)
-
-instance ToHttpApiData CreativeAssetRole where
-    toQueryParam = \case
-        AdditionalFlash -> "ADDITIONAL_FLASH"
-        AdditionalImage -> "ADDITIONAL_IMAGE"
-        AlternateVideo -> "ALTERNATE_VIDEO"
-        BackupImage -> "BACKUP_IMAGE"
-        Other -> "OTHER"
-        ParentAudio -> "PARENT_AUDIO"
-        ParentVideo -> "PARENT_VIDEO"
-        Primary -> "PRIMARY"
-        TranscodedAudio -> "TRANSCODED_AUDIO"
-        TranscodedVideo -> "TRANSCODED_VIDEO"
-
-instance FromJSON CreativeAssetRole where
-    parseJSON = parseJSONText "CreativeAssetRole"
-
-instance ToJSON CreativeAssetRole where
-    toJSON = toJSONText
-
--- | Select only dynamic targeting keys with this object type.
-data DynamicTargetingKeysListObjectType
-    = ObjectAd
-      -- ^ @OBJECT_AD@
-    | ObjectAdvertiser
-      -- ^ @OBJECT_ADVERTISER@
-    | ObjectCreative
-      -- ^ @OBJECT_CREATIVE@
-    | ObjectPlacement
-      -- ^ @OBJECT_PLACEMENT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DynamicTargetingKeysListObjectType
-
-instance FromHttpApiData DynamicTargetingKeysListObjectType where
-    parseQueryParam = \case
-        "OBJECT_AD" -> Right ObjectAd
-        "OBJECT_ADVERTISER" -> Right ObjectAdvertiser
-        "OBJECT_CREATIVE" -> Right ObjectCreative
-        "OBJECT_PLACEMENT" -> Right ObjectPlacement
-        x -> Left ("Unable to parse DynamicTargetingKeysListObjectType from: " <> x)
-
-instance ToHttpApiData DynamicTargetingKeysListObjectType where
-    toQueryParam = \case
-        ObjectAd -> "OBJECT_AD"
-        ObjectAdvertiser -> "OBJECT_ADVERTISER"
-        ObjectCreative -> "OBJECT_CREATIVE"
-        ObjectPlacement -> "OBJECT_PLACEMENT"
-
-instance FromJSON DynamicTargetingKeysListObjectType where
-    parseJSON = parseJSONText "DynamicTargetingKeysListObjectType"
-
-instance ToJSON DynamicTargetingKeysListObjectType where
-    toJSON = toJSONText
-
--- | The delivery type for the recipient.
-data RecipientDeliveryType
-    = Attachment
-      -- ^ @ATTACHMENT@
-    | Link
-      -- ^ @LINK@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable RecipientDeliveryType
-
-instance FromHttpApiData RecipientDeliveryType where
-    parseQueryParam = \case
-        "ATTACHMENT" -> Right Attachment
-        "LINK" -> Right Link
-        x -> Left ("Unable to parse RecipientDeliveryType from: " <> x)
-
-instance ToHttpApiData RecipientDeliveryType where
-    toQueryParam = \case
-        Attachment -> "ATTACHMENT"
-        Link -> "LINK"
-
-instance FromJSON RecipientDeliveryType where
-    parseJSON = parseJSONText "RecipientDeliveryType"
-
-instance ToJSON RecipientDeliveryType where
-    toJSON = toJSONText
-
--- | Third-party URL type for in-stream video and in-stream audio creatives.
-data ThirdPartyTrackingURLThirdPartyURLType
-    = ClickTracking
-      -- ^ @CLICK_TRACKING@
-    | Impression
-      -- ^ @IMPRESSION@
-    | RichMediaBackupImpression
-      -- ^ @RICH_MEDIA_BACKUP_IMPRESSION@
-    | RichMediaImpression
-      -- ^ @RICH_MEDIA_IMPRESSION@
-    | RichMediaRmImpression
-      -- ^ @RICH_MEDIA_RM_IMPRESSION@
-    | Survey
-      -- ^ @SURVEY@
-    | VideoComplete
-      -- ^ @VIDEO_COMPLETE@
-    | VideoCustom
-      -- ^ @VIDEO_CUSTOM@
-    | VideoFirstQuartile
-      -- ^ @VIDEO_FIRST_QUARTILE@
-    | VideoFullscreen
-      -- ^ @VIDEO_FULLSCREEN@
-    | VideoMidpoint
-      -- ^ @VIDEO_MIDPOINT@
-    | VideoMute
-      -- ^ @VIDEO_MUTE@
-    | VideoPause
-      -- ^ @VIDEO_PAUSE@
-    | VideoProgress
-      -- ^ @VIDEO_PROGRESS@
-    | VideoRewind
-      -- ^ @VIDEO_REWIND@
-    | VideoSkip
-      -- ^ @VIDEO_SKIP@
-    | VideoStart
-      -- ^ @VIDEO_START@
-    | VideoStop
-      -- ^ @VIDEO_STOP@
-    | VideoThirdQuartile
-      -- ^ @VIDEO_THIRD_QUARTILE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ThirdPartyTrackingURLThirdPartyURLType
-
-instance FromHttpApiData ThirdPartyTrackingURLThirdPartyURLType where
-    parseQueryParam = \case
-        "CLICK_TRACKING" -> Right ClickTracking
-        "IMPRESSION" -> Right Impression
-        "RICH_MEDIA_BACKUP_IMPRESSION" -> Right RichMediaBackupImpression
-        "RICH_MEDIA_IMPRESSION" -> Right RichMediaImpression
-        "RICH_MEDIA_RM_IMPRESSION" -> Right RichMediaRmImpression
-        "SURVEY" -> Right Survey
-        "VIDEO_COMPLETE" -> Right VideoComplete
-        "VIDEO_CUSTOM" -> Right VideoCustom
-        "VIDEO_FIRST_QUARTILE" -> Right VideoFirstQuartile
-        "VIDEO_FULLSCREEN" -> Right VideoFullscreen
-        "VIDEO_MIDPOINT" -> Right VideoMidpoint
-        "VIDEO_MUTE" -> Right VideoMute
-        "VIDEO_PAUSE" -> Right VideoPause
-        "VIDEO_PROGRESS" -> Right VideoProgress
-        "VIDEO_REWIND" -> Right VideoRewind
-        "VIDEO_SKIP" -> Right VideoSkip
-        "VIDEO_START" -> Right VideoStart
-        "VIDEO_STOP" -> Right VideoStop
-        "VIDEO_THIRD_QUARTILE" -> Right VideoThirdQuartile
-        x -> Left ("Unable to parse ThirdPartyTrackingURLThirdPartyURLType from: " <> x)
-
-instance ToHttpApiData ThirdPartyTrackingURLThirdPartyURLType where
-    toQueryParam = \case
-        ClickTracking -> "CLICK_TRACKING"
-        Impression -> "IMPRESSION"
-        RichMediaBackupImpression -> "RICH_MEDIA_BACKUP_IMPRESSION"
-        RichMediaImpression -> "RICH_MEDIA_IMPRESSION"
-        RichMediaRmImpression -> "RICH_MEDIA_RM_IMPRESSION"
-        Survey -> "SURVEY"
-        VideoComplete -> "VIDEO_COMPLETE"
-        VideoCustom -> "VIDEO_CUSTOM"
-        VideoFirstQuartile -> "VIDEO_FIRST_QUARTILE"
-        VideoFullscreen -> "VIDEO_FULLSCREEN"
-        VideoMidpoint -> "VIDEO_MIDPOINT"
-        VideoMute -> "VIDEO_MUTE"
-        VideoPause -> "VIDEO_PAUSE"
-        VideoProgress -> "VIDEO_PROGRESS"
-        VideoRewind -> "VIDEO_REWIND"
-        VideoSkip -> "VIDEO_SKIP"
-        VideoStart -> "VIDEO_START"
-        VideoStop -> "VIDEO_STOP"
-        VideoThirdQuartile -> "VIDEO_THIRD_QUARTILE"
-
-instance FromJSON ThirdPartyTrackingURLThirdPartyURLType where
-    parseJSON = parseJSONText "ThirdPartyTrackingURLThirdPartyURLType"
-
-instance ToJSON ThirdPartyTrackingURLThirdPartyURLType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data TargetableRemarketingListsListSortOrder
-    = TRLLSOAscending
-      -- ^ @ASCENDING@
-    | TRLLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetableRemarketingListsListSortOrder
-
-instance FromHttpApiData TargetableRemarketingListsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right TRLLSOAscending
-        "DESCENDING" -> Right TRLLSODescending
-        x -> Left ("Unable to parse TargetableRemarketingListsListSortOrder from: " <> x)
-
-instance ToHttpApiData TargetableRemarketingListsListSortOrder where
-    toQueryParam = \case
-        TRLLSOAscending -> "ASCENDING"
-        TRLLSODescending -> "DESCENDING"
-
-instance FromJSON TargetableRemarketingListsListSortOrder where
-    parseJSON = parseJSONText "TargetableRemarketingListsListSortOrder"
-
-instance ToJSON TargetableRemarketingListsListSortOrder where
-    toJSON = toJSONText
-
--- | Offset left unit for an asset. This is a read-only field. Applicable to
--- the following creative types: all RICH_MEDIA.
-data CreativeAssetPositionLeftUnit
-    = OffSetUnitPercent
-      -- ^ @OFFSET_UNIT_PERCENT@
-    | OffSetUnitPixel
-      -- ^ @OFFSET_UNIT_PIXEL@
-    | OffSetUnitPixelFromCenter
-      -- ^ @OFFSET_UNIT_PIXEL_FROM_CENTER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetPositionLeftUnit
-
-instance FromHttpApiData CreativeAssetPositionLeftUnit where
-    parseQueryParam = \case
-        "OFFSET_UNIT_PERCENT" -> Right OffSetUnitPercent
-        "OFFSET_UNIT_PIXEL" -> Right OffSetUnitPixel
-        "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Right OffSetUnitPixelFromCenter
-        x -> Left ("Unable to parse CreativeAssetPositionLeftUnit from: " <> x)
-
-instance ToHttpApiData CreativeAssetPositionLeftUnit where
-    toQueryParam = \case
-        OffSetUnitPercent -> "OFFSET_UNIT_PERCENT"
-        OffSetUnitPixel -> "OFFSET_UNIT_PIXEL"
-        OffSetUnitPixelFromCenter -> "OFFSET_UNIT_PIXEL_FROM_CENTER"
-
-instance FromJSON CreativeAssetPositionLeftUnit where
-    parseJSON = parseJSONText "CreativeAssetPositionLeftUnit"
-
-instance ToJSON CreativeAssetPositionLeftUnit where
-    toJSON = toJSONText
-
--- | Placement cap cost option.
-data PricingScheduleCapCostOption
-    = CapCostCumulative
-      -- ^ @CAP_COST_CUMULATIVE@
-    | CapCostMonthly
-      -- ^ @CAP_COST_MONTHLY@
-    | CapCostNone
-      -- ^ @CAP_COST_NONE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PricingScheduleCapCostOption
-
-instance FromHttpApiData PricingScheduleCapCostOption where
-    parseQueryParam = \case
-        "CAP_COST_CUMULATIVE" -> Right CapCostCumulative
-        "CAP_COST_MONTHLY" -> Right CapCostMonthly
-        "CAP_COST_NONE" -> Right CapCostNone
-        x -> Left ("Unable to parse PricingScheduleCapCostOption from: " <> x)
-
-instance ToHttpApiData PricingScheduleCapCostOption where
-    toQueryParam = \case
-        CapCostCumulative -> "CAP_COST_CUMULATIVE"
-        CapCostMonthly -> "CAP_COST_MONTHLY"
-        CapCostNone -> "CAP_COST_NONE"
-
-instance FromJSON PricingScheduleCapCostOption where
-    parseJSON = parseJSONText "PricingScheduleCapCostOption"
-
-instance ToJSON PricingScheduleCapCostOption where
-    toJSON = toJSONText
-
--- | Levels of availability for a user role permission.
-data UserRolePermissionAvailability
-    = AccountAlways
-      -- ^ @ACCOUNT_ALWAYS@
-    | AccountByDefault
-      -- ^ @ACCOUNT_BY_DEFAULT@
-    | NotAvailableByDefault
-      -- ^ @NOT_AVAILABLE_BY_DEFAULT@
-    | SubAccountAndAccountAlways
-      -- ^ @SUBACCOUNT_AND_ACCOUNT_ALWAYS@
-    | SubAccountAndAccountByDefault
-      -- ^ @SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UserRolePermissionAvailability
-
-instance FromHttpApiData UserRolePermissionAvailability where
-    parseQueryParam = \case
-        "ACCOUNT_ALWAYS" -> Right AccountAlways
-        "ACCOUNT_BY_DEFAULT" -> Right AccountByDefault
-        "NOT_AVAILABLE_BY_DEFAULT" -> Right NotAvailableByDefault
-        "SUBACCOUNT_AND_ACCOUNT_ALWAYS" -> Right SubAccountAndAccountAlways
-        "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" -> Right SubAccountAndAccountByDefault
-        x -> Left ("Unable to parse UserRolePermissionAvailability from: " <> x)
-
-instance ToHttpApiData UserRolePermissionAvailability where
-    toQueryParam = \case
-        AccountAlways -> "ACCOUNT_ALWAYS"
-        AccountByDefault -> "ACCOUNT_BY_DEFAULT"
-        NotAvailableByDefault -> "NOT_AVAILABLE_BY_DEFAULT"
-        SubAccountAndAccountAlways -> "SUBACCOUNT_AND_ACCOUNT_ALWAYS"
-        SubAccountAndAccountByDefault -> "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT"
-
-instance FromJSON UserRolePermissionAvailability where
-    parseJSON = parseJSONText "UserRolePermissionAvailability"
-
-instance ToJSON UserRolePermissionAvailability where
-    toJSON = toJSONText
-
--- | VPAID adapter setting for this placement. Controls which VPAID format
--- the measurement adapter will use for in-stream video creatives assigned
--- to this placement. Note: Flash is no longer supported. This field now
--- defaults to HTML5 when the following values are provided: FLASH, BOTH.
-data PlacementVpaidAdapterChoice
-    = Both
-      -- ^ @BOTH@
-    | Default
-      -- ^ @DEFAULT@
-    | Flash
-      -- ^ @FLASH@
-    | HTML5
-      -- ^ @HTML5@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementVpaidAdapterChoice
-
-instance FromHttpApiData PlacementVpaidAdapterChoice where
-    parseQueryParam = \case
-        "BOTH" -> Right Both
-        "DEFAULT" -> Right Default
-        "FLASH" -> Right Flash
-        "HTML5" -> Right HTML5
-        x -> Left ("Unable to parse PlacementVpaidAdapterChoice from: " <> x)
-
-instance ToHttpApiData PlacementVpaidAdapterChoice where
-    toQueryParam = \case
-        Both -> "BOTH"
-        Default -> "DEFAULT"
-        Flash -> "FLASH"
-        HTML5 -> "HTML5"
-
-instance FromJSON PlacementVpaidAdapterChoice where
-    parseJSON = parseJSONText "PlacementVpaidAdapterChoice"
-
-instance ToJSON PlacementVpaidAdapterChoice where
-    toJSON = toJSONText
-
--- | Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering on desktop, on mobile devices or in mobile apps for regular or
--- interstitial ads respectively. APP and APP_INTERSTITIAL are no longer
--- allowed for new placement insertions. Instead, use DISPLAY or
--- DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream
--- video ads developed with the VAST standard. This field is required on
--- insertion.
-data PlacementCompatibility
-    = App
-      -- ^ @APP@
-    | AppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | Display
-      -- ^ @DISPLAY@
-    | DisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | InStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | InStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementCompatibility
-
-instance FromHttpApiData PlacementCompatibility where
-    parseQueryParam = \case
-        "APP" -> Right App
-        "APP_INTERSTITIAL" -> Right AppInterstitial
-        "DISPLAY" -> Right Display
-        "DISPLAY_INTERSTITIAL" -> Right DisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right InStreamAudio
-        "IN_STREAM_VIDEO" -> Right InStreamVideo
-        x -> Left ("Unable to parse PlacementCompatibility from: " <> x)
-
-instance ToHttpApiData PlacementCompatibility where
-    toQueryParam = \case
-        App -> "APP"
-        AppInterstitial -> "APP_INTERSTITIAL"
-        Display -> "DISPLAY"
-        DisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        InStreamAudio -> "IN_STREAM_AUDIO"
-        InStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON PlacementCompatibility where
-    parseJSON = parseJSONText "PlacementCompatibility"
-
-instance ToJSON PlacementCompatibility where
-    toJSON = toJSONText
-
--- | Comparison operator of this term. This field is only relevant when type
--- is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
-data ListPopulationTermOperator
-    = NumEquals
-      -- ^ @NUM_EQUALS@
-    | NumGreaterThan
-      -- ^ @NUM_GREATER_THAN@
-    | NumGreaterThanEqual
-      -- ^ @NUM_GREATER_THAN_EQUAL@
-    | NumLessThan
-      -- ^ @NUM_LESS_THAN@
-    | NumLessThanEqual
-      -- ^ @NUM_LESS_THAN_EQUAL@
-    | StringContains
-      -- ^ @STRING_CONTAINS@
-    | StringEquals
-      -- ^ @STRING_EQUALS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ListPopulationTermOperator
-
-instance FromHttpApiData ListPopulationTermOperator where
-    parseQueryParam = \case
-        "NUM_EQUALS" -> Right NumEquals
-        "NUM_GREATER_THAN" -> Right NumGreaterThan
-        "NUM_GREATER_THAN_EQUAL" -> Right NumGreaterThanEqual
-        "NUM_LESS_THAN" -> Right NumLessThan
-        "NUM_LESS_THAN_EQUAL" -> Right NumLessThanEqual
-        "STRING_CONTAINS" -> Right StringContains
-        "STRING_EQUALS" -> Right StringEquals
-        x -> Left ("Unable to parse ListPopulationTermOperator from: " <> x)
-
-instance ToHttpApiData ListPopulationTermOperator where
-    toQueryParam = \case
-        NumEquals -> "NUM_EQUALS"
-        NumGreaterThan -> "NUM_GREATER_THAN"
-        NumGreaterThanEqual -> "NUM_GREATER_THAN_EQUAL"
-        NumLessThan -> "NUM_LESS_THAN"
-        NumLessThanEqual -> "NUM_LESS_THAN_EQUAL"
-        StringContains -> "STRING_CONTAINS"
-        StringEquals -> "STRING_EQUALS"
-
-instance FromJSON ListPopulationTermOperator where
-    parseJSON = parseJSONText "ListPopulationTermOperator"
-
-instance ToJSON ListPopulationTermOperator where
-    toJSON = toJSONText
-
--- | Select only placements with this payment source.
-data PlacementsListPaymentSource
-    = PlacementAgencyPaid
-      -- ^ @PLACEMENT_AGENCY_PAID@
-    | PlacementPublisherPaid
-      -- ^ @PLACEMENT_PUBLISHER_PAID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsListPaymentSource
-
-instance FromHttpApiData PlacementsListPaymentSource where
-    parseQueryParam = \case
-        "PLACEMENT_AGENCY_PAID" -> Right PlacementAgencyPaid
-        "PLACEMENT_PUBLISHER_PAID" -> Right PlacementPublisherPaid
-        x -> Left ("Unable to parse PlacementsListPaymentSource from: " <> x)
-
-instance ToHttpApiData PlacementsListPaymentSource where
-    toQueryParam = \case
-        PlacementAgencyPaid -> "PLACEMENT_AGENCY_PAID"
-        PlacementPublisherPaid -> "PLACEMENT_PUBLISHER_PAID"
-
-instance FromJSON PlacementsListPaymentSource where
-    parseJSON = parseJSONText "PlacementsListPaymentSource"
-
-instance ToJSON PlacementsListPaymentSource where
-    toJSON = toJSONText
-
--- | The field by which to sort the list.
-data ReportsListSortField
-    = RLSFID
-      -- ^ @ID@
-      -- Sort by report ID.
-    | RLSFLastModifiedTime
-      -- ^ @LAST_MODIFIED_TIME@
-      -- Sort by \'lastModifiedTime\' field.
-    | RLSFName
-      -- ^ @NAME@
-      -- Sort by name of reports.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportsListSortField
-
-instance FromHttpApiData ReportsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right RLSFID
-        "LAST_MODIFIED_TIME" -> Right RLSFLastModifiedTime
-        "NAME" -> Right RLSFName
-        x -> Left ("Unable to parse ReportsListSortField from: " <> x)
-
-instance ToHttpApiData ReportsListSortField where
-    toQueryParam = \case
-        RLSFID -> "ID"
-        RLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
-        RLSFName -> "NAME"
-
-instance FromJSON ReportsListSortField where
-    parseJSON = parseJSONText "ReportsListSortField"
-
-instance ToJSON ReportsListSortField where
-    toJSON = toJSONText
-
--- | Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering either on desktop, mobile devices or in mobile apps for
--- regular or interstitial ads respectively. APP and APP_INTERSTITIAL are
--- for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in
--- in-stream video ads developed with the VAST standard.
-data AdSlotCompatibility
-    = ASCApp
-      -- ^ @APP@
-    | ASCAppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | ASCDisplay
-      -- ^ @DISPLAY@
-    | ASCDisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | ASCInStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | ASCInStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdSlotCompatibility
-
-instance FromHttpApiData AdSlotCompatibility where
-    parseQueryParam = \case
-        "APP" -> Right ASCApp
-        "APP_INTERSTITIAL" -> Right ASCAppInterstitial
-        "DISPLAY" -> Right ASCDisplay
-        "DISPLAY_INTERSTITIAL" -> Right ASCDisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right ASCInStreamAudio
-        "IN_STREAM_VIDEO" -> Right ASCInStreamVideo
-        x -> Left ("Unable to parse AdSlotCompatibility from: " <> x)
-
-instance ToHttpApiData AdSlotCompatibility where
-    toQueryParam = \case
-        ASCApp -> "APP"
-        ASCAppInterstitial -> "APP_INTERSTITIAL"
-        ASCDisplay -> "DISPLAY"
-        ASCDisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        ASCInStreamAudio -> "IN_STREAM_AUDIO"
-        ASCInStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON AdSlotCompatibility where
-    parseJSON = parseJSONText "AdSlotCompatibility"
-
-instance ToJSON AdSlotCompatibility where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data CampaignsListSortField
-    = CLSFID
-      -- ^ @ID@
-    | CLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CampaignsListSortField
-
-instance FromHttpApiData CampaignsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CLSFID
-        "NAME" -> Right CLSFName
-        x -> Left ("Unable to parse CampaignsListSortField from: " <> x)
-
-instance ToHttpApiData CampaignsListSortField where
-    toQueryParam = \case
-        CLSFID -> "ID"
-        CLSFName -> "NAME"
-
-instance FromJSON CampaignsListSortField where
-    parseJSON = parseJSONText "CampaignsListSortField"
-
-instance ToJSON CampaignsListSortField where
-    toJSON = toJSONText
-
--- | Orientation of a video placement. If this value is set, placement will
--- return assets matching the specified orientation.
-data VideoSettingsOrientation
-    = Any
-      -- ^ @ANY@
-    | Landscape
-      -- ^ @LANDSCAPE@
-    | Portrait
-      -- ^ @PORTRAIT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable VideoSettingsOrientation
-
-instance FromHttpApiData VideoSettingsOrientation where
-    parseQueryParam = \case
-        "ANY" -> Right Any
-        "LANDSCAPE" -> Right Landscape
-        "PORTRAIT" -> Right Portrait
-        x -> Left ("Unable to parse VideoSettingsOrientation from: " <> x)
-
-instance ToHttpApiData VideoSettingsOrientation where
-    toQueryParam = \case
-        Any -> "ANY"
-        Landscape -> "LANDSCAPE"
-        Portrait -> "PORTRAIT"
-
-instance FromJSON VideoSettingsOrientation where
-    parseJSON = parseJSONText "VideoSettingsOrientation"
-
-instance ToJSON VideoSettingsOrientation where
-    toJSON = toJSONText
-
--- | Trafficker type of this user profile. This is a read-only field.
-data AccountUserProFileTraffickerType
-    = ExternalTrafficker
-      -- ^ @EXTERNAL_TRAFFICKER@
-    | InternalNonTrafficker
-      -- ^ @INTERNAL_NON_TRAFFICKER@
-    | InternalTrafficker
-      -- ^ @INTERNAL_TRAFFICKER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountUserProFileTraffickerType
-
-instance FromHttpApiData AccountUserProFileTraffickerType where
-    parseQueryParam = \case
-        "EXTERNAL_TRAFFICKER" -> Right ExternalTrafficker
-        "INTERNAL_NON_TRAFFICKER" -> Right InternalNonTrafficker
-        "INTERNAL_TRAFFICKER" -> Right InternalTrafficker
-        x -> Left ("Unable to parse AccountUserProFileTraffickerType from: " <> x)
-
-instance ToHttpApiData AccountUserProFileTraffickerType where
-    toQueryParam = \case
-        ExternalTrafficker -> "EXTERNAL_TRAFFICKER"
-        InternalNonTrafficker -> "INTERNAL_NON_TRAFFICKER"
-        InternalTrafficker -> "INTERNAL_TRAFFICKER"
-
-instance FromJSON AccountUserProFileTraffickerType where
-    parseJSON = parseJSONText "AccountUserProFileTraffickerType"
-
-instance ToJSON AccountUserProFileTraffickerType where
-    toJSON = toJSONText
-
-data CreativeAssetMetadataDetectedFeaturesItem
-    = ApplicationCache
-      -- ^ @APPLICATION_CACHE@
-    | Audio
-      -- ^ @AUDIO@
-    | Canvas
-      -- ^ @CANVAS@
-    | CanvasText
-      -- ^ @CANVAS_TEXT@
-    | CssAnimations
-      -- ^ @CSS_ANIMATIONS@
-    | CssBackgRoundSize
-      -- ^ @CSS_BACKGROUND_SIZE@
-    | CssBOrderImage
-      -- ^ @CSS_BORDER_IMAGE@
-    | CssBOrderRadius
-      -- ^ @CSS_BORDER_RADIUS@
-    | CssBoxShadow
-      -- ^ @CSS_BOX_SHADOW@
-    | CssColumns
-      -- ^ @CSS_COLUMNS@
-    | CssFlexBox
-      -- ^ @CSS_FLEX_BOX@
-    | CssFontFace
-      -- ^ @CSS_FONT_FACE@
-    | CssGeneratedContent
-      -- ^ @CSS_GENERATED_CONTENT@
-    | CssGradients
-      -- ^ @CSS_GRADIENTS@
-    | CssHsla
-      -- ^ @CSS_HSLA@
-    | CssMultipleBgs
-      -- ^ @CSS_MULTIPLE_BGS@
-    | CssOpacity
-      -- ^ @CSS_OPACITY@
-    | CssReflections
-      -- ^ @CSS_REFLECTIONS@
-    | CssRgba
-      -- ^ @CSS_RGBA@
-    | CssTextShadow
-      -- ^ @CSS_TEXT_SHADOW@
-    | CssTransforms
-      -- ^ @CSS_TRANSFORMS@
-    | CssTRANSFORMS3D
-      -- ^ @CSS_TRANSFORMS3D@
-    | CssTransitions
-      -- ^ @CSS_TRANSITIONS@
-    | DragAndDrop
-      -- ^ @DRAG_AND_DROP@
-    | GeoLocation
-      -- ^ @GEO_LOCATION@
-    | HashChange
-      -- ^ @HASH_CHANGE@
-    | History
-      -- ^ @HISTORY@
-    | IndexedDB
-      -- ^ @INDEXED_DB@
-    | InlineSvg
-      -- ^ @INLINE_SVG@
-    | InputAttrAutocomplete
-      -- ^ @INPUT_ATTR_AUTOCOMPLETE@
-    | InputAttrAutofocus
-      -- ^ @INPUT_ATTR_AUTOFOCUS@
-    | InputAttrList
-      -- ^ @INPUT_ATTR_LIST@
-    | InputAttrMax
-      -- ^ @INPUT_ATTR_MAX@
-    | InputAttrMin
-      -- ^ @INPUT_ATTR_MIN@
-    | InputAttrMultiple
-      -- ^ @INPUT_ATTR_MULTIPLE@
-    | InputAttrPattern
-      -- ^ @INPUT_ATTR_PATTERN@
-    | InputAttrPlaceholder
-      -- ^ @INPUT_ATTR_PLACEHOLDER@
-    | InputAttrRequired
-      -- ^ @INPUT_ATTR_REQUIRED@
-    | InputAttrStep
-      -- ^ @INPUT_ATTR_STEP@
-    | InputTypeColor
-      -- ^ @INPUT_TYPE_COLOR@
-    | InputTypeDate
-      -- ^ @INPUT_TYPE_DATE@
-    | InputTypeDatetime
-      -- ^ @INPUT_TYPE_DATETIME@
-    | InputTypeDatetimeLocal
-      -- ^ @INPUT_TYPE_DATETIME_LOCAL@
-    | InputTypeEmail
-      -- ^ @INPUT_TYPE_EMAIL@
-    | InputTypeMonth
-      -- ^ @INPUT_TYPE_MONTH@
-    | InputTypeNumber
-      -- ^ @INPUT_TYPE_NUMBER@
-    | InputTypeRange
-      -- ^ @INPUT_TYPE_RANGE@
-    | InputTypeSearch
-      -- ^ @INPUT_TYPE_SEARCH@
-    | InputTypeTel
-      -- ^ @INPUT_TYPE_TEL@
-    | InputTypeTime
-      -- ^ @INPUT_TYPE_TIME@
-    | InputTypeURL
-      -- ^ @INPUT_TYPE_URL@
-    | InputTypeWeek
-      -- ^ @INPUT_TYPE_WEEK@
-    | LocalStorage
-      -- ^ @LOCAL_STORAGE@
-    | PostMessage
-      -- ^ @POST_MESSAGE@
-    | SessionStorage
-      -- ^ @SESSION_STORAGE@
-    | Smil
-      -- ^ @SMIL@
-    | SvgClipPaths
-      -- ^ @SVG_CLIP_PATHS@
-    | SvgFeImage
-      -- ^ @SVG_FE_IMAGE@
-    | SvgFilters
-      -- ^ @SVG_FILTERS@
-    | SvgHref
-      -- ^ @SVG_HREF@
-    | Touch
-      -- ^ @TOUCH@
-    | Video
-      -- ^ @VIDEO@
-    | Webgl
-      -- ^ @WEBGL@
-    | WebSockets
-      -- ^ @WEB_SOCKETS@
-    | WebSQLDatabase
-      -- ^ @WEB_SQL_DATABASE@
-    | WebWorkers
-      -- ^ @WEB_WORKERS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetMetadataDetectedFeaturesItem
-
-instance FromHttpApiData CreativeAssetMetadataDetectedFeaturesItem where
-    parseQueryParam = \case
-        "APPLICATION_CACHE" -> Right ApplicationCache
-        "AUDIO" -> Right Audio
-        "CANVAS" -> Right Canvas
-        "CANVAS_TEXT" -> Right CanvasText
-        "CSS_ANIMATIONS" -> Right CssAnimations
-        "CSS_BACKGROUND_SIZE" -> Right CssBackgRoundSize
-        "CSS_BORDER_IMAGE" -> Right CssBOrderImage
-        "CSS_BORDER_RADIUS" -> Right CssBOrderRadius
-        "CSS_BOX_SHADOW" -> Right CssBoxShadow
-        "CSS_COLUMNS" -> Right CssColumns
-        "CSS_FLEX_BOX" -> Right CssFlexBox
-        "CSS_FONT_FACE" -> Right CssFontFace
-        "CSS_GENERATED_CONTENT" -> Right CssGeneratedContent
-        "CSS_GRADIENTS" -> Right CssGradients
-        "CSS_HSLA" -> Right CssHsla
-        "CSS_MULTIPLE_BGS" -> Right CssMultipleBgs
-        "CSS_OPACITY" -> Right CssOpacity
-        "CSS_REFLECTIONS" -> Right CssReflections
-        "CSS_RGBA" -> Right CssRgba
-        "CSS_TEXT_SHADOW" -> Right CssTextShadow
-        "CSS_TRANSFORMS" -> Right CssTransforms
-        "CSS_TRANSFORMS3D" -> Right CssTRANSFORMS3D
-        "CSS_TRANSITIONS" -> Right CssTransitions
-        "DRAG_AND_DROP" -> Right DragAndDrop
-        "GEO_LOCATION" -> Right GeoLocation
-        "HASH_CHANGE" -> Right HashChange
-        "HISTORY" -> Right History
-        "INDEXED_DB" -> Right IndexedDB
-        "INLINE_SVG" -> Right InlineSvg
-        "INPUT_ATTR_AUTOCOMPLETE" -> Right InputAttrAutocomplete
-        "INPUT_ATTR_AUTOFOCUS" -> Right InputAttrAutofocus
-        "INPUT_ATTR_LIST" -> Right InputAttrList
-        "INPUT_ATTR_MAX" -> Right InputAttrMax
-        "INPUT_ATTR_MIN" -> Right InputAttrMin
-        "INPUT_ATTR_MULTIPLE" -> Right InputAttrMultiple
-        "INPUT_ATTR_PATTERN" -> Right InputAttrPattern
-        "INPUT_ATTR_PLACEHOLDER" -> Right InputAttrPlaceholder
-        "INPUT_ATTR_REQUIRED" -> Right InputAttrRequired
-        "INPUT_ATTR_STEP" -> Right InputAttrStep
-        "INPUT_TYPE_COLOR" -> Right InputTypeColor
-        "INPUT_TYPE_DATE" -> Right InputTypeDate
-        "INPUT_TYPE_DATETIME" -> Right InputTypeDatetime
-        "INPUT_TYPE_DATETIME_LOCAL" -> Right InputTypeDatetimeLocal
-        "INPUT_TYPE_EMAIL" -> Right InputTypeEmail
-        "INPUT_TYPE_MONTH" -> Right InputTypeMonth
-        "INPUT_TYPE_NUMBER" -> Right InputTypeNumber
-        "INPUT_TYPE_RANGE" -> Right InputTypeRange
-        "INPUT_TYPE_SEARCH" -> Right InputTypeSearch
-        "INPUT_TYPE_TEL" -> Right InputTypeTel
-        "INPUT_TYPE_TIME" -> Right InputTypeTime
-        "INPUT_TYPE_URL" -> Right InputTypeURL
-        "INPUT_TYPE_WEEK" -> Right InputTypeWeek
-        "LOCAL_STORAGE" -> Right LocalStorage
-        "POST_MESSAGE" -> Right PostMessage
-        "SESSION_STORAGE" -> Right SessionStorage
-        "SMIL" -> Right Smil
-        "SVG_CLIP_PATHS" -> Right SvgClipPaths
-        "SVG_FE_IMAGE" -> Right SvgFeImage
-        "SVG_FILTERS" -> Right SvgFilters
-        "SVG_HREF" -> Right SvgHref
-        "TOUCH" -> Right Touch
-        "VIDEO" -> Right Video
-        "WEBGL" -> Right Webgl
-        "WEB_SOCKETS" -> Right WebSockets
-        "WEB_SQL_DATABASE" -> Right WebSQLDatabase
-        "WEB_WORKERS" -> Right WebWorkers
-        x -> Left ("Unable to parse CreativeAssetMetadataDetectedFeaturesItem from: " <> x)
-
-instance ToHttpApiData CreativeAssetMetadataDetectedFeaturesItem where
-    toQueryParam = \case
-        ApplicationCache -> "APPLICATION_CACHE"
-        Audio -> "AUDIO"
-        Canvas -> "CANVAS"
-        CanvasText -> "CANVAS_TEXT"
-        CssAnimations -> "CSS_ANIMATIONS"
-        CssBackgRoundSize -> "CSS_BACKGROUND_SIZE"
-        CssBOrderImage -> "CSS_BORDER_IMAGE"
-        CssBOrderRadius -> "CSS_BORDER_RADIUS"
-        CssBoxShadow -> "CSS_BOX_SHADOW"
-        CssColumns -> "CSS_COLUMNS"
-        CssFlexBox -> "CSS_FLEX_BOX"
-        CssFontFace -> "CSS_FONT_FACE"
-        CssGeneratedContent -> "CSS_GENERATED_CONTENT"
-        CssGradients -> "CSS_GRADIENTS"
-        CssHsla -> "CSS_HSLA"
-        CssMultipleBgs -> "CSS_MULTIPLE_BGS"
-        CssOpacity -> "CSS_OPACITY"
-        CssReflections -> "CSS_REFLECTIONS"
-        CssRgba -> "CSS_RGBA"
-        CssTextShadow -> "CSS_TEXT_SHADOW"
-        CssTransforms -> "CSS_TRANSFORMS"
-        CssTRANSFORMS3D -> "CSS_TRANSFORMS3D"
-        CssTransitions -> "CSS_TRANSITIONS"
-        DragAndDrop -> "DRAG_AND_DROP"
-        GeoLocation -> "GEO_LOCATION"
-        HashChange -> "HASH_CHANGE"
-        History -> "HISTORY"
-        IndexedDB -> "INDEXED_DB"
-        InlineSvg -> "INLINE_SVG"
-        InputAttrAutocomplete -> "INPUT_ATTR_AUTOCOMPLETE"
-        InputAttrAutofocus -> "INPUT_ATTR_AUTOFOCUS"
-        InputAttrList -> "INPUT_ATTR_LIST"
-        InputAttrMax -> "INPUT_ATTR_MAX"
-        InputAttrMin -> "INPUT_ATTR_MIN"
-        InputAttrMultiple -> "INPUT_ATTR_MULTIPLE"
-        InputAttrPattern -> "INPUT_ATTR_PATTERN"
-        InputAttrPlaceholder -> "INPUT_ATTR_PLACEHOLDER"
-        InputAttrRequired -> "INPUT_ATTR_REQUIRED"
-        InputAttrStep -> "INPUT_ATTR_STEP"
-        InputTypeColor -> "INPUT_TYPE_COLOR"
-        InputTypeDate -> "INPUT_TYPE_DATE"
-        InputTypeDatetime -> "INPUT_TYPE_DATETIME"
-        InputTypeDatetimeLocal -> "INPUT_TYPE_DATETIME_LOCAL"
-        InputTypeEmail -> "INPUT_TYPE_EMAIL"
-        InputTypeMonth -> "INPUT_TYPE_MONTH"
-        InputTypeNumber -> "INPUT_TYPE_NUMBER"
-        InputTypeRange -> "INPUT_TYPE_RANGE"
-        InputTypeSearch -> "INPUT_TYPE_SEARCH"
-        InputTypeTel -> "INPUT_TYPE_TEL"
-        InputTypeTime -> "INPUT_TYPE_TIME"
-        InputTypeURL -> "INPUT_TYPE_URL"
-        InputTypeWeek -> "INPUT_TYPE_WEEK"
-        LocalStorage -> "LOCAL_STORAGE"
-        PostMessage -> "POST_MESSAGE"
-        SessionStorage -> "SESSION_STORAGE"
-        Smil -> "SMIL"
-        SvgClipPaths -> "SVG_CLIP_PATHS"
-        SvgFeImage -> "SVG_FE_IMAGE"
-        SvgFilters -> "SVG_FILTERS"
-        SvgHref -> "SVG_HREF"
-        Touch -> "TOUCH"
-        Video -> "VIDEO"
-        Webgl -> "WEBGL"
-        WebSockets -> "WEB_SOCKETS"
-        WebSQLDatabase -> "WEB_SQL_DATABASE"
-        WebWorkers -> "WEB_WORKERS"
-
-instance FromJSON CreativeAssetMetadataDetectedFeaturesItem where
-    parseJSON = parseJSONText "CreativeAssetMetadataDetectedFeaturesItem"
-
-instance ToJSON CreativeAssetMetadataDetectedFeaturesItem where
-    toJSON = toJSONText
-
--- | Select default ads with the specified compatibility. Applicable when
--- type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering either on desktop or on mobile devices for regular or
--- interstitial ads, respectively. APP and APP_INTERSTITIAL are for
--- rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an
--- in-stream video ads developed with the VAST standard.
-data AdsListCompatibility
-    = ALCApp
-      -- ^ @APP@
-    | ALCAppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | ALCDisplay
-      -- ^ @DISPLAY@
-    | ALCDisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | ALCInStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | ALCInStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdsListCompatibility
-
-instance FromHttpApiData AdsListCompatibility where
-    parseQueryParam = \case
-        "APP" -> Right ALCApp
-        "APP_INTERSTITIAL" -> Right ALCAppInterstitial
-        "DISPLAY" -> Right ALCDisplay
-        "DISPLAY_INTERSTITIAL" -> Right ALCDisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right ALCInStreamAudio
-        "IN_STREAM_VIDEO" -> Right ALCInStreamVideo
-        x -> Left ("Unable to parse AdsListCompatibility from: " <> x)
-
-instance ToHttpApiData AdsListCompatibility where
-    toQueryParam = \case
-        ALCApp -> "APP"
-        ALCAppInterstitial -> "APP_INTERSTITIAL"
-        ALCDisplay -> "DISPLAY"
-        ALCDisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        ALCInStreamAudio -> "IN_STREAM_AUDIO"
-        ALCInStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON AdsListCompatibility where
-    parseJSON = parseJSONText "AdsListCompatibility"
-
-instance ToJSON AdsListCompatibility where
-    toJSON = toJSONText
-
--- | Status of this event tag. Must be ENABLED for this event tag to fire.
--- This is a required field.
-data EventTagStatus
-    = Disabled
-      -- ^ @DISABLED@
-    | Enabled
-      -- ^ @ENABLED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagStatus
-
-instance FromHttpApiData EventTagStatus where
-    parseQueryParam = \case
-        "DISABLED" -> Right Disabled
-        "ENABLED" -> Right Enabled
-        x -> Left ("Unable to parse EventTagStatus from: " <> x)
-
-instance ToHttpApiData EventTagStatus where
-    toQueryParam = \case
-        Disabled -> "DISABLED"
-        Enabled -> "ENABLED"
-
-instance FromJSON EventTagStatus where
-    parseJSON = parseJSONText "EventTagStatus"
-
-instance ToJSON EventTagStatus where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data SitesListSortField
-    = SLSFID
-      -- ^ @ID@
-    | SLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SitesListSortField
-
-instance FromHttpApiData SitesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right SLSFID
-        "NAME" -> Right SLSFName
-        x -> Left ("Unable to parse SitesListSortField from: " <> x)
-
-instance ToHttpApiData SitesListSortField where
-    toQueryParam = \case
-        SLSFID -> "ID"
-        SLSFName -> "NAME"
-
-instance FromJSON SitesListSortField where
-    parseJSON = parseJSONText "SitesListSortField"
-
-instance ToJSON SitesListSortField where
-    toJSON = toJSONText
-
--- | Select only event tags with the specified event tag types. Event tag
--- types can be used to specify whether to use a third-party pixel, a
--- third-party JavaScript URL, or a third-party click-through URL for
--- either impression or click tracking.
-data EventTagsListEventTagTypes
-    = ClickThroughEventTag
-      -- ^ @CLICK_THROUGH_EVENT_TAG@
-    | ImpressionImageEventTag
-      -- ^ @IMPRESSION_IMAGE_EVENT_TAG@
-    | ImpressionJavascriptEventTag
-      -- ^ @IMPRESSION_JAVASCRIPT_EVENT_TAG@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagsListEventTagTypes
-
-instance FromHttpApiData EventTagsListEventTagTypes where
-    parseQueryParam = \case
-        "CLICK_THROUGH_EVENT_TAG" -> Right ClickThroughEventTag
-        "IMPRESSION_IMAGE_EVENT_TAG" -> Right ImpressionImageEventTag
-        "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Right ImpressionJavascriptEventTag
-        x -> Left ("Unable to parse EventTagsListEventTagTypes from: " <> x)
-
-instance ToHttpApiData EventTagsListEventTagTypes where
-    toQueryParam = \case
-        ClickThroughEventTag -> "CLICK_THROUGH_EVENT_TAG"
-        ImpressionImageEventTag -> "IMPRESSION_IMAGE_EVENT_TAG"
-        ImpressionJavascriptEventTag -> "IMPRESSION_JAVASCRIPT_EVENT_TAG"
-
-instance FromJSON EventTagsListEventTagTypes where
-    parseJSON = parseJSONText "EventTagsListEventTagTypes"
-
-instance ToJSON EventTagsListEventTagTypes where
-    toJSON = toJSONText
-
--- | The status of the report file.
-data FileStatus
-    = Cancelled
-      -- ^ @CANCELLED@
-    | Failed
-      -- ^ @FAILED@
-    | Processing
-      -- ^ @PROCESSING@
-    | ReportAvailable
-      -- ^ @REPORT_AVAILABLE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FileStatus
-
-instance FromHttpApiData FileStatus where
-    parseQueryParam = \case
-        "CANCELLED" -> Right Cancelled
-        "FAILED" -> Right Failed
-        "PROCESSING" -> Right Processing
-        "REPORT_AVAILABLE" -> Right ReportAvailable
-        x -> Left ("Unable to parse FileStatus from: " <> x)
-
-instance ToHttpApiData FileStatus where
-    toQueryParam = \case
-        Cancelled -> "CANCELLED"
-        Failed -> "FAILED"
-        Processing -> "PROCESSING"
-        ReportAvailable -> "REPORT_AVAILABLE"
-
-instance FromJSON FileStatus where
-    parseJSON = parseJSONText "FileStatus"
-
-instance ToJSON FileStatus where
-    toJSON = toJSONText
-
--- | Artwork type used by the creative.This is a read-only field.
-data CreativeCustomEventArtworkType
-    = ArtworkTypeFlash
-      -- ^ @ARTWORK_TYPE_FLASH@
-    | ArtworkTypeHTML5
-      -- ^ @ARTWORK_TYPE_HTML5@
-    | ArtworkTypeImage
-      -- ^ @ARTWORK_TYPE_IMAGE@
-    | ArtworkTypeMixed
-      -- ^ @ARTWORK_TYPE_MIXED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeCustomEventArtworkType
-
-instance FromHttpApiData CreativeCustomEventArtworkType where
-    parseQueryParam = \case
-        "ARTWORK_TYPE_FLASH" -> Right ArtworkTypeFlash
-        "ARTWORK_TYPE_HTML5" -> Right ArtworkTypeHTML5
-        "ARTWORK_TYPE_IMAGE" -> Right ArtworkTypeImage
-        "ARTWORK_TYPE_MIXED" -> Right ArtworkTypeMixed
-        x -> Left ("Unable to parse CreativeCustomEventArtworkType from: " <> x)
-
-instance ToHttpApiData CreativeCustomEventArtworkType where
-    toQueryParam = \case
-        ArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
-        ArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
-        ArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
-        ArtworkTypeMixed -> "ARTWORK_TYPE_MIXED"
-
-instance FromJSON CreativeCustomEventArtworkType where
-    parseJSON = parseJSONText "CreativeCustomEventArtworkType"
-
-instance ToJSON CreativeCustomEventArtworkType where
-    toJSON = toJSONText
-
--- | Types of attribution options for natural search conversions.
-data FloodlightConfigurationNATuralSearchConversionAttributionOption
-    = ExcludeNATuralSearchConversionAttribution
-      -- ^ @EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION@
-    | IncludeNATuralSearchConversionAttribution
-      -- ^ @INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION@
-    | IncludeNATuralSearchTieredConversionAttribution
-      -- ^ @INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightConfigurationNATuralSearchConversionAttributionOption
-
-instance FromHttpApiData FloodlightConfigurationNATuralSearchConversionAttributionOption where
-    parseQueryParam = \case
-        "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Right ExcludeNATuralSearchConversionAttribution
-        "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Right IncludeNATuralSearchConversionAttribution
-        "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" -> Right IncludeNATuralSearchTieredConversionAttribution
-        x -> Left ("Unable to parse FloodlightConfigurationNATuralSearchConversionAttributionOption from: " <> x)
-
-instance ToHttpApiData FloodlightConfigurationNATuralSearchConversionAttributionOption where
-    toQueryParam = \case
-        ExcludeNATuralSearchConversionAttribution -> "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
-        IncludeNATuralSearchConversionAttribution -> "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
-        IncludeNATuralSearchTieredConversionAttribution -> "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION"
-
-instance FromJSON FloodlightConfigurationNATuralSearchConversionAttributionOption where
-    parseJSON = parseJSONText "FloodlightConfigurationNATuralSearchConversionAttributionOption"
-
-instance ToJSON FloodlightConfigurationNATuralSearchConversionAttributionOption where
-    toJSON = toJSONText
-
--- | Artwork type of rich media creative. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA.
-data CreativeAssetArtworkType
-    = CAATArtworkTypeFlash
-      -- ^ @ARTWORK_TYPE_FLASH@
-    | CAATArtworkTypeHTML5
-      -- ^ @ARTWORK_TYPE_HTML5@
-    | CAATArtworkTypeImage
-      -- ^ @ARTWORK_TYPE_IMAGE@
-    | CAATArtworkTypeMixed
-      -- ^ @ARTWORK_TYPE_MIXED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetArtworkType
-
-instance FromHttpApiData CreativeAssetArtworkType where
-    parseQueryParam = \case
-        "ARTWORK_TYPE_FLASH" -> Right CAATArtworkTypeFlash
-        "ARTWORK_TYPE_HTML5" -> Right CAATArtworkTypeHTML5
-        "ARTWORK_TYPE_IMAGE" -> Right CAATArtworkTypeImage
-        "ARTWORK_TYPE_MIXED" -> Right CAATArtworkTypeMixed
-        x -> Left ("Unable to parse CreativeAssetArtworkType from: " <> x)
-
-instance ToHttpApiData CreativeAssetArtworkType where
-    toQueryParam = \case
-        CAATArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
-        CAATArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
-        CAATArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
-        CAATArtworkTypeMixed -> "ARTWORK_TYPE_MIXED"
-
-instance FromJSON CreativeAssetArtworkType where
-    parseJSON = parseJSONText "CreativeAssetArtworkType"
-
-instance ToJSON CreativeAssetArtworkType where
-    toJSON = toJSONText
-
--- | The type of custom floodlight variable to supply a value for. These map
--- to the \"u[1-20]=\" in the tags.
-data CustomFloodlightVariableType
-    = U1
-      -- ^ @U1@
-    | U10
-      -- ^ @U10@
-    | U100
-      -- ^ @U100@
-    | U11
-      -- ^ @U11@
-    | U12
-      -- ^ @U12@
-    | U13
-      -- ^ @U13@
-    | U14
-      -- ^ @U14@
-    | U15
-      -- ^ @U15@
-    | U16
-      -- ^ @U16@
-    | U17
-      -- ^ @U17@
-    | U18
-      -- ^ @U18@
-    | U19
-      -- ^ @U19@
-    | U2
-      -- ^ @U2@
-    | U20
-      -- ^ @U20@
-    | U21
-      -- ^ @U21@
-    | U22
-      -- ^ @U22@
-    | U23
-      -- ^ @U23@
-    | U24
-      -- ^ @U24@
-    | U25
-      -- ^ @U25@
-    | U26
-      -- ^ @U26@
-    | U27
-      -- ^ @U27@
-    | U28
-      -- ^ @U28@
-    | U29
-      -- ^ @U29@
-    | U3
-      -- ^ @U3@
-    | U30
-      -- ^ @U30@
-    | U31
-      -- ^ @U31@
-    | U32
-      -- ^ @U32@
-    | U33
-      -- ^ @U33@
-    | U34
-      -- ^ @U34@
-    | U35
-      -- ^ @U35@
-    | U36
-      -- ^ @U36@
-    | U37
-      -- ^ @U37@
-    | U38
-      -- ^ @U38@
-    | U39
-      -- ^ @U39@
-    | U4
-      -- ^ @U4@
-    | U40
-      -- ^ @U40@
-    | U41
-      -- ^ @U41@
-    | U42
-      -- ^ @U42@
-    | U43
-      -- ^ @U43@
-    | U44
-      -- ^ @U44@
-    | U45
-      -- ^ @U45@
-    | U46
-      -- ^ @U46@
-    | U47
-      -- ^ @U47@
-    | U48
-      -- ^ @U48@
-    | U49
-      -- ^ @U49@
-    | U5
-      -- ^ @U5@
-    | U50
-      -- ^ @U50@
-    | U51
-      -- ^ @U51@
-    | U52
-      -- ^ @U52@
-    | U53
-      -- ^ @U53@
-    | U54
-      -- ^ @U54@
-    | U55
-      -- ^ @U55@
-    | U56
-      -- ^ @U56@
-    | U57
-      -- ^ @U57@
-    | U58
-      -- ^ @U58@
-    | U59
-      -- ^ @U59@
-    | U6
-      -- ^ @U6@
-    | U60
-      -- ^ @U60@
-    | U61
-      -- ^ @U61@
-    | U62
-      -- ^ @U62@
-    | U63
-      -- ^ @U63@
-    | U64
-      -- ^ @U64@
-    | U65
-      -- ^ @U65@
-    | U66
-      -- ^ @U66@
-    | U67
-      -- ^ @U67@
-    | U68
-      -- ^ @U68@
-    | U69
-      -- ^ @U69@
-    | U7
-      -- ^ @U7@
-    | U70
-      -- ^ @U70@
-    | U71
-      -- ^ @U71@
-    | U72
-      -- ^ @U72@
-    | U73
-      -- ^ @U73@
-    | U74
-      -- ^ @U74@
-    | U75
-      -- ^ @U75@
-    | U76
-      -- ^ @U76@
-    | U77
-      -- ^ @U77@
-    | U78
-      -- ^ @U78@
-    | U79
-      -- ^ @U79@
-    | U8
-      -- ^ @U8@
-    | U80
-      -- ^ @U80@
-    | U81
-      -- ^ @U81@
-    | U82
-      -- ^ @U82@
-    | U83
-      -- ^ @U83@
-    | U84
-      -- ^ @U84@
-    | U85
-      -- ^ @U85@
-    | U86
-      -- ^ @U86@
-    | U87
-      -- ^ @U87@
-    | U88
-      -- ^ @U88@
-    | U89
-      -- ^ @U89@
-    | U9
-      -- ^ @U9@
-    | U90
-      -- ^ @U90@
-    | U91
-      -- ^ @U91@
-    | U92
-      -- ^ @U92@
-    | U93
-      -- ^ @U93@
-    | U94
-      -- ^ @U94@
-    | U95
-      -- ^ @U95@
-    | U96
-      -- ^ @U96@
-    | U97
-      -- ^ @U97@
-    | U98
-      -- ^ @U98@
-    | U99
-      -- ^ @U99@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CustomFloodlightVariableType
-
-instance FromHttpApiData CustomFloodlightVariableType where
-    parseQueryParam = \case
-        "U1" -> Right U1
-        "U10" -> Right U10
-        "U100" -> Right U100
-        "U11" -> Right U11
-        "U12" -> Right U12
-        "U13" -> Right U13
-        "U14" -> Right U14
-        "U15" -> Right U15
-        "U16" -> Right U16
-        "U17" -> Right U17
-        "U18" -> Right U18
-        "U19" -> Right U19
-        "U2" -> Right U2
-        "U20" -> Right U20
-        "U21" -> Right U21
-        "U22" -> Right U22
-        "U23" -> Right U23
-        "U24" -> Right U24
-        "U25" -> Right U25
-        "U26" -> Right U26
-        "U27" -> Right U27
-        "U28" -> Right U28
-        "U29" -> Right U29
-        "U3" -> Right U3
-        "U30" -> Right U30
-        "U31" -> Right U31
-        "U32" -> Right U32
-        "U33" -> Right U33
-        "U34" -> Right U34
-        "U35" -> Right U35
-        "U36" -> Right U36
-        "U37" -> Right U37
-        "U38" -> Right U38
-        "U39" -> Right U39
-        "U4" -> Right U4
-        "U40" -> Right U40
-        "U41" -> Right U41
-        "U42" -> Right U42
-        "U43" -> Right U43
-        "U44" -> Right U44
-        "U45" -> Right U45
-        "U46" -> Right U46
-        "U47" -> Right U47
-        "U48" -> Right U48
-        "U49" -> Right U49
-        "U5" -> Right U5
-        "U50" -> Right U50
-        "U51" -> Right U51
-        "U52" -> Right U52
-        "U53" -> Right U53
-        "U54" -> Right U54
-        "U55" -> Right U55
-        "U56" -> Right U56
-        "U57" -> Right U57
-        "U58" -> Right U58
-        "U59" -> Right U59
-        "U6" -> Right U6
-        "U60" -> Right U60
-        "U61" -> Right U61
-        "U62" -> Right U62
-        "U63" -> Right U63
-        "U64" -> Right U64
-        "U65" -> Right U65
-        "U66" -> Right U66
-        "U67" -> Right U67
-        "U68" -> Right U68
-        "U69" -> Right U69
-        "U7" -> Right U7
-        "U70" -> Right U70
-        "U71" -> Right U71
-        "U72" -> Right U72
-        "U73" -> Right U73
-        "U74" -> Right U74
-        "U75" -> Right U75
-        "U76" -> Right U76
-        "U77" -> Right U77
-        "U78" -> Right U78
-        "U79" -> Right U79
-        "U8" -> Right U8
-        "U80" -> Right U80
-        "U81" -> Right U81
-        "U82" -> Right U82
-        "U83" -> Right U83
-        "U84" -> Right U84
-        "U85" -> Right U85
-        "U86" -> Right U86
-        "U87" -> Right U87
-        "U88" -> Right U88
-        "U89" -> Right U89
-        "U9" -> Right U9
-        "U90" -> Right U90
-        "U91" -> Right U91
-        "U92" -> Right U92
-        "U93" -> Right U93
-        "U94" -> Right U94
-        "U95" -> Right U95
-        "U96" -> Right U96
-        "U97" -> Right U97
-        "U98" -> Right U98
-        "U99" -> Right U99
-        x -> Left ("Unable to parse CustomFloodlightVariableType from: " <> x)
-
-instance ToHttpApiData CustomFloodlightVariableType where
-    toQueryParam = \case
-        U1 -> "U1"
-        U10 -> "U10"
-        U100 -> "U100"
-        U11 -> "U11"
-        U12 -> "U12"
-        U13 -> "U13"
-        U14 -> "U14"
-        U15 -> "U15"
-        U16 -> "U16"
-        U17 -> "U17"
-        U18 -> "U18"
-        U19 -> "U19"
-        U2 -> "U2"
-        U20 -> "U20"
-        U21 -> "U21"
-        U22 -> "U22"
-        U23 -> "U23"
-        U24 -> "U24"
-        U25 -> "U25"
-        U26 -> "U26"
-        U27 -> "U27"
-        U28 -> "U28"
-        U29 -> "U29"
-        U3 -> "U3"
-        U30 -> "U30"
-        U31 -> "U31"
-        U32 -> "U32"
-        U33 -> "U33"
-        U34 -> "U34"
-        U35 -> "U35"
-        U36 -> "U36"
-        U37 -> "U37"
-        U38 -> "U38"
-        U39 -> "U39"
-        U4 -> "U4"
-        U40 -> "U40"
-        U41 -> "U41"
-        U42 -> "U42"
-        U43 -> "U43"
-        U44 -> "U44"
-        U45 -> "U45"
-        U46 -> "U46"
-        U47 -> "U47"
-        U48 -> "U48"
-        U49 -> "U49"
-        U5 -> "U5"
-        U50 -> "U50"
-        U51 -> "U51"
-        U52 -> "U52"
-        U53 -> "U53"
-        U54 -> "U54"
-        U55 -> "U55"
-        U56 -> "U56"
-        U57 -> "U57"
-        U58 -> "U58"
-        U59 -> "U59"
-        U6 -> "U6"
-        U60 -> "U60"
-        U61 -> "U61"
-        U62 -> "U62"
-        U63 -> "U63"
-        U64 -> "U64"
-        U65 -> "U65"
-        U66 -> "U66"
-        U67 -> "U67"
-        U68 -> "U68"
-        U69 -> "U69"
-        U7 -> "U7"
-        U70 -> "U70"
-        U71 -> "U71"
-        U72 -> "U72"
-        U73 -> "U73"
-        U74 -> "U74"
-        U75 -> "U75"
-        U76 -> "U76"
-        U77 -> "U77"
-        U78 -> "U78"
-        U79 -> "U79"
-        U8 -> "U8"
-        U80 -> "U80"
-        U81 -> "U81"
-        U82 -> "U82"
-        U83 -> "U83"
-        U84 -> "U84"
-        U85 -> "U85"
-        U86 -> "U86"
-        U87 -> "U87"
-        U88 -> "U88"
-        U89 -> "U89"
-        U9 -> "U9"
-        U90 -> "U90"
-        U91 -> "U91"
-        U92 -> "U92"
-        U93 -> "U93"
-        U94 -> "U94"
-        U95 -> "U95"
-        U96 -> "U96"
-        U97 -> "U97"
-        U98 -> "U98"
-        U99 -> "U99"
-
-instance FromJSON CustomFloodlightVariableType where
-    parseJSON = parseJSONText "CustomFloodlightVariableType"
-
-instance ToJSON CustomFloodlightVariableType where
-    toJSON = toJSONText
-
--- | The error code.
-data ConversionErrorCode
-    = Internal
-      -- ^ @INTERNAL@
-    | InvalidArgument
-      -- ^ @INVALID_ARGUMENT@
-    | NotFound
-      -- ^ @NOT_FOUND@
-    | PermissionDenied
-      -- ^ @PERMISSION_DENIED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ConversionErrorCode
-
-instance FromHttpApiData ConversionErrorCode where
-    parseQueryParam = \case
-        "INTERNAL" -> Right Internal
-        "INVALID_ARGUMENT" -> Right InvalidArgument
-        "NOT_FOUND" -> Right NotFound
-        "PERMISSION_DENIED" -> Right PermissionDenied
-        x -> Left ("Unable to parse ConversionErrorCode from: " <> x)
-
-instance ToHttpApiData ConversionErrorCode where
-    toQueryParam = \case
-        Internal -> "INTERNAL"
-        InvalidArgument -> "INVALID_ARGUMENT"
-        NotFound -> "NOT_FOUND"
-        PermissionDenied -> "PERMISSION_DENIED"
-
-instance FromJSON ConversionErrorCode where
-    parseJSON = parseJSONText "ConversionErrorCode"
-
-instance ToJSON ConversionErrorCode where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data FloodlightActivitiesListSortOrder
-    = FALSOAscending
-      -- ^ @ASCENDING@
-    | FALSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivitiesListSortOrder
-
-instance FromHttpApiData FloodlightActivitiesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right FALSOAscending
-        "DESCENDING" -> Right FALSODescending
-        x -> Left ("Unable to parse FloodlightActivitiesListSortOrder from: " <> x)
-
-instance ToHttpApiData FloodlightActivitiesListSortOrder where
-    toQueryParam = \case
-        FALSOAscending -> "ASCENDING"
-        FALSODescending -> "DESCENDING"
-
-instance FromJSON FloodlightActivitiesListSortOrder where
-    parseJSON = parseJSONText "FloodlightActivitiesListSortOrder"
-
-instance ToJSON FloodlightActivitiesListSortOrder where
-    toJSON = toJSONText
-
--- | The output format of the report. Only available once the file is
--- available.
-data FileFormat
-    = CSV
-      -- ^ @CSV@
-    | Excel
-      -- ^ @EXCEL@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FileFormat
-
-instance FromHttpApiData FileFormat where
-    parseQueryParam = \case
-        "CSV" -> Right CSV
-        "EXCEL" -> Right Excel
-        x -> Left ("Unable to parse FileFormat from: " <> x)
-
-instance ToHttpApiData FileFormat where
-    toQueryParam = \case
-        CSV -> "CSV"
-        Excel -> "EXCEL"
-
-instance FromJSON FileFormat where
-    parseJSON = parseJSONText "FileFormat"
-
-instance ToJSON FileFormat where
-    toJSON = toJSONText
-
--- | The encryption entity type. This should match the encryption
--- configuration for ad serving or Data Transfer.
-data EncryptionInfoEncryptionEntityType
-    = AdwordsCustomer
-      -- ^ @ADWORDS_CUSTOMER@
-    | DBmAdvertiser
-      -- ^ @DBM_ADVERTISER@
-    | DBmPartner
-      -- ^ @DBM_PARTNER@
-    | DcmAccount
-      -- ^ @DCM_ACCOUNT@
-    | DcmAdvertiser
-      -- ^ @DCM_ADVERTISER@
-    | DfpNetworkCode
-      -- ^ @DFP_NETWORK_CODE@
-    | EncryptionEntityTypeUnknown
-      -- ^ @ENCRYPTION_ENTITY_TYPE_UNKNOWN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EncryptionInfoEncryptionEntityType
-
-instance FromHttpApiData EncryptionInfoEncryptionEntityType where
-    parseQueryParam = \case
-        "ADWORDS_CUSTOMER" -> Right AdwordsCustomer
-        "DBM_ADVERTISER" -> Right DBmAdvertiser
-        "DBM_PARTNER" -> Right DBmPartner
-        "DCM_ACCOUNT" -> Right DcmAccount
-        "DCM_ADVERTISER" -> Right DcmAdvertiser
-        "DFP_NETWORK_CODE" -> Right DfpNetworkCode
-        "ENCRYPTION_ENTITY_TYPE_UNKNOWN" -> Right EncryptionEntityTypeUnknown
-        x -> Left ("Unable to parse EncryptionInfoEncryptionEntityType from: " <> x)
-
-instance ToHttpApiData EncryptionInfoEncryptionEntityType where
-    toQueryParam = \case
-        AdwordsCustomer -> "ADWORDS_CUSTOMER"
-        DBmAdvertiser -> "DBM_ADVERTISER"
-        DBmPartner -> "DBM_PARTNER"
-        DcmAccount -> "DCM_ACCOUNT"
-        DcmAdvertiser -> "DCM_ADVERTISER"
-        DfpNetworkCode -> "DFP_NETWORK_CODE"
-        EncryptionEntityTypeUnknown -> "ENCRYPTION_ENTITY_TYPE_UNKNOWN"
-
-instance FromJSON EncryptionInfoEncryptionEntityType where
-    parseJSON = parseJSONText "EncryptionInfoEncryptionEntityType"
-
-instance ToJSON EncryptionInfoEncryptionEntityType where
-    toJSON = toJSONText
-
--- | Placement pricing type. This field is required on insertion.
-data PricingSchedulePricingType
-    = PricingTypeCpa
-      -- ^ @PRICING_TYPE_CPA@
-    | PricingTypeCpc
-      -- ^ @PRICING_TYPE_CPC@
-    | PricingTypeCpm
-      -- ^ @PRICING_TYPE_CPM@
-    | PricingTypeCpmActiveview
-      -- ^ @PRICING_TYPE_CPM_ACTIVEVIEW@
-    | PricingTypeFlatRateClicks
-      -- ^ @PRICING_TYPE_FLAT_RATE_CLICKS@
-    | PricingTypeFlatRateImpressions
-      -- ^ @PRICING_TYPE_FLAT_RATE_IMPRESSIONS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PricingSchedulePricingType
-
-instance FromHttpApiData PricingSchedulePricingType where
-    parseQueryParam = \case
-        "PRICING_TYPE_CPA" -> Right PricingTypeCpa
-        "PRICING_TYPE_CPC" -> Right PricingTypeCpc
-        "PRICING_TYPE_CPM" -> Right PricingTypeCpm
-        "PRICING_TYPE_CPM_ACTIVEVIEW" -> Right PricingTypeCpmActiveview
-        "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PricingTypeFlatRateClicks
-        "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PricingTypeFlatRateImpressions
-        x -> Left ("Unable to parse PricingSchedulePricingType from: " <> x)
-
-instance ToHttpApiData PricingSchedulePricingType where
-    toQueryParam = \case
-        PricingTypeCpa -> "PRICING_TYPE_CPA"
-        PricingTypeCpc -> "PRICING_TYPE_CPC"
-        PricingTypeCpm -> "PRICING_TYPE_CPM"
-        PricingTypeCpmActiveview -> "PRICING_TYPE_CPM_ACTIVEVIEW"
-        PricingTypeFlatRateClicks -> "PRICING_TYPE_FLAT_RATE_CLICKS"
-        PricingTypeFlatRateImpressions -> "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
-
-instance FromJSON PricingSchedulePricingType where
-    parseJSON = parseJSONText "PricingSchedulePricingType"
-
-instance ToJSON PricingSchedulePricingType where
-    toJSON = toJSONText
-
--- | Target type used by the event.
-data CreativeCustomEventTargetType
-    = TargetBlank
-      -- ^ @TARGET_BLANK@
-    | TargetParent
-      -- ^ @TARGET_PARENT@
-    | TargetPopup
-      -- ^ @TARGET_POPUP@
-    | TargetSelf
-      -- ^ @TARGET_SELF@
-    | TargetTop
-      -- ^ @TARGET_TOP@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeCustomEventTargetType
-
-instance FromHttpApiData CreativeCustomEventTargetType where
-    parseQueryParam = \case
-        "TARGET_BLANK" -> Right TargetBlank
-        "TARGET_PARENT" -> Right TargetParent
-        "TARGET_POPUP" -> Right TargetPopup
-        "TARGET_SELF" -> Right TargetSelf
-        "TARGET_TOP" -> Right TargetTop
-        x -> Left ("Unable to parse CreativeCustomEventTargetType from: " <> x)
-
-instance ToHttpApiData CreativeCustomEventTargetType where
-    toQueryParam = \case
-        TargetBlank -> "TARGET_BLANK"
-        TargetParent -> "TARGET_PARENT"
-        TargetPopup -> "TARGET_POPUP"
-        TargetSelf -> "TARGET_SELF"
-        TargetTop -> "TARGET_TOP"
-
-instance FromJSON CreativeCustomEventTargetType where
-    parseJSON = parseJSONText "CreativeCustomEventTargetType"
-
-instance ToJSON CreativeCustomEventTargetType where
-    toJSON = toJSONText
-
--- | The scope that defines which results are returned.
-data ReportsListScope
-    = All
-      -- ^ @ALL@
-      -- All reports in account.
-    | Mine
-      -- ^ @MINE@
-      -- My reports.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportsListScope
-
-instance FromHttpApiData ReportsListScope where
-    parseQueryParam = \case
-        "ALL" -> Right All
-        "MINE" -> Right Mine
-        x -> Left ("Unable to parse ReportsListScope from: " <> x)
-
-instance ToHttpApiData ReportsListScope where
-    toQueryParam = \case
-        All -> "ALL"
-        Mine -> "MINE"
-
-instance FromJSON ReportsListScope where
-    parseJSON = parseJSONText "ReportsListScope"
-
-instance ToJSON ReportsListScope where
-    toJSON = toJSONText
-
--- | Orientation of video asset. This is a read-only, auto-generated field.
-data CreativeAssetOrientation
-    = CAOLandscape
-      -- ^ @LANDSCAPE@
-    | CAOPortrait
-      -- ^ @PORTRAIT@
-    | CAOSquare
-      -- ^ @SQUARE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetOrientation
-
-instance FromHttpApiData CreativeAssetOrientation where
-    parseQueryParam = \case
-        "LANDSCAPE" -> Right CAOLandscape
-        "PORTRAIT" -> Right CAOPortrait
-        "SQUARE" -> Right CAOSquare
-        x -> Left ("Unable to parse CreativeAssetOrientation from: " <> x)
-
-instance ToHttpApiData CreativeAssetOrientation where
-    toQueryParam = \case
-        CAOLandscape -> "LANDSCAPE"
-        CAOPortrait -> "PORTRAIT"
-        CAOSquare -> "SQUARE"
-
-instance FromJSON CreativeAssetOrientation where
-    parseJSON = parseJSONText "CreativeAssetOrientation"
-
-instance ToJSON CreativeAssetOrientation where
-    toJSON = toJSONText
-
--- | Duration type for which an asset will be displayed. Applicable to the
--- following creative types: all RICH_MEDIA.
-data CreativeAssetDurationType
-    = AssetDurationTypeAuto
-      -- ^ @ASSET_DURATION_TYPE_AUTO@
-    | AssetDurationTypeCustom
-      -- ^ @ASSET_DURATION_TYPE_CUSTOM@
-    | AssetDurationTypeNone
-      -- ^ @ASSET_DURATION_TYPE_NONE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetDurationType
-
-instance FromHttpApiData CreativeAssetDurationType where
-    parseQueryParam = \case
-        "ASSET_DURATION_TYPE_AUTO" -> Right AssetDurationTypeAuto
-        "ASSET_DURATION_TYPE_CUSTOM" -> Right AssetDurationTypeCustom
-        "ASSET_DURATION_TYPE_NONE" -> Right AssetDurationTypeNone
-        x -> Left ("Unable to parse CreativeAssetDurationType from: " <> x)
-
-instance ToHttpApiData CreativeAssetDurationType where
-    toQueryParam = \case
-        AssetDurationTypeAuto -> "ASSET_DURATION_TYPE_AUTO"
-        AssetDurationTypeCustom -> "ASSET_DURATION_TYPE_CUSTOM"
-        AssetDurationTypeNone -> "ASSET_DURATION_TYPE_NONE"
-
-instance FromJSON CreativeAssetDurationType where
-    parseJSON = parseJSONText "CreativeAssetDurationType"
-
-instance ToJSON CreativeAssetDurationType where
-    toJSON = toJSONText
-
--- | Product from which this targetable remarketing list was originated.
-data TargetableRemarketingListListSource
-    = RemarketingListSourceAdx
-      -- ^ @REMARKETING_LIST_SOURCE_ADX@
-    | RemarketingListSourceDBm
-      -- ^ @REMARKETING_LIST_SOURCE_DBM@
-    | RemarketingListSourceDfa
-      -- ^ @REMARKETING_LIST_SOURCE_DFA@
-    | RemarketingListSourceDfp
-      -- ^ @REMARKETING_LIST_SOURCE_DFP@
-    | RemarketingListSourceDmp
-      -- ^ @REMARKETING_LIST_SOURCE_DMP@
-    | RemarketingListSourceGa
-      -- ^ @REMARKETING_LIST_SOURCE_GA@
-    | RemarketingListSourceGplus
-      -- ^ @REMARKETING_LIST_SOURCE_GPLUS@
-    | RemarketingListSourceOther
-      -- ^ @REMARKETING_LIST_SOURCE_OTHER@
-    | RemarketingListSourcePlayStore
-      -- ^ @REMARKETING_LIST_SOURCE_PLAY_STORE@
-    | RemarketingListSourceXfp
-      -- ^ @REMARKETING_LIST_SOURCE_XFP@
-    | RemarketingListSourceYouTube
-      -- ^ @REMARKETING_LIST_SOURCE_YOUTUBE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetableRemarketingListListSource
-
-instance FromHttpApiData TargetableRemarketingListListSource where
-    parseQueryParam = \case
-        "REMARKETING_LIST_SOURCE_ADX" -> Right RemarketingListSourceAdx
-        "REMARKETING_LIST_SOURCE_DBM" -> Right RemarketingListSourceDBm
-        "REMARKETING_LIST_SOURCE_DFA" -> Right RemarketingListSourceDfa
-        "REMARKETING_LIST_SOURCE_DFP" -> Right RemarketingListSourceDfp
-        "REMARKETING_LIST_SOURCE_DMP" -> Right RemarketingListSourceDmp
-        "REMARKETING_LIST_SOURCE_GA" -> Right RemarketingListSourceGa
-        "REMARKETING_LIST_SOURCE_GPLUS" -> Right RemarketingListSourceGplus
-        "REMARKETING_LIST_SOURCE_OTHER" -> Right RemarketingListSourceOther
-        "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Right RemarketingListSourcePlayStore
-        "REMARKETING_LIST_SOURCE_XFP" -> Right RemarketingListSourceXfp
-        "REMARKETING_LIST_SOURCE_YOUTUBE" -> Right RemarketingListSourceYouTube
-        x -> Left ("Unable to parse TargetableRemarketingListListSource from: " <> x)
-
-instance ToHttpApiData TargetableRemarketingListListSource where
-    toQueryParam = \case
-        RemarketingListSourceAdx -> "REMARKETING_LIST_SOURCE_ADX"
-        RemarketingListSourceDBm -> "REMARKETING_LIST_SOURCE_DBM"
-        RemarketingListSourceDfa -> "REMARKETING_LIST_SOURCE_DFA"
-        RemarketingListSourceDfp -> "REMARKETING_LIST_SOURCE_DFP"
-        RemarketingListSourceDmp -> "REMARKETING_LIST_SOURCE_DMP"
-        RemarketingListSourceGa -> "REMARKETING_LIST_SOURCE_GA"
-        RemarketingListSourceGplus -> "REMARKETING_LIST_SOURCE_GPLUS"
-        RemarketingListSourceOther -> "REMARKETING_LIST_SOURCE_OTHER"
-        RemarketingListSourcePlayStore -> "REMARKETING_LIST_SOURCE_PLAY_STORE"
-        RemarketingListSourceXfp -> "REMARKETING_LIST_SOURCE_XFP"
-        RemarketingListSourceYouTube -> "REMARKETING_LIST_SOURCE_YOUTUBE"
-
-instance FromJSON TargetableRemarketingListListSource where
-    parseJSON = parseJSONText "TargetableRemarketingListListSource"
-
-instance ToJSON TargetableRemarketingListListSource where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data CreativeGroupsListSortField
-    = CGLSFID
-      -- ^ @ID@
-    | CGLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeGroupsListSortField
-
-instance FromHttpApiData CreativeGroupsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CGLSFID
-        "NAME" -> Right CGLSFName
-        x -> Left ("Unable to parse CreativeGroupsListSortField from: " <> x)
-
-instance ToHttpApiData CreativeGroupsListSortField where
-    toQueryParam = \case
-        CGLSFID -> "ID"
-        CGLSFName -> "NAME"
-
-instance FromJSON CreativeGroupsListSortField where
-    parseJSON = parseJSONText "CreativeGroupsListSortField"
-
-instance ToJSON CreativeGroupsListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data PlacementsListSortField
-    = PLSFID
-      -- ^ @ID@
-    | PLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsListSortField
-
-instance FromHttpApiData PlacementsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right PLSFID
-        "NAME" -> Right PLSFName
-        x -> Left ("Unable to parse PlacementsListSortField from: " <> x)
-
-instance ToHttpApiData PlacementsListSortField where
-    toQueryParam = \case
-        PLSFID -> "ID"
-        PLSFName -> "NAME"
-
-instance FromJSON PlacementsListSortField where
-    parseJSON = parseJSONText "PlacementsListSortField"
-
-instance ToJSON PlacementsListSortField where
-    toJSON = toJSONText
-
-data CreativeBackupImageFeaturesItem
-    = CBIFIApplicationCache
-      -- ^ @APPLICATION_CACHE@
-    | CBIFIAudio
-      -- ^ @AUDIO@
-    | CBIFICanvas
-      -- ^ @CANVAS@
-    | CBIFICanvasText
-      -- ^ @CANVAS_TEXT@
-    | CBIFICssAnimations
-      -- ^ @CSS_ANIMATIONS@
-    | CBIFICssBackgRoundSize
-      -- ^ @CSS_BACKGROUND_SIZE@
-    | CBIFICssBOrderImage
-      -- ^ @CSS_BORDER_IMAGE@
-    | CBIFICssBOrderRadius
-      -- ^ @CSS_BORDER_RADIUS@
-    | CBIFICssBoxShadow
-      -- ^ @CSS_BOX_SHADOW@
-    | CBIFICssColumns
-      -- ^ @CSS_COLUMNS@
-    | CBIFICssFlexBox
-      -- ^ @CSS_FLEX_BOX@
-    | CBIFICssFontFace
-      -- ^ @CSS_FONT_FACE@
-    | CBIFICssGeneratedContent
-      -- ^ @CSS_GENERATED_CONTENT@
-    | CBIFICssGradients
-      -- ^ @CSS_GRADIENTS@
-    | CBIFICssHsla
-      -- ^ @CSS_HSLA@
-    | CBIFICssMultipleBgs
-      -- ^ @CSS_MULTIPLE_BGS@
-    | CBIFICssOpacity
-      -- ^ @CSS_OPACITY@
-    | CBIFICssReflections
-      -- ^ @CSS_REFLECTIONS@
-    | CBIFICssRgba
-      -- ^ @CSS_RGBA@
-    | CBIFICssTextShadow
-      -- ^ @CSS_TEXT_SHADOW@
-    | CBIFICssTransforms
-      -- ^ @CSS_TRANSFORMS@
-    | CBIFICssTRANSFORMS3D
-      -- ^ @CSS_TRANSFORMS3D@
-    | CBIFICssTransitions
-      -- ^ @CSS_TRANSITIONS@
-    | CBIFIDragAndDrop
-      -- ^ @DRAG_AND_DROP@
-    | CBIFIGeoLocation
-      -- ^ @GEO_LOCATION@
-    | CBIFIHashChange
-      -- ^ @HASH_CHANGE@
-    | CBIFIHistory
-      -- ^ @HISTORY@
-    | CBIFIIndexedDB
-      -- ^ @INDEXED_DB@
-    | CBIFIInlineSvg
-      -- ^ @INLINE_SVG@
-    | CBIFIInputAttrAutocomplete
-      -- ^ @INPUT_ATTR_AUTOCOMPLETE@
-    | CBIFIInputAttrAutofocus
-      -- ^ @INPUT_ATTR_AUTOFOCUS@
-    | CBIFIInputAttrList
-      -- ^ @INPUT_ATTR_LIST@
-    | CBIFIInputAttrMax
-      -- ^ @INPUT_ATTR_MAX@
-    | CBIFIInputAttrMin
-      -- ^ @INPUT_ATTR_MIN@
-    | CBIFIInputAttrMultiple
-      -- ^ @INPUT_ATTR_MULTIPLE@
-    | CBIFIInputAttrPattern
-      -- ^ @INPUT_ATTR_PATTERN@
-    | CBIFIInputAttrPlaceholder
-      -- ^ @INPUT_ATTR_PLACEHOLDER@
-    | CBIFIInputAttrRequired
-      -- ^ @INPUT_ATTR_REQUIRED@
-    | CBIFIInputAttrStep
-      -- ^ @INPUT_ATTR_STEP@
-    | CBIFIInputTypeColor
-      -- ^ @INPUT_TYPE_COLOR@
-    | CBIFIInputTypeDate
-      -- ^ @INPUT_TYPE_DATE@
-    | CBIFIInputTypeDatetime
-      -- ^ @INPUT_TYPE_DATETIME@
-    | CBIFIInputTypeDatetimeLocal
-      -- ^ @INPUT_TYPE_DATETIME_LOCAL@
-    | CBIFIInputTypeEmail
-      -- ^ @INPUT_TYPE_EMAIL@
-    | CBIFIInputTypeMonth
-      -- ^ @INPUT_TYPE_MONTH@
-    | CBIFIInputTypeNumber
-      -- ^ @INPUT_TYPE_NUMBER@
-    | CBIFIInputTypeRange
-      -- ^ @INPUT_TYPE_RANGE@
-    | CBIFIInputTypeSearch
-      -- ^ @INPUT_TYPE_SEARCH@
-    | CBIFIInputTypeTel
-      -- ^ @INPUT_TYPE_TEL@
-    | CBIFIInputTypeTime
-      -- ^ @INPUT_TYPE_TIME@
-    | CBIFIInputTypeURL
-      -- ^ @INPUT_TYPE_URL@
-    | CBIFIInputTypeWeek
-      -- ^ @INPUT_TYPE_WEEK@
-    | CBIFILocalStorage
-      -- ^ @LOCAL_STORAGE@
-    | CBIFIPostMessage
-      -- ^ @POST_MESSAGE@
-    | CBIFISessionStorage
-      -- ^ @SESSION_STORAGE@
-    | CBIFISmil
-      -- ^ @SMIL@
-    | CBIFISvgClipPaths
-      -- ^ @SVG_CLIP_PATHS@
-    | CBIFISvgFeImage
-      -- ^ @SVG_FE_IMAGE@
-    | CBIFISvgFilters
-      -- ^ @SVG_FILTERS@
-    | CBIFISvgHref
-      -- ^ @SVG_HREF@
-    | CBIFITouch
-      -- ^ @TOUCH@
-    | CBIFIVideo
-      -- ^ @VIDEO@
-    | CBIFIWebgl
-      -- ^ @WEBGL@
-    | CBIFIWebSockets
-      -- ^ @WEB_SOCKETS@
-    | CBIFIWebSQLDatabase
-      -- ^ @WEB_SQL_DATABASE@
-    | CBIFIWebWorkers
-      -- ^ @WEB_WORKERS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeBackupImageFeaturesItem
-
-instance FromHttpApiData CreativeBackupImageFeaturesItem where
-    parseQueryParam = \case
-        "APPLICATION_CACHE" -> Right CBIFIApplicationCache
-        "AUDIO" -> Right CBIFIAudio
-        "CANVAS" -> Right CBIFICanvas
-        "CANVAS_TEXT" -> Right CBIFICanvasText
-        "CSS_ANIMATIONS" -> Right CBIFICssAnimations
-        "CSS_BACKGROUND_SIZE" -> Right CBIFICssBackgRoundSize
-        "CSS_BORDER_IMAGE" -> Right CBIFICssBOrderImage
-        "CSS_BORDER_RADIUS" -> Right CBIFICssBOrderRadius
-        "CSS_BOX_SHADOW" -> Right CBIFICssBoxShadow
-        "CSS_COLUMNS" -> Right CBIFICssColumns
-        "CSS_FLEX_BOX" -> Right CBIFICssFlexBox
-        "CSS_FONT_FACE" -> Right CBIFICssFontFace
-        "CSS_GENERATED_CONTENT" -> Right CBIFICssGeneratedContent
-        "CSS_GRADIENTS" -> Right CBIFICssGradients
-        "CSS_HSLA" -> Right CBIFICssHsla
-        "CSS_MULTIPLE_BGS" -> Right CBIFICssMultipleBgs
-        "CSS_OPACITY" -> Right CBIFICssOpacity
-        "CSS_REFLECTIONS" -> Right CBIFICssReflections
-        "CSS_RGBA" -> Right CBIFICssRgba
-        "CSS_TEXT_SHADOW" -> Right CBIFICssTextShadow
-        "CSS_TRANSFORMS" -> Right CBIFICssTransforms
-        "CSS_TRANSFORMS3D" -> Right CBIFICssTRANSFORMS3D
-        "CSS_TRANSITIONS" -> Right CBIFICssTransitions
-        "DRAG_AND_DROP" -> Right CBIFIDragAndDrop
-        "GEO_LOCATION" -> Right CBIFIGeoLocation
-        "HASH_CHANGE" -> Right CBIFIHashChange
-        "HISTORY" -> Right CBIFIHistory
-        "INDEXED_DB" -> Right CBIFIIndexedDB
-        "INLINE_SVG" -> Right CBIFIInlineSvg
-        "INPUT_ATTR_AUTOCOMPLETE" -> Right CBIFIInputAttrAutocomplete
-        "INPUT_ATTR_AUTOFOCUS" -> Right CBIFIInputAttrAutofocus
-        "INPUT_ATTR_LIST" -> Right CBIFIInputAttrList
-        "INPUT_ATTR_MAX" -> Right CBIFIInputAttrMax
-        "INPUT_ATTR_MIN" -> Right CBIFIInputAttrMin
-        "INPUT_ATTR_MULTIPLE" -> Right CBIFIInputAttrMultiple
-        "INPUT_ATTR_PATTERN" -> Right CBIFIInputAttrPattern
-        "INPUT_ATTR_PLACEHOLDER" -> Right CBIFIInputAttrPlaceholder
-        "INPUT_ATTR_REQUIRED" -> Right CBIFIInputAttrRequired
-        "INPUT_ATTR_STEP" -> Right CBIFIInputAttrStep
-        "INPUT_TYPE_COLOR" -> Right CBIFIInputTypeColor
-        "INPUT_TYPE_DATE" -> Right CBIFIInputTypeDate
-        "INPUT_TYPE_DATETIME" -> Right CBIFIInputTypeDatetime
-        "INPUT_TYPE_DATETIME_LOCAL" -> Right CBIFIInputTypeDatetimeLocal
-        "INPUT_TYPE_EMAIL" -> Right CBIFIInputTypeEmail
-        "INPUT_TYPE_MONTH" -> Right CBIFIInputTypeMonth
-        "INPUT_TYPE_NUMBER" -> Right CBIFIInputTypeNumber
-        "INPUT_TYPE_RANGE" -> Right CBIFIInputTypeRange
-        "INPUT_TYPE_SEARCH" -> Right CBIFIInputTypeSearch
-        "INPUT_TYPE_TEL" -> Right CBIFIInputTypeTel
-        "INPUT_TYPE_TIME" -> Right CBIFIInputTypeTime
-        "INPUT_TYPE_URL" -> Right CBIFIInputTypeURL
-        "INPUT_TYPE_WEEK" -> Right CBIFIInputTypeWeek
-        "LOCAL_STORAGE" -> Right CBIFILocalStorage
-        "POST_MESSAGE" -> Right CBIFIPostMessage
-        "SESSION_STORAGE" -> Right CBIFISessionStorage
-        "SMIL" -> Right CBIFISmil
-        "SVG_CLIP_PATHS" -> Right CBIFISvgClipPaths
-        "SVG_FE_IMAGE" -> Right CBIFISvgFeImage
-        "SVG_FILTERS" -> Right CBIFISvgFilters
-        "SVG_HREF" -> Right CBIFISvgHref
-        "TOUCH" -> Right CBIFITouch
-        "VIDEO" -> Right CBIFIVideo
-        "WEBGL" -> Right CBIFIWebgl
-        "WEB_SOCKETS" -> Right CBIFIWebSockets
-        "WEB_SQL_DATABASE" -> Right CBIFIWebSQLDatabase
-        "WEB_WORKERS" -> Right CBIFIWebWorkers
-        x -> Left ("Unable to parse CreativeBackupImageFeaturesItem from: " <> x)
-
-instance ToHttpApiData CreativeBackupImageFeaturesItem where
-    toQueryParam = \case
-        CBIFIApplicationCache -> "APPLICATION_CACHE"
-        CBIFIAudio -> "AUDIO"
-        CBIFICanvas -> "CANVAS"
-        CBIFICanvasText -> "CANVAS_TEXT"
-        CBIFICssAnimations -> "CSS_ANIMATIONS"
-        CBIFICssBackgRoundSize -> "CSS_BACKGROUND_SIZE"
-        CBIFICssBOrderImage -> "CSS_BORDER_IMAGE"
-        CBIFICssBOrderRadius -> "CSS_BORDER_RADIUS"
-        CBIFICssBoxShadow -> "CSS_BOX_SHADOW"
-        CBIFICssColumns -> "CSS_COLUMNS"
-        CBIFICssFlexBox -> "CSS_FLEX_BOX"
-        CBIFICssFontFace -> "CSS_FONT_FACE"
-        CBIFICssGeneratedContent -> "CSS_GENERATED_CONTENT"
-        CBIFICssGradients -> "CSS_GRADIENTS"
-        CBIFICssHsla -> "CSS_HSLA"
-        CBIFICssMultipleBgs -> "CSS_MULTIPLE_BGS"
-        CBIFICssOpacity -> "CSS_OPACITY"
-        CBIFICssReflections -> "CSS_REFLECTIONS"
-        CBIFICssRgba -> "CSS_RGBA"
-        CBIFICssTextShadow -> "CSS_TEXT_SHADOW"
-        CBIFICssTransforms -> "CSS_TRANSFORMS"
-        CBIFICssTRANSFORMS3D -> "CSS_TRANSFORMS3D"
-        CBIFICssTransitions -> "CSS_TRANSITIONS"
-        CBIFIDragAndDrop -> "DRAG_AND_DROP"
-        CBIFIGeoLocation -> "GEO_LOCATION"
-        CBIFIHashChange -> "HASH_CHANGE"
-        CBIFIHistory -> "HISTORY"
-        CBIFIIndexedDB -> "INDEXED_DB"
-        CBIFIInlineSvg -> "INLINE_SVG"
-        CBIFIInputAttrAutocomplete -> "INPUT_ATTR_AUTOCOMPLETE"
-        CBIFIInputAttrAutofocus -> "INPUT_ATTR_AUTOFOCUS"
-        CBIFIInputAttrList -> "INPUT_ATTR_LIST"
-        CBIFIInputAttrMax -> "INPUT_ATTR_MAX"
-        CBIFIInputAttrMin -> "INPUT_ATTR_MIN"
-        CBIFIInputAttrMultiple -> "INPUT_ATTR_MULTIPLE"
-        CBIFIInputAttrPattern -> "INPUT_ATTR_PATTERN"
-        CBIFIInputAttrPlaceholder -> "INPUT_ATTR_PLACEHOLDER"
-        CBIFIInputAttrRequired -> "INPUT_ATTR_REQUIRED"
-        CBIFIInputAttrStep -> "INPUT_ATTR_STEP"
-        CBIFIInputTypeColor -> "INPUT_TYPE_COLOR"
-        CBIFIInputTypeDate -> "INPUT_TYPE_DATE"
-        CBIFIInputTypeDatetime -> "INPUT_TYPE_DATETIME"
-        CBIFIInputTypeDatetimeLocal -> "INPUT_TYPE_DATETIME_LOCAL"
-        CBIFIInputTypeEmail -> "INPUT_TYPE_EMAIL"
-        CBIFIInputTypeMonth -> "INPUT_TYPE_MONTH"
-        CBIFIInputTypeNumber -> "INPUT_TYPE_NUMBER"
-        CBIFIInputTypeRange -> "INPUT_TYPE_RANGE"
-        CBIFIInputTypeSearch -> "INPUT_TYPE_SEARCH"
-        CBIFIInputTypeTel -> "INPUT_TYPE_TEL"
-        CBIFIInputTypeTime -> "INPUT_TYPE_TIME"
-        CBIFIInputTypeURL -> "INPUT_TYPE_URL"
-        CBIFIInputTypeWeek -> "INPUT_TYPE_WEEK"
-        CBIFILocalStorage -> "LOCAL_STORAGE"
-        CBIFIPostMessage -> "POST_MESSAGE"
-        CBIFISessionStorage -> "SESSION_STORAGE"
-        CBIFISmil -> "SMIL"
-        CBIFISvgClipPaths -> "SVG_CLIP_PATHS"
-        CBIFISvgFeImage -> "SVG_FE_IMAGE"
-        CBIFISvgFilters -> "SVG_FILTERS"
-        CBIFISvgHref -> "SVG_HREF"
-        CBIFITouch -> "TOUCH"
-        CBIFIVideo -> "VIDEO"
-        CBIFIWebgl -> "WEBGL"
-        CBIFIWebSockets -> "WEB_SOCKETS"
-        CBIFIWebSQLDatabase -> "WEB_SQL_DATABASE"
-        CBIFIWebWorkers -> "WEB_WORKERS"
-
-instance FromJSON CreativeBackupImageFeaturesItem where
-    parseJSON = parseJSONText "CreativeBackupImageFeaturesItem"
-
-instance ToJSON CreativeBackupImageFeaturesItem where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AdvertisersListSortOrder
-    = ALSOAscending
-      -- ^ @ASCENDING@
-    | ALSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertisersListSortOrder
-
-instance FromHttpApiData AdvertisersListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right ALSOAscending
-        "DESCENDING" -> Right ALSODescending
-        x -> Left ("Unable to parse AdvertisersListSortOrder from: " <> x)
-
-instance ToHttpApiData AdvertisersListSortOrder where
-    toQueryParam = \case
-        ALSOAscending -> "ASCENDING"
-        ALSODescending -> "DESCENDING"
-
-instance FromJSON AdvertisersListSortOrder where
-    parseJSON = parseJSONText "AdvertisersListSortOrder"
-
-instance ToJSON AdvertisersListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data TargetingTemplatesListSortField
-    = TTLSFID
-      -- ^ @ID@
-    | TTLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetingTemplatesListSortField
-
-instance FromHttpApiData TargetingTemplatesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right TTLSFID
-        "NAME" -> Right TTLSFName
-        x -> Left ("Unable to parse TargetingTemplatesListSortField from: " <> x)
-
-instance ToHttpApiData TargetingTemplatesListSortField where
-    toQueryParam = \case
-        TTLSFID -> "ID"
-        TTLSFName -> "NAME"
-
-instance FromJSON TargetingTemplatesListSortField where
-    parseJSON = parseJSONText "TargetingTemplatesListSortField"
-
-instance ToJSON TargetingTemplatesListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data CreativeFieldsListSortField
-    = CFLSFID
-      -- ^ @ID@
-    | CFLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeFieldsListSortField
-
-instance FromHttpApiData CreativeFieldsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CFLSFID
-        "NAME" -> Right CFLSFName
-        x -> Left ("Unable to parse CreativeFieldsListSortField from: " <> x)
-
-instance ToHttpApiData CreativeFieldsListSortField where
-    toQueryParam = \case
-        CFLSFID -> "ID"
-        CFLSFName -> "NAME"
-
-instance FromJSON CreativeFieldsListSortField where
-    parseJSON = parseJSONText "CreativeFieldsListSortField"
-
-instance ToJSON CreativeFieldsListSortField where
-    toJSON = toJSONText
-
--- | Variable name in the tag. This is a required field.
-data UserDefinedVariableConfigurationVariableType
-    = UDVCVTU1
-      -- ^ @U1@
-    | UDVCVTU10
-      -- ^ @U10@
-    | UDVCVTU100
-      -- ^ @U100@
-    | UDVCVTU11
-      -- ^ @U11@
-    | UDVCVTU12
-      -- ^ @U12@
-    | UDVCVTU13
-      -- ^ @U13@
-    | UDVCVTU14
-      -- ^ @U14@
-    | UDVCVTU15
-      -- ^ @U15@
-    | UDVCVTU16
-      -- ^ @U16@
-    | UDVCVTU17
-      -- ^ @U17@
-    | UDVCVTU18
-      -- ^ @U18@
-    | UDVCVTU19
-      -- ^ @U19@
-    | UDVCVTU2
-      -- ^ @U2@
-    | UDVCVTU20
-      -- ^ @U20@
-    | UDVCVTU21
-      -- ^ @U21@
-    | UDVCVTU22
-      -- ^ @U22@
-    | UDVCVTU23
-      -- ^ @U23@
-    | UDVCVTU24
-      -- ^ @U24@
-    | UDVCVTU25
-      -- ^ @U25@
-    | UDVCVTU26
-      -- ^ @U26@
-    | UDVCVTU27
-      -- ^ @U27@
-    | UDVCVTU28
-      -- ^ @U28@
-    | UDVCVTU29
-      -- ^ @U29@
-    | UDVCVTU3
-      -- ^ @U3@
-    | UDVCVTU30
-      -- ^ @U30@
-    | UDVCVTU31
-      -- ^ @U31@
-    | UDVCVTU32
-      -- ^ @U32@
-    | UDVCVTU33
-      -- ^ @U33@
-    | UDVCVTU34
-      -- ^ @U34@
-    | UDVCVTU35
-      -- ^ @U35@
-    | UDVCVTU36
-      -- ^ @U36@
-    | UDVCVTU37
-      -- ^ @U37@
-    | UDVCVTU38
-      -- ^ @U38@
-    | UDVCVTU39
-      -- ^ @U39@
-    | UDVCVTU4
-      -- ^ @U4@
-    | UDVCVTU40
-      -- ^ @U40@
-    | UDVCVTU41
-      -- ^ @U41@
-    | UDVCVTU42
-      -- ^ @U42@
-    | UDVCVTU43
-      -- ^ @U43@
-    | UDVCVTU44
-      -- ^ @U44@
-    | UDVCVTU45
-      -- ^ @U45@
-    | UDVCVTU46
-      -- ^ @U46@
-    | UDVCVTU47
-      -- ^ @U47@
-    | UDVCVTU48
-      -- ^ @U48@
-    | UDVCVTU49
-      -- ^ @U49@
-    | UDVCVTU5
-      -- ^ @U5@
-    | UDVCVTU50
-      -- ^ @U50@
-    | UDVCVTU51
-      -- ^ @U51@
-    | UDVCVTU52
-      -- ^ @U52@
-    | UDVCVTU53
-      -- ^ @U53@
-    | UDVCVTU54
-      -- ^ @U54@
-    | UDVCVTU55
-      -- ^ @U55@
-    | UDVCVTU56
-      -- ^ @U56@
-    | UDVCVTU57
-      -- ^ @U57@
-    | UDVCVTU58
-      -- ^ @U58@
-    | UDVCVTU59
-      -- ^ @U59@
-    | UDVCVTU6
-      -- ^ @U6@
-    | UDVCVTU60
-      -- ^ @U60@
-    | UDVCVTU61
-      -- ^ @U61@
-    | UDVCVTU62
-      -- ^ @U62@
-    | UDVCVTU63
-      -- ^ @U63@
-    | UDVCVTU64
-      -- ^ @U64@
-    | UDVCVTU65
-      -- ^ @U65@
-    | UDVCVTU66
-      -- ^ @U66@
-    | UDVCVTU67
-      -- ^ @U67@
-    | UDVCVTU68
-      -- ^ @U68@
-    | UDVCVTU69
-      -- ^ @U69@
-    | UDVCVTU7
-      -- ^ @U7@
-    | UDVCVTU70
-      -- ^ @U70@
-    | UDVCVTU71
-      -- ^ @U71@
-    | UDVCVTU72
-      -- ^ @U72@
-    | UDVCVTU73
-      -- ^ @U73@
-    | UDVCVTU74
-      -- ^ @U74@
-    | UDVCVTU75
-      -- ^ @U75@
-    | UDVCVTU76
-      -- ^ @U76@
-    | UDVCVTU77
-      -- ^ @U77@
-    | UDVCVTU78
-      -- ^ @U78@
-    | UDVCVTU79
-      -- ^ @U79@
-    | UDVCVTU8
-      -- ^ @U8@
-    | UDVCVTU80
-      -- ^ @U80@
-    | UDVCVTU81
-      -- ^ @U81@
-    | UDVCVTU82
-      -- ^ @U82@
-    | UDVCVTU83
-      -- ^ @U83@
-    | UDVCVTU84
-      -- ^ @U84@
-    | UDVCVTU85
-      -- ^ @U85@
-    | UDVCVTU86
-      -- ^ @U86@
-    | UDVCVTU87
-      -- ^ @U87@
-    | UDVCVTU88
-      -- ^ @U88@
-    | UDVCVTU89
-      -- ^ @U89@
-    | UDVCVTU9
-      -- ^ @U9@
-    | UDVCVTU90
-      -- ^ @U90@
-    | UDVCVTU91
-      -- ^ @U91@
-    | UDVCVTU92
-      -- ^ @U92@
-    | UDVCVTU93
-      -- ^ @U93@
-    | UDVCVTU94
-      -- ^ @U94@
-    | UDVCVTU95
-      -- ^ @U95@
-    | UDVCVTU96
-      -- ^ @U96@
-    | UDVCVTU97
-      -- ^ @U97@
-    | UDVCVTU98
-      -- ^ @U98@
-    | UDVCVTU99
-      -- ^ @U99@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UserDefinedVariableConfigurationVariableType
-
-instance FromHttpApiData UserDefinedVariableConfigurationVariableType where
-    parseQueryParam = \case
-        "U1" -> Right UDVCVTU1
-        "U10" -> Right UDVCVTU10
-        "U100" -> Right UDVCVTU100
-        "U11" -> Right UDVCVTU11
-        "U12" -> Right UDVCVTU12
-        "U13" -> Right UDVCVTU13
-        "U14" -> Right UDVCVTU14
-        "U15" -> Right UDVCVTU15
-        "U16" -> Right UDVCVTU16
-        "U17" -> Right UDVCVTU17
-        "U18" -> Right UDVCVTU18
-        "U19" -> Right UDVCVTU19
-        "U2" -> Right UDVCVTU2
-        "U20" -> Right UDVCVTU20
-        "U21" -> Right UDVCVTU21
-        "U22" -> Right UDVCVTU22
-        "U23" -> Right UDVCVTU23
-        "U24" -> Right UDVCVTU24
-        "U25" -> Right UDVCVTU25
-        "U26" -> Right UDVCVTU26
-        "U27" -> Right UDVCVTU27
-        "U28" -> Right UDVCVTU28
-        "U29" -> Right UDVCVTU29
-        "U3" -> Right UDVCVTU3
-        "U30" -> Right UDVCVTU30
-        "U31" -> Right UDVCVTU31
-        "U32" -> Right UDVCVTU32
-        "U33" -> Right UDVCVTU33
-        "U34" -> Right UDVCVTU34
-        "U35" -> Right UDVCVTU35
-        "U36" -> Right UDVCVTU36
-        "U37" -> Right UDVCVTU37
-        "U38" -> Right UDVCVTU38
-        "U39" -> Right UDVCVTU39
-        "U4" -> Right UDVCVTU4
-        "U40" -> Right UDVCVTU40
-        "U41" -> Right UDVCVTU41
-        "U42" -> Right UDVCVTU42
-        "U43" -> Right UDVCVTU43
-        "U44" -> Right UDVCVTU44
-        "U45" -> Right UDVCVTU45
-        "U46" -> Right UDVCVTU46
-        "U47" -> Right UDVCVTU47
-        "U48" -> Right UDVCVTU48
-        "U49" -> Right UDVCVTU49
-        "U5" -> Right UDVCVTU5
-        "U50" -> Right UDVCVTU50
-        "U51" -> Right UDVCVTU51
-        "U52" -> Right UDVCVTU52
-        "U53" -> Right UDVCVTU53
-        "U54" -> Right UDVCVTU54
-        "U55" -> Right UDVCVTU55
-        "U56" -> Right UDVCVTU56
-        "U57" -> Right UDVCVTU57
-        "U58" -> Right UDVCVTU58
-        "U59" -> Right UDVCVTU59
-        "U6" -> Right UDVCVTU6
-        "U60" -> Right UDVCVTU60
-        "U61" -> Right UDVCVTU61
-        "U62" -> Right UDVCVTU62
-        "U63" -> Right UDVCVTU63
-        "U64" -> Right UDVCVTU64
-        "U65" -> Right UDVCVTU65
-        "U66" -> Right UDVCVTU66
-        "U67" -> Right UDVCVTU67
-        "U68" -> Right UDVCVTU68
-        "U69" -> Right UDVCVTU69
-        "U7" -> Right UDVCVTU7
-        "U70" -> Right UDVCVTU70
-        "U71" -> Right UDVCVTU71
-        "U72" -> Right UDVCVTU72
-        "U73" -> Right UDVCVTU73
-        "U74" -> Right UDVCVTU74
-        "U75" -> Right UDVCVTU75
-        "U76" -> Right UDVCVTU76
-        "U77" -> Right UDVCVTU77
-        "U78" -> Right UDVCVTU78
-        "U79" -> Right UDVCVTU79
-        "U8" -> Right UDVCVTU8
-        "U80" -> Right UDVCVTU80
-        "U81" -> Right UDVCVTU81
-        "U82" -> Right UDVCVTU82
-        "U83" -> Right UDVCVTU83
-        "U84" -> Right UDVCVTU84
-        "U85" -> Right UDVCVTU85
-        "U86" -> Right UDVCVTU86
-        "U87" -> Right UDVCVTU87
-        "U88" -> Right UDVCVTU88
-        "U89" -> Right UDVCVTU89
-        "U9" -> Right UDVCVTU9
-        "U90" -> Right UDVCVTU90
-        "U91" -> Right UDVCVTU91
-        "U92" -> Right UDVCVTU92
-        "U93" -> Right UDVCVTU93
-        "U94" -> Right UDVCVTU94
-        "U95" -> Right UDVCVTU95
-        "U96" -> Right UDVCVTU96
-        "U97" -> Right UDVCVTU97
-        "U98" -> Right UDVCVTU98
-        "U99" -> Right UDVCVTU99
-        x -> Left ("Unable to parse UserDefinedVariableConfigurationVariableType from: " <> x)
-
-instance ToHttpApiData UserDefinedVariableConfigurationVariableType where
-    toQueryParam = \case
-        UDVCVTU1 -> "U1"
-        UDVCVTU10 -> "U10"
-        UDVCVTU100 -> "U100"
-        UDVCVTU11 -> "U11"
-        UDVCVTU12 -> "U12"
-        UDVCVTU13 -> "U13"
-        UDVCVTU14 -> "U14"
-        UDVCVTU15 -> "U15"
-        UDVCVTU16 -> "U16"
-        UDVCVTU17 -> "U17"
-        UDVCVTU18 -> "U18"
-        UDVCVTU19 -> "U19"
-        UDVCVTU2 -> "U2"
-        UDVCVTU20 -> "U20"
-        UDVCVTU21 -> "U21"
-        UDVCVTU22 -> "U22"
-        UDVCVTU23 -> "U23"
-        UDVCVTU24 -> "U24"
-        UDVCVTU25 -> "U25"
-        UDVCVTU26 -> "U26"
-        UDVCVTU27 -> "U27"
-        UDVCVTU28 -> "U28"
-        UDVCVTU29 -> "U29"
-        UDVCVTU3 -> "U3"
-        UDVCVTU30 -> "U30"
-        UDVCVTU31 -> "U31"
-        UDVCVTU32 -> "U32"
-        UDVCVTU33 -> "U33"
-        UDVCVTU34 -> "U34"
-        UDVCVTU35 -> "U35"
-        UDVCVTU36 -> "U36"
-        UDVCVTU37 -> "U37"
-        UDVCVTU38 -> "U38"
-        UDVCVTU39 -> "U39"
-        UDVCVTU4 -> "U4"
-        UDVCVTU40 -> "U40"
-        UDVCVTU41 -> "U41"
-        UDVCVTU42 -> "U42"
-        UDVCVTU43 -> "U43"
-        UDVCVTU44 -> "U44"
-        UDVCVTU45 -> "U45"
-        UDVCVTU46 -> "U46"
-        UDVCVTU47 -> "U47"
-        UDVCVTU48 -> "U48"
-        UDVCVTU49 -> "U49"
-        UDVCVTU5 -> "U5"
-        UDVCVTU50 -> "U50"
-        UDVCVTU51 -> "U51"
-        UDVCVTU52 -> "U52"
-        UDVCVTU53 -> "U53"
-        UDVCVTU54 -> "U54"
-        UDVCVTU55 -> "U55"
-        UDVCVTU56 -> "U56"
-        UDVCVTU57 -> "U57"
-        UDVCVTU58 -> "U58"
-        UDVCVTU59 -> "U59"
-        UDVCVTU6 -> "U6"
-        UDVCVTU60 -> "U60"
-        UDVCVTU61 -> "U61"
-        UDVCVTU62 -> "U62"
-        UDVCVTU63 -> "U63"
-        UDVCVTU64 -> "U64"
-        UDVCVTU65 -> "U65"
-        UDVCVTU66 -> "U66"
-        UDVCVTU67 -> "U67"
-        UDVCVTU68 -> "U68"
-        UDVCVTU69 -> "U69"
-        UDVCVTU7 -> "U7"
-        UDVCVTU70 -> "U70"
-        UDVCVTU71 -> "U71"
-        UDVCVTU72 -> "U72"
-        UDVCVTU73 -> "U73"
-        UDVCVTU74 -> "U74"
-        UDVCVTU75 -> "U75"
-        UDVCVTU76 -> "U76"
-        UDVCVTU77 -> "U77"
-        UDVCVTU78 -> "U78"
-        UDVCVTU79 -> "U79"
-        UDVCVTU8 -> "U8"
-        UDVCVTU80 -> "U80"
-        UDVCVTU81 -> "U81"
-        UDVCVTU82 -> "U82"
-        UDVCVTU83 -> "U83"
-        UDVCVTU84 -> "U84"
-        UDVCVTU85 -> "U85"
-        UDVCVTU86 -> "U86"
-        UDVCVTU87 -> "U87"
-        UDVCVTU88 -> "U88"
-        UDVCVTU89 -> "U89"
-        UDVCVTU9 -> "U9"
-        UDVCVTU90 -> "U90"
-        UDVCVTU91 -> "U91"
-        UDVCVTU92 -> "U92"
-        UDVCVTU93 -> "U93"
-        UDVCVTU94 -> "U94"
-        UDVCVTU95 -> "U95"
-        UDVCVTU96 -> "U96"
-        UDVCVTU97 -> "U97"
-        UDVCVTU98 -> "U98"
-        UDVCVTU99 -> "U99"
-
-instance FromJSON UserDefinedVariableConfigurationVariableType where
-    parseJSON = parseJSONText "UserDefinedVariableConfigurationVariableType"
-
-instance ToJSON UserDefinedVariableConfigurationVariableType where
-    toJSON = toJSONText
-
--- | Position in the browser where the window will open.
-data FsCommandPositionOption
-    = Centered
-      -- ^ @CENTERED@
-    | DistanceFromTopLeftCorner
-      -- ^ @DISTANCE_FROM_TOP_LEFT_CORNER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FsCommandPositionOption
-
-instance FromHttpApiData FsCommandPositionOption where
-    parseQueryParam = \case
-        "CENTERED" -> Right Centered
-        "DISTANCE_FROM_TOP_LEFT_CORNER" -> Right DistanceFromTopLeftCorner
-        x -> Left ("Unable to parse FsCommandPositionOption from: " <> x)
-
-instance ToHttpApiData FsCommandPositionOption where
-    toQueryParam = \case
-        Centered -> "CENTERED"
-        DistanceFromTopLeftCorner -> "DISTANCE_FROM_TOP_LEFT_CORNER"
-
-instance FromJSON FsCommandPositionOption where
-    parseJSON = parseJSONText "FsCommandPositionOption"
-
-instance ToJSON FsCommandPositionOption where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AdvertiserLandingPagesListSortField
-    = ALPLSFID
-      -- ^ @ID@
-    | ALPLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertiserLandingPagesListSortField
-
-instance FromHttpApiData AdvertiserLandingPagesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right ALPLSFID
-        "NAME" -> Right ALPLSFName
-        x -> Left ("Unable to parse AdvertiserLandingPagesListSortField from: " <> x)
-
-instance ToHttpApiData AdvertiserLandingPagesListSortField where
-    toQueryParam = \case
-        ALPLSFID -> "ID"
-        ALPLSFName -> "NAME"
-
-instance FromJSON AdvertiserLandingPagesListSortField where
-    parseJSON = parseJSONText "AdvertiserLandingPagesListSortField"
-
-instance ToJSON AdvertiserLandingPagesListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data UserRolesListSortOrder
-    = URLSOAscending
-      -- ^ @ASCENDING@
-    | URLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UserRolesListSortOrder
-
-instance FromHttpApiData UserRolesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right URLSOAscending
-        "DESCENDING" -> Right URLSODescending
-        x -> Left ("Unable to parse UserRolesListSortOrder from: " <> x)
-
-instance ToHttpApiData UserRolesListSortOrder where
-    toQueryParam = \case
-        URLSOAscending -> "ASCENDING"
-        URLSODescending -> "DESCENDING"
-
-instance FromJSON UserRolesListSortOrder where
-    parseJSON = parseJSONText "UserRolesListSortOrder"
-
-instance ToJSON UserRolesListSortOrder where
-    toJSON = toJSONText
-
--- | Select only placements that are associated with these compatibilities.
--- DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or
--- on mobile devices for regular or interstitial ads respectively. APP and
--- APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO
--- refers to rendering in in-stream video ads developed with the VAST
--- standard.
-data PlacementsListCompatibilities
-    = PLCApp
-      -- ^ @APP@
-    | PLCAppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | PLCDisplay
-      -- ^ @DISPLAY@
-    | PLCDisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | PLCInStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | PLCInStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsListCompatibilities
-
-instance FromHttpApiData PlacementsListCompatibilities where
-    parseQueryParam = \case
-        "APP" -> Right PLCApp
-        "APP_INTERSTITIAL" -> Right PLCAppInterstitial
-        "DISPLAY" -> Right PLCDisplay
-        "DISPLAY_INTERSTITIAL" -> Right PLCDisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right PLCInStreamAudio
-        "IN_STREAM_VIDEO" -> Right PLCInStreamVideo
-        x -> Left ("Unable to parse PlacementsListCompatibilities from: " <> x)
-
-instance ToHttpApiData PlacementsListCompatibilities where
-    toQueryParam = \case
-        PLCApp -> "APP"
-        PLCAppInterstitial -> "APP_INTERSTITIAL"
-        PLCDisplay -> "DISPLAY"
-        PLCDisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        PLCInStreamAudio -> "IN_STREAM_AUDIO"
-        PLCInStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON PlacementsListCompatibilities where
-    parseJSON = parseJSONText "PlacementsListCompatibilities"
-
-instance ToJSON PlacementsListCompatibilities where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data OrderDocumentsListSortField
-    = ODLSFID
-      -- ^ @ID@
-    | ODLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrderDocumentsListSortField
-
-instance FromHttpApiData OrderDocumentsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right ODLSFID
-        "NAME" -> Right ODLSFName
-        x -> Left ("Unable to parse OrderDocumentsListSortField from: " <> x)
-
-instance ToHttpApiData OrderDocumentsListSortField where
-    toQueryParam = \case
-        ODLSFID -> "ID"
-        ODLSFName -> "NAME"
-
-instance FromJSON OrderDocumentsListSortField where
-    parseJSON = parseJSONText "OrderDocumentsListSortField"
-
-instance ToJSON OrderDocumentsListSortField where
-    toJSON = toJSONText
-
-data CreativeCompatibilityItem
-    = CCIApp
-      -- ^ @APP@
-    | CCIAppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | CCIDisplay
-      -- ^ @DISPLAY@
-    | CCIDisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | CCIInStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | CCIInStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeCompatibilityItem
-
-instance FromHttpApiData CreativeCompatibilityItem where
-    parseQueryParam = \case
-        "APP" -> Right CCIApp
-        "APP_INTERSTITIAL" -> Right CCIAppInterstitial
-        "DISPLAY" -> Right CCIDisplay
-        "DISPLAY_INTERSTITIAL" -> Right CCIDisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right CCIInStreamAudio
-        "IN_STREAM_VIDEO" -> Right CCIInStreamVideo
-        x -> Left ("Unable to parse CreativeCompatibilityItem from: " <> x)
-
-instance ToHttpApiData CreativeCompatibilityItem where
-    toQueryParam = \case
-        CCIApp -> "APP"
-        CCIAppInterstitial -> "APP_INTERSTITIAL"
-        CCIDisplay -> "DISPLAY"
-        CCIDisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        CCIInStreamAudio -> "IN_STREAM_AUDIO"
-        CCIInStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON CreativeCompatibilityItem where
-    parseJSON = parseJSONText "CreativeCompatibilityItem"
-
-instance ToJSON CreativeCompatibilityItem where
-    toJSON = toJSONText
-
--- | The type of delivery for the owner to receive, if enabled.
-data ReportDeliveryEmailOwnerDeliveryType
-    = RDEODTAttachment
-      -- ^ @ATTACHMENT@
-    | RDEODTLink
-      -- ^ @LINK@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportDeliveryEmailOwnerDeliveryType
-
-instance FromHttpApiData ReportDeliveryEmailOwnerDeliveryType where
-    parseQueryParam = \case
-        "ATTACHMENT" -> Right RDEODTAttachment
-        "LINK" -> Right RDEODTLink
-        x -> Left ("Unable to parse ReportDeliveryEmailOwnerDeliveryType from: " <> x)
-
-instance ToHttpApiData ReportDeliveryEmailOwnerDeliveryType where
-    toQueryParam = \case
-        RDEODTAttachment -> "ATTACHMENT"
-        RDEODTLink -> "LINK"
-
-instance FromJSON ReportDeliveryEmailOwnerDeliveryType where
-    parseJSON = parseJSONText "ReportDeliveryEmailOwnerDeliveryType"
-
-instance ToJSON ReportDeliveryEmailOwnerDeliveryType where
-    toJSON = toJSONText
-
--- | Site contact type.
-data SiteContactContactType
-    = SalesPerson
-      -- ^ @SALES_PERSON@
-    | Trafficker
-      -- ^ @TRAFFICKER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SiteContactContactType
-
-instance FromHttpApiData SiteContactContactType where
-    parseQueryParam = \case
-        "SALES_PERSON" -> Right SalesPerson
-        "TRAFFICKER" -> Right Trafficker
-        x -> Left ("Unable to parse SiteContactContactType from: " <> x)
-
-instance ToHttpApiData SiteContactContactType where
-    toQueryParam = \case
-        SalesPerson -> "SALES_PERSON"
-        Trafficker -> "TRAFFICKER"
-
-instance FromJSON SiteContactContactType where
-    parseJSON = parseJSONText "SiteContactContactType"
-
-instance ToJSON SiteContactContactType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data ReportsListSortOrder
-    = RLSOAscending
-      -- ^ @ASCENDING@
-      -- Ascending order.
-    | RLSODescending
-      -- ^ @DESCENDING@
-      -- Descending order.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportsListSortOrder
-
-instance FromHttpApiData ReportsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right RLSOAscending
-        "DESCENDING" -> Right RLSODescending
-        x -> Left ("Unable to parse ReportsListSortOrder from: " <> x)
-
-instance ToHttpApiData ReportsListSortOrder where
-    toQueryParam = \case
-        RLSOAscending -> "ASCENDING"
-        RLSODescending -> "DESCENDING"
-
-instance FromJSON ReportsListSortOrder where
-    parseJSON = parseJSONText "ReportsListSortOrder"
-
-instance ToJSON ReportsListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data TargetableRemarketingListsListSortField
-    = TRLLSFID
-      -- ^ @ID@
-    | TRLLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetableRemarketingListsListSortField
-
-instance FromHttpApiData TargetableRemarketingListsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right TRLLSFID
-        "NAME" -> Right TRLLSFName
-        x -> Left ("Unable to parse TargetableRemarketingListsListSortField from: " <> x)
-
-instance ToHttpApiData TargetableRemarketingListsListSortField where
-    toQueryParam = \case
-        TRLLSFID -> "ID"
-        TRLLSFName -> "NAME"
-
-instance FromJSON TargetableRemarketingListsListSortField where
-    parseJSON = parseJSONText "TargetableRemarketingListsListSortField"
-
-instance ToJSON TargetableRemarketingListsListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CampaignsListSortOrder
-    = CLSOAscending
-      -- ^ @ASCENDING@
-    | CLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CampaignsListSortOrder
-
-instance FromHttpApiData CampaignsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CLSOAscending
-        "DESCENDING" -> Right CLSODescending
-        x -> Left ("Unable to parse CampaignsListSortOrder from: " <> x)
-
-instance ToHttpApiData CampaignsListSortOrder where
-    toQueryParam = \case
-        CLSOAscending -> "ASCENDING"
-        CLSODescending -> "DESCENDING"
-
-instance FromJSON CampaignsListSortOrder where
-    parseJSON = parseJSONText "CampaignsListSortOrder"
-
-instance ToJSON CampaignsListSortOrder where
-    toJSON = toJSONText
-
--- | Select only floodlight activity groups with the specified floodlight
--- activity group type.
-data FloodlightActivityGroupsListType
-    = Counter
-      -- ^ @COUNTER@
-    | Sale
-      -- ^ @SALE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityGroupsListType
-
-instance FromHttpApiData FloodlightActivityGroupsListType where
-    parseQueryParam = \case
-        "COUNTER" -> Right Counter
-        "SALE" -> Right Sale
-        x -> Left ("Unable to parse FloodlightActivityGroupsListType from: " <> x)
-
-instance ToHttpApiData FloodlightActivityGroupsListType where
-    toQueryParam = \case
-        Counter -> "COUNTER"
-        Sale -> "SALE"
-
-instance FromJSON FloodlightActivityGroupsListType where
-    parseJSON = parseJSONText "FloodlightActivityGroupsListType"
-
-instance ToJSON FloodlightActivityGroupsListType where
-    toJSON = toJSONText
-
--- | Day that will be counted as the first day of the week in reports. This
--- is a required field.
-data FloodlightConfigurationFirstDayOfWeek
-    = Monday
-      -- ^ @MONDAY@
-    | Sunday
-      -- ^ @SUNDAY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightConfigurationFirstDayOfWeek
-
-instance FromHttpApiData FloodlightConfigurationFirstDayOfWeek where
-    parseQueryParam = \case
-        "MONDAY" -> Right Monday
-        "SUNDAY" -> Right Sunday
-        x -> Left ("Unable to parse FloodlightConfigurationFirstDayOfWeek from: " <> x)
-
-instance ToHttpApiData FloodlightConfigurationFirstDayOfWeek where
-    toQueryParam = \case
-        Monday -> "MONDAY"
-        Sunday -> "SUNDAY"
-
-instance FromJSON FloodlightConfigurationFirstDayOfWeek where
-    parseJSON = parseJSONText "FloodlightConfigurationFirstDayOfWeek"
-
-instance ToJSON FloodlightConfigurationFirstDayOfWeek where
-    toJSON = toJSONText
-
--- | Serving priority of an ad, with respect to other ads. The lower the
--- priority number, the greater the priority with which it is served.
-data DeliverySchedulePriority
-    = AdPriority01
-      -- ^ @AD_PRIORITY_01@
-    | AdPriority02
-      -- ^ @AD_PRIORITY_02@
-    | AdPriority03
-      -- ^ @AD_PRIORITY_03@
-    | AdPriority04
-      -- ^ @AD_PRIORITY_04@
-    | AdPriority05
-      -- ^ @AD_PRIORITY_05@
-    | AdPriority06
-      -- ^ @AD_PRIORITY_06@
-    | AdPriority07
-      -- ^ @AD_PRIORITY_07@
-    | AdPriority08
-      -- ^ @AD_PRIORITY_08@
-    | AdPriority09
-      -- ^ @AD_PRIORITY_09@
-    | AdPriority10
-      -- ^ @AD_PRIORITY_10@
-    | AdPriority11
-      -- ^ @AD_PRIORITY_11@
-    | AdPriority12
-      -- ^ @AD_PRIORITY_12@
-    | AdPriority13
-      -- ^ @AD_PRIORITY_13@
-    | AdPriority14
-      -- ^ @AD_PRIORITY_14@
-    | AdPriority15
-      -- ^ @AD_PRIORITY_15@
-    | AdPriority16
-      -- ^ @AD_PRIORITY_16@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DeliverySchedulePriority
-
-instance FromHttpApiData DeliverySchedulePriority where
-    parseQueryParam = \case
-        "AD_PRIORITY_01" -> Right AdPriority01
-        "AD_PRIORITY_02" -> Right AdPriority02
-        "AD_PRIORITY_03" -> Right AdPriority03
-        "AD_PRIORITY_04" -> Right AdPriority04
-        "AD_PRIORITY_05" -> Right AdPriority05
-        "AD_PRIORITY_06" -> Right AdPriority06
-        "AD_PRIORITY_07" -> Right AdPriority07
-        "AD_PRIORITY_08" -> Right AdPriority08
-        "AD_PRIORITY_09" -> Right AdPriority09
-        "AD_PRIORITY_10" -> Right AdPriority10
-        "AD_PRIORITY_11" -> Right AdPriority11
-        "AD_PRIORITY_12" -> Right AdPriority12
-        "AD_PRIORITY_13" -> Right AdPriority13
-        "AD_PRIORITY_14" -> Right AdPriority14
-        "AD_PRIORITY_15" -> Right AdPriority15
-        "AD_PRIORITY_16" -> Right AdPriority16
-        x -> Left ("Unable to parse DeliverySchedulePriority from: " <> x)
-
-instance ToHttpApiData DeliverySchedulePriority where
-    toQueryParam = \case
-        AdPriority01 -> "AD_PRIORITY_01"
-        AdPriority02 -> "AD_PRIORITY_02"
-        AdPriority03 -> "AD_PRIORITY_03"
-        AdPriority04 -> "AD_PRIORITY_04"
-        AdPriority05 -> "AD_PRIORITY_05"
-        AdPriority06 -> "AD_PRIORITY_06"
-        AdPriority07 -> "AD_PRIORITY_07"
-        AdPriority08 -> "AD_PRIORITY_08"
-        AdPriority09 -> "AD_PRIORITY_09"
-        AdPriority10 -> "AD_PRIORITY_10"
-        AdPriority11 -> "AD_PRIORITY_11"
-        AdPriority12 -> "AD_PRIORITY_12"
-        AdPriority13 -> "AD_PRIORITY_13"
-        AdPriority14 -> "AD_PRIORITY_14"
-        AdPriority15 -> "AD_PRIORITY_15"
-        AdPriority16 -> "AD_PRIORITY_16"
-
-instance FromJSON DeliverySchedulePriority where
-    parseJSON = parseJSONText "DeliverySchedulePriority"
-
-instance ToJSON DeliverySchedulePriority where
-    toJSON = toJSONText
-
--- | Select only floodlight activities with the specified floodlight activity
--- group type.
-data FloodlightActivitiesListFloodlightActivityGroupType
-    = FALFAGTCounter
-      -- ^ @COUNTER@
-    | FALFAGTSale
-      -- ^ @SALE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivitiesListFloodlightActivityGroupType
-
-instance FromHttpApiData FloodlightActivitiesListFloodlightActivityGroupType where
-    parseQueryParam = \case
-        "COUNTER" -> Right FALFAGTCounter
-        "SALE" -> Right FALFAGTSale
-        x -> Left ("Unable to parse FloodlightActivitiesListFloodlightActivityGroupType from: " <> x)
-
-instance ToHttpApiData FloodlightActivitiesListFloodlightActivityGroupType where
-    toQueryParam = \case
-        FALFAGTCounter -> "COUNTER"
-        FALFAGTSale -> "SALE"
-
-instance FromJSON FloodlightActivitiesListFloodlightActivityGroupType where
-    parseJSON = parseJSONText "FloodlightActivitiesListFloodlightActivityGroupType"
-
-instance ToJSON FloodlightActivitiesListFloodlightActivityGroupType where
-    toJSON = toJSONText
-
--- | Source application where creative was authored. Presently, only DBM
--- authored creatives will have this field set. Applicable to all creative
--- types.
-data CreativeAuthoringSource
-    = CreativeAuthoringSourceDBm
-      -- ^ @CREATIVE_AUTHORING_SOURCE_DBM@
-    | CreativeAuthoringSourceDcm
-      -- ^ @CREATIVE_AUTHORING_SOURCE_DCM@
-    | CreativeAuthoringSourceStudio
-      -- ^ @CREATIVE_AUTHORING_SOURCE_STUDIO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAuthoringSource
-
-instance FromHttpApiData CreativeAuthoringSource where
-    parseQueryParam = \case
-        "CREATIVE_AUTHORING_SOURCE_DBM" -> Right CreativeAuthoringSourceDBm
-        "CREATIVE_AUTHORING_SOURCE_DCM" -> Right CreativeAuthoringSourceDcm
-        "CREATIVE_AUTHORING_SOURCE_STUDIO" -> Right CreativeAuthoringSourceStudio
-        x -> Left ("Unable to parse CreativeAuthoringSource from: " <> x)
-
-instance ToHttpApiData CreativeAuthoringSource where
-    toQueryParam = \case
-        CreativeAuthoringSourceDBm -> "CREATIVE_AUTHORING_SOURCE_DBM"
-        CreativeAuthoringSourceDcm -> "CREATIVE_AUTHORING_SOURCE_DCM"
-        CreativeAuthoringSourceStudio -> "CREATIVE_AUTHORING_SOURCE_STUDIO"
-
-instance FromJSON CreativeAuthoringSource where
-    parseJSON = parseJSONText "CreativeAuthoringSource"
-
-instance ToJSON CreativeAuthoringSource where
-    toJSON = toJSONText
-
--- | Payment source for this placement. This is a required field that is
--- read-only after insertion.
-data PlacementPaymentSource
-    = PPSPlacementAgencyPaid
-      -- ^ @PLACEMENT_AGENCY_PAID@
-    | PPSPlacementPublisherPaid
-      -- ^ @PLACEMENT_PUBLISHER_PAID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementPaymentSource
-
-instance FromHttpApiData PlacementPaymentSource where
-    parseQueryParam = \case
-        "PLACEMENT_AGENCY_PAID" -> Right PPSPlacementAgencyPaid
-        "PLACEMENT_PUBLISHER_PAID" -> Right PPSPlacementPublisherPaid
-        x -> Left ("Unable to parse PlacementPaymentSource from: " <> x)
-
-instance ToHttpApiData PlacementPaymentSource where
-    toQueryParam = \case
-        PPSPlacementAgencyPaid -> "PLACEMENT_AGENCY_PAID"
-        PPSPlacementPublisherPaid -> "PLACEMENT_PUBLISHER_PAID"
-
-instance FromJSON PlacementPaymentSource where
-    parseJSON = parseJSONText "PlacementPaymentSource"
-
-instance ToJSON PlacementPaymentSource where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data ReportsFilesListSortOrder
-    = RFLSOAscending
-      -- ^ @ASCENDING@
-      -- Ascending order.
-    | RFLSODescending
-      -- ^ @DESCENDING@
-      -- Descending order.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportsFilesListSortOrder
-
-instance FromHttpApiData ReportsFilesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right RFLSOAscending
-        "DESCENDING" -> Right RFLSODescending
-        x -> Left ("Unable to parse ReportsFilesListSortOrder from: " <> x)
-
-instance ToHttpApiData ReportsFilesListSortOrder where
-    toQueryParam = \case
-        RFLSOAscending -> "ASCENDING"
-        RFLSODescending -> "DESCENDING"
-
-instance FromJSON ReportsFilesListSortOrder where
-    parseJSON = parseJSONText "ReportsFilesListSortOrder"
-
-instance ToJSON ReportsFilesListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data InventoryItemsListSortField
-    = IILSFID
-      -- ^ @ID@
-    | IILSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable InventoryItemsListSortField
-
-instance FromHttpApiData InventoryItemsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right IILSFID
-        "NAME" -> Right IILSFName
-        x -> Left ("Unable to parse InventoryItemsListSortField from: " <> x)
-
-instance ToHttpApiData InventoryItemsListSortField where
-    toQueryParam = \case
-        IILSFID -> "ID"
-        IILSFName -> "NAME"
-
-instance FromJSON InventoryItemsListSortField where
-    parseJSON = parseJSONText "InventoryItemsListSortField"
-
-instance ToJSON InventoryItemsListSortField where
-    toJSON = toJSONText
-
--- | Event tag type. Can be used to specify whether to use a third-party
--- pixel, a third-party JavaScript URL, or a third-party click-through URL
--- for either impression or click tracking. This is a required field.
-data EventTagType
-    = ETTClickThroughEventTag
-      -- ^ @CLICK_THROUGH_EVENT_TAG@
-    | ETTImpressionImageEventTag
-      -- ^ @IMPRESSION_IMAGE_EVENT_TAG@
-    | ETTImpressionJavascriptEventTag
-      -- ^ @IMPRESSION_JAVASCRIPT_EVENT_TAG@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagType
-
-instance FromHttpApiData EventTagType where
-    parseQueryParam = \case
-        "CLICK_THROUGH_EVENT_TAG" -> Right ETTClickThroughEventTag
-        "IMPRESSION_IMAGE_EVENT_TAG" -> Right ETTImpressionImageEventTag
-        "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Right ETTImpressionJavascriptEventTag
-        x -> Left ("Unable to parse EventTagType from: " <> x)
-
-instance ToHttpApiData EventTagType where
-    toQueryParam = \case
-        ETTClickThroughEventTag -> "CLICK_THROUGH_EVENT_TAG"
-        ETTImpressionImageEventTag -> "IMPRESSION_IMAGE_EVENT_TAG"
-        ETTImpressionJavascriptEventTag -> "IMPRESSION_JAVASCRIPT_EVENT_TAG"
-
-instance FromJSON EventTagType where
-    parseJSON = parseJSONText "EventTagType"
-
-instance ToJSON EventTagType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CreativesListSortOrder
-    = CAscending
-      -- ^ @ASCENDING@
-    | CDescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativesListSortOrder
-
-instance FromHttpApiData CreativesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CAscending
-        "DESCENDING" -> Right CDescending
-        x -> Left ("Unable to parse CreativesListSortOrder from: " <> x)
-
-instance ToHttpApiData CreativesListSortOrder where
-    toQueryParam = \case
-        CAscending -> "ASCENDING"
-        CDescending -> "DESCENDING"
-
-instance FromJSON CreativesListSortOrder where
-    parseJSON = parseJSONText "CreativesListSortOrder"
-
-instance ToJSON CreativesListSortOrder where
-    toJSON = toJSONText
-
--- | Select only inventory items with this type.
-data InventoryItemsListType
-    = PlanningPlacementTypeCredit
-      -- ^ @PLANNING_PLACEMENT_TYPE_CREDIT@
-    | PlanningPlacementTypeRegular
-      -- ^ @PLANNING_PLACEMENT_TYPE_REGULAR@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable InventoryItemsListType
-
-instance FromHttpApiData InventoryItemsListType where
-    parseQueryParam = \case
-        "PLANNING_PLACEMENT_TYPE_CREDIT" -> Right PlanningPlacementTypeCredit
-        "PLANNING_PLACEMENT_TYPE_REGULAR" -> Right PlanningPlacementTypeRegular
-        x -> Left ("Unable to parse InventoryItemsListType from: " <> x)
-
-instance ToHttpApiData InventoryItemsListType where
-    toQueryParam = \case
-        PlanningPlacementTypeCredit -> "PLANNING_PLACEMENT_TYPE_CREDIT"
-        PlanningPlacementTypeRegular -> "PLANNING_PLACEMENT_TYPE_REGULAR"
-
-instance FromJSON InventoryItemsListType where
-    parseJSON = parseJSONText "InventoryItemsListType"
-
-instance ToJSON InventoryItemsListType where
-    toJSON = toJSONText
-
--- | Popup window position either centered or at specific coordinate.
-data PopupWindowPropertiesPositionType
-    = Center
-      -- ^ @CENTER@
-    | Coordinates
-      -- ^ @COORDINATES@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PopupWindowPropertiesPositionType
-
-instance FromHttpApiData PopupWindowPropertiesPositionType where
-    parseQueryParam = \case
-        "CENTER" -> Right Center
-        "COORDINATES" -> Right Coordinates
-        x -> Left ("Unable to parse PopupWindowPropertiesPositionType from: " <> x)
-
-instance ToHttpApiData PopupWindowPropertiesPositionType where
-    toQueryParam = \case
-        Center -> "CENTER"
-        Coordinates -> "COORDINATES"
-
-instance FromJSON PopupWindowPropertiesPositionType where
-    parseJSON = parseJSONText "PopupWindowPropertiesPositionType"
-
-instance ToJSON PopupWindowPropertiesPositionType where
-    toJSON = toJSONText
-
--- | Option specifying how keywords are embedded in ad tags. This setting can
--- be used to specify whether keyword placeholders are inserted in
--- placement tags for this site. Publishers can then add keywords to those
--- placeholders.
-data TagSettingKeywordOption
-    = GenerateSeparateTagForEachKeyword
-      -- ^ @GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD@
-    | Ignore
-      -- ^ @IGNORE@
-    | PlaceholderWithListOfKeywords
-      -- ^ @PLACEHOLDER_WITH_LIST_OF_KEYWORDS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TagSettingKeywordOption
-
-instance FromHttpApiData TagSettingKeywordOption where
-    parseQueryParam = \case
-        "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD" -> Right GenerateSeparateTagForEachKeyword
-        "IGNORE" -> Right Ignore
-        "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" -> Right PlaceholderWithListOfKeywords
-        x -> Left ("Unable to parse TagSettingKeywordOption from: " <> x)
-
-instance ToHttpApiData TagSettingKeywordOption where
-    toQueryParam = \case
-        GenerateSeparateTagForEachKeyword -> "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD"
-        Ignore -> "IGNORE"
-        PlaceholderWithListOfKeywords -> "PLACEHOLDER_WITH_LIST_OF_KEYWORDS"
-
-instance FromJSON TagSettingKeywordOption where
-    parseJSON = parseJSONText "TagSettingKeywordOption"
-
-instance ToJSON TagSettingKeywordOption where
-    toJSON = toJSONText
-
--- | Authoring tool for HTML5 banner creatives. This is a read-only field.
--- Applicable to the following creative types: HTML5_BANNER.
-data CreativeAuthoringTool
-    = Ninja
-      -- ^ @NINJA@
-    | Swiffy
-      -- ^ @SWIFFY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAuthoringTool
-
-instance FromHttpApiData CreativeAuthoringTool where
-    parseQueryParam = \case
-        "NINJA" -> Right Ninja
-        "SWIFFY" -> Right Swiffy
-        x -> Left ("Unable to parse CreativeAuthoringTool from: " <> x)
-
-instance ToHttpApiData CreativeAuthoringTool where
-    toQueryParam = \case
-        Ninja -> "NINJA"
-        Swiffy -> "SWIFFY"
-
-instance FromJSON CreativeAuthoringTool where
-    parseJSON = parseJSONText "CreativeAuthoringTool"
-
-instance ToJSON CreativeAuthoringTool where
-    toJSON = toJSONText
-
--- | Type of this contact.
-data OrderContactContactType
-    = PlanningOrderContactBuyerBillingContact
-      -- ^ @PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT@
-    | PlanningOrderContactBuyerContact
-      -- ^ @PLANNING_ORDER_CONTACT_BUYER_CONTACT@
-    | PlanningOrderContactSellerContact
-      -- ^ @PLANNING_ORDER_CONTACT_SELLER_CONTACT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrderContactContactType
-
-instance FromHttpApiData OrderContactContactType where
-    parseQueryParam = \case
-        "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT" -> Right PlanningOrderContactBuyerBillingContact
-        "PLANNING_ORDER_CONTACT_BUYER_CONTACT" -> Right PlanningOrderContactBuyerContact
-        "PLANNING_ORDER_CONTACT_SELLER_CONTACT" -> Right PlanningOrderContactSellerContact
-        x -> Left ("Unable to parse OrderContactContactType from: " <> x)
-
-instance ToHttpApiData OrderContactContactType where
-    toQueryParam = \case
-        PlanningOrderContactBuyerBillingContact -> "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT"
-        PlanningOrderContactBuyerContact -> "PLANNING_ORDER_CONTACT_BUYER_CONTACT"
-        PlanningOrderContactSellerContact -> "PLANNING_ORDER_CONTACT_SELLER_CONTACT"
-
-instance FromJSON OrderContactContactType where
-    parseJSON = parseJSONText "OrderContactContactType"
-
-instance ToJSON OrderContactContactType where
-    toJSON = toJSONText
-
--- | Type of asset to upload. This is a required field. FLASH and IMAGE are
--- no longer supported for new uploads. All image assets should use
--- HTML_IMAGE.
-data CreativeAssetIdType
-    = CAITAudio
-      -- ^ @AUDIO@
-    | CAITFlash
-      -- ^ @FLASH@
-    | CAITHTML
-      -- ^ @HTML@
-    | CAITHTMLImage
-      -- ^ @HTML_IMAGE@
-    | CAITImage
-      -- ^ @IMAGE@
-    | CAITVideo
-      -- ^ @VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetIdType
-
-instance FromHttpApiData CreativeAssetIdType where
-    parseQueryParam = \case
-        "AUDIO" -> Right CAITAudio
-        "FLASH" -> Right CAITFlash
-        "HTML" -> Right CAITHTML
-        "HTML_IMAGE" -> Right CAITHTMLImage
-        "IMAGE" -> Right CAITImage
-        "VIDEO" -> Right CAITVideo
-        x -> Left ("Unable to parse CreativeAssetIdType from: " <> x)
-
-instance ToHttpApiData CreativeAssetIdType where
-    toQueryParam = \case
-        CAITAudio -> "AUDIO"
-        CAITFlash -> "FLASH"
-        CAITHTML -> "HTML"
-        CAITHTMLImage -> "HTML_IMAGE"
-        CAITImage -> "IMAGE"
-        CAITVideo -> "VIDEO"
-
-instance FromJSON CreativeAssetIdType where
-    parseJSON = parseJSONText "CreativeAssetIdType"
-
-instance ToJSON CreativeAssetIdType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AccountUserProFilesListSortOrder
-    = AUPFLSOAscending
-      -- ^ @ASCENDING@
-    | AUPFLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountUserProFilesListSortOrder
-
-instance FromHttpApiData AccountUserProFilesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right AUPFLSOAscending
-        "DESCENDING" -> Right AUPFLSODescending
-        x -> Left ("Unable to parse AccountUserProFilesListSortOrder from: " <> x)
-
-instance ToHttpApiData AccountUserProFilesListSortOrder where
-    toQueryParam = \case
-        AUPFLSOAscending -> "ASCENDING"
-        AUPFLSODescending -> "DESCENDING"
-
-instance FromJSON AccountUserProFilesListSortOrder where
-    parseJSON = parseJSONText "AccountUserProFilesListSortOrder"
-
-instance ToJSON AccountUserProFilesListSortOrder where
-    toJSON = toJSONText
-
--- | Product from which this remarketing list was originated.
-data RemarketingListListSource
-    = RLLSRemarketingListSourceAdx
-      -- ^ @REMARKETING_LIST_SOURCE_ADX@
-    | RLLSRemarketingListSourceDBm
-      -- ^ @REMARKETING_LIST_SOURCE_DBM@
-    | RLLSRemarketingListSourceDfa
-      -- ^ @REMARKETING_LIST_SOURCE_DFA@
-    | RLLSRemarketingListSourceDfp
-      -- ^ @REMARKETING_LIST_SOURCE_DFP@
-    | RLLSRemarketingListSourceDmp
-      -- ^ @REMARKETING_LIST_SOURCE_DMP@
-    | RLLSRemarketingListSourceGa
-      -- ^ @REMARKETING_LIST_SOURCE_GA@
-    | RLLSRemarketingListSourceGplus
-      -- ^ @REMARKETING_LIST_SOURCE_GPLUS@
-    | RLLSRemarketingListSourceOther
-      -- ^ @REMARKETING_LIST_SOURCE_OTHER@
-    | RLLSRemarketingListSourcePlayStore
-      -- ^ @REMARKETING_LIST_SOURCE_PLAY_STORE@
-    | RLLSRemarketingListSourceXfp
-      -- ^ @REMARKETING_LIST_SOURCE_XFP@
-    | RLLSRemarketingListSourceYouTube
-      -- ^ @REMARKETING_LIST_SOURCE_YOUTUBE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable RemarketingListListSource
-
-instance FromHttpApiData RemarketingListListSource where
-    parseQueryParam = \case
-        "REMARKETING_LIST_SOURCE_ADX" -> Right RLLSRemarketingListSourceAdx
-        "REMARKETING_LIST_SOURCE_DBM" -> Right RLLSRemarketingListSourceDBm
-        "REMARKETING_LIST_SOURCE_DFA" -> Right RLLSRemarketingListSourceDfa
-        "REMARKETING_LIST_SOURCE_DFP" -> Right RLLSRemarketingListSourceDfp
-        "REMARKETING_LIST_SOURCE_DMP" -> Right RLLSRemarketingListSourceDmp
-        "REMARKETING_LIST_SOURCE_GA" -> Right RLLSRemarketingListSourceGa
-        "REMARKETING_LIST_SOURCE_GPLUS" -> Right RLLSRemarketingListSourceGplus
-        "REMARKETING_LIST_SOURCE_OTHER" -> Right RLLSRemarketingListSourceOther
-        "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Right RLLSRemarketingListSourcePlayStore
-        "REMARKETING_LIST_SOURCE_XFP" -> Right RLLSRemarketingListSourceXfp
-        "REMARKETING_LIST_SOURCE_YOUTUBE" -> Right RLLSRemarketingListSourceYouTube
-        x -> Left ("Unable to parse RemarketingListListSource from: " <> x)
-
-instance ToHttpApiData RemarketingListListSource where
-    toQueryParam = \case
-        RLLSRemarketingListSourceAdx -> "REMARKETING_LIST_SOURCE_ADX"
-        RLLSRemarketingListSourceDBm -> "REMARKETING_LIST_SOURCE_DBM"
-        RLLSRemarketingListSourceDfa -> "REMARKETING_LIST_SOURCE_DFA"
-        RLLSRemarketingListSourceDfp -> "REMARKETING_LIST_SOURCE_DFP"
-        RLLSRemarketingListSourceDmp -> "REMARKETING_LIST_SOURCE_DMP"
-        RLLSRemarketingListSourceGa -> "REMARKETING_LIST_SOURCE_GA"
-        RLLSRemarketingListSourceGplus -> "REMARKETING_LIST_SOURCE_GPLUS"
-        RLLSRemarketingListSourceOther -> "REMARKETING_LIST_SOURCE_OTHER"
-        RLLSRemarketingListSourcePlayStore -> "REMARKETING_LIST_SOURCE_PLAY_STORE"
-        RLLSRemarketingListSourceXfp -> "REMARKETING_LIST_SOURCE_XFP"
-        RLLSRemarketingListSourceYouTube -> "REMARKETING_LIST_SOURCE_YOUTUBE"
-
-instance FromJSON RemarketingListListSource where
-    parseJSON = parseJSONText "RemarketingListListSource"
-
-instance ToJSON RemarketingListListSource where
-    toJSON = toJSONText
-
--- | User type of the user profile. This is a read-only field that can be
--- left blank.
-data AccountUserProFileUserAccessType
-    = InternalAdministrator
-      -- ^ @INTERNAL_ADMINISTRATOR@
-    | NormalUser
-      -- ^ @NORMAL_USER@
-    | ReadOnlySuperUser
-      -- ^ @READ_ONLY_SUPER_USER@
-    | SuperUser
-      -- ^ @SUPER_USER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountUserProFileUserAccessType
-
-instance FromHttpApiData AccountUserProFileUserAccessType where
-    parseQueryParam = \case
-        "INTERNAL_ADMINISTRATOR" -> Right InternalAdministrator
-        "NORMAL_USER" -> Right NormalUser
-        "READ_ONLY_SUPER_USER" -> Right ReadOnlySuperUser
-        "SUPER_USER" -> Right SuperUser
-        x -> Left ("Unable to parse AccountUserProFileUserAccessType from: " <> x)
-
-instance ToHttpApiData AccountUserProFileUserAccessType where
-    toQueryParam = \case
-        InternalAdministrator -> "INTERNAL_ADMINISTRATOR"
-        NormalUser -> "NORMAL_USER"
-        ReadOnlySuperUser -> "READ_ONLY_SUPER_USER"
-        SuperUser -> "SUPER_USER"
-
-instance FromJSON AccountUserProFileUserAccessType where
-    parseJSON = parseJSONText "AccountUserProFileUserAccessType"
-
-instance ToJSON AccountUserProFileUserAccessType where
-    toJSON = toJSONText
-
--- | Initial wait time type before making the asset visible. Applicable to
--- the following creative types: all RICH_MEDIA.
-data CreativeAssetStartTimeType
-    = AssetStartTimeTypeCustom
-      -- ^ @ASSET_START_TIME_TYPE_CUSTOM@
-    | AssetStartTimeTypeNone
-      -- ^ @ASSET_START_TIME_TYPE_NONE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetStartTimeType
-
-instance FromHttpApiData CreativeAssetStartTimeType where
-    parseQueryParam = \case
-        "ASSET_START_TIME_TYPE_CUSTOM" -> Right AssetStartTimeTypeCustom
-        "ASSET_START_TIME_TYPE_NONE" -> Right AssetStartTimeTypeNone
-        x -> Left ("Unable to parse CreativeAssetStartTimeType from: " <> x)
-
-instance ToHttpApiData CreativeAssetStartTimeType where
-    toQueryParam = \case
-        AssetStartTimeTypeCustom -> "ASSET_START_TIME_TYPE_CUSTOM"
-        AssetStartTimeTypeNone -> "ASSET_START_TIME_TYPE_NONE"
-
-instance FromJSON CreativeAssetStartTimeType where
-    parseJSON = parseJSONText "CreativeAssetStartTimeType"
-
-instance ToJSON CreativeAssetStartTimeType where
-    toJSON = toJSONText
-
--- | Audience gender of this project.
-data ProjectAudienceGender
-    = PlanningAudienceGenderFemale
-      -- ^ @PLANNING_AUDIENCE_GENDER_FEMALE@
-    | PlanningAudienceGenderMale
-      -- ^ @PLANNING_AUDIENCE_GENDER_MALE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ProjectAudienceGender
-
-instance FromHttpApiData ProjectAudienceGender where
-    parseQueryParam = \case
-        "PLANNING_AUDIENCE_GENDER_FEMALE" -> Right PlanningAudienceGenderFemale
-        "PLANNING_AUDIENCE_GENDER_MALE" -> Right PlanningAudienceGenderMale
-        x -> Left ("Unable to parse ProjectAudienceGender from: " <> x)
-
-instance ToHttpApiData ProjectAudienceGender where
-    toQueryParam = \case
-        PlanningAudienceGenderFemale -> "PLANNING_AUDIENCE_GENDER_FEMALE"
-        PlanningAudienceGenderMale -> "PLANNING_AUDIENCE_GENDER_MALE"
-
-instance FromJSON ProjectAudienceGender where
-    parseJSON = parseJSONText "ProjectAudienceGender"
-
-instance ToJSON ProjectAudienceGender where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data PlacementStrategiesListSortField
-    = PSLSFID
-      -- ^ @ID@
-    | PSLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementStrategiesListSortField
-
-instance FromHttpApiData PlacementStrategiesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right PSLSFID
-        "NAME" -> Right PSLSFName
-        x -> Left ("Unable to parse PlacementStrategiesListSortField from: " <> x)
-
-instance ToHttpApiData PlacementStrategiesListSortField where
-    toQueryParam = \case
-        PSLSFID -> "ID"
-        PSLSFName -> "NAME"
-
-instance FromJSON PlacementStrategiesListSortField where
-    parseJSON = parseJSONText "PlacementStrategiesListSortField"
-
-instance ToJSON PlacementStrategiesListSortField where
-    toJSON = toJSONText
-
--- | Data type for the variable. This is a required field.
-data UserDefinedVariableConfigurationDataType
-    = Number
-      -- ^ @NUMBER@
-    | String
-      -- ^ @STRING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UserDefinedVariableConfigurationDataType
-
-instance FromHttpApiData UserDefinedVariableConfigurationDataType where
-    parseQueryParam = \case
-        "NUMBER" -> Right Number
-        "STRING" -> Right String
-        x -> Left ("Unable to parse UserDefinedVariableConfigurationDataType from: " <> x)
-
-instance ToHttpApiData UserDefinedVariableConfigurationDataType where
-    toQueryParam = \case
-        Number -> "NUMBER"
-        String -> "STRING"
-
-instance FromJSON UserDefinedVariableConfigurationDataType where
-    parseJSON = parseJSONText "UserDefinedVariableConfigurationDataType"
-
-instance ToJSON UserDefinedVariableConfigurationDataType where
-    toJSON = toJSONText
-
--- | Code type used for cache busting in the generated tag. Applicable only
--- when floodlightActivityGroupType is COUNTER and countingMethod is
--- STANDARD_COUNTING or UNIQUE_COUNTING.
-data FloodlightActivityCacheBustingType
-    = ActiveServerPage
-      -- ^ @ACTIVE_SERVER_PAGE@
-    | ColdFusion
-      -- ^ @COLD_FUSION@
-    | Javascript
-      -- ^ @JAVASCRIPT@
-    | Jsp
-      -- ^ @JSP@
-    | Php
-      -- ^ @PHP@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityCacheBustingType
-
-instance FromHttpApiData FloodlightActivityCacheBustingType where
-    parseQueryParam = \case
-        "ACTIVE_SERVER_PAGE" -> Right ActiveServerPage
-        "COLD_FUSION" -> Right ColdFusion
-        "JAVASCRIPT" -> Right Javascript
-        "JSP" -> Right Jsp
-        "PHP" -> Right Php
-        x -> Left ("Unable to parse FloodlightActivityCacheBustingType from: " <> x)
-
-instance ToHttpApiData FloodlightActivityCacheBustingType where
-    toQueryParam = \case
-        ActiveServerPage -> "ACTIVE_SERVER_PAGE"
-        ColdFusion -> "COLD_FUSION"
-        Javascript -> "JAVASCRIPT"
-        Jsp -> "JSP"
-        Php -> "PHP"
-
-instance FromJSON FloodlightActivityCacheBustingType where
-    parseJSON = parseJSONText "FloodlightActivityCacheBustingType"
-
-instance ToJSON FloodlightActivityCacheBustingType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CreativeGroupsListSortOrder
-    = CGLSOAscending
-      -- ^ @ASCENDING@
-    | CGLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeGroupsListSortOrder
-
-instance FromHttpApiData CreativeGroupsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CGLSOAscending
-        "DESCENDING" -> Right CGLSODescending
-        x -> Left ("Unable to parse CreativeGroupsListSortOrder from: " <> x)
-
-instance ToHttpApiData CreativeGroupsListSortOrder where
-    toQueryParam = \case
-        CGLSOAscending -> "ASCENDING"
-        CGLSODescending -> "DESCENDING"
-
-instance FromJSON CreativeGroupsListSortOrder where
-    parseJSON = parseJSONText "CreativeGroupsListSortOrder"
-
-instance ToJSON CreativeGroupsListSortOrder where
-    toJSON = toJSONText
-
--- | Type of this order document
-data OrderDocumentType
-    = PlanningOrderTypeChangeOrder
-      -- ^ @PLANNING_ORDER_TYPE_CHANGE_ORDER@
-    | PlanningOrderTypeInsertionOrder
-      -- ^ @PLANNING_ORDER_TYPE_INSERTION_ORDER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrderDocumentType
-
-instance FromHttpApiData OrderDocumentType where
-    parseQueryParam = \case
-        "PLANNING_ORDER_TYPE_CHANGE_ORDER" -> Right PlanningOrderTypeChangeOrder
-        "PLANNING_ORDER_TYPE_INSERTION_ORDER" -> Right PlanningOrderTypeInsertionOrder
-        x -> Left ("Unable to parse OrderDocumentType from: " <> x)
-
-instance ToHttpApiData OrderDocumentType where
-    toQueryParam = \case
-        PlanningOrderTypeChangeOrder -> "PLANNING_ORDER_TYPE_CHANGE_ORDER"
-        PlanningOrderTypeInsertionOrder -> "PLANNING_ORDER_TYPE_INSERTION_ORDER"
-
-instance FromJSON OrderDocumentType where
-    parseJSON = parseJSONText "OrderDocumentType"
-
-instance ToJSON OrderDocumentType where
-    toJSON = toJSONText
-
--- | TagData tag format of this tag.
-data TagDataFormat
-    = PlacementTagClickCommands
-      -- ^ @PLACEMENT_TAG_CLICK_COMMANDS@
-    | PlacementTagIframeIlayer
-      -- ^ @PLACEMENT_TAG_IFRAME_ILAYER@
-    | PlacementTagIframeJavascript
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT@
-    | PlacementTagIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY@
-    | PlacementTagInstreamVideoPrefetch
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH@
-    | PlacementTagInstreamVideoPrefetchVast3
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3@
-    | PlacementTagInstreamVideoPrefetchVast4
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4@
-    | PlacementTagInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERNAL_REDIRECT@
-    | PlacementTagInterstitialIframeJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT@
-    | PlacementTagInterstitialIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY@
-    | PlacementTagInterstitialInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT@
-    | PlacementTagInterstitialJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT@
-    | PlacementTagInterstitialJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY@
-    | PlacementTagJavascript
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT@
-    | PlacementTagJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT_LEGACY@
-    | PlacementTagStandard
-      -- ^ @PLACEMENT_TAG_STANDARD@
-    | PlacementTagTracking
-      -- ^ @PLACEMENT_TAG_TRACKING@
-    | PlacementTagTrackingIframe
-      -- ^ @PLACEMENT_TAG_TRACKING_IFRAME@
-    | PlacementTagTrackingJavascript
-      -- ^ @PLACEMENT_TAG_TRACKING_JAVASCRIPT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TagDataFormat
-
-instance FromHttpApiData TagDataFormat where
-    parseQueryParam = \case
-        "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PlacementTagClickCommands
-        "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PlacementTagIframeIlayer
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PlacementTagIframeJavascript
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PlacementTagIframeJavascriptLegacy
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PlacementTagInstreamVideoPrefetch
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PlacementTagInstreamVideoPrefetchVast3
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4" -> Right PlacementTagInstreamVideoPrefetchVast4
-        "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PlacementTagInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PlacementTagInterstitialIframeJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PlacementTagInterstitialIframeJavascriptLegacy
-        "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PlacementTagInterstitialInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PlacementTagInterstitialJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PlacementTagInterstitialJavascriptLegacy
-        "PLACEMENT_TAG_JAVASCRIPT" -> Right PlacementTagJavascript
-        "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PlacementTagJavascriptLegacy
-        "PLACEMENT_TAG_STANDARD" -> Right PlacementTagStandard
-        "PLACEMENT_TAG_TRACKING" -> Right PlacementTagTracking
-        "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PlacementTagTrackingIframe
-        "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PlacementTagTrackingJavascript
-        x -> Left ("Unable to parse TagDataFormat from: " <> x)
-
-instance ToHttpApiData TagDataFormat where
-    toQueryParam = \case
-        PlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
-        PlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
-        PlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
-        PlacementTagIframeJavascriptLegacy -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
-        PlacementTagInstreamVideoPrefetch -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
-        PlacementTagInstreamVideoPrefetchVast3 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
-        PlacementTagInstreamVideoPrefetchVast4 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
-        PlacementTagInternalRedirect -> "PLACEMENT_TAG_INTERNAL_REDIRECT"
-        PlacementTagInterstitialIframeJavascript -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
-        PlacementTagInterstitialIframeJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
-        PlacementTagInterstitialInternalRedirect -> "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
-        PlacementTagInterstitialJavascript -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
-        PlacementTagInterstitialJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
-        PlacementTagJavascript -> "PLACEMENT_TAG_JAVASCRIPT"
-        PlacementTagJavascriptLegacy -> "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
-        PlacementTagStandard -> "PLACEMENT_TAG_STANDARD"
-        PlacementTagTracking -> "PLACEMENT_TAG_TRACKING"
-        PlacementTagTrackingIframe -> "PLACEMENT_TAG_TRACKING_IFRAME"
-        PlacementTagTrackingJavascript -> "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
-
-instance FromJSON TagDataFormat where
-    parseJSON = parseJSONText "TagDataFormat"
-
-instance ToJSON TagDataFormat where
-    toJSON = toJSONText
-
--- | Maximum number of active ads allowed for the account.
-data AccountActiveAdSummaryActiveAdsLimitTier
-    = ActiveAdsTier100K
-      -- ^ @ACTIVE_ADS_TIER_100K@
-    | ActiveAdsTier1M
-      -- ^ @ACTIVE_ADS_TIER_1M@
-    | ActiveAdsTier200K
-      -- ^ @ACTIVE_ADS_TIER_200K@
-    | ActiveAdsTier300K
-      -- ^ @ACTIVE_ADS_TIER_300K@
-    | ActiveAdsTier40K
-      -- ^ @ACTIVE_ADS_TIER_40K@
-    | ActiveAdsTier500K
-      -- ^ @ACTIVE_ADS_TIER_500K@
-    | ActiveAdsTier750K
-      -- ^ @ACTIVE_ADS_TIER_750K@
-    | ActiveAdsTier75K
-      -- ^ @ACTIVE_ADS_TIER_75K@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountActiveAdSummaryActiveAdsLimitTier
-
-instance FromHttpApiData AccountActiveAdSummaryActiveAdsLimitTier where
-    parseQueryParam = \case
-        "ACTIVE_ADS_TIER_100K" -> Right ActiveAdsTier100K
-        "ACTIVE_ADS_TIER_1M" -> Right ActiveAdsTier1M
-        "ACTIVE_ADS_TIER_200K" -> Right ActiveAdsTier200K
-        "ACTIVE_ADS_TIER_300K" -> Right ActiveAdsTier300K
-        "ACTIVE_ADS_TIER_40K" -> Right ActiveAdsTier40K
-        "ACTIVE_ADS_TIER_500K" -> Right ActiveAdsTier500K
-        "ACTIVE_ADS_TIER_750K" -> Right ActiveAdsTier750K
-        "ACTIVE_ADS_TIER_75K" -> Right ActiveAdsTier75K
-        x -> Left ("Unable to parse AccountActiveAdSummaryActiveAdsLimitTier from: " <> x)
-
-instance ToHttpApiData AccountActiveAdSummaryActiveAdsLimitTier where
-    toQueryParam = \case
-        ActiveAdsTier100K -> "ACTIVE_ADS_TIER_100K"
-        ActiveAdsTier1M -> "ACTIVE_ADS_TIER_1M"
-        ActiveAdsTier200K -> "ACTIVE_ADS_TIER_200K"
-        ActiveAdsTier300K -> "ACTIVE_ADS_TIER_300K"
-        ActiveAdsTier40K -> "ACTIVE_ADS_TIER_40K"
-        ActiveAdsTier500K -> "ACTIVE_ADS_TIER_500K"
-        ActiveAdsTier750K -> "ACTIVE_ADS_TIER_750K"
-        ActiveAdsTier75K -> "ACTIVE_ADS_TIER_75K"
-
-instance FromJSON AccountActiveAdSummaryActiveAdsLimitTier where
-    parseJSON = parseJSONText "AccountActiveAdSummaryActiveAdsLimitTier"
-
-instance ToJSON AccountActiveAdSummaryActiveAdsLimitTier where
-    toJSON = toJSONText
-
--- | Rich media child asset type. This is a read-only field. Applicable to
--- the following creative types: all VPAID.
-data CreativeAssetChildAssetType
-    = ChildAssetTypeData
-      -- ^ @CHILD_ASSET_TYPE_DATA@
-    | ChildAssetTypeFlash
-      -- ^ @CHILD_ASSET_TYPE_FLASH@
-    | ChildAssetTypeImage
-      -- ^ @CHILD_ASSET_TYPE_IMAGE@
-    | ChildAssetTypeVideo
-      -- ^ @CHILD_ASSET_TYPE_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetChildAssetType
-
-instance FromHttpApiData CreativeAssetChildAssetType where
-    parseQueryParam = \case
-        "CHILD_ASSET_TYPE_DATA" -> Right ChildAssetTypeData
-        "CHILD_ASSET_TYPE_FLASH" -> Right ChildAssetTypeFlash
-        "CHILD_ASSET_TYPE_IMAGE" -> Right ChildAssetTypeImage
-        "CHILD_ASSET_TYPE_VIDEO" -> Right ChildAssetTypeVideo
-        x -> Left ("Unable to parse CreativeAssetChildAssetType from: " <> x)
-
-instance ToHttpApiData CreativeAssetChildAssetType where
-    toQueryParam = \case
-        ChildAssetTypeData -> "CHILD_ASSET_TYPE_DATA"
-        ChildAssetTypeFlash -> "CHILD_ASSET_TYPE_FLASH"
-        ChildAssetTypeImage -> "CHILD_ASSET_TYPE_IMAGE"
-        ChildAssetTypeVideo -> "CHILD_ASSET_TYPE_VIDEO"
-
-instance FromJSON CreativeAssetChildAssetType where
-    parseJSON = parseJSONText "CreativeAssetChildAssetType"
-
-instance ToJSON CreativeAssetChildAssetType where
-    toJSON = toJSONText
-
--- | Select only placement groups belonging with this group type. A package
--- is a simple group of placements that acts as a single pricing point for
--- a group of tags. A roadblock is a group of placements that not only acts
--- as a single pricing point but also assumes that all the tags in it will
--- be served at the same time. A roadblock requires one of its assigned
--- placements to be marked as primary for reporting.
-data PlacementGroupsListPlacementGroupType
-    = PlacementPackage
-      -- ^ @PLACEMENT_PACKAGE@
-    | PlacementRoadblock
-      -- ^ @PLACEMENT_ROADBLOCK@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementGroupsListPlacementGroupType
-
-instance FromHttpApiData PlacementGroupsListPlacementGroupType where
-    parseQueryParam = \case
-        "PLACEMENT_PACKAGE" -> Right PlacementPackage
-        "PLACEMENT_ROADBLOCK" -> Right PlacementRoadblock
-        x -> Left ("Unable to parse PlacementGroupsListPlacementGroupType from: " <> x)
-
-instance ToHttpApiData PlacementGroupsListPlacementGroupType where
-    toQueryParam = \case
-        PlacementPackage -> "PLACEMENT_PACKAGE"
-        PlacementRoadblock -> "PLACEMENT_ROADBLOCK"
-
-instance FromJSON PlacementGroupsListPlacementGroupType where
-    parseJSON = parseJSONText "PlacementGroupsListPlacementGroupType"
-
-instance ToJSON PlacementGroupsListPlacementGroupType where
-    toJSON = toJSONText
-
--- | Status of the filter. NONE means the user has access to none of the
--- objects. ALL means the user has access to all objects. ASSIGNED means
--- the user has access to the objects with IDs in the objectIds list.
-data ObjectFilterStatus
-    = OFSAll
-      -- ^ @ALL@
-    | OFSAssigned
-      -- ^ @ASSIGNED@
-    | OFSNone
-      -- ^ @NONE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ObjectFilterStatus
-
-instance FromHttpApiData ObjectFilterStatus where
-    parseQueryParam = \case
-        "ALL" -> Right OFSAll
-        "ASSIGNED" -> Right OFSAssigned
-        "NONE" -> Right OFSNone
-        x -> Left ("Unable to parse ObjectFilterStatus from: " <> x)
-
-instance ToHttpApiData ObjectFilterStatus where
-    toQueryParam = \case
-        OFSAll -> "ALL"
-        OFSAssigned -> "ASSIGNED"
-        OFSNone -> "NONE"
-
-instance FromJSON ObjectFilterStatus where
-    parseJSON = parseJSONText "ObjectFilterStatus"
-
-instance ToJSON ObjectFilterStatus where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CampaignCreativeAssociationsListSortOrder
-    = CCALSOAscending
-      -- ^ @ASCENDING@
-    | CCALSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CampaignCreativeAssociationsListSortOrder
-
-instance FromHttpApiData CampaignCreativeAssociationsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CCALSOAscending
-        "DESCENDING" -> Right CCALSODescending
-        x -> Left ("Unable to parse CampaignCreativeAssociationsListSortOrder from: " <> x)
-
-instance ToHttpApiData CampaignCreativeAssociationsListSortOrder where
-    toQueryParam = \case
-        CCALSOAscending -> "ASCENDING"
-        CCALSODescending -> "DESCENDING"
-
-instance FromJSON CampaignCreativeAssociationsListSortOrder where
-    parseJSON = parseJSONText "CampaignCreativeAssociationsListSortOrder"
-
-instance ToJSON CampaignCreativeAssociationsListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data FloodlightActivitiesListSortField
-    = FALSFID
-      -- ^ @ID@
-    | FALSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivitiesListSortField
-
-instance FromHttpApiData FloodlightActivitiesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right FALSFID
-        "NAME" -> Right FALSFName
-        x -> Left ("Unable to parse FloodlightActivitiesListSortField from: " <> x)
-
-instance ToHttpApiData FloodlightActivitiesListSortField where
-    toQueryParam = \case
-        FALSFID -> "ID"
-        FALSFName -> "NAME"
-
-instance FromJSON FloodlightActivitiesListSortField where
-    parseJSON = parseJSONText "FloodlightActivitiesListSortField"
-
-instance ToJSON FloodlightActivitiesListSortField where
-    toJSON = toJSONText
-
--- | Select only creatives with these creative types.
-data CreativesListTypes
-    = CLTBrandSafeDefaultInstreamVideo
-      -- ^ @BRAND_SAFE_DEFAULT_INSTREAM_VIDEO@
-    | CLTCustomDisplay
-      -- ^ @CUSTOM_DISPLAY@
-    | CLTCustomDisplayInterstitial
-      -- ^ @CUSTOM_DISPLAY_INTERSTITIAL@
-    | CLTDisplay
-      -- ^ @DISPLAY@
-    | CLTDisplayImageGallery
-      -- ^ @DISPLAY_IMAGE_GALLERY@
-    | CLTDisplayRedirect
-      -- ^ @DISPLAY_REDIRECT@
-    | CLTFlashInpage
-      -- ^ @FLASH_INPAGE@
-    | CLTHTML5Banner
-      -- ^ @HTML5_BANNER@
-    | CLTImage
-      -- ^ @IMAGE@
-    | CLTInstreamAudio
-      -- ^ @INSTREAM_AUDIO@
-    | CLTInstreamVideo
-      -- ^ @INSTREAM_VIDEO@
-    | CLTInstreamVideoRedirect
-      -- ^ @INSTREAM_VIDEO_REDIRECT@
-    | CLTInternalRedirect
-      -- ^ @INTERNAL_REDIRECT@
-    | CLTInterstitialInternalRedirect
-      -- ^ @INTERSTITIAL_INTERNAL_REDIRECT@
-    | CLTRichMediaDisplayBanner
-      -- ^ @RICH_MEDIA_DISPLAY_BANNER@
-    | CLTRichMediaDisplayExpanding
-      -- ^ @RICH_MEDIA_DISPLAY_EXPANDING@
-    | CLTRichMediaDisplayInterstitial
-      -- ^ @RICH_MEDIA_DISPLAY_INTERSTITIAL@
-    | CLTRichMediaDisplayMultiFloatingInterstitial
-      -- ^ @RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL@
-    | CLTRichMediaImExpand
-      -- ^ @RICH_MEDIA_IM_EXPAND@
-    | CLTRichMediaInpageFloating
-      -- ^ @RICH_MEDIA_INPAGE_FLOATING@
-    | CLTRichMediaMobileInApp
-      -- ^ @RICH_MEDIA_MOBILE_IN_APP@
-    | CLTRichMediaPeelDown
-      -- ^ @RICH_MEDIA_PEEL_DOWN@
-    | CLTTrackingText
-      -- ^ @TRACKING_TEXT@
-    | CLTVpaidLinearVideo
-      -- ^ @VPAID_LINEAR_VIDEO@
-    | CLTVpaidNonLinearVideo
-      -- ^ @VPAID_NON_LINEAR_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativesListTypes
-
-instance FromHttpApiData CreativesListTypes where
-    parseQueryParam = \case
-        "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Right CLTBrandSafeDefaultInstreamVideo
-        "CUSTOM_DISPLAY" -> Right CLTCustomDisplay
-        "CUSTOM_DISPLAY_INTERSTITIAL" -> Right CLTCustomDisplayInterstitial
-        "DISPLAY" -> Right CLTDisplay
-        "DISPLAY_IMAGE_GALLERY" -> Right CLTDisplayImageGallery
-        "DISPLAY_REDIRECT" -> Right CLTDisplayRedirect
-        "FLASH_INPAGE" -> Right CLTFlashInpage
-        "HTML5_BANNER" -> Right CLTHTML5Banner
-        "IMAGE" -> Right CLTImage
-        "INSTREAM_AUDIO" -> Right CLTInstreamAudio
-        "INSTREAM_VIDEO" -> Right CLTInstreamVideo
-        "INSTREAM_VIDEO_REDIRECT" -> Right CLTInstreamVideoRedirect
-        "INTERNAL_REDIRECT" -> Right CLTInternalRedirect
-        "INTERSTITIAL_INTERNAL_REDIRECT" -> Right CLTInterstitialInternalRedirect
-        "RICH_MEDIA_DISPLAY_BANNER" -> Right CLTRichMediaDisplayBanner
-        "RICH_MEDIA_DISPLAY_EXPANDING" -> Right CLTRichMediaDisplayExpanding
-        "RICH_MEDIA_DISPLAY_INTERSTITIAL" -> Right CLTRichMediaDisplayInterstitial
-        "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL" -> Right CLTRichMediaDisplayMultiFloatingInterstitial
-        "RICH_MEDIA_IM_EXPAND" -> Right CLTRichMediaImExpand
-        "RICH_MEDIA_INPAGE_FLOATING" -> Right CLTRichMediaInpageFloating
-        "RICH_MEDIA_MOBILE_IN_APP" -> Right CLTRichMediaMobileInApp
-        "RICH_MEDIA_PEEL_DOWN" -> Right CLTRichMediaPeelDown
-        "TRACKING_TEXT" -> Right CLTTrackingText
-        "VPAID_LINEAR_VIDEO" -> Right CLTVpaidLinearVideo
-        "VPAID_NON_LINEAR_VIDEO" -> Right CLTVpaidNonLinearVideo
-        x -> Left ("Unable to parse CreativesListTypes from: " <> x)
-
-instance ToHttpApiData CreativesListTypes where
-    toQueryParam = \case
-        CLTBrandSafeDefaultInstreamVideo -> "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
-        CLTCustomDisplay -> "CUSTOM_DISPLAY"
-        CLTCustomDisplayInterstitial -> "CUSTOM_DISPLAY_INTERSTITIAL"
-        CLTDisplay -> "DISPLAY"
-        CLTDisplayImageGallery -> "DISPLAY_IMAGE_GALLERY"
-        CLTDisplayRedirect -> "DISPLAY_REDIRECT"
-        CLTFlashInpage -> "FLASH_INPAGE"
-        CLTHTML5Banner -> "HTML5_BANNER"
-        CLTImage -> "IMAGE"
-        CLTInstreamAudio -> "INSTREAM_AUDIO"
-        CLTInstreamVideo -> "INSTREAM_VIDEO"
-        CLTInstreamVideoRedirect -> "INSTREAM_VIDEO_REDIRECT"
-        CLTInternalRedirect -> "INTERNAL_REDIRECT"
-        CLTInterstitialInternalRedirect -> "INTERSTITIAL_INTERNAL_REDIRECT"
-        CLTRichMediaDisplayBanner -> "RICH_MEDIA_DISPLAY_BANNER"
-        CLTRichMediaDisplayExpanding -> "RICH_MEDIA_DISPLAY_EXPANDING"
-        CLTRichMediaDisplayInterstitial -> "RICH_MEDIA_DISPLAY_INTERSTITIAL"
-        CLTRichMediaDisplayMultiFloatingInterstitial -> "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
-        CLTRichMediaImExpand -> "RICH_MEDIA_IM_EXPAND"
-        CLTRichMediaInpageFloating -> "RICH_MEDIA_INPAGE_FLOATING"
-        CLTRichMediaMobileInApp -> "RICH_MEDIA_MOBILE_IN_APP"
-        CLTRichMediaPeelDown -> "RICH_MEDIA_PEEL_DOWN"
-        CLTTrackingText -> "TRACKING_TEXT"
-        CLTVpaidLinearVideo -> "VPAID_LINEAR_VIDEO"
-        CLTVpaidNonLinearVideo -> "VPAID_NON_LINEAR_VIDEO"
-
-instance FromJSON CreativesListTypes where
-    parseJSON = parseJSONText "CreativesListTypes"
-
-instance ToJSON CreativesListTypes where
-    toJSON = toJSONText
-
-data DirectorySiteInpageTagFormatsItem
-    = IframeJavascriptInpage
-      -- ^ @IFRAME_JAVASCRIPT_INPAGE@
-    | InternalRedirectInpage
-      -- ^ @INTERNAL_REDIRECT_INPAGE@
-    | JavascriptInpage
-      -- ^ @JAVASCRIPT_INPAGE@
-    | Standard
-      -- ^ @STANDARD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DirectorySiteInpageTagFormatsItem
-
-instance FromHttpApiData DirectorySiteInpageTagFormatsItem where
-    parseQueryParam = \case
-        "IFRAME_JAVASCRIPT_INPAGE" -> Right IframeJavascriptInpage
-        "INTERNAL_REDIRECT_INPAGE" -> Right InternalRedirectInpage
-        "JAVASCRIPT_INPAGE" -> Right JavascriptInpage
-        "STANDARD" -> Right Standard
-        x -> Left ("Unable to parse DirectorySiteInpageTagFormatsItem from: " <> x)
-
-instance ToHttpApiData DirectorySiteInpageTagFormatsItem where
-    toQueryParam = \case
-        IframeJavascriptInpage -> "IFRAME_JAVASCRIPT_INPAGE"
-        InternalRedirectInpage -> "INTERNAL_REDIRECT_INPAGE"
-        JavascriptInpage -> "JAVASCRIPT_INPAGE"
-        Standard -> "STANDARD"
-
-instance FromJSON DirectorySiteInpageTagFormatsItem where
-    parseJSON = parseJSONText "DirectorySiteInpageTagFormatsItem"
-
-instance ToJSON DirectorySiteInpageTagFormatsItem where
-    toJSON = toJSONText
-
--- | Window mode options for flash assets. Applicable to the following
--- creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING,
--- RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and
--- RICH_MEDIA_INPAGE_FLOATING.
-data CreativeAssetWindowMode
-    = Opaque
-      -- ^ @OPAQUE@
-    | Transparent
-      -- ^ @TRANSPARENT@
-    | Window
-      -- ^ @WINDOW@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetWindowMode
-
-instance FromHttpApiData CreativeAssetWindowMode where
-    parseQueryParam = \case
-        "OPAQUE" -> Right Opaque
-        "TRANSPARENT" -> Right Transparent
-        "WINDOW" -> Right Window
-        x -> Left ("Unable to parse CreativeAssetWindowMode from: " <> x)
-
-instance ToHttpApiData CreativeAssetWindowMode where
-    toQueryParam = \case
-        Opaque -> "OPAQUE"
-        Transparent -> "TRANSPARENT"
-        Window -> "WINDOW"
-
-instance FromJSON CreativeAssetWindowMode where
-    parseJSON = parseJSONText "CreativeAssetWindowMode"
-
-instance ToJSON CreativeAssetWindowMode where
-    toJSON = toJSONText
-
--- | Possible alignments for an asset. This is a read-only field. Applicable
--- to the following creative types:
--- RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.
-data CreativeAssetAlignment
-    = AlignmentBottom
-      -- ^ @ALIGNMENT_BOTTOM@
-    | AlignmentLeft
-      -- ^ @ALIGNMENT_LEFT@
-    | AlignmentRight
-      -- ^ @ALIGNMENT_RIGHT@
-    | AlignmentTop
-      -- ^ @ALIGNMENT_TOP@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetAlignment
-
-instance FromHttpApiData CreativeAssetAlignment where
-    parseQueryParam = \case
-        "ALIGNMENT_BOTTOM" -> Right AlignmentBottom
-        "ALIGNMENT_LEFT" -> Right AlignmentLeft
-        "ALIGNMENT_RIGHT" -> Right AlignmentRight
-        "ALIGNMENT_TOP" -> Right AlignmentTop
-        x -> Left ("Unable to parse CreativeAssetAlignment from: " <> x)
-
-instance ToHttpApiData CreativeAssetAlignment where
-    toQueryParam = \case
-        AlignmentBottom -> "ALIGNMENT_BOTTOM"
-        AlignmentLeft -> "ALIGNMENT_LEFT"
-        AlignmentRight -> "ALIGNMENT_RIGHT"
-        AlignmentTop -> "ALIGNMENT_TOP"
-
-instance FromJSON CreativeAssetAlignment where
-    parseJSON = parseJSONText "CreativeAssetAlignment"
-
-instance ToJSON CreativeAssetAlignment where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data RemarketingListsListSortOrder
-    = RLLSOAscending
-      -- ^ @ASCENDING@
-    | RLLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable RemarketingListsListSortOrder
-
-instance FromHttpApiData RemarketingListsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right RLLSOAscending
-        "DESCENDING" -> Right RLLSODescending
-        x -> Left ("Unable to parse RemarketingListsListSortOrder from: " <> x)
-
-instance ToHttpApiData RemarketingListsListSortOrder where
-    toQueryParam = \case
-        RLLSOAscending -> "ASCENDING"
-        RLLSODescending -> "DESCENDING"
-
-instance FromJSON RemarketingListsListSortOrder where
-    parseJSON = parseJSONText "RemarketingListsListSortOrder"
-
-instance ToJSON RemarketingListsListSortOrder where
-    toJSON = toJSONText
-
--- | Select only placement groups with these pricing types.
-data PlacementGroupsListPricingTypes
-    = PGLPTPricingTypeCpa
-      -- ^ @PRICING_TYPE_CPA@
-    | PGLPTPricingTypeCpc
-      -- ^ @PRICING_TYPE_CPC@
-    | PGLPTPricingTypeCpm
-      -- ^ @PRICING_TYPE_CPM@
-    | PGLPTPricingTypeCpmActiveview
-      -- ^ @PRICING_TYPE_CPM_ACTIVEVIEW@
-    | PGLPTPricingTypeFlatRateClicks
-      -- ^ @PRICING_TYPE_FLAT_RATE_CLICKS@
-    | PGLPTPricingTypeFlatRateImpressions
-      -- ^ @PRICING_TYPE_FLAT_RATE_IMPRESSIONS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementGroupsListPricingTypes
-
-instance FromHttpApiData PlacementGroupsListPricingTypes where
-    parseQueryParam = \case
-        "PRICING_TYPE_CPA" -> Right PGLPTPricingTypeCpa
-        "PRICING_TYPE_CPC" -> Right PGLPTPricingTypeCpc
-        "PRICING_TYPE_CPM" -> Right PGLPTPricingTypeCpm
-        "PRICING_TYPE_CPM_ACTIVEVIEW" -> Right PGLPTPricingTypeCpmActiveview
-        "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PGLPTPricingTypeFlatRateClicks
-        "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PGLPTPricingTypeFlatRateImpressions
-        x -> Left ("Unable to parse PlacementGroupsListPricingTypes from: " <> x)
-
-instance ToHttpApiData PlacementGroupsListPricingTypes where
-    toQueryParam = \case
-        PGLPTPricingTypeCpa -> "PRICING_TYPE_CPA"
-        PGLPTPricingTypeCpc -> "PRICING_TYPE_CPC"
-        PGLPTPricingTypeCpm -> "PRICING_TYPE_CPM"
-        PGLPTPricingTypeCpmActiveview -> "PRICING_TYPE_CPM_ACTIVEVIEW"
-        PGLPTPricingTypeFlatRateClicks -> "PRICING_TYPE_FLAT_RATE_CLICKS"
-        PGLPTPricingTypeFlatRateImpressions -> "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
-
-instance FromJSON PlacementGroupsListPricingTypes where
-    parseJSON = parseJSONText "PlacementGroupsListPricingTypes"
-
-instance ToJSON PlacementGroupsListPricingTypes where
-    toJSON = toJSONText
-
--- | Type of the object of this dynamic targeting key. This is a required
--- field.
-data DynamicTargetingKeysDeleteObjectType
-    = DTKDOTObjectAd
-      -- ^ @OBJECT_AD@
-    | DTKDOTObjectAdvertiser
-      -- ^ @OBJECT_ADVERTISER@
-    | DTKDOTObjectCreative
-      -- ^ @OBJECT_CREATIVE@
-    | DTKDOTObjectPlacement
-      -- ^ @OBJECT_PLACEMENT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DynamicTargetingKeysDeleteObjectType
-
-instance FromHttpApiData DynamicTargetingKeysDeleteObjectType where
-    parseQueryParam = \case
-        "OBJECT_AD" -> Right DTKDOTObjectAd
-        "OBJECT_ADVERTISER" -> Right DTKDOTObjectAdvertiser
-        "OBJECT_CREATIVE" -> Right DTKDOTObjectCreative
-        "OBJECT_PLACEMENT" -> Right DTKDOTObjectPlacement
-        x -> Left ("Unable to parse DynamicTargetingKeysDeleteObjectType from: " <> x)
-
-instance ToHttpApiData DynamicTargetingKeysDeleteObjectType where
-    toQueryParam = \case
-        DTKDOTObjectAd -> "OBJECT_AD"
-        DTKDOTObjectAdvertiser -> "OBJECT_ADVERTISER"
-        DTKDOTObjectCreative -> "OBJECT_CREATIVE"
-        DTKDOTObjectPlacement -> "OBJECT_PLACEMENT"
-
-instance FromJSON DynamicTargetingKeysDeleteObjectType where
-    parseJSON = parseJSONText "DynamicTargetingKeysDeleteObjectType"
-
-instance ToJSON DynamicTargetingKeysDeleteObjectType where
-    toJSON = toJSONText
-
--- | Maximum number of active ads allowed for this account.
-data AccountActiveAdsLimitTier
-    = AAALTActiveAdsTier100K
-      -- ^ @ACTIVE_ADS_TIER_100K@
-    | AAALTActiveAdsTier1M
-      -- ^ @ACTIVE_ADS_TIER_1M@
-    | AAALTActiveAdsTier200K
-      -- ^ @ACTIVE_ADS_TIER_200K@
-    | AAALTActiveAdsTier300K
-      -- ^ @ACTIVE_ADS_TIER_300K@
-    | AAALTActiveAdsTier40K
-      -- ^ @ACTIVE_ADS_TIER_40K@
-    | AAALTActiveAdsTier500K
-      -- ^ @ACTIVE_ADS_TIER_500K@
-    | AAALTActiveAdsTier750K
-      -- ^ @ACTIVE_ADS_TIER_750K@
-    | AAALTActiveAdsTier75K
-      -- ^ @ACTIVE_ADS_TIER_75K@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountActiveAdsLimitTier
-
-instance FromHttpApiData AccountActiveAdsLimitTier where
-    parseQueryParam = \case
-        "ACTIVE_ADS_TIER_100K" -> Right AAALTActiveAdsTier100K
-        "ACTIVE_ADS_TIER_1M" -> Right AAALTActiveAdsTier1M
-        "ACTIVE_ADS_TIER_200K" -> Right AAALTActiveAdsTier200K
-        "ACTIVE_ADS_TIER_300K" -> Right AAALTActiveAdsTier300K
-        "ACTIVE_ADS_TIER_40K" -> Right AAALTActiveAdsTier40K
-        "ACTIVE_ADS_TIER_500K" -> Right AAALTActiveAdsTier500K
-        "ACTIVE_ADS_TIER_750K" -> Right AAALTActiveAdsTier750K
-        "ACTIVE_ADS_TIER_75K" -> Right AAALTActiveAdsTier75K
-        x -> Left ("Unable to parse AccountActiveAdsLimitTier from: " <> x)
-
-instance ToHttpApiData AccountActiveAdsLimitTier where
-    toQueryParam = \case
-        AAALTActiveAdsTier100K -> "ACTIVE_ADS_TIER_100K"
-        AAALTActiveAdsTier1M -> "ACTIVE_ADS_TIER_1M"
-        AAALTActiveAdsTier200K -> "ACTIVE_ADS_TIER_200K"
-        AAALTActiveAdsTier300K -> "ACTIVE_ADS_TIER_300K"
-        AAALTActiveAdsTier40K -> "ACTIVE_ADS_TIER_40K"
-        AAALTActiveAdsTier500K -> "ACTIVE_ADS_TIER_500K"
-        AAALTActiveAdsTier750K -> "ACTIVE_ADS_TIER_750K"
-        AAALTActiveAdsTier75K -> "ACTIVE_ADS_TIER_75K"
-
-instance FromJSON AccountActiveAdsLimitTier where
-    parseJSON = parseJSONText "AccountActiveAdsLimitTier"
-
-instance ToJSON AccountActiveAdsLimitTier where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AccountsListSortOrder
-    = AAscending
-      -- ^ @ASCENDING@
-    | ADescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountsListSortOrder
-
-instance FromHttpApiData AccountsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right AAscending
-        "DESCENDING" -> Right ADescending
-        x -> Left ("Unable to parse AccountsListSortOrder from: " <> x)
-
-instance ToHttpApiData AccountsListSortOrder where
-    toQueryParam = \case
-        AAscending -> "ASCENDING"
-        ADescending -> "DESCENDING"
-
-instance FromJSON AccountsListSortOrder where
-    parseJSON = parseJSONText "AccountsListSortOrder"
-
-instance ToJSON AccountsListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data SubAccountsListSortField
-    = SALSFID
-      -- ^ @ID@
-    | SALSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SubAccountsListSortField
-
-instance FromHttpApiData SubAccountsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right SALSFID
-        "NAME" -> Right SALSFName
-        x -> Left ("Unable to parse SubAccountsListSortField from: " <> x)
-
-instance ToHttpApiData SubAccountsListSortField where
-    toQueryParam = \case
-        SALSFID -> "ID"
-        SALSFName -> "NAME"
-
-instance FromJSON SubAccountsListSortField where
-    parseJSON = parseJSONText "SubAccountsListSortField"
-
-instance ToJSON SubAccountsListSortField where
-    toJSON = toJSONText
-
--- | File type of the video format.
-data VideoFormatFileType
-    = Flv
-      -- ^ @FLV@
-    | M3U8
-      -- ^ @M3U8@
-    | MP4
-      -- ^ @MP4@
-    | Threegpp
-      -- ^ @THREEGPP@
-    | Webm
-      -- ^ @WEBM@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable VideoFormatFileType
-
-instance FromHttpApiData VideoFormatFileType where
-    parseQueryParam = \case
-        "FLV" -> Right Flv
-        "M3U8" -> Right M3U8
-        "MP4" -> Right MP4
-        "THREEGPP" -> Right Threegpp
-        "WEBM" -> Right Webm
-        x -> Left ("Unable to parse VideoFormatFileType from: " <> x)
-
-instance ToHttpApiData VideoFormatFileType where
-    toQueryParam = \case
-        Flv -> "FLV"
-        M3U8 -> "M3U8"
-        MP4 -> "MP4"
-        Threegpp -> "THREEGPP"
-        Webm -> "WEBM"
-
-instance FromJSON VideoFormatFileType where
-    parseJSON = parseJSONText "VideoFormatFileType"
-
-instance ToJSON VideoFormatFileType where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AdsListSortField
-    = ALSFID
-      -- ^ @ID@
-    | ALSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdsListSortField
-
-instance FromHttpApiData AdsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right ALSFID
-        "NAME" -> Right ALSFName
-        x -> Left ("Unable to parse AdsListSortField from: " <> x)
-
-instance ToHttpApiData AdsListSortField where
-    toQueryParam = \case
-        ALSFID -> "ID"
-        ALSFName -> "NAME"
-
-instance FromJSON AdsListSortField where
-    parseJSON = parseJSONText "AdsListSortField"
-
-instance ToJSON AdsListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data ProjectsListSortField
-    = PID
-      -- ^ @ID@
-    | PName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ProjectsListSortField
-
-instance FromHttpApiData ProjectsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right PID
-        "NAME" -> Right PName
-        x -> Left ("Unable to parse ProjectsListSortField from: " <> x)
-
-instance ToHttpApiData ProjectsListSortField where
-    toQueryParam = \case
-        PID -> "ID"
-        PName -> "NAME"
-
-instance FromJSON ProjectsListSortField where
-    parseJSON = parseJSONText "ProjectsListSortField"
-
-instance ToJSON ProjectsListSortField where
-    toJSON = toJSONText
-
--- | Select only ads with these types.
-data AdsListType
-    = AdServingClickTracker
-      -- ^ @AD_SERVING_CLICK_TRACKER@
-    | AdServingDefaultAd
-      -- ^ @AD_SERVING_DEFAULT_AD@
-    | AdServingStandardAd
-      -- ^ @AD_SERVING_STANDARD_AD@
-    | AdServingTracking
-      -- ^ @AD_SERVING_TRACKING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdsListType
-
-instance FromHttpApiData AdsListType where
-    parseQueryParam = \case
-        "AD_SERVING_CLICK_TRACKER" -> Right AdServingClickTracker
-        "AD_SERVING_DEFAULT_AD" -> Right AdServingDefaultAd
-        "AD_SERVING_STANDARD_AD" -> Right AdServingStandardAd
-        "AD_SERVING_TRACKING" -> Right AdServingTracking
-        x -> Left ("Unable to parse AdsListType from: " <> x)
-
-instance ToHttpApiData AdsListType where
-    toQueryParam = \case
-        AdServingClickTracker -> "AD_SERVING_CLICK_TRACKER"
-        AdServingDefaultAd -> "AD_SERVING_DEFAULT_AD"
-        AdServingStandardAd -> "AD_SERVING_STANDARD_AD"
-        AdServingTracking -> "AD_SERVING_TRACKING"
-
-instance FromJSON AdsListType where
-    parseJSON = parseJSONText "AdsListType"
-
-instance ToJSON AdsListType where
-    toJSON = toJSONText
-
--- | Optimization model for this configuration.
-data CreativeOptimizationConfigurationOptimizationModel
-    = Click
-      -- ^ @CLICK@
-    | PostClick
-      -- ^ @POST_CLICK@
-    | PostClickAndImpression
-      -- ^ @POST_CLICK_AND_IMPRESSION@
-    | PostImpression
-      -- ^ @POST_IMPRESSION@
-    | VideoCompletion
-      -- ^ @VIDEO_COMPLETION@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeOptimizationConfigurationOptimizationModel
-
-instance FromHttpApiData CreativeOptimizationConfigurationOptimizationModel where
-    parseQueryParam = \case
-        "CLICK" -> Right Click
-        "POST_CLICK" -> Right PostClick
-        "POST_CLICK_AND_IMPRESSION" -> Right PostClickAndImpression
-        "POST_IMPRESSION" -> Right PostImpression
-        "VIDEO_COMPLETION" -> Right VideoCompletion
-        x -> Left ("Unable to parse CreativeOptimizationConfigurationOptimizationModel from: " <> x)
-
-instance ToHttpApiData CreativeOptimizationConfigurationOptimizationModel where
-    toQueryParam = \case
-        Click -> "CLICK"
-        PostClick -> "POST_CLICK"
-        PostClickAndImpression -> "POST_CLICK_AND_IMPRESSION"
-        PostImpression -> "POST_IMPRESSION"
-        VideoCompletion -> "VIDEO_COMPLETION"
-
-instance FromJSON CreativeOptimizationConfigurationOptimizationModel where
-    parseJSON = parseJSONText "CreativeOptimizationConfigurationOptimizationModel"
-
-instance ToJSON CreativeOptimizationConfigurationOptimizationModel where
-    toJSON = toJSONText
-
--- | Administrative level required to enable this account permission.
-data AccountPermissionLevel
-    = Administrator
-      -- ^ @ADMINISTRATOR@
-    | User
-      -- ^ @USER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountPermissionLevel
-
-instance FromHttpApiData AccountPermissionLevel where
-    parseQueryParam = \case
-        "ADMINISTRATOR" -> Right Administrator
-        "USER" -> Right User
-        x -> Left ("Unable to parse AccountPermissionLevel from: " <> x)
-
-instance ToHttpApiData AccountPermissionLevel where
-    toQueryParam = \case
-        Administrator -> "ADMINISTRATOR"
-        User -> "USER"
-
-instance FromJSON AccountPermissionLevel where
-    parseJSON = parseJSONText "AccountPermissionLevel"
-
-instance ToJSON AccountPermissionLevel where
-    toJSON = toJSONText
-
--- | List population term type determines the applicable fields in this
--- object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName,
--- variableFriendlyName, operator, value, and negation are applicable. If
--- set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are
--- applicable. If set to REFERRER_TERM then operator, value, and negation
--- are applicable.
-data ListPopulationTermType
-    = CustomVariableTerm
-      -- ^ @CUSTOM_VARIABLE_TERM@
-    | ListMembershipTerm
-      -- ^ @LIST_MEMBERSHIP_TERM@
-    | ReferrerTerm
-      -- ^ @REFERRER_TERM@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ListPopulationTermType
-
-instance FromHttpApiData ListPopulationTermType where
-    parseQueryParam = \case
-        "CUSTOM_VARIABLE_TERM" -> Right CustomVariableTerm
-        "LIST_MEMBERSHIP_TERM" -> Right ListMembershipTerm
-        "REFERRER_TERM" -> Right ReferrerTerm
-        x -> Left ("Unable to parse ListPopulationTermType from: " <> x)
-
-instance ToHttpApiData ListPopulationTermType where
-    toQueryParam = \case
-        CustomVariableTerm -> "CUSTOM_VARIABLE_TERM"
-        ListMembershipTerm -> "LIST_MEMBERSHIP_TERM"
-        ReferrerTerm -> "REFERRER_TERM"
-
-instance FromJSON ListPopulationTermType where
-    parseJSON = parseJSONText "ListPopulationTermType"
-
-instance ToJSON ListPopulationTermType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AdvertiserGroupsListSortOrder
-    = AGLSOAscending
-      -- ^ @ASCENDING@
-    | AGLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertiserGroupsListSortOrder
-
-instance FromHttpApiData AdvertiserGroupsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right AGLSOAscending
-        "DESCENDING" -> Right AGLSODescending
-        x -> Left ("Unable to parse AdvertiserGroupsListSortOrder from: " <> x)
-
-instance ToHttpApiData AdvertiserGroupsListSortOrder where
-    toQueryParam = \case
-        AGLSOAscending -> "ASCENDING"
-        AGLSODescending -> "DESCENDING"
-
-instance FromJSON AdvertiserGroupsListSortOrder where
-    parseJSON = parseJSONText "AdvertiserGroupsListSortOrder"
-
-instance ToJSON AdvertiserGroupsListSortOrder where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data CreativeFieldValuesListSortOrder
-    = CFVLSOAscending
-      -- ^ @ASCENDING@
-    | CFVLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeFieldValuesListSortOrder
-
-instance FromHttpApiData CreativeFieldValuesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CFVLSOAscending
-        "DESCENDING" -> Right CFVLSODescending
-        x -> Left ("Unable to parse CreativeFieldValuesListSortOrder from: " <> x)
-
-instance ToHttpApiData CreativeFieldValuesListSortOrder where
-    toQueryParam = \case
-        CFVLSOAscending -> "ASCENDING"
-        CFVLSODescending -> "DESCENDING"
-
-instance FromJSON CreativeFieldValuesListSortOrder where
-    parseJSON = parseJSONText "CreativeFieldValuesListSortOrder"
-
-instance ToJSON CreativeFieldValuesListSortOrder where
-    toJSON = toJSONText
-
--- | An optional sort order for the dimension column.
-data SortedDimensionSortOrder
-    = SDSOAscending
-      -- ^ @ASCENDING@
-    | SDSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SortedDimensionSortOrder
-
-instance FromHttpApiData SortedDimensionSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right SDSOAscending
-        "DESCENDING" -> Right SDSODescending
-        x -> Left ("Unable to parse SortedDimensionSortOrder from: " <> x)
-
-instance ToHttpApiData SortedDimensionSortOrder where
-    toQueryParam = \case
-        SDSOAscending -> "ASCENDING"
-        SDSODescending -> "DESCENDING"
-
-instance FromJSON SortedDimensionSortOrder where
-    parseJSON = parseJSONText "SortedDimensionSortOrder"
-
-instance ToJSON SortedDimensionSortOrder where
-    toJSON = toJSONText
-
--- | Select only apps from these directories.
-data MobileAppsListDirectories
-    = AppleAppStore
-      -- ^ @APPLE_APP_STORE@
-    | GooglePlayStore
-      -- ^ @GOOGLE_PLAY_STORE@
-    | Unknown
-      -- ^ @UNKNOWN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable MobileAppsListDirectories
-
-instance FromHttpApiData MobileAppsListDirectories where
-    parseQueryParam = \case
-        "APPLE_APP_STORE" -> Right AppleAppStore
-        "GOOGLE_PLAY_STORE" -> Right GooglePlayStore
-        "UNKNOWN" -> Right Unknown
-        x -> Left ("Unable to parse MobileAppsListDirectories from: " <> x)
-
-instance ToHttpApiData MobileAppsListDirectories where
-    toQueryParam = \case
-        AppleAppStore -> "APPLE_APP_STORE"
-        GooglePlayStore -> "GOOGLE_PLAY_STORE"
-        Unknown -> "UNKNOWN"
-
-instance FromJSON MobileAppsListDirectories where
-    parseJSON = parseJSONText "MobileAppsListDirectories"
-
-instance ToJSON MobileAppsListDirectories where
-    toJSON = toJSONText
-
--- | The field by which to sort the list.
-data FilesListSortField
-    = FLSFID
-      -- ^ @ID@
-      -- Sort by file ID.
-    | FLSFLastModifiedTime
-      -- ^ @LAST_MODIFIED_TIME@
-      -- Sort by \'lastmodifiedAt\' field.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FilesListSortField
-
-instance FromHttpApiData FilesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right FLSFID
-        "LAST_MODIFIED_TIME" -> Right FLSFLastModifiedTime
-        x -> Left ("Unable to parse FilesListSortField from: " <> x)
-
-instance ToHttpApiData FilesListSortField where
-    toQueryParam = \case
-        FLSFID -> "ID"
-        FLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
-
-instance FromJSON FilesListSortField where
-    parseJSON = parseJSONText "FilesListSortField"
-
-instance ToJSON FilesListSortField where
-    toJSON = toJSONText
-
-data DirectorySiteInterstitialTagFormatsItem
-    = IframeJavascriptInterstitial
-      -- ^ @IFRAME_JAVASCRIPT_INTERSTITIAL@
-    | InternalRedirectInterstitial
-      -- ^ @INTERNAL_REDIRECT_INTERSTITIAL@
-    | JavascriptInterstitial
-      -- ^ @JAVASCRIPT_INTERSTITIAL@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DirectorySiteInterstitialTagFormatsItem
-
-instance FromHttpApiData DirectorySiteInterstitialTagFormatsItem where
-    parseQueryParam = \case
-        "IFRAME_JAVASCRIPT_INTERSTITIAL" -> Right IframeJavascriptInterstitial
-        "INTERNAL_REDIRECT_INTERSTITIAL" -> Right InternalRedirectInterstitial
-        "JAVASCRIPT_INTERSTITIAL" -> Right JavascriptInterstitial
-        x -> Left ("Unable to parse DirectorySiteInterstitialTagFormatsItem from: " <> x)
-
-instance ToHttpApiData DirectorySiteInterstitialTagFormatsItem where
-    toQueryParam = \case
-        IframeJavascriptInterstitial -> "IFRAME_JAVASCRIPT_INTERSTITIAL"
-        InternalRedirectInterstitial -> "INTERNAL_REDIRECT_INTERSTITIAL"
-        JavascriptInterstitial -> "JAVASCRIPT_INTERSTITIAL"
-
-instance FromJSON DirectorySiteInterstitialTagFormatsItem where
-    parseJSON = parseJSONText "DirectorySiteInterstitialTagFormatsItem"
-
-instance ToJSON DirectorySiteInterstitialTagFormatsItem where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data EventTagsListSortField
-    = ETLSFID
-      -- ^ @ID@
-    | ETLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagsListSortField
-
-instance FromHttpApiData EventTagsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right ETLSFID
-        "NAME" -> Right ETLSFName
-        x -> Left ("Unable to parse EventTagsListSortField from: " <> x)
-
-instance ToHttpApiData EventTagsListSortField where
-    toQueryParam = \case
-        ETLSFID -> "ID"
-        ETLSFName -> "NAME"
-
-instance FromJSON EventTagsListSortField where
-    parseJSON = parseJSONText "EventTagsListSortField"
-
-instance ToJSON EventTagsListSortField where
-    toJSON = toJSONText
-
--- | Type of inventory item.
-data InventoryItemType
-    = IITPlanningPlacementTypeCredit
-      -- ^ @PLANNING_PLACEMENT_TYPE_CREDIT@
-    | IITPlanningPlacementTypeRegular
-      -- ^ @PLANNING_PLACEMENT_TYPE_REGULAR@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable InventoryItemType
-
-instance FromHttpApiData InventoryItemType where
-    parseQueryParam = \case
-        "PLANNING_PLACEMENT_TYPE_CREDIT" -> Right IITPlanningPlacementTypeCredit
-        "PLANNING_PLACEMENT_TYPE_REGULAR" -> Right IITPlanningPlacementTypeRegular
-        x -> Left ("Unable to parse InventoryItemType from: " <> x)
-
-instance ToHttpApiData InventoryItemType where
-    toQueryParam = \case
-        IITPlanningPlacementTypeCredit -> "PLANNING_PLACEMENT_TYPE_CREDIT"
-        IITPlanningPlacementTypeRegular -> "PLANNING_PLACEMENT_TYPE_REGULAR"
-
-instance FromJSON InventoryItemType where
-    parseJSON = parseJSONText "InventoryItemType"
-
-instance ToJSON InventoryItemType where
-    toJSON = toJSONText
-
--- | Offset top unit for an asset. This is a read-only field if the asset
--- displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following
--- creative types: all RICH_MEDIA.
-data CreativeAssetPositionTopUnit
-    = CAPTUOffSetUnitPercent
-      -- ^ @OFFSET_UNIT_PERCENT@
-    | CAPTUOffSetUnitPixel
-      -- ^ @OFFSET_UNIT_PIXEL@
-    | CAPTUOffSetUnitPixelFromCenter
-      -- ^ @OFFSET_UNIT_PIXEL_FROM_CENTER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetPositionTopUnit
-
-instance FromHttpApiData CreativeAssetPositionTopUnit where
-    parseQueryParam = \case
-        "OFFSET_UNIT_PERCENT" -> Right CAPTUOffSetUnitPercent
-        "OFFSET_UNIT_PIXEL" -> Right CAPTUOffSetUnitPixel
-        "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Right CAPTUOffSetUnitPixelFromCenter
-        x -> Left ("Unable to parse CreativeAssetPositionTopUnit from: " <> x)
-
-instance ToHttpApiData CreativeAssetPositionTopUnit where
-    toQueryParam = \case
-        CAPTUOffSetUnitPercent -> "OFFSET_UNIT_PERCENT"
-        CAPTUOffSetUnitPixel -> "OFFSET_UNIT_PIXEL"
-        CAPTUOffSetUnitPixelFromCenter -> "OFFSET_UNIT_PIXEL_FROM_CENTER"
-
-instance FromJSON CreativeAssetPositionTopUnit where
-    parseJSON = parseJSONText "CreativeAssetPositionTopUnit"
-
-instance ToJSON CreativeAssetPositionTopUnit where
-    toJSON = toJSONText
-
--- | Type of the associated floodlight activity group. This is a read-only
--- field.
-data FloodlightActivityFloodlightActivityGroupType
-    = FAFAGTCounter
-      -- ^ @COUNTER@
-    | FAFAGTSale
-      -- ^ @SALE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityFloodlightActivityGroupType
-
-instance FromHttpApiData FloodlightActivityFloodlightActivityGroupType where
-    parseQueryParam = \case
-        "COUNTER" -> Right FAFAGTCounter
-        "SALE" -> Right FAFAGTSale
-        x -> Left ("Unable to parse FloodlightActivityFloodlightActivityGroupType from: " <> x)
-
-instance ToHttpApiData FloodlightActivityFloodlightActivityGroupType where
-    toQueryParam = \case
-        FAFAGTCounter -> "COUNTER"
-        FAFAGTSale -> "SALE"
-
-instance FromJSON FloodlightActivityFloodlightActivityGroupType where
-    parseJSON = parseJSONText "FloodlightActivityFloodlightActivityGroupType"
-
-instance ToJSON FloodlightActivityFloodlightActivityGroupType where
-    toJSON = toJSONText
-
--- | Group type of this inventory item if it represents a placement group. Is
--- null otherwise. There are two type of placement groups:
--- PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory
--- items that acts as a single pricing point for a group of tags.
--- PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items
--- that not only acts as a single pricing point, but also assumes that all
--- the tags in it will be served at the same time. A roadblock requires one
--- of its assigned inventory items to be marked as primary.
-data PricingGroupType
-    = PlanningPlacementGroupTypePackage
-      -- ^ @PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE@
-    | PlanningPlacementGroupTypeRoadblock
-      -- ^ @PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PricingGroupType
-
-instance FromHttpApiData PricingGroupType where
-    parseQueryParam = \case
-        "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE" -> Right PlanningPlacementGroupTypePackage
-        "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" -> Right PlanningPlacementGroupTypeRoadblock
-        x -> Left ("Unable to parse PricingGroupType from: " <> x)
-
-instance ToHttpApiData PricingGroupType where
-    toQueryParam = \case
-        PlanningPlacementGroupTypePackage -> "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE"
-        PlanningPlacementGroupTypeRoadblock -> "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK"
-
-instance FromJSON PricingGroupType where
-    parseJSON = parseJSONText "PricingGroupType"
-
-instance ToJSON PricingGroupType where
-    toJSON = toJSONText
-
--- | The type of Floodlight tag this activity will generate. This is a
--- required field.
-data FloodlightActivityFloodlightTagType
-    = GlobalSiteTag
-      -- ^ @GLOBAL_SITE_TAG@
-    | Iframe
-      -- ^ @IFRAME@
-    | Image
-      -- ^ @IMAGE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityFloodlightTagType
-
-instance FromHttpApiData FloodlightActivityFloodlightTagType where
-    parseQueryParam = \case
-        "GLOBAL_SITE_TAG" -> Right GlobalSiteTag
-        "IFRAME" -> Right Iframe
-        "IMAGE" -> Right Image
-        x -> Left ("Unable to parse FloodlightActivityFloodlightTagType from: " <> x)
-
-instance ToHttpApiData FloodlightActivityFloodlightTagType where
-    toQueryParam = \case
-        GlobalSiteTag -> "GLOBAL_SITE_TAG"
-        Iframe -> "IFRAME"
-        Image -> "IMAGE"
-
-instance FromJSON FloodlightActivityFloodlightTagType where
-    parseJSON = parseJSONText "FloodlightActivityFloodlightTagType"
-
-instance ToJSON FloodlightActivityFloodlightTagType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data FloodlightActivityGroupsListSortOrder
-    = FAGLSOAscending
-      -- ^ @ASCENDING@
-    | FAGLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityGroupsListSortOrder
-
-instance FromHttpApiData FloodlightActivityGroupsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right FAGLSOAscending
-        "DESCENDING" -> Right FAGLSODescending
-        x -> Left ("Unable to parse FloodlightActivityGroupsListSortOrder from: " <> x)
-
-instance ToHttpApiData FloodlightActivityGroupsListSortOrder where
-    toQueryParam = \case
-        FAGLSOAscending -> "ASCENDING"
-        FAGLSODescending -> "DESCENDING"
-
-instance FromJSON FloodlightActivityGroupsListSortOrder where
-    parseJSON = parseJSONText "FloodlightActivityGroupsListSortOrder"
-
-instance ToJSON FloodlightActivityGroupsListSortOrder where
-    toJSON = toJSONText
-
--- | Type of creative rotation. Can be used to specify whether to use
--- sequential or random rotation.
-data CreativeRotationType
-    = CreativeRotationTypeRandom
-      -- ^ @CREATIVE_ROTATION_TYPE_RANDOM@
-    | CreativeRotationTypeSequential
-      -- ^ @CREATIVE_ROTATION_TYPE_SEQUENTIAL@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeRotationType
-
-instance FromHttpApiData CreativeRotationType where
-    parseQueryParam = \case
-        "CREATIVE_ROTATION_TYPE_RANDOM" -> Right CreativeRotationTypeRandom
-        "CREATIVE_ROTATION_TYPE_SEQUENTIAL" -> Right CreativeRotationTypeSequential
-        x -> Left ("Unable to parse CreativeRotationType from: " <> x)
-
-instance ToHttpApiData CreativeRotationType where
-    toQueryParam = \case
-        CreativeRotationTypeRandom -> "CREATIVE_ROTATION_TYPE_RANDOM"
-        CreativeRotationTypeSequential -> "CREATIVE_ROTATION_TYPE_SEQUENTIAL"
-
-instance FromJSON CreativeRotationType where
-    parseJSON = parseJSONText "CreativeRotationType"
-
-instance ToJSON CreativeRotationType where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data OrdersListSortField
-    = OLSFID
-      -- ^ @ID@
-    | OLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrdersListSortField
-
-instance FromHttpApiData OrdersListSortField where
-    parseQueryParam = \case
-        "ID" -> Right OLSFID
-        "NAME" -> Right OLSFName
-        x -> Left ("Unable to parse OrdersListSortField from: " <> x)
-
-instance ToHttpApiData OrdersListSortField where
-    toQueryParam = \case
-        OLSFID -> "ID"
-        OLSFName -> "NAME"
-
-instance FromJSON OrdersListSortField where
-    parseJSON = parseJSONText "OrdersListSortField"
-
-instance ToJSON OrdersListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data PlacementGroupsListSortField
-    = PGLSFID
-      -- ^ @ID@
-    | PGLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementGroupsListSortField
-
-instance FromHttpApiData PlacementGroupsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right PGLSFID
-        "NAME" -> Right PGLSFName
-        x -> Left ("Unable to parse PlacementGroupsListSortField from: " <> x)
-
-instance ToHttpApiData PlacementGroupsListSortField where
-    toQueryParam = \case
-        PGLSFID -> "ID"
-        PGLSFName -> "NAME"
-
-instance FromJSON PlacementGroupsListSortField where
-    parseJSON = parseJSONText "PlacementGroupsListSortField"
-
-instance ToJSON PlacementGroupsListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data DirectorySitesListSortOrder
-    = DSLSOAscending
-      -- ^ @ASCENDING@
-    | DSLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DirectorySitesListSortOrder
-
-instance FromHttpApiData DirectorySitesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right DSLSOAscending
-        "DESCENDING" -> Right DSLSODescending
-        x -> Left ("Unable to parse DirectorySitesListSortOrder from: " <> x)
-
-instance ToHttpApiData DirectorySitesListSortOrder where
-    toQueryParam = \case
-        DSLSOAscending -> "ASCENDING"
-        DSLSODescending -> "DESCENDING"
-
-instance FromJSON DirectorySitesListSortOrder where
-    parseJSON = parseJSONText "DirectorySitesListSortOrder"
-
-instance ToJSON DirectorySitesListSortOrder where
-    toJSON = toJSONText
-
-data CreativeAssetDetectedFeaturesItem
-    = CADFIApplicationCache
-      -- ^ @APPLICATION_CACHE@
-    | CADFIAudio
-      -- ^ @AUDIO@
-    | CADFICanvas
-      -- ^ @CANVAS@
-    | CADFICanvasText
-      -- ^ @CANVAS_TEXT@
-    | CADFICssAnimations
-      -- ^ @CSS_ANIMATIONS@
-    | CADFICssBackgRoundSize
-      -- ^ @CSS_BACKGROUND_SIZE@
-    | CADFICssBOrderImage
-      -- ^ @CSS_BORDER_IMAGE@
-    | CADFICssBOrderRadius
-      -- ^ @CSS_BORDER_RADIUS@
-    | CADFICssBoxShadow
-      -- ^ @CSS_BOX_SHADOW@
-    | CADFICssColumns
-      -- ^ @CSS_COLUMNS@
-    | CADFICssFlexBox
-      -- ^ @CSS_FLEX_BOX@
-    | CADFICssFontFace
-      -- ^ @CSS_FONT_FACE@
-    | CADFICssGeneratedContent
-      -- ^ @CSS_GENERATED_CONTENT@
-    | CADFICssGradients
-      -- ^ @CSS_GRADIENTS@
-    | CADFICssHsla
-      -- ^ @CSS_HSLA@
-    | CADFICssMultipleBgs
-      -- ^ @CSS_MULTIPLE_BGS@
-    | CADFICssOpacity
-      -- ^ @CSS_OPACITY@
-    | CADFICssReflections
-      -- ^ @CSS_REFLECTIONS@
-    | CADFICssRgba
-      -- ^ @CSS_RGBA@
-    | CADFICssTextShadow
-      -- ^ @CSS_TEXT_SHADOW@
-    | CADFICssTransforms
-      -- ^ @CSS_TRANSFORMS@
-    | CADFICssTRANSFORMS3D
-      -- ^ @CSS_TRANSFORMS3D@
-    | CADFICssTransitions
-      -- ^ @CSS_TRANSITIONS@
-    | CADFIDragAndDrop
-      -- ^ @DRAG_AND_DROP@
-    | CADFIGeoLocation
-      -- ^ @GEO_LOCATION@
-    | CADFIHashChange
-      -- ^ @HASH_CHANGE@
-    | CADFIHistory
-      -- ^ @HISTORY@
-    | CADFIIndexedDB
-      -- ^ @INDEXED_DB@
-    | CADFIInlineSvg
-      -- ^ @INLINE_SVG@
-    | CADFIInputAttrAutocomplete
-      -- ^ @INPUT_ATTR_AUTOCOMPLETE@
-    | CADFIInputAttrAutofocus
-      -- ^ @INPUT_ATTR_AUTOFOCUS@
-    | CADFIInputAttrList
-      -- ^ @INPUT_ATTR_LIST@
-    | CADFIInputAttrMax
-      -- ^ @INPUT_ATTR_MAX@
-    | CADFIInputAttrMin
-      -- ^ @INPUT_ATTR_MIN@
-    | CADFIInputAttrMultiple
-      -- ^ @INPUT_ATTR_MULTIPLE@
-    | CADFIInputAttrPattern
-      -- ^ @INPUT_ATTR_PATTERN@
-    | CADFIInputAttrPlaceholder
-      -- ^ @INPUT_ATTR_PLACEHOLDER@
-    | CADFIInputAttrRequired
-      -- ^ @INPUT_ATTR_REQUIRED@
-    | CADFIInputAttrStep
-      -- ^ @INPUT_ATTR_STEP@
-    | CADFIInputTypeColor
-      -- ^ @INPUT_TYPE_COLOR@
-    | CADFIInputTypeDate
-      -- ^ @INPUT_TYPE_DATE@
-    | CADFIInputTypeDatetime
-      -- ^ @INPUT_TYPE_DATETIME@
-    | CADFIInputTypeDatetimeLocal
-      -- ^ @INPUT_TYPE_DATETIME_LOCAL@
-    | CADFIInputTypeEmail
-      -- ^ @INPUT_TYPE_EMAIL@
-    | CADFIInputTypeMonth
-      -- ^ @INPUT_TYPE_MONTH@
-    | CADFIInputTypeNumber
-      -- ^ @INPUT_TYPE_NUMBER@
-    | CADFIInputTypeRange
-      -- ^ @INPUT_TYPE_RANGE@
-    | CADFIInputTypeSearch
-      -- ^ @INPUT_TYPE_SEARCH@
-    | CADFIInputTypeTel
-      -- ^ @INPUT_TYPE_TEL@
-    | CADFIInputTypeTime
-      -- ^ @INPUT_TYPE_TIME@
-    | CADFIInputTypeURL
-      -- ^ @INPUT_TYPE_URL@
-    | CADFIInputTypeWeek
-      -- ^ @INPUT_TYPE_WEEK@
-    | CADFILocalStorage
-      -- ^ @LOCAL_STORAGE@
-    | CADFIPostMessage
-      -- ^ @POST_MESSAGE@
-    | CADFISessionStorage
-      -- ^ @SESSION_STORAGE@
-    | CADFISmil
-      -- ^ @SMIL@
-    | CADFISvgClipPaths
-      -- ^ @SVG_CLIP_PATHS@
-    | CADFISvgFeImage
-      -- ^ @SVG_FE_IMAGE@
-    | CADFISvgFilters
-      -- ^ @SVG_FILTERS@
-    | CADFISvgHref
-      -- ^ @SVG_HREF@
-    | CADFITouch
-      -- ^ @TOUCH@
-    | CADFIVideo
-      -- ^ @VIDEO@
-    | CADFIWebgl
-      -- ^ @WEBGL@
-    | CADFIWebSockets
-      -- ^ @WEB_SOCKETS@
-    | CADFIWebSQLDatabase
-      -- ^ @WEB_SQL_DATABASE@
-    | CADFIWebWorkers
-      -- ^ @WEB_WORKERS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetDetectedFeaturesItem
-
-instance FromHttpApiData CreativeAssetDetectedFeaturesItem where
-    parseQueryParam = \case
-        "APPLICATION_CACHE" -> Right CADFIApplicationCache
-        "AUDIO" -> Right CADFIAudio
-        "CANVAS" -> Right CADFICanvas
-        "CANVAS_TEXT" -> Right CADFICanvasText
-        "CSS_ANIMATIONS" -> Right CADFICssAnimations
-        "CSS_BACKGROUND_SIZE" -> Right CADFICssBackgRoundSize
-        "CSS_BORDER_IMAGE" -> Right CADFICssBOrderImage
-        "CSS_BORDER_RADIUS" -> Right CADFICssBOrderRadius
-        "CSS_BOX_SHADOW" -> Right CADFICssBoxShadow
-        "CSS_COLUMNS" -> Right CADFICssColumns
-        "CSS_FLEX_BOX" -> Right CADFICssFlexBox
-        "CSS_FONT_FACE" -> Right CADFICssFontFace
-        "CSS_GENERATED_CONTENT" -> Right CADFICssGeneratedContent
-        "CSS_GRADIENTS" -> Right CADFICssGradients
-        "CSS_HSLA" -> Right CADFICssHsla
-        "CSS_MULTIPLE_BGS" -> Right CADFICssMultipleBgs
-        "CSS_OPACITY" -> Right CADFICssOpacity
-        "CSS_REFLECTIONS" -> Right CADFICssReflections
-        "CSS_RGBA" -> Right CADFICssRgba
-        "CSS_TEXT_SHADOW" -> Right CADFICssTextShadow
-        "CSS_TRANSFORMS" -> Right CADFICssTransforms
-        "CSS_TRANSFORMS3D" -> Right CADFICssTRANSFORMS3D
-        "CSS_TRANSITIONS" -> Right CADFICssTransitions
-        "DRAG_AND_DROP" -> Right CADFIDragAndDrop
-        "GEO_LOCATION" -> Right CADFIGeoLocation
-        "HASH_CHANGE" -> Right CADFIHashChange
-        "HISTORY" -> Right CADFIHistory
-        "INDEXED_DB" -> Right CADFIIndexedDB
-        "INLINE_SVG" -> Right CADFIInlineSvg
-        "INPUT_ATTR_AUTOCOMPLETE" -> Right CADFIInputAttrAutocomplete
-        "INPUT_ATTR_AUTOFOCUS" -> Right CADFIInputAttrAutofocus
-        "INPUT_ATTR_LIST" -> Right CADFIInputAttrList
-        "INPUT_ATTR_MAX" -> Right CADFIInputAttrMax
-        "INPUT_ATTR_MIN" -> Right CADFIInputAttrMin
-        "INPUT_ATTR_MULTIPLE" -> Right CADFIInputAttrMultiple
-        "INPUT_ATTR_PATTERN" -> Right CADFIInputAttrPattern
-        "INPUT_ATTR_PLACEHOLDER" -> Right CADFIInputAttrPlaceholder
-        "INPUT_ATTR_REQUIRED" -> Right CADFIInputAttrRequired
-        "INPUT_ATTR_STEP" -> Right CADFIInputAttrStep
-        "INPUT_TYPE_COLOR" -> Right CADFIInputTypeColor
-        "INPUT_TYPE_DATE" -> Right CADFIInputTypeDate
-        "INPUT_TYPE_DATETIME" -> Right CADFIInputTypeDatetime
-        "INPUT_TYPE_DATETIME_LOCAL" -> Right CADFIInputTypeDatetimeLocal
-        "INPUT_TYPE_EMAIL" -> Right CADFIInputTypeEmail
-        "INPUT_TYPE_MONTH" -> Right CADFIInputTypeMonth
-        "INPUT_TYPE_NUMBER" -> Right CADFIInputTypeNumber
-        "INPUT_TYPE_RANGE" -> Right CADFIInputTypeRange
-        "INPUT_TYPE_SEARCH" -> Right CADFIInputTypeSearch
-        "INPUT_TYPE_TEL" -> Right CADFIInputTypeTel
-        "INPUT_TYPE_TIME" -> Right CADFIInputTypeTime
-        "INPUT_TYPE_URL" -> Right CADFIInputTypeURL
-        "INPUT_TYPE_WEEK" -> Right CADFIInputTypeWeek
-        "LOCAL_STORAGE" -> Right CADFILocalStorage
-        "POST_MESSAGE" -> Right CADFIPostMessage
-        "SESSION_STORAGE" -> Right CADFISessionStorage
-        "SMIL" -> Right CADFISmil
-        "SVG_CLIP_PATHS" -> Right CADFISvgClipPaths
-        "SVG_FE_IMAGE" -> Right CADFISvgFeImage
-        "SVG_FILTERS" -> Right CADFISvgFilters
-        "SVG_HREF" -> Right CADFISvgHref
-        "TOUCH" -> Right CADFITouch
-        "VIDEO" -> Right CADFIVideo
-        "WEBGL" -> Right CADFIWebgl
-        "WEB_SOCKETS" -> Right CADFIWebSockets
-        "WEB_SQL_DATABASE" -> Right CADFIWebSQLDatabase
-        "WEB_WORKERS" -> Right CADFIWebWorkers
-        x -> Left ("Unable to parse CreativeAssetDetectedFeaturesItem from: " <> x)
-
-instance ToHttpApiData CreativeAssetDetectedFeaturesItem where
-    toQueryParam = \case
-        CADFIApplicationCache -> "APPLICATION_CACHE"
-        CADFIAudio -> "AUDIO"
-        CADFICanvas -> "CANVAS"
-        CADFICanvasText -> "CANVAS_TEXT"
-        CADFICssAnimations -> "CSS_ANIMATIONS"
-        CADFICssBackgRoundSize -> "CSS_BACKGROUND_SIZE"
-        CADFICssBOrderImage -> "CSS_BORDER_IMAGE"
-        CADFICssBOrderRadius -> "CSS_BORDER_RADIUS"
-        CADFICssBoxShadow -> "CSS_BOX_SHADOW"
-        CADFICssColumns -> "CSS_COLUMNS"
-        CADFICssFlexBox -> "CSS_FLEX_BOX"
-        CADFICssFontFace -> "CSS_FONT_FACE"
-        CADFICssGeneratedContent -> "CSS_GENERATED_CONTENT"
-        CADFICssGradients -> "CSS_GRADIENTS"
-        CADFICssHsla -> "CSS_HSLA"
-        CADFICssMultipleBgs -> "CSS_MULTIPLE_BGS"
-        CADFICssOpacity -> "CSS_OPACITY"
-        CADFICssReflections -> "CSS_REFLECTIONS"
-        CADFICssRgba -> "CSS_RGBA"
-        CADFICssTextShadow -> "CSS_TEXT_SHADOW"
-        CADFICssTransforms -> "CSS_TRANSFORMS"
-        CADFICssTRANSFORMS3D -> "CSS_TRANSFORMS3D"
-        CADFICssTransitions -> "CSS_TRANSITIONS"
-        CADFIDragAndDrop -> "DRAG_AND_DROP"
-        CADFIGeoLocation -> "GEO_LOCATION"
-        CADFIHashChange -> "HASH_CHANGE"
-        CADFIHistory -> "HISTORY"
-        CADFIIndexedDB -> "INDEXED_DB"
-        CADFIInlineSvg -> "INLINE_SVG"
-        CADFIInputAttrAutocomplete -> "INPUT_ATTR_AUTOCOMPLETE"
-        CADFIInputAttrAutofocus -> "INPUT_ATTR_AUTOFOCUS"
-        CADFIInputAttrList -> "INPUT_ATTR_LIST"
-        CADFIInputAttrMax -> "INPUT_ATTR_MAX"
-        CADFIInputAttrMin -> "INPUT_ATTR_MIN"
-        CADFIInputAttrMultiple -> "INPUT_ATTR_MULTIPLE"
-        CADFIInputAttrPattern -> "INPUT_ATTR_PATTERN"
-        CADFIInputAttrPlaceholder -> "INPUT_ATTR_PLACEHOLDER"
-        CADFIInputAttrRequired -> "INPUT_ATTR_REQUIRED"
-        CADFIInputAttrStep -> "INPUT_ATTR_STEP"
-        CADFIInputTypeColor -> "INPUT_TYPE_COLOR"
-        CADFIInputTypeDate -> "INPUT_TYPE_DATE"
-        CADFIInputTypeDatetime -> "INPUT_TYPE_DATETIME"
-        CADFIInputTypeDatetimeLocal -> "INPUT_TYPE_DATETIME_LOCAL"
-        CADFIInputTypeEmail -> "INPUT_TYPE_EMAIL"
-        CADFIInputTypeMonth -> "INPUT_TYPE_MONTH"
-        CADFIInputTypeNumber -> "INPUT_TYPE_NUMBER"
-        CADFIInputTypeRange -> "INPUT_TYPE_RANGE"
-        CADFIInputTypeSearch -> "INPUT_TYPE_SEARCH"
-        CADFIInputTypeTel -> "INPUT_TYPE_TEL"
-        CADFIInputTypeTime -> "INPUT_TYPE_TIME"
-        CADFIInputTypeURL -> "INPUT_TYPE_URL"
-        CADFIInputTypeWeek -> "INPUT_TYPE_WEEK"
-        CADFILocalStorage -> "LOCAL_STORAGE"
-        CADFIPostMessage -> "POST_MESSAGE"
-        CADFISessionStorage -> "SESSION_STORAGE"
-        CADFISmil -> "SMIL"
-        CADFISvgClipPaths -> "SVG_CLIP_PATHS"
-        CADFISvgFeImage -> "SVG_FE_IMAGE"
-        CADFISvgFilters -> "SVG_FILTERS"
-        CADFISvgHref -> "SVG_HREF"
-        CADFITouch -> "TOUCH"
-        CADFIVideo -> "VIDEO"
-        CADFIWebgl -> "WEBGL"
-        CADFIWebSockets -> "WEB_SOCKETS"
-        CADFIWebSQLDatabase -> "WEB_SQL_DATABASE"
-        CADFIWebWorkers -> "WEB_WORKERS"
-
-instance FromJSON CreativeAssetDetectedFeaturesItem where
-    parseJSON = parseJSONText "CreativeAssetDetectedFeaturesItem"
-
-instance ToJSON CreativeAssetDetectedFeaturesItem where
-    toJSON = toJSONText
-
--- | Type of the floodlight activity group. This is a required field that is
--- read-only after insertion.
-data FloodlightActivityGroupType
-    = FAGTCounter
-      -- ^ @COUNTER@
-    | FAGTSale
-      -- ^ @SALE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityGroupType
-
-instance FromHttpApiData FloodlightActivityGroupType where
-    parseQueryParam = \case
-        "COUNTER" -> Right FAGTCounter
-        "SALE" -> Right FAGTSale
-        x -> Left ("Unable to parse FloodlightActivityGroupType from: " <> x)
-
-instance ToHttpApiData FloodlightActivityGroupType where
-    toQueryParam = \case
-        FAGTCounter -> "COUNTER"
-        FAGTSale -> "SALE"
-
-instance FromJSON FloodlightActivityGroupType where
-    parseJSON = parseJSONText "FloodlightActivityGroupType"
-
-instance ToJSON FloodlightActivityGroupType where
-    toJSON = toJSONText
-
--- | Tag formats to generate for these placements. Note:
--- PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.
-data PlacementsGeneratetagsTagFormats
-    = PGTFPlacementTagClickCommands
-      -- ^ @PLACEMENT_TAG_CLICK_COMMANDS@
-    | PGTFPlacementTagIframeIlayer
-      -- ^ @PLACEMENT_TAG_IFRAME_ILAYER@
-    | PGTFPlacementTagIframeJavascript
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT@
-    | PGTFPlacementTagIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY@
-    | PGTFPlacementTagInstreamVideoPrefetch
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH@
-    | PGTFPlacementTagInstreamVideoPrefetchVast3
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3@
-    | PGTFPlacementTagInstreamVideoPrefetchVast4
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4@
-    | PGTFPlacementTagInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERNAL_REDIRECT@
-    | PGTFPlacementTagInterstitialIframeJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT@
-    | PGTFPlacementTagInterstitialIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY@
-    | PGTFPlacementTagInterstitialInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT@
-    | PGTFPlacementTagInterstitialJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT@
-    | PGTFPlacementTagInterstitialJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY@
-    | PGTFPlacementTagJavascript
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT@
-    | PGTFPlacementTagJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT_LEGACY@
-    | PGTFPlacementTagStandard
-      -- ^ @PLACEMENT_TAG_STANDARD@
-    | PGTFPlacementTagTracking
-      -- ^ @PLACEMENT_TAG_TRACKING@
-    | PGTFPlacementTagTrackingIframe
-      -- ^ @PLACEMENT_TAG_TRACKING_IFRAME@
-    | PGTFPlacementTagTrackingJavascript
-      -- ^ @PLACEMENT_TAG_TRACKING_JAVASCRIPT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsGeneratetagsTagFormats
-
-instance FromHttpApiData PlacementsGeneratetagsTagFormats where
-    parseQueryParam = \case
-        "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PGTFPlacementTagClickCommands
-        "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PGTFPlacementTagIframeIlayer
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PGTFPlacementTagIframeJavascript
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagIframeJavascriptLegacy
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PGTFPlacementTagInstreamVideoPrefetch
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PGTFPlacementTagInstreamVideoPrefetchVast3
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4" -> Right PGTFPlacementTagInstreamVideoPrefetchVast4
-        "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PGTFPlacementTagInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PGTFPlacementTagInterstitialIframeJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagInterstitialIframeJavascriptLegacy
-        "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PGTFPlacementTagInterstitialInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PGTFPlacementTagInterstitialJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagInterstitialJavascriptLegacy
-        "PLACEMENT_TAG_JAVASCRIPT" -> Right PGTFPlacementTagJavascript
-        "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagJavascriptLegacy
-        "PLACEMENT_TAG_STANDARD" -> Right PGTFPlacementTagStandard
-        "PLACEMENT_TAG_TRACKING" -> Right PGTFPlacementTagTracking
-        "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PGTFPlacementTagTrackingIframe
-        "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PGTFPlacementTagTrackingJavascript
-        x -> Left ("Unable to parse PlacementsGeneratetagsTagFormats from: " <> x)
-
-instance ToHttpApiData PlacementsGeneratetagsTagFormats where
-    toQueryParam = \case
-        PGTFPlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
-        PGTFPlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
-        PGTFPlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
-        PGTFPlacementTagIframeJavascriptLegacy -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
-        PGTFPlacementTagInstreamVideoPrefetch -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
-        PGTFPlacementTagInstreamVideoPrefetchVast3 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
-        PGTFPlacementTagInstreamVideoPrefetchVast4 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
-        PGTFPlacementTagInternalRedirect -> "PLACEMENT_TAG_INTERNAL_REDIRECT"
-        PGTFPlacementTagInterstitialIframeJavascript -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
-        PGTFPlacementTagInterstitialIframeJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
-        PGTFPlacementTagInterstitialInternalRedirect -> "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
-        PGTFPlacementTagInterstitialJavascript -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
-        PGTFPlacementTagInterstitialJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
-        PGTFPlacementTagJavascript -> "PLACEMENT_TAG_JAVASCRIPT"
-        PGTFPlacementTagJavascriptLegacy -> "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
-        PGTFPlacementTagStandard -> "PLACEMENT_TAG_STANDARD"
-        PGTFPlacementTagTracking -> "PLACEMENT_TAG_TRACKING"
-        PGTFPlacementTagTrackingIframe -> "PLACEMENT_TAG_TRACKING_IFRAME"
-        PGTFPlacementTagTrackingJavascript -> "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
-
-instance FromJSON PlacementsGeneratetagsTagFormats where
-    parseJSON = parseJSONText "PlacementsGeneratetagsTagFormats"
-
-instance ToJSON PlacementsGeneratetagsTagFormats where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AccountUserProFilesListSortField
-    = AUPFLSFID
-      -- ^ @ID@
-    | AUPFLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountUserProFilesListSortField
-
-instance FromHttpApiData AccountUserProFilesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right AUPFLSFID
-        "NAME" -> Right AUPFLSFName
-        x -> Left ("Unable to parse AccountUserProFilesListSortField from: " <> x)
-
-instance ToHttpApiData AccountUserProFilesListSortField where
-    toQueryParam = \case
-        AUPFLSFID -> "ID"
-        AUPFLSFName -> "NAME"
-
-instance FromJSON AccountUserProFilesListSortField where
-    parseJSON = parseJSONText "AccountUserProFilesListSortField"
-
-instance ToJSON AccountUserProFilesListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data InventoryItemsListSortOrder
-    = IILSOAscending
-      -- ^ @ASCENDING@
-    | IILSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable InventoryItemsListSortOrder
-
-instance FromHttpApiData InventoryItemsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right IILSOAscending
-        "DESCENDING" -> Right IILSODescending
-        x -> Left ("Unable to parse InventoryItemsListSortOrder from: " <> x)
-
-instance ToHttpApiData InventoryItemsListSortOrder where
-    toQueryParam = \case
-        IILSOAscending -> "ASCENDING"
-        IILSODescending -> "DESCENDING"
-
-instance FromJSON InventoryItemsListSortOrder where
-    parseJSON = parseJSONText "InventoryItemsListSortOrder"
-
-instance ToJSON InventoryItemsListSortOrder where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data PlacementStrategiesListSortOrder
-    = PSLSOAscending
-      -- ^ @ASCENDING@
-    | PSLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementStrategiesListSortOrder
-
-instance FromHttpApiData PlacementStrategiesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right PSLSOAscending
-        "DESCENDING" -> Right PSLSODescending
-        x -> Left ("Unable to parse PlacementStrategiesListSortOrder from: " <> x)
-
-instance ToHttpApiData PlacementStrategiesListSortOrder where
-    toQueryParam = \case
-        PSLSOAscending -> "ASCENDING"
-        PSLSODescending -> "DESCENDING"
-
-instance FromJSON PlacementStrategiesListSortOrder where
-    parseJSON = parseJSONText "PlacementStrategiesListSortOrder"
-
-instance ToJSON PlacementStrategiesListSortOrder where
-    toJSON = toJSONText
-
--- | The field by which to sort the list.
-data ReportsFilesListSortField
-    = RFLSFID
-      -- ^ @ID@
-      -- Sort by file ID.
-    | RFLSFLastModifiedTime
-      -- ^ @LAST_MODIFIED_TIME@
-      -- Sort by \'lastmodifiedAt\' field.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportsFilesListSortField
-
-instance FromHttpApiData ReportsFilesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right RFLSFID
-        "LAST_MODIFIED_TIME" -> Right RFLSFLastModifiedTime
-        x -> Left ("Unable to parse ReportsFilesListSortField from: " <> x)
-
-instance ToHttpApiData ReportsFilesListSortField where
-    toQueryParam = \case
-        RFLSFID -> "ID"
-        RFLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
-
-instance FromJSON ReportsFilesListSortField where
-    parseJSON = parseJSONText "ReportsFilesListSortField"
-
-instance ToJSON ReportsFilesListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data CreativesListSortField
-    = CID
-      -- ^ @ID@
-    | CName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativesListSortField
-
-instance FromHttpApiData CreativesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CID
-        "NAME" -> Right CName
-        x -> Left ("Unable to parse CreativesListSortField from: " <> x)
-
-instance ToHttpApiData CreativesListSortField where
-    toQueryParam = \case
-        CID -> "ID"
-        CName -> "NAME"
-
-instance FromJSON CreativesListSortField where
-    parseJSON = parseJSONText "CreativesListSortField"
-
-instance ToJSON CreativesListSortField where
-    toJSON = toJSONText
-
-data DayPartTargetingDaysOfWeekItem
-    = DPTDOWIFriday
-      -- ^ @FRIDAY@
-    | DPTDOWIMonday
-      -- ^ @MONDAY@
-    | DPTDOWISaturday
-      -- ^ @SATURDAY@
-    | DPTDOWISunday
-      -- ^ @SUNDAY@
-    | DPTDOWIThursday
-      -- ^ @THURSDAY@
-    | DPTDOWITuesday
-      -- ^ @TUESDAY@
-    | DPTDOWIWednesday
-      -- ^ @WEDNESDAY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DayPartTargetingDaysOfWeekItem
-
-instance FromHttpApiData DayPartTargetingDaysOfWeekItem where
-    parseQueryParam = \case
-        "FRIDAY" -> Right DPTDOWIFriday
-        "MONDAY" -> Right DPTDOWIMonday
-        "SATURDAY" -> Right DPTDOWISaturday
-        "SUNDAY" -> Right DPTDOWISunday
-        "THURSDAY" -> Right DPTDOWIThursday
-        "TUESDAY" -> Right DPTDOWITuesday
-        "WEDNESDAY" -> Right DPTDOWIWednesday
-        x -> Left ("Unable to parse DayPartTargetingDaysOfWeekItem from: " <> x)
-
-instance ToHttpApiData DayPartTargetingDaysOfWeekItem where
-    toQueryParam = \case
-        DPTDOWIFriday -> "FRIDAY"
-        DPTDOWIMonday -> "MONDAY"
-        DPTDOWISaturday -> "SATURDAY"
-        DPTDOWISunday -> "SUNDAY"
-        DPTDOWIThursday -> "THURSDAY"
-        DPTDOWITuesday -> "TUESDAY"
-        DPTDOWIWednesday -> "WEDNESDAY"
-
-instance FromJSON DayPartTargetingDaysOfWeekItem where
-    parseJSON = parseJSONText "DayPartTargetingDaysOfWeekItem"
-
-instance ToJSON DayPartTargetingDaysOfWeekItem where
-    toJSON = toJSONText
-
--- | Strategy for calculating weights. Used with
--- CREATIVE_ROTATION_TYPE_RANDOM.
-data CreativeRotationWeightCalculationStrategy
-    = WeightStrategyCustom
-      -- ^ @WEIGHT_STRATEGY_CUSTOM@
-    | WeightStrategyEqual
-      -- ^ @WEIGHT_STRATEGY_EQUAL@
-    | WeightStrategyHighestCtr
-      -- ^ @WEIGHT_STRATEGY_HIGHEST_CTR@
-    | WeightStrategyOptimized
-      -- ^ @WEIGHT_STRATEGY_OPTIMIZED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeRotationWeightCalculationStrategy
-
-instance FromHttpApiData CreativeRotationWeightCalculationStrategy where
-    parseQueryParam = \case
-        "WEIGHT_STRATEGY_CUSTOM" -> Right WeightStrategyCustom
-        "WEIGHT_STRATEGY_EQUAL" -> Right WeightStrategyEqual
-        "WEIGHT_STRATEGY_HIGHEST_CTR" -> Right WeightStrategyHighestCtr
-        "WEIGHT_STRATEGY_OPTIMIZED" -> Right WeightStrategyOptimized
-        x -> Left ("Unable to parse CreativeRotationWeightCalculationStrategy from: " <> x)
-
-instance ToHttpApiData CreativeRotationWeightCalculationStrategy where
-    toQueryParam = \case
-        WeightStrategyCustom -> "WEIGHT_STRATEGY_CUSTOM"
-        WeightStrategyEqual -> "WEIGHT_STRATEGY_EQUAL"
-        WeightStrategyHighestCtr -> "WEIGHT_STRATEGY_HIGHEST_CTR"
-        WeightStrategyOptimized -> "WEIGHT_STRATEGY_OPTIMIZED"
-
-instance FromJSON CreativeRotationWeightCalculationStrategy where
-    parseJSON = parseJSONText "CreativeRotationWeightCalculationStrategy"
-
-instance ToJSON CreativeRotationWeightCalculationStrategy where
-    toJSON = toJSONText
-
--- | The scope that defines which results are returned.
-data FilesListScope
-    = FLSAll
-      -- ^ @ALL@
-      -- All files in account.
-    | FLSMine
-      -- ^ @MINE@
-      -- My files.
-    | FLSSharedWithMe
-      -- ^ @SHARED_WITH_ME@
-      -- Files shared with me.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FilesListScope
-
-instance FromHttpApiData FilesListScope where
-    parseQueryParam = \case
-        "ALL" -> Right FLSAll
-        "MINE" -> Right FLSMine
-        "SHARED_WITH_ME" -> Right FLSSharedWithMe
-        x -> Left ("Unable to parse FilesListScope from: " <> x)
-
-instance ToHttpApiData FilesListScope where
-    toQueryParam = \case
-        FLSAll -> "ALL"
-        FLSMine -> "MINE"
-        FLSSharedWithMe -> "SHARED_WITH_ME"
-
-instance FromJSON FilesListScope where
-    parseJSON = parseJSONText "FilesListScope"
-
-instance ToJSON FilesListScope where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data ContentCategoriesListSortField
-    = CCLSFID
-      -- ^ @ID@
-    | CCLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ContentCategoriesListSortField
-
-instance FromHttpApiData ContentCategoriesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CCLSFID
-        "NAME" -> Right CCLSFName
-        x -> Left ("Unable to parse ContentCategoriesListSortField from: " <> x)
-
-instance ToHttpApiData ContentCategoriesListSortField where
-    toQueryParam = \case
-        CCLSFID -> "ID"
-        CCLSFName -> "NAME"
-
-instance FromJSON ContentCategoriesListSortField where
-    parseJSON = parseJSONText "ContentCategoriesListSortField"
-
-instance ToJSON ContentCategoriesListSortField where
-    toJSON = toJSONText
-
--- | Audience age group of this project.
-data ProjectAudienceAgeGroup
-    = PlanningAudienceAge1824
-      -- ^ @PLANNING_AUDIENCE_AGE_18_24@
-    | PlanningAudienceAge2534
-      -- ^ @PLANNING_AUDIENCE_AGE_25_34@
-    | PlanningAudienceAge3544
-      -- ^ @PLANNING_AUDIENCE_AGE_35_44@
-    | PlanningAudienceAge4554
-      -- ^ @PLANNING_AUDIENCE_AGE_45_54@
-    | PlanningAudienceAge5564
-      -- ^ @PLANNING_AUDIENCE_AGE_55_64@
-    | PlanningAudienceAge65OrMore
-      -- ^ @PLANNING_AUDIENCE_AGE_65_OR_MORE@
-    | PlanningAudienceAgeUnknown
-      -- ^ @PLANNING_AUDIENCE_AGE_UNKNOWN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ProjectAudienceAgeGroup
-
-instance FromHttpApiData ProjectAudienceAgeGroup where
-    parseQueryParam = \case
-        "PLANNING_AUDIENCE_AGE_18_24" -> Right PlanningAudienceAge1824
-        "PLANNING_AUDIENCE_AGE_25_34" -> Right PlanningAudienceAge2534
-        "PLANNING_AUDIENCE_AGE_35_44" -> Right PlanningAudienceAge3544
-        "PLANNING_AUDIENCE_AGE_45_54" -> Right PlanningAudienceAge4554
-        "PLANNING_AUDIENCE_AGE_55_64" -> Right PlanningAudienceAge5564
-        "PLANNING_AUDIENCE_AGE_65_OR_MORE" -> Right PlanningAudienceAge65OrMore
-        "PLANNING_AUDIENCE_AGE_UNKNOWN" -> Right PlanningAudienceAgeUnknown
-        x -> Left ("Unable to parse ProjectAudienceAgeGroup from: " <> x)
-
-instance ToHttpApiData ProjectAudienceAgeGroup where
-    toQueryParam = \case
-        PlanningAudienceAge1824 -> "PLANNING_AUDIENCE_AGE_18_24"
-        PlanningAudienceAge2534 -> "PLANNING_AUDIENCE_AGE_25_34"
-        PlanningAudienceAge3544 -> "PLANNING_AUDIENCE_AGE_35_44"
-        PlanningAudienceAge4554 -> "PLANNING_AUDIENCE_AGE_45_54"
-        PlanningAudienceAge5564 -> "PLANNING_AUDIENCE_AGE_55_64"
-        PlanningAudienceAge65OrMore -> "PLANNING_AUDIENCE_AGE_65_OR_MORE"
-        PlanningAudienceAgeUnknown -> "PLANNING_AUDIENCE_AGE_UNKNOWN"
-
-instance FromJSON ProjectAudienceAgeGroup where
-    parseJSON = parseJSONText "ProjectAudienceAgeGroup"
-
-instance ToJSON ProjectAudienceAgeGroup where
-    toJSON = toJSONText
-
--- | Type of ad. This is a required field on insertion. Note that default ads
--- (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative
--- resource).
-data AdType
-    = ATAdServingClickTracker
-      -- ^ @AD_SERVING_CLICK_TRACKER@
-    | ATAdServingDefaultAd
-      -- ^ @AD_SERVING_DEFAULT_AD@
-    | ATAdServingStandardAd
-      -- ^ @AD_SERVING_STANDARD_AD@
-    | ATAdServingTracking
-      -- ^ @AD_SERVING_TRACKING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdType
-
-instance FromHttpApiData AdType where
-    parseQueryParam = \case
-        "AD_SERVING_CLICK_TRACKER" -> Right ATAdServingClickTracker
-        "AD_SERVING_DEFAULT_AD" -> Right ATAdServingDefaultAd
-        "AD_SERVING_STANDARD_AD" -> Right ATAdServingStandardAd
-        "AD_SERVING_TRACKING" -> Right ATAdServingTracking
-        x -> Left ("Unable to parse AdType from: " <> x)
-
-instance ToHttpApiData AdType where
-    toQueryParam = \case
-        ATAdServingClickTracker -> "AD_SERVING_CLICK_TRACKER"
-        ATAdServingDefaultAd -> "AD_SERVING_DEFAULT_AD"
-        ATAdServingStandardAd -> "AD_SERVING_STANDARD_AD"
-        ATAdServingTracking -> "AD_SERVING_TRACKING"
-
-instance FromJSON AdType where
-    parseJSON = parseJSONText "AdType"
-
-instance ToJSON AdType where
-    toJSON = toJSONText
-
--- | Select only change logs with the specified action.
-data ChangeLogsListAction
-    = ActionAdd
-      -- ^ @ACTION_ADD@
-    | ActionAssign
-      -- ^ @ACTION_ASSIGN@
-    | ActionAssociate
-      -- ^ @ACTION_ASSOCIATE@
-    | ActionCreate
-      -- ^ @ACTION_CREATE@
-    | ActionDelete
-      -- ^ @ACTION_DELETE@
-    | ActionDisable
-      -- ^ @ACTION_DISABLE@
-    | ActionEmailTags
-      -- ^ @ACTION_EMAIL_TAGS@
-    | ActionEnable
-      -- ^ @ACTION_ENABLE@
-    | ActionLink
-      -- ^ @ACTION_LINK@
-    | ActionMarkAsDefault
-      -- ^ @ACTION_MARK_AS_DEFAULT@
-    | ActionPush
-      -- ^ @ACTION_PUSH@
-    | ActionRemove
-      -- ^ @ACTION_REMOVE@
-    | ActionSend
-      -- ^ @ACTION_SEND@
-    | ActionShare
-      -- ^ @ACTION_SHARE@
-    | ActionUnassign
-      -- ^ @ACTION_UNASSIGN@
-    | ActionUnlink
-      -- ^ @ACTION_UNLINK@
-    | ActionUpdate
-      -- ^ @ACTION_UPDATE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ChangeLogsListAction
-
-instance FromHttpApiData ChangeLogsListAction where
-    parseQueryParam = \case
-        "ACTION_ADD" -> Right ActionAdd
-        "ACTION_ASSIGN" -> Right ActionAssign
-        "ACTION_ASSOCIATE" -> Right ActionAssociate
-        "ACTION_CREATE" -> Right ActionCreate
-        "ACTION_DELETE" -> Right ActionDelete
-        "ACTION_DISABLE" -> Right ActionDisable
-        "ACTION_EMAIL_TAGS" -> Right ActionEmailTags
-        "ACTION_ENABLE" -> Right ActionEnable
-        "ACTION_LINK" -> Right ActionLink
-        "ACTION_MARK_AS_DEFAULT" -> Right ActionMarkAsDefault
-        "ACTION_PUSH" -> Right ActionPush
-        "ACTION_REMOVE" -> Right ActionRemove
-        "ACTION_SEND" -> Right ActionSend
-        "ACTION_SHARE" -> Right ActionShare
-        "ACTION_UNASSIGN" -> Right ActionUnassign
-        "ACTION_UNLINK" -> Right ActionUnlink
-        "ACTION_UPDATE" -> Right ActionUpdate
-        x -> Left ("Unable to parse ChangeLogsListAction from: " <> x)
-
-instance ToHttpApiData ChangeLogsListAction where
-    toQueryParam = \case
-        ActionAdd -> "ACTION_ADD"
-        ActionAssign -> "ACTION_ASSIGN"
-        ActionAssociate -> "ACTION_ASSOCIATE"
-        ActionCreate -> "ACTION_CREATE"
-        ActionDelete -> "ACTION_DELETE"
-        ActionDisable -> "ACTION_DISABLE"
-        ActionEmailTags -> "ACTION_EMAIL_TAGS"
-        ActionEnable -> "ACTION_ENABLE"
-        ActionLink -> "ACTION_LINK"
-        ActionMarkAsDefault -> "ACTION_MARK_AS_DEFAULT"
-        ActionPush -> "ACTION_PUSH"
-        ActionRemove -> "ACTION_REMOVE"
-        ActionSend -> "ACTION_SEND"
-        ActionShare -> "ACTION_SHARE"
-        ActionUnassign -> "ACTION_UNASSIGN"
-        ActionUnlink -> "ACTION_UNLINK"
-        ActionUpdate -> "ACTION_UPDATE"
-
-instance FromJSON ChangeLogsListAction where
-    parseJSON = parseJSONText "ChangeLogsListAction"
-
-instance ToJSON ChangeLogsListAction where
-    toJSON = toJSONText
-
--- | Type of artwork used for the creative. This is a read-only field.
--- Applicable to the following creative types: all RICH_MEDIA, and all
--- VPAID.
-data CreativeArtworkType
-    = CATArtworkTypeFlash
-      -- ^ @ARTWORK_TYPE_FLASH@
-    | CATArtworkTypeHTML5
-      -- ^ @ARTWORK_TYPE_HTML5@
-    | CATArtworkTypeImage
-      -- ^ @ARTWORK_TYPE_IMAGE@
-    | CATArtworkTypeMixed
-      -- ^ @ARTWORK_TYPE_MIXED@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeArtworkType
-
-instance FromHttpApiData CreativeArtworkType where
-    parseQueryParam = \case
-        "ARTWORK_TYPE_FLASH" -> Right CATArtworkTypeFlash
-        "ARTWORK_TYPE_HTML5" -> Right CATArtworkTypeHTML5
-        "ARTWORK_TYPE_IMAGE" -> Right CATArtworkTypeImage
-        "ARTWORK_TYPE_MIXED" -> Right CATArtworkTypeMixed
-        x -> Left ("Unable to parse CreativeArtworkType from: " <> x)
-
-instance ToHttpApiData CreativeArtworkType where
-    toQueryParam = \case
-        CATArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
-        CATArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
-        CATArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
-        CATArtworkTypeMixed -> "ARTWORK_TYPE_MIXED"
-
-instance FromJSON CreativeArtworkType where
-    parseJSON = parseJSONText "CreativeArtworkType"
-
-instance ToJSON CreativeArtworkType where
-    toJSON = toJSONText
-
--- | Third-party placement status.
-data PlacementStatus
-    = AcknowledgeAcceptance
-      -- ^ @ACKNOWLEDGE_ACCEPTANCE@
-    | AcknowledgeRejection
-      -- ^ @ACKNOWLEDGE_REJECTION@
-    | Draft
-      -- ^ @DRAFT@
-    | PaymentAccepted
-      -- ^ @PAYMENT_ACCEPTED@
-    | PaymentRejected
-      -- ^ @PAYMENT_REJECTED@
-    | PendingReview
-      -- ^ @PENDING_REVIEW@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementStatus
-
-instance FromHttpApiData PlacementStatus where
-    parseQueryParam = \case
-        "ACKNOWLEDGE_ACCEPTANCE" -> Right AcknowledgeAcceptance
-        "ACKNOWLEDGE_REJECTION" -> Right AcknowledgeRejection
-        "DRAFT" -> Right Draft
-        "PAYMENT_ACCEPTED" -> Right PaymentAccepted
-        "PAYMENT_REJECTED" -> Right PaymentRejected
-        "PENDING_REVIEW" -> Right PendingReview
-        x -> Left ("Unable to parse PlacementStatus from: " <> x)
-
-instance ToHttpApiData PlacementStatus where
-    toQueryParam = \case
-        AcknowledgeAcceptance -> "ACKNOWLEDGE_ACCEPTANCE"
-        AcknowledgeRejection -> "ACKNOWLEDGE_REJECTION"
-        Draft -> "DRAFT"
-        PaymentAccepted -> "PAYMENT_ACCEPTED"
-        PaymentRejected -> "PAYMENT_REJECTED"
-        PendingReview -> "PENDING_REVIEW"
-
-instance FromJSON PlacementStatus where
-    parseJSON = parseJSONText "PlacementStatus"
-
-instance ToJSON PlacementStatus where
-    toJSON = toJSONText
-
--- | Enum to define for \"MONTHLY\" scheduled reports whether reports should
--- be repeated on the same day of the month as \"startDate\" or the same
--- day of the week of the month. Example: If \'startDate\' is Monday, April
--- 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on
--- the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent
--- reports on the first Monday of the month.
-data ReportScheduleRunsOnDayOfMonth
-    = DayOfMonth
-      -- ^ @DAY_OF_MONTH@
-    | WeekOfMonth
-      -- ^ @WEEK_OF_MONTH@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportScheduleRunsOnDayOfMonth
-
-instance FromHttpApiData ReportScheduleRunsOnDayOfMonth where
-    parseQueryParam = \case
-        "DAY_OF_MONTH" -> Right DayOfMonth
-        "WEEK_OF_MONTH" -> Right WeekOfMonth
-        x -> Left ("Unable to parse ReportScheduleRunsOnDayOfMonth from: " <> x)
-
-instance ToHttpApiData ReportScheduleRunsOnDayOfMonth where
-    toQueryParam = \case
-        DayOfMonth -> "DAY_OF_MONTH"
-        WeekOfMonth -> "WEEK_OF_MONTH"
-
-instance FromJSON ReportScheduleRunsOnDayOfMonth where
-    parseJSON = parseJSONText "ReportScheduleRunsOnDayOfMonth"
-
-instance ToJSON ReportScheduleRunsOnDayOfMonth where
-    toJSON = toJSONText
-
-data FloodlightActivityUserDefinedVariableTypesItem
-    = FAUDVTIU1
-      -- ^ @U1@
-    | FAUDVTIU10
-      -- ^ @U10@
-    | FAUDVTIU100
-      -- ^ @U100@
-    | FAUDVTIU11
-      -- ^ @U11@
-    | FAUDVTIU12
-      -- ^ @U12@
-    | FAUDVTIU13
-      -- ^ @U13@
-    | FAUDVTIU14
-      -- ^ @U14@
-    | FAUDVTIU15
-      -- ^ @U15@
-    | FAUDVTIU16
-      -- ^ @U16@
-    | FAUDVTIU17
-      -- ^ @U17@
-    | FAUDVTIU18
-      -- ^ @U18@
-    | FAUDVTIU19
-      -- ^ @U19@
-    | FAUDVTIU2
-      -- ^ @U2@
-    | FAUDVTIU20
-      -- ^ @U20@
-    | FAUDVTIU21
-      -- ^ @U21@
-    | FAUDVTIU22
-      -- ^ @U22@
-    | FAUDVTIU23
-      -- ^ @U23@
-    | FAUDVTIU24
-      -- ^ @U24@
-    | FAUDVTIU25
-      -- ^ @U25@
-    | FAUDVTIU26
-      -- ^ @U26@
-    | FAUDVTIU27
-      -- ^ @U27@
-    | FAUDVTIU28
-      -- ^ @U28@
-    | FAUDVTIU29
-      -- ^ @U29@
-    | FAUDVTIU3
-      -- ^ @U3@
-    | FAUDVTIU30
-      -- ^ @U30@
-    | FAUDVTIU31
-      -- ^ @U31@
-    | FAUDVTIU32
-      -- ^ @U32@
-    | FAUDVTIU33
-      -- ^ @U33@
-    | FAUDVTIU34
-      -- ^ @U34@
-    | FAUDVTIU35
-      -- ^ @U35@
-    | FAUDVTIU36
-      -- ^ @U36@
-    | FAUDVTIU37
-      -- ^ @U37@
-    | FAUDVTIU38
-      -- ^ @U38@
-    | FAUDVTIU39
-      -- ^ @U39@
-    | FAUDVTIU4
-      -- ^ @U4@
-    | FAUDVTIU40
-      -- ^ @U40@
-    | FAUDVTIU41
-      -- ^ @U41@
-    | FAUDVTIU42
-      -- ^ @U42@
-    | FAUDVTIU43
-      -- ^ @U43@
-    | FAUDVTIU44
-      -- ^ @U44@
-    | FAUDVTIU45
-      -- ^ @U45@
-    | FAUDVTIU46
-      -- ^ @U46@
-    | FAUDVTIU47
-      -- ^ @U47@
-    | FAUDVTIU48
-      -- ^ @U48@
-    | FAUDVTIU49
-      -- ^ @U49@
-    | FAUDVTIU5
-      -- ^ @U5@
-    | FAUDVTIU50
-      -- ^ @U50@
-    | FAUDVTIU51
-      -- ^ @U51@
-    | FAUDVTIU52
-      -- ^ @U52@
-    | FAUDVTIU53
-      -- ^ @U53@
-    | FAUDVTIU54
-      -- ^ @U54@
-    | FAUDVTIU55
-      -- ^ @U55@
-    | FAUDVTIU56
-      -- ^ @U56@
-    | FAUDVTIU57
-      -- ^ @U57@
-    | FAUDVTIU58
-      -- ^ @U58@
-    | FAUDVTIU59
-      -- ^ @U59@
-    | FAUDVTIU6
-      -- ^ @U6@
-    | FAUDVTIU60
-      -- ^ @U60@
-    | FAUDVTIU61
-      -- ^ @U61@
-    | FAUDVTIU62
-      -- ^ @U62@
-    | FAUDVTIU63
-      -- ^ @U63@
-    | FAUDVTIU64
-      -- ^ @U64@
-    | FAUDVTIU65
-      -- ^ @U65@
-    | FAUDVTIU66
-      -- ^ @U66@
-    | FAUDVTIU67
-      -- ^ @U67@
-    | FAUDVTIU68
-      -- ^ @U68@
-    | FAUDVTIU69
-      -- ^ @U69@
-    | FAUDVTIU7
-      -- ^ @U7@
-    | FAUDVTIU70
-      -- ^ @U70@
-    | FAUDVTIU71
-      -- ^ @U71@
-    | FAUDVTIU72
-      -- ^ @U72@
-    | FAUDVTIU73
-      -- ^ @U73@
-    | FAUDVTIU74
-      -- ^ @U74@
-    | FAUDVTIU75
-      -- ^ @U75@
-    | FAUDVTIU76
-      -- ^ @U76@
-    | FAUDVTIU77
-      -- ^ @U77@
-    | FAUDVTIU78
-      -- ^ @U78@
-    | FAUDVTIU79
-      -- ^ @U79@
-    | FAUDVTIU8
-      -- ^ @U8@
-    | FAUDVTIU80
-      -- ^ @U80@
-    | FAUDVTIU81
-      -- ^ @U81@
-    | FAUDVTIU82
-      -- ^ @U82@
-    | FAUDVTIU83
-      -- ^ @U83@
-    | FAUDVTIU84
-      -- ^ @U84@
-    | FAUDVTIU85
-      -- ^ @U85@
-    | FAUDVTIU86
-      -- ^ @U86@
-    | FAUDVTIU87
-      -- ^ @U87@
-    | FAUDVTIU88
-      -- ^ @U88@
-    | FAUDVTIU89
-      -- ^ @U89@
-    | FAUDVTIU9
-      -- ^ @U9@
-    | FAUDVTIU90
-      -- ^ @U90@
-    | FAUDVTIU91
-      -- ^ @U91@
-    | FAUDVTIU92
-      -- ^ @U92@
-    | FAUDVTIU93
-      -- ^ @U93@
-    | FAUDVTIU94
-      -- ^ @U94@
-    | FAUDVTIU95
-      -- ^ @U95@
-    | FAUDVTIU96
-      -- ^ @U96@
-    | FAUDVTIU97
-      -- ^ @U97@
-    | FAUDVTIU98
-      -- ^ @U98@
-    | FAUDVTIU99
-      -- ^ @U99@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityUserDefinedVariableTypesItem
-
-instance FromHttpApiData FloodlightActivityUserDefinedVariableTypesItem where
-    parseQueryParam = \case
-        "U1" -> Right FAUDVTIU1
-        "U10" -> Right FAUDVTIU10
-        "U100" -> Right FAUDVTIU100
-        "U11" -> Right FAUDVTIU11
-        "U12" -> Right FAUDVTIU12
-        "U13" -> Right FAUDVTIU13
-        "U14" -> Right FAUDVTIU14
-        "U15" -> Right FAUDVTIU15
-        "U16" -> Right FAUDVTIU16
-        "U17" -> Right FAUDVTIU17
-        "U18" -> Right FAUDVTIU18
-        "U19" -> Right FAUDVTIU19
-        "U2" -> Right FAUDVTIU2
-        "U20" -> Right FAUDVTIU20
-        "U21" -> Right FAUDVTIU21
-        "U22" -> Right FAUDVTIU22
-        "U23" -> Right FAUDVTIU23
-        "U24" -> Right FAUDVTIU24
-        "U25" -> Right FAUDVTIU25
-        "U26" -> Right FAUDVTIU26
-        "U27" -> Right FAUDVTIU27
-        "U28" -> Right FAUDVTIU28
-        "U29" -> Right FAUDVTIU29
-        "U3" -> Right FAUDVTIU3
-        "U30" -> Right FAUDVTIU30
-        "U31" -> Right FAUDVTIU31
-        "U32" -> Right FAUDVTIU32
-        "U33" -> Right FAUDVTIU33
-        "U34" -> Right FAUDVTIU34
-        "U35" -> Right FAUDVTIU35
-        "U36" -> Right FAUDVTIU36
-        "U37" -> Right FAUDVTIU37
-        "U38" -> Right FAUDVTIU38
-        "U39" -> Right FAUDVTIU39
-        "U4" -> Right FAUDVTIU4
-        "U40" -> Right FAUDVTIU40
-        "U41" -> Right FAUDVTIU41
-        "U42" -> Right FAUDVTIU42
-        "U43" -> Right FAUDVTIU43
-        "U44" -> Right FAUDVTIU44
-        "U45" -> Right FAUDVTIU45
-        "U46" -> Right FAUDVTIU46
-        "U47" -> Right FAUDVTIU47
-        "U48" -> Right FAUDVTIU48
-        "U49" -> Right FAUDVTIU49
-        "U5" -> Right FAUDVTIU5
-        "U50" -> Right FAUDVTIU50
-        "U51" -> Right FAUDVTIU51
-        "U52" -> Right FAUDVTIU52
-        "U53" -> Right FAUDVTIU53
-        "U54" -> Right FAUDVTIU54
-        "U55" -> Right FAUDVTIU55
-        "U56" -> Right FAUDVTIU56
-        "U57" -> Right FAUDVTIU57
-        "U58" -> Right FAUDVTIU58
-        "U59" -> Right FAUDVTIU59
-        "U6" -> Right FAUDVTIU6
-        "U60" -> Right FAUDVTIU60
-        "U61" -> Right FAUDVTIU61
-        "U62" -> Right FAUDVTIU62
-        "U63" -> Right FAUDVTIU63
-        "U64" -> Right FAUDVTIU64
-        "U65" -> Right FAUDVTIU65
-        "U66" -> Right FAUDVTIU66
-        "U67" -> Right FAUDVTIU67
-        "U68" -> Right FAUDVTIU68
-        "U69" -> Right FAUDVTIU69
-        "U7" -> Right FAUDVTIU7
-        "U70" -> Right FAUDVTIU70
-        "U71" -> Right FAUDVTIU71
-        "U72" -> Right FAUDVTIU72
-        "U73" -> Right FAUDVTIU73
-        "U74" -> Right FAUDVTIU74
-        "U75" -> Right FAUDVTIU75
-        "U76" -> Right FAUDVTIU76
-        "U77" -> Right FAUDVTIU77
-        "U78" -> Right FAUDVTIU78
-        "U79" -> Right FAUDVTIU79
-        "U8" -> Right FAUDVTIU8
-        "U80" -> Right FAUDVTIU80
-        "U81" -> Right FAUDVTIU81
-        "U82" -> Right FAUDVTIU82
-        "U83" -> Right FAUDVTIU83
-        "U84" -> Right FAUDVTIU84
-        "U85" -> Right FAUDVTIU85
-        "U86" -> Right FAUDVTIU86
-        "U87" -> Right FAUDVTIU87
-        "U88" -> Right FAUDVTIU88
-        "U89" -> Right FAUDVTIU89
-        "U9" -> Right FAUDVTIU9
-        "U90" -> Right FAUDVTIU90
-        "U91" -> Right FAUDVTIU91
-        "U92" -> Right FAUDVTIU92
-        "U93" -> Right FAUDVTIU93
-        "U94" -> Right FAUDVTIU94
-        "U95" -> Right FAUDVTIU95
-        "U96" -> Right FAUDVTIU96
-        "U97" -> Right FAUDVTIU97
-        "U98" -> Right FAUDVTIU98
-        "U99" -> Right FAUDVTIU99
-        x -> Left ("Unable to parse FloodlightActivityUserDefinedVariableTypesItem from: " <> x)
-
-instance ToHttpApiData FloodlightActivityUserDefinedVariableTypesItem where
-    toQueryParam = \case
-        FAUDVTIU1 -> "U1"
-        FAUDVTIU10 -> "U10"
-        FAUDVTIU100 -> "U100"
-        FAUDVTIU11 -> "U11"
-        FAUDVTIU12 -> "U12"
-        FAUDVTIU13 -> "U13"
-        FAUDVTIU14 -> "U14"
-        FAUDVTIU15 -> "U15"
-        FAUDVTIU16 -> "U16"
-        FAUDVTIU17 -> "U17"
-        FAUDVTIU18 -> "U18"
-        FAUDVTIU19 -> "U19"
-        FAUDVTIU2 -> "U2"
-        FAUDVTIU20 -> "U20"
-        FAUDVTIU21 -> "U21"
-        FAUDVTIU22 -> "U22"
-        FAUDVTIU23 -> "U23"
-        FAUDVTIU24 -> "U24"
-        FAUDVTIU25 -> "U25"
-        FAUDVTIU26 -> "U26"
-        FAUDVTIU27 -> "U27"
-        FAUDVTIU28 -> "U28"
-        FAUDVTIU29 -> "U29"
-        FAUDVTIU3 -> "U3"
-        FAUDVTIU30 -> "U30"
-        FAUDVTIU31 -> "U31"
-        FAUDVTIU32 -> "U32"
-        FAUDVTIU33 -> "U33"
-        FAUDVTIU34 -> "U34"
-        FAUDVTIU35 -> "U35"
-        FAUDVTIU36 -> "U36"
-        FAUDVTIU37 -> "U37"
-        FAUDVTIU38 -> "U38"
-        FAUDVTIU39 -> "U39"
-        FAUDVTIU4 -> "U4"
-        FAUDVTIU40 -> "U40"
-        FAUDVTIU41 -> "U41"
-        FAUDVTIU42 -> "U42"
-        FAUDVTIU43 -> "U43"
-        FAUDVTIU44 -> "U44"
-        FAUDVTIU45 -> "U45"
-        FAUDVTIU46 -> "U46"
-        FAUDVTIU47 -> "U47"
-        FAUDVTIU48 -> "U48"
-        FAUDVTIU49 -> "U49"
-        FAUDVTIU5 -> "U5"
-        FAUDVTIU50 -> "U50"
-        FAUDVTIU51 -> "U51"
-        FAUDVTIU52 -> "U52"
-        FAUDVTIU53 -> "U53"
-        FAUDVTIU54 -> "U54"
-        FAUDVTIU55 -> "U55"
-        FAUDVTIU56 -> "U56"
-        FAUDVTIU57 -> "U57"
-        FAUDVTIU58 -> "U58"
-        FAUDVTIU59 -> "U59"
-        FAUDVTIU6 -> "U6"
-        FAUDVTIU60 -> "U60"
-        FAUDVTIU61 -> "U61"
-        FAUDVTIU62 -> "U62"
-        FAUDVTIU63 -> "U63"
-        FAUDVTIU64 -> "U64"
-        FAUDVTIU65 -> "U65"
-        FAUDVTIU66 -> "U66"
-        FAUDVTIU67 -> "U67"
-        FAUDVTIU68 -> "U68"
-        FAUDVTIU69 -> "U69"
-        FAUDVTIU7 -> "U7"
-        FAUDVTIU70 -> "U70"
-        FAUDVTIU71 -> "U71"
-        FAUDVTIU72 -> "U72"
-        FAUDVTIU73 -> "U73"
-        FAUDVTIU74 -> "U74"
-        FAUDVTIU75 -> "U75"
-        FAUDVTIU76 -> "U76"
-        FAUDVTIU77 -> "U77"
-        FAUDVTIU78 -> "U78"
-        FAUDVTIU79 -> "U79"
-        FAUDVTIU8 -> "U8"
-        FAUDVTIU80 -> "U80"
-        FAUDVTIU81 -> "U81"
-        FAUDVTIU82 -> "U82"
-        FAUDVTIU83 -> "U83"
-        FAUDVTIU84 -> "U84"
-        FAUDVTIU85 -> "U85"
-        FAUDVTIU86 -> "U86"
-        FAUDVTIU87 -> "U87"
-        FAUDVTIU88 -> "U88"
-        FAUDVTIU89 -> "U89"
-        FAUDVTIU9 -> "U9"
-        FAUDVTIU90 -> "U90"
-        FAUDVTIU91 -> "U91"
-        FAUDVTIU92 -> "U92"
-        FAUDVTIU93 -> "U93"
-        FAUDVTIU94 -> "U94"
-        FAUDVTIU95 -> "U95"
-        FAUDVTIU96 -> "U96"
-        FAUDVTIU97 -> "U97"
-        FAUDVTIU98 -> "U98"
-        FAUDVTIU99 -> "U99"
-
-instance FromJSON FloodlightActivityUserDefinedVariableTypesItem where
-    parseJSON = parseJSONText "FloodlightActivityUserDefinedVariableTypesItem"
-
-instance ToJSON FloodlightActivityUserDefinedVariableTypesItem where
-    toJSON = toJSONText
-
--- | Site filter type for this event tag. If no type is specified then the
--- event tag will be applied to all sites.
-data EventTagSiteFilterType
-    = BlackList
-      -- ^ @BLACKLIST@
-    | WhiteList
-      -- ^ @WHITELIST@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagSiteFilterType
-
-instance FromHttpApiData EventTagSiteFilterType where
-    parseQueryParam = \case
-        "BLACKLIST" -> Right BlackList
-        "WHITELIST" -> Right WhiteList
-        x -> Left ("Unable to parse EventTagSiteFilterType from: " <> x)
-
-instance ToHttpApiData EventTagSiteFilterType where
-    toQueryParam = \case
-        BlackList -> "BLACKLIST"
-        WhiteList -> "WHITELIST"
-
-instance FromJSON EventTagSiteFilterType where
-    parseJSON = parseJSONText "EventTagSiteFilterType"
-
-instance ToJSON EventTagSiteFilterType where
-    toJSON = toJSONText
-
--- | The output format of the report. If not specified, default format is
--- \"CSV\". Note that the actual format in the completed report file might
--- differ if for instance the report\'s size exceeds the format\'s
--- capabilities. \"CSV\" will then be the fallback format.
-data ReportFormat
-    = RFCSV
-      -- ^ @CSV@
-    | RFExcel
-      -- ^ @EXCEL@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportFormat
-
-instance FromHttpApiData ReportFormat where
-    parseQueryParam = \case
-        "CSV" -> Right RFCSV
-        "EXCEL" -> Right RFExcel
-        x -> Left ("Unable to parse ReportFormat from: " <> x)
-
-instance ToHttpApiData ReportFormat where
-    toQueryParam = \case
-        RFCSV -> "CSV"
-        RFExcel -> "EXCEL"
-
-instance FromJSON ReportFormat where
-    parseJSON = parseJSONText "ReportFormat"
-
-instance ToJSON ReportFormat where
-    toJSON = toJSONText
-
--- | Type of this placement group. A package is a simple group of placements
--- that acts as a single pricing point for a group of tags. A roadblock is
--- a group of placements that not only acts as a single pricing point, but
--- also assumes that all the tags in it will be served at the same time. A
--- roadblock requires one of its assigned placements to be marked as
--- primary for reporting. This field is required on insertion.
-data PlacementGroupPlacementGroupType
-    = PGPGTPlacementPackage
-      -- ^ @PLACEMENT_PACKAGE@
-    | PGPGTPlacementRoadblock
-      -- ^ @PLACEMENT_ROADBLOCK@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementGroupPlacementGroupType
-
-instance FromHttpApiData PlacementGroupPlacementGroupType where
-    parseQueryParam = \case
-        "PLACEMENT_PACKAGE" -> Right PGPGTPlacementPackage
-        "PLACEMENT_ROADBLOCK" -> Right PGPGTPlacementRoadblock
-        x -> Left ("Unable to parse PlacementGroupPlacementGroupType from: " <> x)
-
-instance ToHttpApiData PlacementGroupPlacementGroupType where
-    toQueryParam = \case
-        PGPGTPlacementPackage -> "PLACEMENT_PACKAGE"
-        PGPGTPlacementRoadblock -> "PLACEMENT_ROADBLOCK"
-
-instance FromJSON PlacementGroupPlacementGroupType where
-    parseJSON = parseJSONText "PlacementGroupPlacementGroupType"
-
-instance ToJSON PlacementGroupPlacementGroupType where
-    toJSON = toJSONText
-
--- | Pricing type of this inventory item.
-data PricingPricingType
-    = PlanningPlacementPricingTypeClicks
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_CLICKS@
-    | PlanningPlacementPricingTypeCpa
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_CPA@
-    | PlanningPlacementPricingTypeCpc
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_CPC@
-    | PlanningPlacementPricingTypeCpm
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_CPM@
-    | PlanningPlacementPricingTypeCpmActiveview
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW@
-    | PlanningPlacementPricingTypeFlatRateClicks
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS@
-    | PlanningPlacementPricingTypeFlatRateImpressions
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS@
-    | PlanningPlacementPricingTypeImpressions
-      -- ^ @PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PricingPricingType
-
-instance FromHttpApiData PricingPricingType where
-    parseQueryParam = \case
-        "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS" -> Right PlanningPlacementPricingTypeClicks
-        "PLANNING_PLACEMENT_PRICING_TYPE_CPA" -> Right PlanningPlacementPricingTypeCpa
-        "PLANNING_PLACEMENT_PRICING_TYPE_CPC" -> Right PlanningPlacementPricingTypeCpc
-        "PLANNING_PLACEMENT_PRICING_TYPE_CPM" -> Right PlanningPlacementPricingTypeCpm
-        "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW" -> Right PlanningPlacementPricingTypeCpmActiveview
-        "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PlanningPlacementPricingTypeFlatRateClicks
-        "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PlanningPlacementPricingTypeFlatRateImpressions
-        "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" -> Right PlanningPlacementPricingTypeImpressions
-        x -> Left ("Unable to parse PricingPricingType from: " <> x)
-
-instance ToHttpApiData PricingPricingType where
-    toQueryParam = \case
-        PlanningPlacementPricingTypeClicks -> "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS"
-        PlanningPlacementPricingTypeCpa -> "PLANNING_PLACEMENT_PRICING_TYPE_CPA"
-        PlanningPlacementPricingTypeCpc -> "PLANNING_PLACEMENT_PRICING_TYPE_CPC"
-        PlanningPlacementPricingTypeCpm -> "PLANNING_PLACEMENT_PRICING_TYPE_CPM"
-        PlanningPlacementPricingTypeCpmActiveview -> "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW"
-        PlanningPlacementPricingTypeFlatRateClicks -> "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS"
-        PlanningPlacementPricingTypeFlatRateImpressions -> "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
-        PlanningPlacementPricingTypeImpressions -> "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS"
-
-instance FromJSON PricingPricingType where
-    parseJSON = parseJSONText "PricingPricingType"
-
-instance ToJSON PricingPricingType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data SubAccountsListSortOrder
-    = SALSOAscending
-      -- ^ @ASCENDING@
-    | SALSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SubAccountsListSortOrder
-
-instance FromHttpApiData SubAccountsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right SALSOAscending
-        "DESCENDING" -> Right SALSODescending
-        x -> Left ("Unable to parse SubAccountsListSortOrder from: " <> x)
-
-instance ToHttpApiData SubAccountsListSortOrder where
-    toQueryParam = \case
-        SALSOAscending -> "ASCENDING"
-        SALSODescending -> "DESCENDING"
-
-instance FromJSON SubAccountsListSortOrder where
-    parseJSON = parseJSONText "SubAccountsListSortOrder"
-
-instance ToJSON SubAccountsListSortOrder where
-    toJSON = toJSONText
-
--- | Registry used for the Ad ID value.
-data UniversalAdIdRegistry
-    = UAIRAdId_Org
-      -- ^ @AD_ID.ORG@
-    | UAIRClearcast
-      -- ^ @CLEARCAST@
-    | UAIRDcm
-      -- ^ @DCM@
-    | UAIROther
-      -- ^ @OTHER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable UniversalAdIdRegistry
-
-instance FromHttpApiData UniversalAdIdRegistry where
-    parseQueryParam = \case
-        "AD_ID.ORG" -> Right UAIRAdId_Org
-        "CLEARCAST" -> Right UAIRClearcast
-        "DCM" -> Right UAIRDcm
-        "OTHER" -> Right UAIROther
-        x -> Left ("Unable to parse UniversalAdIdRegistry from: " <> x)
-
-instance ToHttpApiData UniversalAdIdRegistry where
-    toQueryParam = \case
-        UAIRAdId_Org -> "AD_ID.ORG"
-        UAIRClearcast -> "CLEARCAST"
-        UAIRDcm -> "DCM"
-        UAIROther -> "OTHER"
-
-instance FromJSON UniversalAdIdRegistry where
-    parseJSON = parseJSONText "UniversalAdIdRegistry"
-
-instance ToJSON UniversalAdIdRegistry where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data AdsListSortOrder
-    = ADSAscending
-      -- ^ @ASCENDING@
-    | ADSDescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdsListSortOrder
-
-instance FromHttpApiData AdsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right ADSAscending
-        "DESCENDING" -> Right ADSDescending
-        x -> Left ("Unable to parse AdsListSortOrder from: " <> x)
-
-instance ToHttpApiData AdsListSortOrder where
-    toQueryParam = \case
-        ADSAscending -> "ASCENDING"
-        ADSDescending -> "DESCENDING"
-
-instance FromJSON AdsListSortOrder where
-    parseJSON = parseJSONText "AdsListSortOrder"
-
-instance ToJSON AdsListSortOrder where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data ProjectsListSortOrder
-    = PLSOAscending
-      -- ^ @ASCENDING@
-    | PLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ProjectsListSortOrder
-
-instance FromHttpApiData ProjectsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right PLSOAscending
-        "DESCENDING" -> Right PLSODescending
-        x -> Left ("Unable to parse ProjectsListSortOrder from: " <> x)
-
-instance ToHttpApiData ProjectsListSortOrder where
-    toQueryParam = \case
-        PLSOAscending -> "ASCENDING"
-        PLSODescending -> "DESCENDING"
-
-instance FromJSON ProjectsListSortOrder where
-    parseJSON = parseJSONText "ProjectsListSortOrder"
-
-instance ToJSON ProjectsListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data RemarketingListsListSortField
-    = RLLSFID
-      -- ^ @ID@
-    | RLLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable RemarketingListsListSortField
-
-instance FromHttpApiData RemarketingListsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right RLLSFID
-        "NAME" -> Right RLLSFName
-        x -> Left ("Unable to parse RemarketingListsListSortField from: " <> x)
-
-instance ToHttpApiData RemarketingListsListSortField where
-    toQueryParam = \case
-        RLLSFID -> "ID"
-        RLLSFName -> "NAME"
-
-instance FromJSON RemarketingListsListSortField where
-    parseJSON = parseJSONText "RemarketingListsListSortField"
-
-instance ToJSON RemarketingListsListSortField where
-    toJSON = toJSONText
-
--- | Mobile app directory.
-data MobileAppDirectory
-    = MADAppleAppStore
-      -- ^ @APPLE_APP_STORE@
-    | MADGooglePlayStore
-      -- ^ @GOOGLE_PLAY_STORE@
-    | MADUnknown
-      -- ^ @UNKNOWN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable MobileAppDirectory
-
-instance FromHttpApiData MobileAppDirectory where
-    parseQueryParam = \case
-        "APPLE_APP_STORE" -> Right MADAppleAppStore
-        "GOOGLE_PLAY_STORE" -> Right MADGooglePlayStore
-        "UNKNOWN" -> Right MADUnknown
-        x -> Left ("Unable to parse MobileAppDirectory from: " <> x)
-
-instance ToHttpApiData MobileAppDirectory where
-    toQueryParam = \case
-        MADAppleAppStore -> "APPLE_APP_STORE"
-        MADGooglePlayStore -> "GOOGLE_PLAY_STORE"
-        MADUnknown -> "UNKNOWN"
-
-instance FromJSON MobileAppDirectory where
-    parseJSON = parseJSONText "MobileAppDirectory"
-
-instance ToJSON MobileAppDirectory where
-    toJSON = toJSONText
-
-data ReportScheduleRepeatsOnWeekDaysItem
-    = RSROWDIFriday
-      -- ^ @FRIDAY@
-    | RSROWDIMonday
-      -- ^ @MONDAY@
-    | RSROWDISaturday
-      -- ^ @SATURDAY@
-    | RSROWDISunday
-      -- ^ @SUNDAY@
-    | RSROWDIThursday
-      -- ^ @THURSDAY@
-    | RSROWDITuesday
-      -- ^ @TUESDAY@
-    | RSROWDIWednesday
-      -- ^ @WEDNESDAY@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportScheduleRepeatsOnWeekDaysItem
-
-instance FromHttpApiData ReportScheduleRepeatsOnWeekDaysItem where
-    parseQueryParam = \case
-        "FRIDAY" -> Right RSROWDIFriday
-        "MONDAY" -> Right RSROWDIMonday
-        "SATURDAY" -> Right RSROWDISaturday
-        "SUNDAY" -> Right RSROWDISunday
-        "THURSDAY" -> Right RSROWDIThursday
-        "TUESDAY" -> Right RSROWDITuesday
-        "WEDNESDAY" -> Right RSROWDIWednesday
-        x -> Left ("Unable to parse ReportScheduleRepeatsOnWeekDaysItem from: " <> x)
-
-instance ToHttpApiData ReportScheduleRepeatsOnWeekDaysItem where
-    toQueryParam = \case
-        RSROWDIFriday -> "FRIDAY"
-        RSROWDIMonday -> "MONDAY"
-        RSROWDISaturday -> "SATURDAY"
-        RSROWDISunday -> "SUNDAY"
-        RSROWDIThursday -> "THURSDAY"
-        RSROWDITuesday -> "TUESDAY"
-        RSROWDIWednesday -> "WEDNESDAY"
-
-instance FromJSON ReportScheduleRepeatsOnWeekDaysItem where
-    parseJSON = parseJSONText "ReportScheduleRepeatsOnWeekDaysItem"
-
-instance ToJSON ReportScheduleRepeatsOnWeekDaysItem where
-    toJSON = toJSONText
-
--- | Creative group number of the creative group assignment.
-data CreativeGroupAssignmentCreativeGroupNumber
-    = CreativeGroupOne
-      -- ^ @CREATIVE_GROUP_ONE@
-    | CreativeGroupTwo
-      -- ^ @CREATIVE_GROUP_TWO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeGroupAssignmentCreativeGroupNumber
-
-instance FromHttpApiData CreativeGroupAssignmentCreativeGroupNumber where
-    parseQueryParam = \case
-        "CREATIVE_GROUP_ONE" -> Right CreativeGroupOne
-        "CREATIVE_GROUP_TWO" -> Right CreativeGroupTwo
-        x -> Left ("Unable to parse CreativeGroupAssignmentCreativeGroupNumber from: " <> x)
-
-instance ToHttpApiData CreativeGroupAssignmentCreativeGroupNumber where
-    toQueryParam = \case
-        CreativeGroupOne -> "CREATIVE_GROUP_ONE"
-        CreativeGroupTwo -> "CREATIVE_GROUP_TWO"
-
-instance FromJSON CreativeGroupAssignmentCreativeGroupNumber where
-    parseJSON = parseJSONText "CreativeGroupAssignmentCreativeGroupNumber"
-
-instance ToJSON CreativeGroupAssignmentCreativeGroupNumber where
-    toJSON = toJSONText
-
--- | Default VPAID adapter setting for new placements created under this
--- site. This value will be used to populate the
--- placements.vpaidAdapterChoice field, when no value is specified for the
--- new placement. Controls which VPAID format the measurement adapter will
--- use for in-stream video creatives assigned to the placement. The
--- publisher\'s specifications will typically determine this setting. For
--- VPAID creatives, the adapter format will match the VPAID format (HTML5
--- VPAID creatives use the HTML5 adapter). Note: Flash is no longer
--- supported. This field now defaults to HTML5 when the following values
--- are provided: FLASH, BOTH.
-data SiteSettingsVpaidAdapterChoiceTemplate
-    = SSVACTBoth
-      -- ^ @BOTH@
-    | SSVACTDefault
-      -- ^ @DEFAULT@
-    | SSVACTFlash
-      -- ^ @FLASH@
-    | SSVACTHTML5
-      -- ^ @HTML5@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SiteSettingsVpaidAdapterChoiceTemplate
-
-instance FromHttpApiData SiteSettingsVpaidAdapterChoiceTemplate where
-    parseQueryParam = \case
-        "BOTH" -> Right SSVACTBoth
-        "DEFAULT" -> Right SSVACTDefault
-        "FLASH" -> Right SSVACTFlash
-        "HTML5" -> Right SSVACTHTML5
-        x -> Left ("Unable to parse SiteSettingsVpaidAdapterChoiceTemplate from: " <> x)
-
-instance ToHttpApiData SiteSettingsVpaidAdapterChoiceTemplate where
-    toQueryParam = \case
-        SSVACTBoth -> "BOTH"
-        SSVACTDefault -> "DEFAULT"
-        SSVACTFlash -> "FLASH"
-        SSVACTHTML5 -> "HTML5"
-
-instance FromJSON SiteSettingsVpaidAdapterChoiceTemplate where
-    parseJSON = parseJSONText "SiteSettingsVpaidAdapterChoiceTemplate"
-
-instance ToJSON SiteSettingsVpaidAdapterChoiceTemplate where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AccountsListSortField
-    = AID
-      -- ^ @ID@
-    | AName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountsListSortField
-
-instance FromHttpApiData AccountsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right AID
-        "NAME" -> Right AName
-        x -> Left ("Unable to parse AccountsListSortField from: " <> x)
-
-instance ToHttpApiData AccountsListSortField where
-    toQueryParam = \case
-        AID -> "ID"
-        AName -> "NAME"
-
-instance FromJSON AccountsListSortField where
-    parseJSON = parseJSONText "AccountsListSortField"
-
-instance ToJSON AccountsListSortField where
-    toJSON = toJSONText
-
--- | Select only advertisers with the specified status.
-data AdvertisersListStatus
-    = Approved
-      -- ^ @APPROVED@
-    | OnHold
-      -- ^ @ON_HOLD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertisersListStatus
-
-instance FromHttpApiData AdvertisersListStatus where
-    parseQueryParam = \case
-        "APPROVED" -> Right Approved
-        "ON_HOLD" -> Right OnHold
-        x -> Left ("Unable to parse AdvertisersListStatus from: " <> x)
-
-instance ToHttpApiData AdvertisersListStatus where
-    toQueryParam = \case
-        Approved -> "APPROVED"
-        OnHold -> "ON_HOLD"
-
-instance FromJSON AdvertisersListStatus where
-    parseJSON = parseJSONText "AdvertisersListStatus"
-
-instance ToJSON AdvertisersListStatus where
-    toJSON = toJSONText
-
--- | Determines how the \'value\' field is matched when filtering. If not
--- specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, \'*\' is
--- allowed as a placeholder for variable length character sequences, and it
--- can be escaped with a backslash. Note, only paid search dimensions
--- (\'dfa:paidSearch*\') allow a matchType other than EXACT.
-data DimensionValueMatchType
-    = BeginsWith
-      -- ^ @BEGINS_WITH@
-    | Contains
-      -- ^ @CONTAINS@
-    | Exact
-      -- ^ @EXACT@
-    | WildcardExpression
-      -- ^ @WILDCARD_EXPRESSION@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DimensionValueMatchType
-
-instance FromHttpApiData DimensionValueMatchType where
-    parseQueryParam = \case
-        "BEGINS_WITH" -> Right BeginsWith
-        "CONTAINS" -> Right Contains
-        "EXACT" -> Right Exact
-        "WILDCARD_EXPRESSION" -> Right WildcardExpression
-        x -> Left ("Unable to parse DimensionValueMatchType from: " <> x)
-
-instance ToHttpApiData DimensionValueMatchType where
-    toQueryParam = \case
-        BeginsWith -> "BEGINS_WITH"
-        Contains -> "CONTAINS"
-        Exact -> "EXACT"
-        WildcardExpression -> "WILDCARD_EXPRESSION"
-
-instance FromJSON DimensionValueMatchType where
-    parseJSON = parseJSONText "DimensionValueMatchType"
-
-instance ToJSON DimensionValueMatchType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data PlacementGroupsListSortOrder
-    = PGLSOAscending
-      -- ^ @ASCENDING@
-    | PGLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementGroupsListSortOrder
-
-instance FromHttpApiData PlacementGroupsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right PGLSOAscending
-        "DESCENDING" -> Right PGLSODescending
-        x -> Left ("Unable to parse PlacementGroupsListSortOrder from: " <> x)
-
-instance ToHttpApiData PlacementGroupsListSortOrder where
-    toQueryParam = \case
-        PGLSOAscending -> "ASCENDING"
-        PGLSODescending -> "DESCENDING"
-
-instance FromJSON PlacementGroupsListSortOrder where
-    parseJSON = parseJSONText "PlacementGroupsListSortOrder"
-
-instance ToJSON PlacementGroupsListSortOrder where
-    toJSON = toJSONText
-
--- | Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
--- DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or
--- on mobile devices or in mobile apps for regular or interstitial ads,
--- respectively. APP and APP_INTERSTITIAL are only used for existing
--- default ads. New mobile placements must be assigned DISPLAY or
--- DISPLAY_INTERSTITIAL and default ads created for those placements will
--- be limited to those compatibility types. IN_STREAM_VIDEO refers to
--- rendering in-stream video ads developed with the VAST standard.
-data AdCompatibility
-    = ACApp
-      -- ^ @APP@
-    | ACAppInterstitial
-      -- ^ @APP_INTERSTITIAL@
-    | ACDisplay
-      -- ^ @DISPLAY@
-    | ACDisplayInterstitial
-      -- ^ @DISPLAY_INTERSTITIAL@
-    | ACInStreamAudio
-      -- ^ @IN_STREAM_AUDIO@
-    | ACInStreamVideo
-      -- ^ @IN_STREAM_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdCompatibility
-
-instance FromHttpApiData AdCompatibility where
-    parseQueryParam = \case
-        "APP" -> Right ACApp
-        "APP_INTERSTITIAL" -> Right ACAppInterstitial
-        "DISPLAY" -> Right ACDisplay
-        "DISPLAY_INTERSTITIAL" -> Right ACDisplayInterstitial
-        "IN_STREAM_AUDIO" -> Right ACInStreamAudio
-        "IN_STREAM_VIDEO" -> Right ACInStreamVideo
-        x -> Left ("Unable to parse AdCompatibility from: " <> x)
-
-instance ToHttpApiData AdCompatibility where
-    toQueryParam = \case
-        ACApp -> "APP"
-        ACAppInterstitial -> "APP_INTERSTITIAL"
-        ACDisplay -> "DISPLAY"
-        ACDisplayInterstitial -> "DISPLAY_INTERSTITIAL"
-        ACInStreamAudio -> "IN_STREAM_AUDIO"
-        ACInStreamVideo -> "IN_STREAM_VIDEO"
-
-instance FromJSON AdCompatibility where
-    parseJSON = parseJSONText "AdCompatibility"
-
-instance ToJSON AdCompatibility where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data CreativeFieldValuesListSortField
-    = CFVLSFID
-      -- ^ @ID@
-    | CFVLSFValue
-      -- ^ @VALUE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeFieldValuesListSortField
-
-instance FromHttpApiData CreativeFieldValuesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right CFVLSFID
-        "VALUE" -> Right CFVLSFValue
-        x -> Left ("Unable to parse CreativeFieldValuesListSortField from: " <> x)
-
-instance ToHttpApiData CreativeFieldValuesListSortField where
-    toQueryParam = \case
-        CFVLSFID -> "ID"
-        CFVLSFValue -> "VALUE"
-
-instance FromJSON CreativeFieldValuesListSortField where
-    parseJSON = parseJSONText "CreativeFieldValuesListSortField"
-
-instance ToJSON CreativeFieldValuesListSortField where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data FloodlightActivityGroupsListSortField
-    = FAGLSFID
-      -- ^ @ID@
-    | FAGLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityGroupsListSortField
-
-instance FromHttpApiData FloodlightActivityGroupsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right FAGLSFID
-        "NAME" -> Right FAGLSFName
-        x -> Left ("Unable to parse FloodlightActivityGroupsListSortField from: " <> x)
-
-instance ToHttpApiData FloodlightActivityGroupsListSortField where
-    toQueryParam = \case
-        FAGLSFID -> "ID"
-        FAGLSFName -> "NAME"
-
-instance FromJSON FloodlightActivityGroupsListSortField where
-    parseJSON = parseJSONText "FloodlightActivityGroupsListSortField"
-
-instance ToJSON FloodlightActivityGroupsListSortField where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data OrdersListSortOrder
-    = OLSOAscending
-      -- ^ @ASCENDING@
-    | OLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable OrdersListSortOrder
-
-instance FromHttpApiData OrdersListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right OLSOAscending
-        "DESCENDING" -> Right OLSODescending
-        x -> Left ("Unable to parse OrdersListSortOrder from: " <> x)
-
-instance ToHttpApiData OrdersListSortOrder where
-    toQueryParam = \case
-        OLSOAscending -> "ASCENDING"
-        OLSODescending -> "DESCENDING"
-
-instance FromJSON OrdersListSortOrder where
-    parseJSON = parseJSONText "OrdersListSortOrder"
-
-instance ToJSON OrdersListSortOrder where
-    toJSON = toJSONText
-
--- | Profile for this account. This is a read-only field that can be left
--- blank.
-data AccountAccountProFile
-    = AccountProFileBasic
-      -- ^ @ACCOUNT_PROFILE_BASIC@
-    | AccountProFileStandard
-      -- ^ @ACCOUNT_PROFILE_STANDARD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountAccountProFile
-
-instance FromHttpApiData AccountAccountProFile where
-    parseQueryParam = \case
-        "ACCOUNT_PROFILE_BASIC" -> Right AccountProFileBasic
-        "ACCOUNT_PROFILE_STANDARD" -> Right AccountProFileStandard
-        x -> Left ("Unable to parse AccountAccountProFile from: " <> x)
-
-instance ToHttpApiData AccountAccountProFile where
-    toQueryParam = \case
-        AccountProFileBasic -> "ACCOUNT_PROFILE_BASIC"
-        AccountProFileStandard -> "ACCOUNT_PROFILE_STANDARD"
-
-instance FromJSON AccountAccountProFile where
-    parseJSON = parseJSONText "AccountAccountProFile"
-
-instance ToJSON AccountAccountProFile where
-    toJSON = toJSONText
-
--- | Type of this creative. This is a required field. Applicable to all
--- creative types. Note: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only
--- used for existing creatives. New creatives should use DISPLAY as a
--- replacement for these types.
-data CreativeType
-    = CTBrandSafeDefaultInstreamVideo
-      -- ^ @BRAND_SAFE_DEFAULT_INSTREAM_VIDEO@
-    | CTCustomDisplay
-      -- ^ @CUSTOM_DISPLAY@
-    | CTCustomDisplayInterstitial
-      -- ^ @CUSTOM_DISPLAY_INTERSTITIAL@
-    | CTDisplay
-      -- ^ @DISPLAY@
-    | CTDisplayImageGallery
-      -- ^ @DISPLAY_IMAGE_GALLERY@
-    | CTDisplayRedirect
-      -- ^ @DISPLAY_REDIRECT@
-    | CTFlashInpage
-      -- ^ @FLASH_INPAGE@
-    | CTHTML5Banner
-      -- ^ @HTML5_BANNER@
-    | CTImage
-      -- ^ @IMAGE@
-    | CTInstreamAudio
-      -- ^ @INSTREAM_AUDIO@
-    | CTInstreamVideo
-      -- ^ @INSTREAM_VIDEO@
-    | CTInstreamVideoRedirect
-      -- ^ @INSTREAM_VIDEO_REDIRECT@
-    | CTInternalRedirect
-      -- ^ @INTERNAL_REDIRECT@
-    | CTInterstitialInternalRedirect
-      -- ^ @INTERSTITIAL_INTERNAL_REDIRECT@
-    | CTRichMediaDisplayBanner
-      -- ^ @RICH_MEDIA_DISPLAY_BANNER@
-    | CTRichMediaDisplayExpanding
-      -- ^ @RICH_MEDIA_DISPLAY_EXPANDING@
-    | CTRichMediaDisplayInterstitial
-      -- ^ @RICH_MEDIA_DISPLAY_INTERSTITIAL@
-    | CTRichMediaDisplayMultiFloatingInterstitial
-      -- ^ @RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL@
-    | CTRichMediaImExpand
-      -- ^ @RICH_MEDIA_IM_EXPAND@
-    | CTRichMediaInpageFloating
-      -- ^ @RICH_MEDIA_INPAGE_FLOATING@
-    | CTRichMediaMobileInApp
-      -- ^ @RICH_MEDIA_MOBILE_IN_APP@
-    | CTRichMediaPeelDown
-      -- ^ @RICH_MEDIA_PEEL_DOWN@
-    | CTTrackingText
-      -- ^ @TRACKING_TEXT@
-    | CTVpaidLinearVideo
-      -- ^ @VPAID_LINEAR_VIDEO@
-    | CTVpaidNonLinearVideo
-      -- ^ @VPAID_NON_LINEAR_VIDEO@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeType
-
-instance FromHttpApiData CreativeType where
-    parseQueryParam = \case
-        "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Right CTBrandSafeDefaultInstreamVideo
-        "CUSTOM_DISPLAY" -> Right CTCustomDisplay
-        "CUSTOM_DISPLAY_INTERSTITIAL" -> Right CTCustomDisplayInterstitial
-        "DISPLAY" -> Right CTDisplay
-        "DISPLAY_IMAGE_GALLERY" -> Right CTDisplayImageGallery
-        "DISPLAY_REDIRECT" -> Right CTDisplayRedirect
-        "FLASH_INPAGE" -> Right CTFlashInpage
-        "HTML5_BANNER" -> Right CTHTML5Banner
-        "IMAGE" -> Right CTImage
-        "INSTREAM_AUDIO" -> Right CTInstreamAudio
-        "INSTREAM_VIDEO" -> Right CTInstreamVideo
-        "INSTREAM_VIDEO_REDIRECT" -> Right CTInstreamVideoRedirect
-        "INTERNAL_REDIRECT" -> Right CTInternalRedirect
-        "INTERSTITIAL_INTERNAL_REDIRECT" -> Right CTInterstitialInternalRedirect
-        "RICH_MEDIA_DISPLAY_BANNER" -> Right CTRichMediaDisplayBanner
-        "RICH_MEDIA_DISPLAY_EXPANDING" -> Right CTRichMediaDisplayExpanding
-        "RICH_MEDIA_DISPLAY_INTERSTITIAL" -> Right CTRichMediaDisplayInterstitial
-        "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL" -> Right CTRichMediaDisplayMultiFloatingInterstitial
-        "RICH_MEDIA_IM_EXPAND" -> Right CTRichMediaImExpand
-        "RICH_MEDIA_INPAGE_FLOATING" -> Right CTRichMediaInpageFloating
-        "RICH_MEDIA_MOBILE_IN_APP" -> Right CTRichMediaMobileInApp
-        "RICH_MEDIA_PEEL_DOWN" -> Right CTRichMediaPeelDown
-        "TRACKING_TEXT" -> Right CTTrackingText
-        "VPAID_LINEAR_VIDEO" -> Right CTVpaidLinearVideo
-        "VPAID_NON_LINEAR_VIDEO" -> Right CTVpaidNonLinearVideo
-        x -> Left ("Unable to parse CreativeType from: " <> x)
-
-instance ToHttpApiData CreativeType where
-    toQueryParam = \case
-        CTBrandSafeDefaultInstreamVideo -> "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
-        CTCustomDisplay -> "CUSTOM_DISPLAY"
-        CTCustomDisplayInterstitial -> "CUSTOM_DISPLAY_INTERSTITIAL"
-        CTDisplay -> "DISPLAY"
-        CTDisplayImageGallery -> "DISPLAY_IMAGE_GALLERY"
-        CTDisplayRedirect -> "DISPLAY_REDIRECT"
-        CTFlashInpage -> "FLASH_INPAGE"
-        CTHTML5Banner -> "HTML5_BANNER"
-        CTImage -> "IMAGE"
-        CTInstreamAudio -> "INSTREAM_AUDIO"
-        CTInstreamVideo -> "INSTREAM_VIDEO"
-        CTInstreamVideoRedirect -> "INSTREAM_VIDEO_REDIRECT"
-        CTInternalRedirect -> "INTERNAL_REDIRECT"
-        CTInterstitialInternalRedirect -> "INTERSTITIAL_INTERNAL_REDIRECT"
-        CTRichMediaDisplayBanner -> "RICH_MEDIA_DISPLAY_BANNER"
-        CTRichMediaDisplayExpanding -> "RICH_MEDIA_DISPLAY_EXPANDING"
-        CTRichMediaDisplayInterstitial -> "RICH_MEDIA_DISPLAY_INTERSTITIAL"
-        CTRichMediaDisplayMultiFloatingInterstitial -> "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
-        CTRichMediaImExpand -> "RICH_MEDIA_IM_EXPAND"
-        CTRichMediaInpageFloating -> "RICH_MEDIA_INPAGE_FLOATING"
-        CTRichMediaMobileInApp -> "RICH_MEDIA_MOBILE_IN_APP"
-        CTRichMediaPeelDown -> "RICH_MEDIA_PEEL_DOWN"
-        CTTrackingText -> "TRACKING_TEXT"
-        CTVpaidLinearVideo -> "VPAID_LINEAR_VIDEO"
-        CTVpaidNonLinearVideo -> "VPAID_NON_LINEAR_VIDEO"
-
-instance FromJSON CreativeType where
-    parseJSON = parseJSONText "CreativeType"
-
-instance ToJSON CreativeType where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data FilesListSortOrder
-    = FLSOAscending
-      -- ^ @ASCENDING@
-      -- Ascending order.
-    | FLSODescending
-      -- ^ @DESCENDING@
-      -- Descending order.
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FilesListSortOrder
-
-instance FromHttpApiData FilesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right FLSOAscending
-        "DESCENDING" -> Right FLSODescending
-        x -> Left ("Unable to parse FilesListSortOrder from: " <> x)
-
-instance ToHttpApiData FilesListSortOrder where
-    toQueryParam = \case
-        FLSOAscending -> "ASCENDING"
-        FLSODescending -> "DESCENDING"
-
-instance FromJSON FilesListSortOrder where
-    parseJSON = parseJSONText "FilesListSortOrder"
-
-instance ToJSON FilesListSortOrder where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data AdvertiserGroupsListSortField
-    = AGLSFID
-      -- ^ @ID@
-    | AGLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertiserGroupsListSortField
-
-instance FromHttpApiData AdvertiserGroupsListSortField where
-    parseQueryParam = \case
-        "ID" -> Right AGLSFID
-        "NAME" -> Right AGLSFName
-        x -> Left ("Unable to parse AdvertiserGroupsListSortField from: " <> x)
-
-instance ToHttpApiData AdvertiserGroupsListSortField where
-    toQueryParam = \case
-        AGLSFID -> "ID"
-        AGLSFName -> "NAME"
-
-instance FromJSON AdvertiserGroupsListSortField where
-    parseJSON = parseJSONText "AdvertiserGroupsListSortField"
-
-instance ToJSON AdvertiserGroupsListSortField where
-    toJSON = toJSONText
-
--- | Type of browser window for which the backup image of the flash creative
--- can be displayed.
-data TargetWindowTargetWindowOption
-    = CurrentWindow
-      -- ^ @CURRENT_WINDOW@
-    | Custom
-      -- ^ @CUSTOM@
-    | NewWindow
-      -- ^ @NEW_WINDOW@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable TargetWindowTargetWindowOption
-
-instance FromHttpApiData TargetWindowTargetWindowOption where
-    parseQueryParam = \case
-        "CURRENT_WINDOW" -> Right CurrentWindow
-        "CUSTOM" -> Right Custom
-        "NEW_WINDOW" -> Right NewWindow
-        x -> Left ("Unable to parse TargetWindowTargetWindowOption from: " <> x)
-
-instance ToHttpApiData TargetWindowTargetWindowOption where
-    toQueryParam = \case
-        CurrentWindow -> "CURRENT_WINDOW"
-        Custom -> "CUSTOM"
-        NewWindow -> "NEW_WINDOW"
-
-instance FromJSON TargetWindowTargetWindowOption where
-    parseJSON = parseJSONText "TargetWindowTargetWindowOption"
-
-instance ToJSON TargetWindowTargetWindowOption where
-    toJSON = toJSONText
-
--- | Select only placements with these pricing types.
-data PlacementsListPricingTypes
-    = PLPTPricingTypeCpa
-      -- ^ @PRICING_TYPE_CPA@
-    | PLPTPricingTypeCpc
-      -- ^ @PRICING_TYPE_CPC@
-    | PLPTPricingTypeCpm
-      -- ^ @PRICING_TYPE_CPM@
-    | PLPTPricingTypeCpmActiveview
-      -- ^ @PRICING_TYPE_CPM_ACTIVEVIEW@
-    | PLPTPricingTypeFlatRateClicks
-      -- ^ @PRICING_TYPE_FLAT_RATE_CLICKS@
-    | PLPTPricingTypeFlatRateImpressions
-      -- ^ @PRICING_TYPE_FLAT_RATE_IMPRESSIONS@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementsListPricingTypes
-
-instance FromHttpApiData PlacementsListPricingTypes where
-    parseQueryParam = \case
-        "PRICING_TYPE_CPA" -> Right PLPTPricingTypeCpa
-        "PRICING_TYPE_CPC" -> Right PLPTPricingTypeCpc
-        "PRICING_TYPE_CPM" -> Right PLPTPricingTypeCpm
-        "PRICING_TYPE_CPM_ACTIVEVIEW" -> Right PLPTPricingTypeCpmActiveview
-        "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PLPTPricingTypeFlatRateClicks
-        "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PLPTPricingTypeFlatRateImpressions
-        x -> Left ("Unable to parse PlacementsListPricingTypes from: " <> x)
-
-instance ToHttpApiData PlacementsListPricingTypes where
-    toQueryParam = \case
-        PLPTPricingTypeCpa -> "PRICING_TYPE_CPA"
-        PLPTPricingTypeCpc -> "PRICING_TYPE_CPC"
-        PLPTPricingTypeCpm -> "PRICING_TYPE_CPM"
-        PLPTPricingTypeCpmActiveview -> "PRICING_TYPE_CPM_ACTIVEVIEW"
-        PLPTPricingTypeFlatRateClicks -> "PRICING_TYPE_FLAT_RATE_CLICKS"
-        PLPTPricingTypeFlatRateImpressions -> "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
-
-instance FromJSON PlacementsListPricingTypes where
-    parseJSON = parseJSONText "PlacementsListPricingTypes"
-
-instance ToJSON PlacementsListPricingTypes where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data EventTagsListSortOrder
-    = ETLSOAscending
-      -- ^ @ASCENDING@
-    | ETLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EventTagsListSortOrder
-
-instance FromHttpApiData EventTagsListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right ETLSOAscending
-        "DESCENDING" -> Right ETLSODescending
-        x -> Left ("Unable to parse EventTagsListSortOrder from: " <> x)
-
-instance ToHttpApiData EventTagsListSortOrder where
-    toQueryParam = \case
-        ETLSOAscending -> "ASCENDING"
-        ETLSODescending -> "DESCENDING"
-
-instance FromJSON EventTagsListSortOrder where
-    parseJSON = parseJSONText "EventTagsListSortOrder"
-
-instance ToJSON EventTagsListSortOrder where
-    toJSON = toJSONText
-
--- | Describes whether the encrypted cookie was received from ad serving (the
--- %m macro) or from Data Transfer.
-data EncryptionInfoEncryptionSource
-    = AdServing
-      -- ^ @AD_SERVING@
-    | DataTransfer
-      -- ^ @DATA_TRANSFER@
-    | EncryptionScopeUnknown
-      -- ^ @ENCRYPTION_SCOPE_UNKNOWN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable EncryptionInfoEncryptionSource
-
-instance FromHttpApiData EncryptionInfoEncryptionSource where
-    parseQueryParam = \case
-        "AD_SERVING" -> Right AdServing
-        "DATA_TRANSFER" -> Right DataTransfer
-        "ENCRYPTION_SCOPE_UNKNOWN" -> Right EncryptionScopeUnknown
-        x -> Left ("Unable to parse EncryptionInfoEncryptionSource from: " <> x)
-
-instance ToHttpApiData EncryptionInfoEncryptionSource where
-    toQueryParam = \case
-        AdServing -> "AD_SERVING"
-        DataTransfer -> "DATA_TRANSFER"
-        EncryptionScopeUnknown -> "ENCRYPTION_SCOPE_UNKNOWN"
-
-instance FromJSON EncryptionInfoEncryptionSource where
-    parseJSON = parseJSONText "EncryptionInfoEncryptionSource"
-
-instance ToJSON EncryptionInfoEncryptionSource where
-    toJSON = toJSONText
-
--- | Field by which to sort the list.
-data DirectorySitesListSortField
-    = DSLSFID
-      -- ^ @ID@
-    | DSLSFName
-      -- ^ @NAME@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DirectorySitesListSortField
-
-instance FromHttpApiData DirectorySitesListSortField where
-    parseQueryParam = \case
-        "ID" -> Right DSLSFID
-        "NAME" -> Right DSLSFName
-        x -> Left ("Unable to parse DirectorySitesListSortField from: " <> x)
-
-instance ToHttpApiData DirectorySitesListSortField where
-    toQueryParam = \case
-        DSLSFID -> "ID"
-        DSLSFName -> "NAME"
-
-instance FromJSON DirectorySitesListSortField where
-    parseJSON = parseJSONText "DirectorySitesListSortField"
-
-instance ToJSON DirectorySitesListSortField where
-    toJSON = toJSONText
-
--- | The dimension option.
-data ReportCrossDimensionReachCriteriaDimension
-    = RCDRCDAdvertiser
-      -- ^ @ADVERTISER@
-    | RCDRCDCampaign
-      -- ^ @CAMPAIGN@
-    | RCDRCDSiteByAdvertiser
-      -- ^ @SITE_BY_ADVERTISER@
-    | RCDRCDSiteByCampaign
-      -- ^ @SITE_BY_CAMPAIGN@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportCrossDimensionReachCriteriaDimension
-
-instance FromHttpApiData ReportCrossDimensionReachCriteriaDimension where
-    parseQueryParam = \case
-        "ADVERTISER" -> Right RCDRCDAdvertiser
-        "CAMPAIGN" -> Right RCDRCDCampaign
-        "SITE_BY_ADVERTISER" -> Right RCDRCDSiteByAdvertiser
-        "SITE_BY_CAMPAIGN" -> Right RCDRCDSiteByCampaign
-        x -> Left ("Unable to parse ReportCrossDimensionReachCriteriaDimension from: " <> x)
-
-instance ToHttpApiData ReportCrossDimensionReachCriteriaDimension where
-    toQueryParam = \case
-        RCDRCDAdvertiser -> "ADVERTISER"
-        RCDRCDCampaign -> "CAMPAIGN"
-        RCDRCDSiteByAdvertiser -> "SITE_BY_ADVERTISER"
-        RCDRCDSiteByCampaign -> "SITE_BY_CAMPAIGN"
-
-instance FromJSON ReportCrossDimensionReachCriteriaDimension where
-    parseJSON = parseJSONText "ReportCrossDimensionReachCriteriaDimension"
-
-instance ToJSON ReportCrossDimensionReachCriteriaDimension where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data SitesListSortOrder
-    = SLSOAscending
-      -- ^ @ASCENDING@
-    | SLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SitesListSortOrder
-
-instance FromHttpApiData SitesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right SLSOAscending
-        "DESCENDING" -> Right SLSODescending
-        x -> Left ("Unable to parse SitesListSortOrder from: " <> x)
-
-instance ToHttpApiData SitesListSortOrder where
-    toQueryParam = \case
-        SLSOAscending -> "ASCENDING"
-        SLSODescending -> "DESCENDING"
-
-instance FromJSON SitesListSortOrder where
-    parseJSON = parseJSONText "SitesListSortOrder"
-
-instance ToJSON SitesListSortOrder where
-    toJSON = toJSONText
-
-data PlacementTagFormatsItem
-    = PTFIPlacementTagClickCommands
-      -- ^ @PLACEMENT_TAG_CLICK_COMMANDS@
-    | PTFIPlacementTagIframeIlayer
-      -- ^ @PLACEMENT_TAG_IFRAME_ILAYER@
-    | PTFIPlacementTagIframeJavascript
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT@
-    | PTFIPlacementTagIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY@
-    | PTFIPlacementTagInstreamVideoPrefetch
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH@
-    | PTFIPlacementTagInstreamVideoPrefetchVast3
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3@
-    | PTFIPlacementTagInstreamVideoPrefetchVast4
-      -- ^ @PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4@
-    | PTFIPlacementTagInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERNAL_REDIRECT@
-    | PTFIPlacementTagInterstitialIframeJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT@
-    | PTFIPlacementTagInterstitialIframeJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY@
-    | PTFIPlacementTagInterstitialInternalRedirect
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT@
-    | PTFIPlacementTagInterstitialJavascript
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT@
-    | PTFIPlacementTagInterstitialJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY@
-    | PTFIPlacementTagJavascript
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT@
-    | PTFIPlacementTagJavascriptLegacy
-      -- ^ @PLACEMENT_TAG_JAVASCRIPT_LEGACY@
-    | PTFIPlacementTagStandard
-      -- ^ @PLACEMENT_TAG_STANDARD@
-    | PTFIPlacementTagTracking
-      -- ^ @PLACEMENT_TAG_TRACKING@
-    | PTFIPlacementTagTrackingIframe
-      -- ^ @PLACEMENT_TAG_TRACKING_IFRAME@
-    | PTFIPlacementTagTrackingJavascript
-      -- ^ @PLACEMENT_TAG_TRACKING_JAVASCRIPT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PlacementTagFormatsItem
-
-instance FromHttpApiData PlacementTagFormatsItem where
-    parseQueryParam = \case
-        "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PTFIPlacementTagClickCommands
-        "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PTFIPlacementTagIframeIlayer
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PTFIPlacementTagIframeJavascript
-        "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagIframeJavascriptLegacy
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PTFIPlacementTagInstreamVideoPrefetch
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PTFIPlacementTagInstreamVideoPrefetchVast3
-        "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4" -> Right PTFIPlacementTagInstreamVideoPrefetchVast4
-        "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PTFIPlacementTagInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PTFIPlacementTagInterstitialIframeJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagInterstitialIframeJavascriptLegacy
-        "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PTFIPlacementTagInterstitialInternalRedirect
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PTFIPlacementTagInterstitialJavascript
-        "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagInterstitialJavascriptLegacy
-        "PLACEMENT_TAG_JAVASCRIPT" -> Right PTFIPlacementTagJavascript
-        "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagJavascriptLegacy
-        "PLACEMENT_TAG_STANDARD" -> Right PTFIPlacementTagStandard
-        "PLACEMENT_TAG_TRACKING" -> Right PTFIPlacementTagTracking
-        "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PTFIPlacementTagTrackingIframe
-        "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PTFIPlacementTagTrackingJavascript
-        x -> Left ("Unable to parse PlacementTagFormatsItem from: " <> x)
-
-instance ToHttpApiData PlacementTagFormatsItem where
-    toQueryParam = \case
-        PTFIPlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
-        PTFIPlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
-        PTFIPlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
-        PTFIPlacementTagIframeJavascriptLegacy -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
-        PTFIPlacementTagInstreamVideoPrefetch -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
-        PTFIPlacementTagInstreamVideoPrefetchVast3 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
-        PTFIPlacementTagInstreamVideoPrefetchVast4 -> "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
-        PTFIPlacementTagInternalRedirect -> "PLACEMENT_TAG_INTERNAL_REDIRECT"
-        PTFIPlacementTagInterstitialIframeJavascript -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
-        PTFIPlacementTagInterstitialIframeJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
-        PTFIPlacementTagInterstitialInternalRedirect -> "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
-        PTFIPlacementTagInterstitialJavascript -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
-        PTFIPlacementTagInterstitialJavascriptLegacy -> "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
-        PTFIPlacementTagJavascript -> "PLACEMENT_TAG_JAVASCRIPT"
-        PTFIPlacementTagJavascriptLegacy -> "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
-        PTFIPlacementTagStandard -> "PLACEMENT_TAG_STANDARD"
-        PTFIPlacementTagTracking -> "PLACEMENT_TAG_TRACKING"
-        PTFIPlacementTagTrackingIframe -> "PLACEMENT_TAG_TRACKING_IFRAME"
-        PTFIPlacementTagTrackingJavascript -> "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
-
-instance FromJSON PlacementTagFormatsItem where
-    parseJSON = parseJSONText "PlacementTagFormatsItem"
-
-instance ToJSON PlacementTagFormatsItem where
-    toJSON = toJSONText
-
--- | Type of the object of this dynamic targeting key. This is a required
--- field.
-data DynamicTargetingKeyObjectType
-    = DTKOTObjectAd
-      -- ^ @OBJECT_AD@
-    | DTKOTObjectAdvertiser
-      -- ^ @OBJECT_ADVERTISER@
-    | DTKOTObjectCreative
-      -- ^ @OBJECT_CREATIVE@
-    | DTKOTObjectPlacement
-      -- ^ @OBJECT_PLACEMENT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable DynamicTargetingKeyObjectType
-
-instance FromHttpApiData DynamicTargetingKeyObjectType where
-    parseQueryParam = \case
-        "OBJECT_AD" -> Right DTKOTObjectAd
-        "OBJECT_ADVERTISER" -> Right DTKOTObjectAdvertiser
-        "OBJECT_CREATIVE" -> Right DTKOTObjectCreative
-        "OBJECT_PLACEMENT" -> Right DTKOTObjectPlacement
-        x -> Left ("Unable to parse DynamicTargetingKeyObjectType from: " <> x)
-
-instance ToHttpApiData DynamicTargetingKeyObjectType where
-    toQueryParam = \case
-        DTKOTObjectAd -> "OBJECT_AD"
-        DTKOTObjectAdvertiser -> "OBJECT_ADVERTISER"
-        DTKOTObjectCreative -> "OBJECT_CREATIVE"
-        DTKOTObjectPlacement -> "OBJECT_PLACEMENT"
-
-instance FromJSON DynamicTargetingKeyObjectType where
-    parseJSON = parseJSONText "DynamicTargetingKeyObjectType"
-
-instance ToJSON DynamicTargetingKeyObjectType where
-    toJSON = toJSONText
-
--- | The type of the report.
-data ReportType
-    = RTCrossDimensionReach
-      -- ^ @CROSS_DIMENSION_REACH@
-    | RTFloodlight
-      -- ^ @FLOODLIGHT@
-    | RTPathToConversion
-      -- ^ @PATH_TO_CONVERSION@
-    | RTReach
-      -- ^ @REACH@
-    | RTStandard
-      -- ^ @STANDARD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ReportType
-
-instance FromHttpApiData ReportType where
-    parseQueryParam = \case
-        "CROSS_DIMENSION_REACH" -> Right RTCrossDimensionReach
-        "FLOODLIGHT" -> Right RTFloodlight
-        "PATH_TO_CONVERSION" -> Right RTPathToConversion
-        "REACH" -> Right RTReach
-        "STANDARD" -> Right RTStandard
-        x -> Left ("Unable to parse ReportType from: " <> x)
-
-instance ToHttpApiData ReportType where
-    toQueryParam = \case
-        RTCrossDimensionReach -> "CROSS_DIMENSION_REACH"
-        RTFloodlight -> "FLOODLIGHT"
-        RTPathToConversion -> "PATH_TO_CONVERSION"
-        RTReach -> "REACH"
-        RTStandard -> "STANDARD"
-
-instance FromJSON ReportType where
-    parseJSON = parseJSONText "ReportType"
-
-instance ToJSON ReportType where
-    toJSON = toJSONText
-
-data CreativeAssetMetadataWarnedValidationRulesItem
-    = ADMobReferenced
-      -- ^ @ADMOB_REFERENCED@
-    | AssetFormatUnsupportedDcm
-      -- ^ @ASSET_FORMAT_UNSUPPORTED_DCM@
-    | AssetInvalid
-      -- ^ @ASSET_INVALID@
-    | ClickTagHardCoded
-      -- ^ @CLICK_TAG_HARD_CODED@
-    | ClickTagInvalid
-      -- ^ @CLICK_TAG_INVALID@
-    | ClickTagInGwd
-      -- ^ @CLICK_TAG_IN_GWD@
-    | ClickTagMissing
-      -- ^ @CLICK_TAG_MISSING@
-    | ClickTagMoreThanOne
-      -- ^ @CLICK_TAG_MORE_THAN_ONE@
-    | ClickTagNonTopLevel
-      -- ^ @CLICK_TAG_NON_TOP_LEVEL@
-    | ComponentUnsupportedDcm
-      -- ^ @COMPONENT_UNSUPPORTED_DCM@
-    | EnablerUnsupportedMethodDcm
-      -- ^ @ENABLER_UNSUPPORTED_METHOD_DCM@
-    | ExternalFileReferenced
-      -- ^ @EXTERNAL_FILE_REFERENCED@
-    | FileDetailEmpty
-      -- ^ @FILE_DETAIL_EMPTY@
-    | FileTypeInvalid
-      -- ^ @FILE_TYPE_INVALID@
-    | GwdPropertiesInvalid
-      -- ^ @GWD_PROPERTIES_INVALID@
-    | HTML5FeatureUnsupported
-      -- ^ @HTML5_FEATURE_UNSUPPORTED@
-    | LinkedFileNotFound
-      -- ^ @LINKED_FILE_NOT_FOUND@
-    | MaxFlashVersion11
-      -- ^ @MAX_FLASH_VERSION_11@
-    | MraidReferenced
-      -- ^ @MRAID_REFERENCED@
-    | NotSSLCompliant
-      -- ^ @NOT_SSL_COMPLIANT@
-    | OrphanedAsset
-      -- ^ @ORPHANED_ASSET@
-    | PrimaryHTMLMissing
-      -- ^ @PRIMARY_HTML_MISSING@
-    | SvgInvalid
-      -- ^ @SVG_INVALID@
-    | ZipInvalid
-      -- ^ @ZIP_INVALID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetMetadataWarnedValidationRulesItem
-
-instance FromHttpApiData CreativeAssetMetadataWarnedValidationRulesItem where
-    parseQueryParam = \case
-        "ADMOB_REFERENCED" -> Right ADMobReferenced
-        "ASSET_FORMAT_UNSUPPORTED_DCM" -> Right AssetFormatUnsupportedDcm
-        "ASSET_INVALID" -> Right AssetInvalid
-        "CLICK_TAG_HARD_CODED" -> Right ClickTagHardCoded
-        "CLICK_TAG_INVALID" -> Right ClickTagInvalid
-        "CLICK_TAG_IN_GWD" -> Right ClickTagInGwd
-        "CLICK_TAG_MISSING" -> Right ClickTagMissing
-        "CLICK_TAG_MORE_THAN_ONE" -> Right ClickTagMoreThanOne
-        "CLICK_TAG_NON_TOP_LEVEL" -> Right ClickTagNonTopLevel
-        "COMPONENT_UNSUPPORTED_DCM" -> Right ComponentUnsupportedDcm
-        "ENABLER_UNSUPPORTED_METHOD_DCM" -> Right EnablerUnsupportedMethodDcm
-        "EXTERNAL_FILE_REFERENCED" -> Right ExternalFileReferenced
-        "FILE_DETAIL_EMPTY" -> Right FileDetailEmpty
-        "FILE_TYPE_INVALID" -> Right FileTypeInvalid
-        "GWD_PROPERTIES_INVALID" -> Right GwdPropertiesInvalid
-        "HTML5_FEATURE_UNSUPPORTED" -> Right HTML5FeatureUnsupported
-        "LINKED_FILE_NOT_FOUND" -> Right LinkedFileNotFound
-        "MAX_FLASH_VERSION_11" -> Right MaxFlashVersion11
-        "MRAID_REFERENCED" -> Right MraidReferenced
-        "NOT_SSL_COMPLIANT" -> Right NotSSLCompliant
-        "ORPHANED_ASSET" -> Right OrphanedAsset
-        "PRIMARY_HTML_MISSING" -> Right PrimaryHTMLMissing
-        "SVG_INVALID" -> Right SvgInvalid
-        "ZIP_INVALID" -> Right ZipInvalid
-        x -> Left ("Unable to parse CreativeAssetMetadataWarnedValidationRulesItem from: " <> x)
-
-instance ToHttpApiData CreativeAssetMetadataWarnedValidationRulesItem where
-    toQueryParam = \case
-        ADMobReferenced -> "ADMOB_REFERENCED"
-        AssetFormatUnsupportedDcm -> "ASSET_FORMAT_UNSUPPORTED_DCM"
-        AssetInvalid -> "ASSET_INVALID"
-        ClickTagHardCoded -> "CLICK_TAG_HARD_CODED"
-        ClickTagInvalid -> "CLICK_TAG_INVALID"
-        ClickTagInGwd -> "CLICK_TAG_IN_GWD"
-        ClickTagMissing -> "CLICK_TAG_MISSING"
-        ClickTagMoreThanOne -> "CLICK_TAG_MORE_THAN_ONE"
-        ClickTagNonTopLevel -> "CLICK_TAG_NON_TOP_LEVEL"
-        ComponentUnsupportedDcm -> "COMPONENT_UNSUPPORTED_DCM"
-        EnablerUnsupportedMethodDcm -> "ENABLER_UNSUPPORTED_METHOD_DCM"
-        ExternalFileReferenced -> "EXTERNAL_FILE_REFERENCED"
-        FileDetailEmpty -> "FILE_DETAIL_EMPTY"
-        FileTypeInvalid -> "FILE_TYPE_INVALID"
-        GwdPropertiesInvalid -> "GWD_PROPERTIES_INVALID"
-        HTML5FeatureUnsupported -> "HTML5_FEATURE_UNSUPPORTED"
-        LinkedFileNotFound -> "LINKED_FILE_NOT_FOUND"
-        MaxFlashVersion11 -> "MAX_FLASH_VERSION_11"
-        MraidReferenced -> "MRAID_REFERENCED"
-        NotSSLCompliant -> "NOT_SSL_COMPLIANT"
-        OrphanedAsset -> "ORPHANED_ASSET"
-        PrimaryHTMLMissing -> "PRIMARY_HTML_MISSING"
-        SvgInvalid -> "SVG_INVALID"
-        ZipInvalid -> "ZIP_INVALID"
-
-instance FromJSON CreativeAssetMetadataWarnedValidationRulesItem where
-    parseJSON = parseJSONText "CreativeAssetMetadataWarnedValidationRulesItem"
-
-instance ToJSON CreativeAssetMetadataWarnedValidationRulesItem where
-    toJSON = toJSONText
-
--- | Payment source type of this ad slot.
-data AdSlotPaymentSourceType
-    = PlanningPaymentSourceTypeAgencyPaid
-      -- ^ @PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID@
-    | PlanningPaymentSourceTypePublisherPaid
-      -- ^ @PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdSlotPaymentSourceType
-
-instance FromHttpApiData AdSlotPaymentSourceType where
-    parseQueryParam = \case
-        "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID" -> Right PlanningPaymentSourceTypeAgencyPaid
-        "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" -> Right PlanningPaymentSourceTypePublisherPaid
-        x -> Left ("Unable to parse AdSlotPaymentSourceType from: " <> x)
-
-instance ToHttpApiData AdSlotPaymentSourceType where
-    toQueryParam = \case
-        PlanningPaymentSourceTypeAgencyPaid -> "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID"
-        PlanningPaymentSourceTypePublisherPaid -> "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID"
-
-instance FromJSON AdSlotPaymentSourceType where
-    parseJSON = parseJSONText "AdSlotPaymentSourceType"
-
-instance ToJSON AdSlotPaymentSourceType where
-    toJSON = toJSONText
-
-data AccountPermissionAccountProFilesItem
-    = APAPFIAccountProFileBasic
-      -- ^ @ACCOUNT_PROFILE_BASIC@
-    | APAPFIAccountProFileStandard
-      -- ^ @ACCOUNT_PROFILE_STANDARD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AccountPermissionAccountProFilesItem
-
-instance FromHttpApiData AccountPermissionAccountProFilesItem where
-    parseQueryParam = \case
-        "ACCOUNT_PROFILE_BASIC" -> Right APAPFIAccountProFileBasic
-        "ACCOUNT_PROFILE_STANDARD" -> Right APAPFIAccountProFileStandard
-        x -> Left ("Unable to parse AccountPermissionAccountProFilesItem from: " <> x)
-
-instance ToHttpApiData AccountPermissionAccountProFilesItem where
-    toQueryParam = \case
-        APAPFIAccountProFileBasic -> "ACCOUNT_PROFILE_BASIC"
-        APAPFIAccountProFileStandard -> "ACCOUNT_PROFILE_STANDARD"
-
-instance FromJSON AccountPermissionAccountProFilesItem where
-    parseJSON = parseJSONText "AccountPermissionAccountProFilesItem"
-
-instance ToJSON AccountPermissionAccountProFilesItem where
-    toJSON = toJSONText
-
--- | Type of the event. This is a read-only field.
-data CreativeCustomEventAdvertiserCustomEventType
-    = AdvertiserEventCounter
-      -- ^ @ADVERTISER_EVENT_COUNTER@
-    | AdvertiserEventExit
-      -- ^ @ADVERTISER_EVENT_EXIT@
-    | AdvertiserEventTimer
-      -- ^ @ADVERTISER_EVENT_TIMER@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeCustomEventAdvertiserCustomEventType
-
-instance FromHttpApiData CreativeCustomEventAdvertiserCustomEventType where
-    parseQueryParam = \case
-        "ADVERTISER_EVENT_COUNTER" -> Right AdvertiserEventCounter
-        "ADVERTISER_EVENT_EXIT" -> Right AdvertiserEventExit
-        "ADVERTISER_EVENT_TIMER" -> Right AdvertiserEventTimer
-        x -> Left ("Unable to parse CreativeCustomEventAdvertiserCustomEventType from: " <> x)
-
-instance ToHttpApiData CreativeCustomEventAdvertiserCustomEventType where
-    toQueryParam = \case
-        AdvertiserEventCounter -> "ADVERTISER_EVENT_COUNTER"
-        AdvertiserEventExit -> "ADVERTISER_EVENT_EXIT"
-        AdvertiserEventTimer -> "ADVERTISER_EVENT_TIMER"
-
-instance FromJSON CreativeCustomEventAdvertiserCustomEventType where
-    parseJSON = parseJSONText "CreativeCustomEventAdvertiserCustomEventType"
-
-instance ToJSON CreativeCustomEventAdvertiserCustomEventType where
-    toJSON = toJSONText
-
--- | Select only change logs with the specified object type.
-data ChangeLogsListObjectType
-    = CLLOTObjectAccount
-      -- ^ @OBJECT_ACCOUNT@
-    | CLLOTObjectAccountBillingFeature
-      -- ^ @OBJECT_ACCOUNT_BILLING_FEATURE@
-    | CLLOTObjectAd
-      -- ^ @OBJECT_AD@
-    | CLLOTObjectAdvertiser
-      -- ^ @OBJECT_ADVERTISER@
-    | CLLOTObjectAdvertiserGroup
-      -- ^ @OBJECT_ADVERTISER_GROUP@
-    | CLLOTObjectBillingAccountGroup
-      -- ^ @OBJECT_BILLING_ACCOUNT_GROUP@
-    | CLLOTObjectBillingFeature
-      -- ^ @OBJECT_BILLING_FEATURE@
-    | CLLOTObjectBillingMinimumFee
-      -- ^ @OBJECT_BILLING_MINIMUM_FEE@
-    | CLLOTObjectBillingProFile
-      -- ^ @OBJECT_BILLING_PROFILE@
-    | CLLOTObjectCampaign
-      -- ^ @OBJECT_CAMPAIGN@
-    | CLLOTObjectContentCategory
-      -- ^ @OBJECT_CONTENT_CATEGORY@
-    | CLLOTObjectCreative
-      -- ^ @OBJECT_CREATIVE@
-    | CLLOTObjectCreativeAsset
-      -- ^ @OBJECT_CREATIVE_ASSET@
-    | CLLOTObjectCreativeBundle
-      -- ^ @OBJECT_CREATIVE_BUNDLE@
-    | CLLOTObjectCreativeField
-      -- ^ @OBJECT_CREATIVE_FIELD@
-    | CLLOTObjectCreativeGroup
-      -- ^ @OBJECT_CREATIVE_GROUP@
-    | CLLOTObjectDfaSite
-      -- ^ @OBJECT_DFA_SITE@
-    | CLLOTObjectEventTag
-      -- ^ @OBJECT_EVENT_TAG@
-    | CLLOTObjectFloodlightActivityGroup
-      -- ^ @OBJECT_FLOODLIGHT_ACTIVITY_GROUP@
-    | CLLOTObjectFloodlightActvity
-      -- ^ @OBJECT_FLOODLIGHT_ACTVITY@
-    | CLLOTObjectFloodlightConfiguration
-      -- ^ @OBJECT_FLOODLIGHT_CONFIGURATION@
-    | CLLOTObjectInstreamCreative
-      -- ^ @OBJECT_INSTREAM_CREATIVE@
-    | CLLOTObjectLandingPage
-      -- ^ @OBJECT_LANDING_PAGE@
-    | CLLOTObjectMediaOrder
-      -- ^ @OBJECT_MEDIA_ORDER@
-    | CLLOTObjectPlacement
-      -- ^ @OBJECT_PLACEMENT@
-    | CLLOTObjectPlacementStrategy
-      -- ^ @OBJECT_PLACEMENT_STRATEGY@
-    | CLLOTObjectPlaystoreLink
-      -- ^ @OBJECT_PLAYSTORE_LINK@
-    | CLLOTObjectProvidedListClient
-      -- ^ @OBJECT_PROVIDED_LIST_CLIENT@
-    | CLLOTObjectRateCard
-      -- ^ @OBJECT_RATE_CARD@
-    | CLLOTObjectRemarketingList
-      -- ^ @OBJECT_REMARKETING_LIST@
-    | CLLOTObjectRichmediaCreative
-      -- ^ @OBJECT_RICHMEDIA_CREATIVE@
-    | CLLOTObjectSdSite
-      -- ^ @OBJECT_SD_SITE@
-    | CLLOTObjectSearchLiftStudy
-      -- ^ @OBJECT_SEARCH_LIFT_STUDY@
-    | CLLOTObjectSize
-      -- ^ @OBJECT_SIZE@
-    | CLLOTObjectSubAccount
-      -- ^ @OBJECT_SUBACCOUNT@
-    | CLLOTObjectTargetingTemplate
-      -- ^ @OBJECT_TARGETING_TEMPLATE@
-    | CLLOTObjectUserProFile
-      -- ^ @OBJECT_USER_PROFILE@
-    | CLLOTObjectUserProFileFilter
-      -- ^ @OBJECT_USER_PROFILE_FILTER@
-    | CLLOTObjectUserRole
-      -- ^ @OBJECT_USER_ROLE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ChangeLogsListObjectType
-
-instance FromHttpApiData ChangeLogsListObjectType where
-    parseQueryParam = \case
-        "OBJECT_ACCOUNT" -> Right CLLOTObjectAccount
-        "OBJECT_ACCOUNT_BILLING_FEATURE" -> Right CLLOTObjectAccountBillingFeature
-        "OBJECT_AD" -> Right CLLOTObjectAd
-        "OBJECT_ADVERTISER" -> Right CLLOTObjectAdvertiser
-        "OBJECT_ADVERTISER_GROUP" -> Right CLLOTObjectAdvertiserGroup
-        "OBJECT_BILLING_ACCOUNT_GROUP" -> Right CLLOTObjectBillingAccountGroup
-        "OBJECT_BILLING_FEATURE" -> Right CLLOTObjectBillingFeature
-        "OBJECT_BILLING_MINIMUM_FEE" -> Right CLLOTObjectBillingMinimumFee
-        "OBJECT_BILLING_PROFILE" -> Right CLLOTObjectBillingProFile
-        "OBJECT_CAMPAIGN" -> Right CLLOTObjectCampaign
-        "OBJECT_CONTENT_CATEGORY" -> Right CLLOTObjectContentCategory
-        "OBJECT_CREATIVE" -> Right CLLOTObjectCreative
-        "OBJECT_CREATIVE_ASSET" -> Right CLLOTObjectCreativeAsset
-        "OBJECT_CREATIVE_BUNDLE" -> Right CLLOTObjectCreativeBundle
-        "OBJECT_CREATIVE_FIELD" -> Right CLLOTObjectCreativeField
-        "OBJECT_CREATIVE_GROUP" -> Right CLLOTObjectCreativeGroup
-        "OBJECT_DFA_SITE" -> Right CLLOTObjectDfaSite
-        "OBJECT_EVENT_TAG" -> Right CLLOTObjectEventTag
-        "OBJECT_FLOODLIGHT_ACTIVITY_GROUP" -> Right CLLOTObjectFloodlightActivityGroup
-        "OBJECT_FLOODLIGHT_ACTVITY" -> Right CLLOTObjectFloodlightActvity
-        "OBJECT_FLOODLIGHT_CONFIGURATION" -> Right CLLOTObjectFloodlightConfiguration
-        "OBJECT_INSTREAM_CREATIVE" -> Right CLLOTObjectInstreamCreative
-        "OBJECT_LANDING_PAGE" -> Right CLLOTObjectLandingPage
-        "OBJECT_MEDIA_ORDER" -> Right CLLOTObjectMediaOrder
-        "OBJECT_PLACEMENT" -> Right CLLOTObjectPlacement
-        "OBJECT_PLACEMENT_STRATEGY" -> Right CLLOTObjectPlacementStrategy
-        "OBJECT_PLAYSTORE_LINK" -> Right CLLOTObjectPlaystoreLink
-        "OBJECT_PROVIDED_LIST_CLIENT" -> Right CLLOTObjectProvidedListClient
-        "OBJECT_RATE_CARD" -> Right CLLOTObjectRateCard
-        "OBJECT_REMARKETING_LIST" -> Right CLLOTObjectRemarketingList
-        "OBJECT_RICHMEDIA_CREATIVE" -> Right CLLOTObjectRichmediaCreative
-        "OBJECT_SD_SITE" -> Right CLLOTObjectSdSite
-        "OBJECT_SEARCH_LIFT_STUDY" -> Right CLLOTObjectSearchLiftStudy
-        "OBJECT_SIZE" -> Right CLLOTObjectSize
-        "OBJECT_SUBACCOUNT" -> Right CLLOTObjectSubAccount
-        "OBJECT_TARGETING_TEMPLATE" -> Right CLLOTObjectTargetingTemplate
-        "OBJECT_USER_PROFILE" -> Right CLLOTObjectUserProFile
-        "OBJECT_USER_PROFILE_FILTER" -> Right CLLOTObjectUserProFileFilter
-        "OBJECT_USER_ROLE" -> Right CLLOTObjectUserRole
-        x -> Left ("Unable to parse ChangeLogsListObjectType from: " <> x)
-
-instance ToHttpApiData ChangeLogsListObjectType where
-    toQueryParam = \case
-        CLLOTObjectAccount -> "OBJECT_ACCOUNT"
-        CLLOTObjectAccountBillingFeature -> "OBJECT_ACCOUNT_BILLING_FEATURE"
-        CLLOTObjectAd -> "OBJECT_AD"
-        CLLOTObjectAdvertiser -> "OBJECT_ADVERTISER"
-        CLLOTObjectAdvertiserGroup -> "OBJECT_ADVERTISER_GROUP"
-        CLLOTObjectBillingAccountGroup -> "OBJECT_BILLING_ACCOUNT_GROUP"
-        CLLOTObjectBillingFeature -> "OBJECT_BILLING_FEATURE"
-        CLLOTObjectBillingMinimumFee -> "OBJECT_BILLING_MINIMUM_FEE"
-        CLLOTObjectBillingProFile -> "OBJECT_BILLING_PROFILE"
-        CLLOTObjectCampaign -> "OBJECT_CAMPAIGN"
-        CLLOTObjectContentCategory -> "OBJECT_CONTENT_CATEGORY"
-        CLLOTObjectCreative -> "OBJECT_CREATIVE"
-        CLLOTObjectCreativeAsset -> "OBJECT_CREATIVE_ASSET"
-        CLLOTObjectCreativeBundle -> "OBJECT_CREATIVE_BUNDLE"
-        CLLOTObjectCreativeField -> "OBJECT_CREATIVE_FIELD"
-        CLLOTObjectCreativeGroup -> "OBJECT_CREATIVE_GROUP"
-        CLLOTObjectDfaSite -> "OBJECT_DFA_SITE"
-        CLLOTObjectEventTag -> "OBJECT_EVENT_TAG"
-        CLLOTObjectFloodlightActivityGroup -> "OBJECT_FLOODLIGHT_ACTIVITY_GROUP"
-        CLLOTObjectFloodlightActvity -> "OBJECT_FLOODLIGHT_ACTVITY"
-        CLLOTObjectFloodlightConfiguration -> "OBJECT_FLOODLIGHT_CONFIGURATION"
-        CLLOTObjectInstreamCreative -> "OBJECT_INSTREAM_CREATIVE"
-        CLLOTObjectLandingPage -> "OBJECT_LANDING_PAGE"
-        CLLOTObjectMediaOrder -> "OBJECT_MEDIA_ORDER"
-        CLLOTObjectPlacement -> "OBJECT_PLACEMENT"
-        CLLOTObjectPlacementStrategy -> "OBJECT_PLACEMENT_STRATEGY"
-        CLLOTObjectPlaystoreLink -> "OBJECT_PLAYSTORE_LINK"
-        CLLOTObjectProvidedListClient -> "OBJECT_PROVIDED_LIST_CLIENT"
-        CLLOTObjectRateCard -> "OBJECT_RATE_CARD"
-        CLLOTObjectRemarketingList -> "OBJECT_REMARKETING_LIST"
-        CLLOTObjectRichmediaCreative -> "OBJECT_RICHMEDIA_CREATIVE"
-        CLLOTObjectSdSite -> "OBJECT_SD_SITE"
-        CLLOTObjectSearchLiftStudy -> "OBJECT_SEARCH_LIFT_STUDY"
-        CLLOTObjectSize -> "OBJECT_SIZE"
-        CLLOTObjectSubAccount -> "OBJECT_SUBACCOUNT"
-        CLLOTObjectTargetingTemplate -> "OBJECT_TARGETING_TEMPLATE"
-        CLLOTObjectUserProFile -> "OBJECT_USER_PROFILE"
-        CLLOTObjectUserProFileFilter -> "OBJECT_USER_PROFILE_FILTER"
-        CLLOTObjectUserRole -> "OBJECT_USER_ROLE"
-
-instance FromJSON ChangeLogsListObjectType where
-    parseJSON = parseJSONText "ChangeLogsListObjectType"
-
-instance ToJSON ChangeLogsListObjectType where
-    toJSON = toJSONText
-
--- | Orientation of a site template used for video. This will act as default
--- for new placements created under this site.
-data SiteVideoSettingsOrientation
-    = SVSOAny
-      -- ^ @ANY@
-    | SVSOLandscape
-      -- ^ @LANDSCAPE@
-    | SVSOPortrait
-      -- ^ @PORTRAIT@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable SiteVideoSettingsOrientation
-
-instance FromHttpApiData SiteVideoSettingsOrientation where
-    parseQueryParam = \case
-        "ANY" -> Right SVSOAny
-        "LANDSCAPE" -> Right SVSOLandscape
-        "PORTRAIT" -> Right SVSOPortrait
-        x -> Left ("Unable to parse SiteVideoSettingsOrientation from: " <> x)
-
-instance ToHttpApiData SiteVideoSettingsOrientation where
-    toQueryParam = \case
-        SVSOAny -> "ANY"
-        SVSOLandscape -> "LANDSCAPE"
-        SVSOPortrait -> "PORTRAIT"
-
-instance FromJSON SiteVideoSettingsOrientation where
-    parseJSON = parseJSONText "SiteVideoSettingsOrientation"
-
-instance ToJSON SiteVideoSettingsOrientation where
-    toJSON = toJSONText
-
--- | Cap cost type of this inventory item.
-data PricingCapCostType
-    = PlanningPlacementCapCostTypeCumulative
-      -- ^ @PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE@
-    | PlanningPlacementCapCostTypeMonthly
-      -- ^ @PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY@
-    | PlanningPlacementCapCostTypeNone
-      -- ^ @PLANNING_PLACEMENT_CAP_COST_TYPE_NONE@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable PricingCapCostType
-
-instance FromHttpApiData PricingCapCostType where
-    parseQueryParam = \case
-        "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE" -> Right PlanningPlacementCapCostTypeCumulative
-        "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY" -> Right PlanningPlacementCapCostTypeMonthly
-        "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" -> Right PlanningPlacementCapCostTypeNone
-        x -> Left ("Unable to parse PricingCapCostType from: " <> x)
-
-instance ToHttpApiData PricingCapCostType where
-    toQueryParam = \case
-        PlanningPlacementCapCostTypeCumulative -> "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE"
-        PlanningPlacementCapCostTypeMonthly -> "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY"
-        PlanningPlacementCapCostTypeNone -> "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE"
-
-instance FromJSON PricingCapCostType where
-    parseJSON = parseJSONText "PricingCapCostType"
-
-instance ToJSON PricingCapCostType where
-    toJSON = toJSONText
-
--- | Type of rich media asset. This is a read-only field. Applicable to the
--- following creative types: all RICH_MEDIA.
-data CreativeAssetDisplayType
-    = AssetDisplayTypeBackdrop
-      -- ^ @ASSET_DISPLAY_TYPE_BACKDROP@
-    | AssetDisplayTypeExpanding
-      -- ^ @ASSET_DISPLAY_TYPE_EXPANDING@
-    | AssetDisplayTypeFlashInFlash
-      -- ^ @ASSET_DISPLAY_TYPE_FLASH_IN_FLASH@
-    | AssetDisplayTypeFlashInFlashExpanding
-      -- ^ @ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING@
-    | AssetDisplayTypeFloating
-      -- ^ @ASSET_DISPLAY_TYPE_FLOATING@
-    | AssetDisplayTypeInpage
-      -- ^ @ASSET_DISPLAY_TYPE_INPAGE@
-    | AssetDisplayTypeOverlay
-      -- ^ @ASSET_DISPLAY_TYPE_OVERLAY@
-    | AssetDisplayTypePeelDown
-      -- ^ @ASSET_DISPLAY_TYPE_PEEL_DOWN@
-    | AssetDisplayTypeVpaidLinear
-      -- ^ @ASSET_DISPLAY_TYPE_VPAID_LINEAR@
-    | AssetDisplayTypeVpaidNonLinear
-      -- ^ @ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable CreativeAssetDisplayType
-
-instance FromHttpApiData CreativeAssetDisplayType where
-    parseQueryParam = \case
-        "ASSET_DISPLAY_TYPE_BACKDROP" -> Right AssetDisplayTypeBackdrop
-        "ASSET_DISPLAY_TYPE_EXPANDING" -> Right AssetDisplayTypeExpanding
-        "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH" -> Right AssetDisplayTypeFlashInFlash
-        "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING" -> Right AssetDisplayTypeFlashInFlashExpanding
-        "ASSET_DISPLAY_TYPE_FLOATING" -> Right AssetDisplayTypeFloating
-        "ASSET_DISPLAY_TYPE_INPAGE" -> Right AssetDisplayTypeInpage
-        "ASSET_DISPLAY_TYPE_OVERLAY" -> Right AssetDisplayTypeOverlay
-        "ASSET_DISPLAY_TYPE_PEEL_DOWN" -> Right AssetDisplayTypePeelDown
-        "ASSET_DISPLAY_TYPE_VPAID_LINEAR" -> Right AssetDisplayTypeVpaidLinear
-        "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" -> Right AssetDisplayTypeVpaidNonLinear
-        x -> Left ("Unable to parse CreativeAssetDisplayType from: " <> x)
-
-instance ToHttpApiData CreativeAssetDisplayType where
-    toQueryParam = \case
-        AssetDisplayTypeBackdrop -> "ASSET_DISPLAY_TYPE_BACKDROP"
-        AssetDisplayTypeExpanding -> "ASSET_DISPLAY_TYPE_EXPANDING"
-        AssetDisplayTypeFlashInFlash -> "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH"
-        AssetDisplayTypeFlashInFlashExpanding -> "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING"
-        AssetDisplayTypeFloating -> "ASSET_DISPLAY_TYPE_FLOATING"
-        AssetDisplayTypeInpage -> "ASSET_DISPLAY_TYPE_INPAGE"
-        AssetDisplayTypeOverlay -> "ASSET_DISPLAY_TYPE_OVERLAY"
-        AssetDisplayTypePeelDown -> "ASSET_DISPLAY_TYPE_PEEL_DOWN"
-        AssetDisplayTypeVpaidLinear -> "ASSET_DISPLAY_TYPE_VPAID_LINEAR"
-        AssetDisplayTypeVpaidNonLinear -> "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR"
-
-instance FromJSON CreativeAssetDisplayType where
-    parseJSON = parseJSONText "CreativeAssetDisplayType"
-
-instance ToJSON CreativeAssetDisplayType where
-    toJSON = toJSONText
-
--- | Counting method for conversions for this floodlight activity. This is a
--- required field.
-data FloodlightActivityCountingMethod
-    = ItemsSoldCounting
-      -- ^ @ITEMS_SOLD_COUNTING@
-    | SessionCounting
-      -- ^ @SESSION_COUNTING@
-    | StandardCounting
-      -- ^ @STANDARD_COUNTING@
-    | TransactionsCounting
-      -- ^ @TRANSACTIONS_COUNTING@
-    | UniqueCounting
-      -- ^ @UNIQUE_COUNTING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable FloodlightActivityCountingMethod
-
-instance FromHttpApiData FloodlightActivityCountingMethod where
-    parseQueryParam = \case
-        "ITEMS_SOLD_COUNTING" -> Right ItemsSoldCounting
-        "SESSION_COUNTING" -> Right SessionCounting
-        "STANDARD_COUNTING" -> Right StandardCounting
-        "TRANSACTIONS_COUNTING" -> Right TransactionsCounting
-        "UNIQUE_COUNTING" -> Right UniqueCounting
-        x -> Left ("Unable to parse FloodlightActivityCountingMethod from: " <> x)
-
-instance ToHttpApiData FloodlightActivityCountingMethod where
-    toQueryParam = \case
-        ItemsSoldCounting -> "ITEMS_SOLD_COUNTING"
-        SessionCounting -> "SESSION_COUNTING"
-        StandardCounting -> "STANDARD_COUNTING"
-        TransactionsCounting -> "TRANSACTIONS_COUNTING"
-        UniqueCounting -> "UNIQUE_COUNTING"
-
-instance FromJSON FloodlightActivityCountingMethod where
-    parseJSON = parseJSONText "FloodlightActivityCountingMethod"
-
-instance ToJSON FloodlightActivityCountingMethod where
-    toJSON = toJSONText
-
--- | Order of sorted results.
-data ContentCategoriesListSortOrder
-    = CCLSOAscending
-      -- ^ @ASCENDING@
-    | CCLSODescending
-      -- ^ @DESCENDING@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable ContentCategoriesListSortOrder
-
-instance FromHttpApiData ContentCategoriesListSortOrder where
-    parseQueryParam = \case
-        "ASCENDING" -> Right CCLSOAscending
-        "DESCENDING" -> Right CCLSODescending
-        x -> Left ("Unable to parse ContentCategoriesListSortOrder from: " <> x)
-
-instance ToHttpApiData ContentCategoriesListSortOrder where
-    toQueryParam = \case
-        CCLSOAscending -> "ASCENDING"
-        CCLSODescending -> "DESCENDING"
-
-instance FromJSON ContentCategoriesListSortOrder where
-    parseJSON = parseJSONText "ContentCategoriesListSortOrder"
-
-instance ToJSON ContentCategoriesListSortOrder where
-    toJSON = toJSONText
-
--- | Status of this advertiser.
-data AdvertiserStatus
-    = ASApproved
-      -- ^ @APPROVED@
-    | ASOnHold
-      -- ^ @ON_HOLD@
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable AdvertiserStatus
-
-instance FromHttpApiData AdvertiserStatus where
-    parseQueryParam = \case
-        "APPROVED" -> Right ASApproved
-        "ON_HOLD" -> Right ASOnHold
-        x -> Left ("Unable to parse AdvertiserStatus from: " <> x)
-
-instance ToHttpApiData AdvertiserStatus where
-    toQueryParam = \case
-        ASApproved -> "APPROVED"
-        ASOnHold -> "ON_HOLD"
-
-instance FromJSON AdvertiserStatus where
-    parseJSON = parseJSONText "AdvertiserStatus"
-
-instance ToJSON AdvertiserStatus where
-    toJSON = toJSONText
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountActiveAdSummaries/Get.hs b/gen/Network/Google/Resource/DFAReporting/AccountActiveAdSummaries/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountActiveAdSummaries/Get.hs
+++ /dev/null
@@ -1,111 +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.DFAReporting.AccountActiveAdSummaries.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets the account\'s active ad summary by account ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountActiveAdSummaries.get@.
-module Network.Google.Resource.DFAReporting.AccountActiveAdSummaries.Get
-    (
-    -- * REST Resource
-      AccountActiveAdSummariesGetResource
-
-    -- * Creating a Request
-    , accountActiveAdSummariesGet
-    , AccountActiveAdSummariesGet
-
-    -- * Request Lenses
-    , aaasgProFileId
-    , aaasgSummaryAccountId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountActiveAdSummaries.get@ method which the
--- 'AccountActiveAdSummariesGet' request conforms to.
-type AccountActiveAdSummariesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountActiveAdSummaries" :>
-               Capture "summaryAccountId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] AccountActiveAdSummary
-
--- | Gets the account\'s active ad summary by account ID.
---
--- /See:/ 'accountActiveAdSummariesGet' smart constructor.
-data AccountActiveAdSummariesGet =
-  AccountActiveAdSummariesGet'
-    { _aaasgProFileId        :: !(Textual Int64)
-    , _aaasgSummaryAccountId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountActiveAdSummariesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aaasgProFileId'
---
--- * 'aaasgSummaryAccountId'
-accountActiveAdSummariesGet
-    :: Int64 -- ^ 'aaasgProFileId'
-    -> Int64 -- ^ 'aaasgSummaryAccountId'
-    -> AccountActiveAdSummariesGet
-accountActiveAdSummariesGet pAaasgProFileId_ pAaasgSummaryAccountId_ =
-  AccountActiveAdSummariesGet'
-    { _aaasgProFileId = _Coerce # pAaasgProFileId_
-    , _aaasgSummaryAccountId = _Coerce # pAaasgSummaryAccountId_
-    }
-
-
--- | User profile ID associated with this request.
-aaasgProFileId :: Lens' AccountActiveAdSummariesGet Int64
-aaasgProFileId
-  = lens _aaasgProFileId
-      (\ s a -> s{_aaasgProFileId = a})
-      . _Coerce
-
--- | Account ID.
-aaasgSummaryAccountId :: Lens' AccountActiveAdSummariesGet Int64
-aaasgSummaryAccountId
-  = lens _aaasgSummaryAccountId
-      (\ s a -> s{_aaasgSummaryAccountId = a})
-      . _Coerce
-
-instance GoogleRequest AccountActiveAdSummariesGet
-         where
-        type Rs AccountActiveAdSummariesGet =
-             AccountActiveAdSummary
-        type Scopes AccountActiveAdSummariesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountActiveAdSummariesGet'{..}
-          = go _aaasgProFileId _aaasgSummaryAccountId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountActiveAdSummariesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/Get.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.AccountPermissionGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one account permission group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountPermissionGroups.get@.
-module Network.Google.Resource.DFAReporting.AccountPermissionGroups.Get
-    (
-    -- * REST Resource
-      AccountPermissionGroupsGetResource
-
-    -- * Creating a Request
-    , accountPermissionGroupsGet
-    , AccountPermissionGroupsGet
-
-    -- * Request Lenses
-    , apggProFileId
-    , apggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountPermissionGroups.get@ method which the
--- 'AccountPermissionGroupsGet' request conforms to.
-type AccountPermissionGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountPermissionGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] AccountPermissionGroup
-
--- | Gets one account permission group by ID.
---
--- /See:/ 'accountPermissionGroupsGet' smart constructor.
-data AccountPermissionGroupsGet =
-  AccountPermissionGroupsGet'
-    { _apggProFileId :: !(Textual Int64)
-    , _apggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apggProFileId'
---
--- * 'apggId'
-accountPermissionGroupsGet
-    :: Int64 -- ^ 'apggProFileId'
-    -> Int64 -- ^ 'apggId'
-    -> AccountPermissionGroupsGet
-accountPermissionGroupsGet pApggProFileId_ pApggId_ =
-  AccountPermissionGroupsGet'
-    {_apggProFileId = _Coerce # pApggProFileId_, _apggId = _Coerce # pApggId_}
-
-
--- | User profile ID associated with this request.
-apggProFileId :: Lens' AccountPermissionGroupsGet Int64
-apggProFileId
-  = lens _apggProFileId
-      (\ s a -> s{_apggProFileId = a})
-      . _Coerce
-
--- | Account permission group ID.
-apggId :: Lens' AccountPermissionGroupsGet Int64
-apggId
-  = lens _apggId (\ s a -> s{_apggId = a}) . _Coerce
-
-instance GoogleRequest AccountPermissionGroupsGet
-         where
-        type Rs AccountPermissionGroupsGet =
-             AccountPermissionGroup
-        type Scopes AccountPermissionGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountPermissionGroupsGet'{..}
-          = go _apggProFileId _apggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountPermissionGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountPermissionGroups/List.hs
+++ /dev/null
@@ -1,94 +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.DFAReporting.AccountPermissionGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves the list of account permission groups.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountPermissionGroups.list@.
-module Network.Google.Resource.DFAReporting.AccountPermissionGroups.List
-    (
-    -- * REST Resource
-      AccountPermissionGroupsListResource
-
-    -- * Creating a Request
-    , accountPermissionGroupsList
-    , AccountPermissionGroupsList
-
-    -- * Request Lenses
-    , apglProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountPermissionGroups.list@ method which the
--- 'AccountPermissionGroupsList' request conforms to.
-type AccountPermissionGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountPermissionGroups" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] AccountPermissionGroupsListResponse
-
--- | Retrieves the list of account permission groups.
---
--- /See:/ 'accountPermissionGroupsList' smart constructor.
-newtype AccountPermissionGroupsList =
-  AccountPermissionGroupsList'
-    { _apglProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apglProFileId'
-accountPermissionGroupsList
-    :: Int64 -- ^ 'apglProFileId'
-    -> AccountPermissionGroupsList
-accountPermissionGroupsList pApglProFileId_ =
-  AccountPermissionGroupsList' {_apglProFileId = _Coerce # pApglProFileId_}
-
-
--- | User profile ID associated with this request.
-apglProFileId :: Lens' AccountPermissionGroupsList Int64
-apglProFileId
-  = lens _apglProFileId
-      (\ s a -> s{_apglProFileId = a})
-      . _Coerce
-
-instance GoogleRequest AccountPermissionGroupsList
-         where
-        type Rs AccountPermissionGroupsList =
-             AccountPermissionGroupsListResponse
-        type Scopes AccountPermissionGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountPermissionGroupsList'{..}
-          = go _apglProFileId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountPermissionGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountPermissions/Get.hs b/gen/Network/Google/Resource/DFAReporting/AccountPermissions/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountPermissions/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.AccountPermissions.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one account permission by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountPermissions.get@.
-module Network.Google.Resource.DFAReporting.AccountPermissions.Get
-    (
-    -- * REST Resource
-      AccountPermissionsGetResource
-
-    -- * Creating a Request
-    , accountPermissionsGet
-    , AccountPermissionsGet
-
-    -- * Request Lenses
-    , apgProFileId
-    , apgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountPermissions.get@ method which the
--- 'AccountPermissionsGet' request conforms to.
-type AccountPermissionsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountPermissions" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] AccountPermission
-
--- | Gets one account permission by ID.
---
--- /See:/ 'accountPermissionsGet' smart constructor.
-data AccountPermissionsGet =
-  AccountPermissionsGet'
-    { _apgProFileId :: !(Textual Int64)
-    , _apgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apgProFileId'
---
--- * 'apgId'
-accountPermissionsGet
-    :: Int64 -- ^ 'apgProFileId'
-    -> Int64 -- ^ 'apgId'
-    -> AccountPermissionsGet
-accountPermissionsGet pApgProFileId_ pApgId_ =
-  AccountPermissionsGet'
-    {_apgProFileId = _Coerce # pApgProFileId_, _apgId = _Coerce # pApgId_}
-
-
--- | User profile ID associated with this request.
-apgProFileId :: Lens' AccountPermissionsGet Int64
-apgProFileId
-  = lens _apgProFileId (\ s a -> s{_apgProFileId = a})
-      . _Coerce
-
--- | Account permission ID.
-apgId :: Lens' AccountPermissionsGet Int64
-apgId
-  = lens _apgId (\ s a -> s{_apgId = a}) . _Coerce
-
-instance GoogleRequest AccountPermissionsGet where
-        type Rs AccountPermissionsGet = AccountPermission
-        type Scopes AccountPermissionsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountPermissionsGet'{..}
-          = go _apgProFileId _apgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountPermissionsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountPermissions/List.hs b/gen/Network/Google/Resource/DFAReporting/AccountPermissions/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountPermissions/List.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.AccountPermissions.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves the list of account permissions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountPermissions.list@.
-module Network.Google.Resource.DFAReporting.AccountPermissions.List
-    (
-    -- * REST Resource
-      AccountPermissionsListResource
-
-    -- * Creating a Request
-    , accountPermissionsList
-    , AccountPermissionsList
-
-    -- * Request Lenses
-    , aplProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountPermissions.list@ method which the
--- 'AccountPermissionsList' request conforms to.
-type AccountPermissionsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountPermissions" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] AccountPermissionsListResponse
-
--- | Retrieves the list of account permissions.
---
--- /See:/ 'accountPermissionsList' smart constructor.
-newtype AccountPermissionsList =
-  AccountPermissionsList'
-    { _aplProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountPermissionsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aplProFileId'
-accountPermissionsList
-    :: Int64 -- ^ 'aplProFileId'
-    -> AccountPermissionsList
-accountPermissionsList pAplProFileId_ =
-  AccountPermissionsList' {_aplProFileId = _Coerce # pAplProFileId_}
-
-
--- | User profile ID associated with this request.
-aplProFileId :: Lens' AccountPermissionsList Int64
-aplProFileId
-  = lens _aplProFileId (\ s a -> s{_aplProFileId = a})
-      . _Coerce
-
-instance GoogleRequest AccountPermissionsList where
-        type Rs AccountPermissionsList =
-             AccountPermissionsListResponse
-        type Scopes AccountPermissionsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountPermissionsList'{..}
-          = go _aplProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountPermissionsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Get.hs b/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Get.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.AccountUserProFiles.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one account user profile by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountUserProfiles.get@.
-module Network.Google.Resource.DFAReporting.AccountUserProFiles.Get
-    (
-    -- * REST Resource
-      AccountUserProFilesGetResource
-
-    -- * Creating a Request
-    , accountUserProFilesGet
-    , AccountUserProFilesGet
-
-    -- * Request Lenses
-    , aupfgProFileId
-    , aupfgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountUserProfiles.get@ method which the
--- 'AccountUserProFilesGet' request conforms to.
-type AccountUserProFilesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountUserProfiles" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] AccountUserProFile
-
--- | Gets one account user profile by ID.
---
--- /See:/ 'accountUserProFilesGet' smart constructor.
-data AccountUserProFilesGet =
-  AccountUserProFilesGet'
-    { _aupfgProFileId :: !(Textual Int64)
-    , _aupfgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupfgProFileId'
---
--- * 'aupfgId'
-accountUserProFilesGet
-    :: Int64 -- ^ 'aupfgProFileId'
-    -> Int64 -- ^ 'aupfgId'
-    -> AccountUserProFilesGet
-accountUserProFilesGet pAupfgProFileId_ pAupfgId_ =
-  AccountUserProFilesGet'
-    { _aupfgProFileId = _Coerce # pAupfgProFileId_
-    , _aupfgId = _Coerce # pAupfgId_
-    }
-
-
--- | User profile ID associated with this request.
-aupfgProFileId :: Lens' AccountUserProFilesGet Int64
-aupfgProFileId
-  = lens _aupfgProFileId
-      (\ s a -> s{_aupfgProFileId = a})
-      . _Coerce
-
--- | User profile ID.
-aupfgId :: Lens' AccountUserProFilesGet Int64
-aupfgId
-  = lens _aupfgId (\ s a -> s{_aupfgId = a}) . _Coerce
-
-instance GoogleRequest AccountUserProFilesGet where
-        type Rs AccountUserProFilesGet = AccountUserProFile
-        type Scopes AccountUserProFilesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountUserProFilesGet'{..}
-          = go _aupfgProFileId _aupfgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountUserProFilesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Insert.hs b/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Insert.hs
+++ /dev/null
@@ -1,108 +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.DFAReporting.AccountUserProFiles.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new account user profile.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountUserProfiles.insert@.
-module Network.Google.Resource.DFAReporting.AccountUserProFiles.Insert
-    (
-    -- * REST Resource
-      AccountUserProFilesInsertResource
-
-    -- * Creating a Request
-    , accountUserProFilesInsert
-    , AccountUserProFilesInsert
-
-    -- * Request Lenses
-    , aupfiProFileId
-    , aupfiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountUserProfiles.insert@ method which the
--- 'AccountUserProFilesInsert' request conforms to.
-type AccountUserProFilesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountUserProfiles" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] AccountUserProFile :>
-                   Post '[JSON] AccountUserProFile
-
--- | Inserts a new account user profile.
---
--- /See:/ 'accountUserProFilesInsert' smart constructor.
-data AccountUserProFilesInsert =
-  AccountUserProFilesInsert'
-    { _aupfiProFileId :: !(Textual Int64)
-    , _aupfiPayload   :: !AccountUserProFile
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupfiProFileId'
---
--- * 'aupfiPayload'
-accountUserProFilesInsert
-    :: Int64 -- ^ 'aupfiProFileId'
-    -> AccountUserProFile -- ^ 'aupfiPayload'
-    -> AccountUserProFilesInsert
-accountUserProFilesInsert pAupfiProFileId_ pAupfiPayload_ =
-  AccountUserProFilesInsert'
-    { _aupfiProFileId = _Coerce # pAupfiProFileId_
-    , _aupfiPayload = pAupfiPayload_
-    }
-
-
--- | User profile ID associated with this request.
-aupfiProFileId :: Lens' AccountUserProFilesInsert Int64
-aupfiProFileId
-  = lens _aupfiProFileId
-      (\ s a -> s{_aupfiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-aupfiPayload :: Lens' AccountUserProFilesInsert AccountUserProFile
-aupfiPayload
-  = lens _aupfiPayload (\ s a -> s{_aupfiPayload = a})
-
-instance GoogleRequest AccountUserProFilesInsert
-         where
-        type Rs AccountUserProFilesInsert =
-             AccountUserProFile
-        type Scopes AccountUserProFilesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountUserProFilesInsert'{..}
-          = go _aupfiProFileId (Just AltJSON) _aupfiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountUserProFilesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/List.hs b/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/List.hs
+++ /dev/null
@@ -1,227 +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.DFAReporting.AccountUserProFiles.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of account user profiles, possibly filtered. This
--- method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountUserProfiles.list@.
-module Network.Google.Resource.DFAReporting.AccountUserProFiles.List
-    (
-    -- * REST Resource
-      AccountUserProFilesListResource
-
-    -- * Creating a Request
-    , accountUserProFilesList
-    , AccountUserProFilesList
-
-    -- * Request Lenses
-    , aupflUserRoleId
-    , aupflSearchString
-    , aupflIds
-    , aupflProFileId
-    , aupflSortOrder
-    , aupflActive
-    , aupflPageToken
-    , aupflSortField
-    , aupflSubAccountId
-    , aupflMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountUserProfiles.list@ method which the
--- 'AccountUserProFilesList' request conforms to.
-type AccountUserProFilesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountUserProfiles" :>
-               QueryParam "userRoleId" (Textual Int64) :>
-                 QueryParam "searchString" Text :>
-                   QueryParams "ids" (Textual Int64) :>
-                     QueryParam "sortOrder"
-                       AccountUserProFilesListSortOrder
-                       :>
-                       QueryParam "active" Bool :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField"
-                             AccountUserProFilesListSortField
-                             :>
-                             QueryParam "subaccountId" (Textual Int64) :>
-                               QueryParam "maxResults" (Textual Int32) :>
-                                 QueryParam "alt" AltJSON :>
-                                   Get '[JSON] AccountUserProFilesListResponse
-
--- | Retrieves a list of account user profiles, possibly filtered. This
--- method supports paging.
---
--- /See:/ 'accountUserProFilesList' smart constructor.
-data AccountUserProFilesList =
-  AccountUserProFilesList'
-    { _aupflUserRoleId   :: !(Maybe (Textual Int64))
-    , _aupflSearchString :: !(Maybe Text)
-    , _aupflIds          :: !(Maybe [Textual Int64])
-    , _aupflProFileId    :: !(Textual Int64)
-    , _aupflSortOrder    :: !AccountUserProFilesListSortOrder
-    , _aupflActive       :: !(Maybe Bool)
-    , _aupflPageToken    :: !(Maybe Text)
-    , _aupflSortField    :: !AccountUserProFilesListSortField
-    , _aupflSubAccountId :: !(Maybe (Textual Int64))
-    , _aupflMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupflUserRoleId'
---
--- * 'aupflSearchString'
---
--- * 'aupflIds'
---
--- * 'aupflProFileId'
---
--- * 'aupflSortOrder'
---
--- * 'aupflActive'
---
--- * 'aupflPageToken'
---
--- * 'aupflSortField'
---
--- * 'aupflSubAccountId'
---
--- * 'aupflMaxResults'
-accountUserProFilesList
-    :: Int64 -- ^ 'aupflProFileId'
-    -> AccountUserProFilesList
-accountUserProFilesList pAupflProFileId_ =
-  AccountUserProFilesList'
-    { _aupflUserRoleId = Nothing
-    , _aupflSearchString = Nothing
-    , _aupflIds = Nothing
-    , _aupflProFileId = _Coerce # pAupflProFileId_
-    , _aupflSortOrder = AUPFLSOAscending
-    , _aupflActive = Nothing
-    , _aupflPageToken = Nothing
-    , _aupflSortField = AUPFLSFID
-    , _aupflSubAccountId = Nothing
-    , _aupflMaxResults = 1000
-    }
-
-
--- | Select only user profiles with the specified user role ID.
-aupflUserRoleId :: Lens' AccountUserProFilesList (Maybe Int64)
-aupflUserRoleId
-  = lens _aupflUserRoleId
-      (\ s a -> s{_aupflUserRoleId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name, ID or email. Wildcards (*) are
--- allowed. For example, \"user profile*2015\" will return objects with
--- names like \"user profile June 2015\", \"user profile April 2015\", or
--- simply \"user profile 2015\". Most of the searches also add wildcards
--- implicitly at the start and the end of the search string. For example, a
--- search string of \"user profile\" will match objects with name \"my user
--- profile\", \"user profile 2015\", or simply \"user profile\".
-aupflSearchString :: Lens' AccountUserProFilesList (Maybe Text)
-aupflSearchString
-  = lens _aupflSearchString
-      (\ s a -> s{_aupflSearchString = a})
-
--- | Select only user profiles with these IDs.
-aupflIds :: Lens' AccountUserProFilesList [Int64]
-aupflIds
-  = lens _aupflIds (\ s a -> s{_aupflIds = a}) .
-      _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-aupflProFileId :: Lens' AccountUserProFilesList Int64
-aupflProFileId
-  = lens _aupflProFileId
-      (\ s a -> s{_aupflProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-aupflSortOrder :: Lens' AccountUserProFilesList AccountUserProFilesListSortOrder
-aupflSortOrder
-  = lens _aupflSortOrder
-      (\ s a -> s{_aupflSortOrder = a})
-
--- | Select only active user profiles.
-aupflActive :: Lens' AccountUserProFilesList (Maybe Bool)
-aupflActive
-  = lens _aupflActive (\ s a -> s{_aupflActive = a})
-
--- | Value of the nextPageToken from the previous result page.
-aupflPageToken :: Lens' AccountUserProFilesList (Maybe Text)
-aupflPageToken
-  = lens _aupflPageToken
-      (\ s a -> s{_aupflPageToken = a})
-
--- | Field by which to sort the list.
-aupflSortField :: Lens' AccountUserProFilesList AccountUserProFilesListSortField
-aupflSortField
-  = lens _aupflSortField
-      (\ s a -> s{_aupflSortField = a})
-
--- | Select only user profiles with the specified subaccount ID.
-aupflSubAccountId :: Lens' AccountUserProFilesList (Maybe Int64)
-aupflSubAccountId
-  = lens _aupflSubAccountId
-      (\ s a -> s{_aupflSubAccountId = a})
-      . mapping _Coerce
-
--- | Maximum number of results to return.
-aupflMaxResults :: Lens' AccountUserProFilesList Int32
-aupflMaxResults
-  = lens _aupflMaxResults
-      (\ s a -> s{_aupflMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest AccountUserProFilesList where
-        type Rs AccountUserProFilesList =
-             AccountUserProFilesListResponse
-        type Scopes AccountUserProFilesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountUserProFilesList'{..}
-          = go _aupflProFileId _aupflUserRoleId
-              _aupflSearchString
-              (_aupflIds ^. _Default)
-              (Just _aupflSortOrder)
-              _aupflActive
-              _aupflPageToken
-              (Just _aupflSortField)
-              _aupflSubAccountId
-              (Just _aupflMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountUserProFilesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Patch.hs b/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Patch.hs
+++ /dev/null
@@ -1,121 +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.DFAReporting.AccountUserProFiles.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing account user profile. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountUserProfiles.patch@.
-module Network.Google.Resource.DFAReporting.AccountUserProFiles.Patch
-    (
-    -- * REST Resource
-      AccountUserProFilesPatchResource
-
-    -- * Creating a Request
-    , accountUserProFilesPatch
-    , AccountUserProFilesPatch
-
-    -- * Request Lenses
-    , aupfpProFileId
-    , aupfpPayload
-    , aupfpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountUserProfiles.patch@ method which the
--- 'AccountUserProFilesPatch' request conforms to.
-type AccountUserProFilesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountUserProfiles" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] AccountUserProFile :>
-                     Patch '[JSON] AccountUserProFile
-
--- | Updates an existing account user profile. This method supports patch
--- semantics.
---
--- /See:/ 'accountUserProFilesPatch' smart constructor.
-data AccountUserProFilesPatch =
-  AccountUserProFilesPatch'
-    { _aupfpProFileId :: !(Textual Int64)
-    , _aupfpPayload   :: !AccountUserProFile
-    , _aupfpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupfpProFileId'
---
--- * 'aupfpPayload'
---
--- * 'aupfpId'
-accountUserProFilesPatch
-    :: Int64 -- ^ 'aupfpProFileId'
-    -> AccountUserProFile -- ^ 'aupfpPayload'
-    -> Int64 -- ^ 'aupfpId'
-    -> AccountUserProFilesPatch
-accountUserProFilesPatch pAupfpProFileId_ pAupfpPayload_ pAupfpId_ =
-  AccountUserProFilesPatch'
-    { _aupfpProFileId = _Coerce # pAupfpProFileId_
-    , _aupfpPayload = pAupfpPayload_
-    , _aupfpId = _Coerce # pAupfpId_
-    }
-
-
--- | User profile ID associated with this request.
-aupfpProFileId :: Lens' AccountUserProFilesPatch Int64
-aupfpProFileId
-  = lens _aupfpProFileId
-      (\ s a -> s{_aupfpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-aupfpPayload :: Lens' AccountUserProFilesPatch AccountUserProFile
-aupfpPayload
-  = lens _aupfpPayload (\ s a -> s{_aupfpPayload = a})
-
--- | User profile ID.
-aupfpId :: Lens' AccountUserProFilesPatch Int64
-aupfpId
-  = lens _aupfpId (\ s a -> s{_aupfpId = a}) . _Coerce
-
-instance GoogleRequest AccountUserProFilesPatch where
-        type Rs AccountUserProFilesPatch = AccountUserProFile
-        type Scopes AccountUserProFilesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountUserProFilesPatch'{..}
-          = go _aupfpProFileId (Just _aupfpId) (Just AltJSON)
-              _aupfpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountUserProFilesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Update.hs b/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AccountUserProFiles/Update.hs
+++ /dev/null
@@ -1,108 +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.DFAReporting.AccountUserProFiles.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing account user profile.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accountUserProfiles.update@.
-module Network.Google.Resource.DFAReporting.AccountUserProFiles.Update
-    (
-    -- * REST Resource
-      AccountUserProFilesUpdateResource
-
-    -- * Creating a Request
-    , accountUserProFilesUpdate
-    , AccountUserProFilesUpdate
-
-    -- * Request Lenses
-    , aupfuProFileId
-    , aupfuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accountUserProfiles.update@ method which the
--- 'AccountUserProFilesUpdate' request conforms to.
-type AccountUserProFilesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accountUserProfiles" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] AccountUserProFile :>
-                   Put '[JSON] AccountUserProFile
-
--- | Updates an existing account user profile.
---
--- /See:/ 'accountUserProFilesUpdate' smart constructor.
-data AccountUserProFilesUpdate =
-  AccountUserProFilesUpdate'
-    { _aupfuProFileId :: !(Textual Int64)
-    , _aupfuPayload   :: !AccountUserProFile
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountUserProFilesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aupfuProFileId'
---
--- * 'aupfuPayload'
-accountUserProFilesUpdate
-    :: Int64 -- ^ 'aupfuProFileId'
-    -> AccountUserProFile -- ^ 'aupfuPayload'
-    -> AccountUserProFilesUpdate
-accountUserProFilesUpdate pAupfuProFileId_ pAupfuPayload_ =
-  AccountUserProFilesUpdate'
-    { _aupfuProFileId = _Coerce # pAupfuProFileId_
-    , _aupfuPayload = pAupfuPayload_
-    }
-
-
--- | User profile ID associated with this request.
-aupfuProFileId :: Lens' AccountUserProFilesUpdate Int64
-aupfuProFileId
-  = lens _aupfuProFileId
-      (\ s a -> s{_aupfuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-aupfuPayload :: Lens' AccountUserProFilesUpdate AccountUserProFile
-aupfuPayload
-  = lens _aupfuPayload (\ s a -> s{_aupfuPayload = a})
-
-instance GoogleRequest AccountUserProFilesUpdate
-         where
-        type Rs AccountUserProFilesUpdate =
-             AccountUserProFile
-        type Scopes AccountUserProFilesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountUserProFilesUpdate'{..}
-          = go _aupfuProFileId (Just AltJSON) _aupfuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AccountUserProFilesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Accounts/Get.hs b/gen/Network/Google/Resource/DFAReporting/Accounts/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Accounts/Get.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.DFAReporting.Accounts.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one account by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accounts.get@.
-module Network.Google.Resource.DFAReporting.Accounts.Get
-    (
-    -- * REST Resource
-      AccountsGetResource
-
-    -- * Creating a Request
-    , accountsGet
-    , AccountsGet
-
-    -- * Request Lenses
-    , aggProFileId
-    , aggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accounts.get@ method which the
--- 'AccountsGet' request conforms to.
-type AccountsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accounts" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Account
-
--- | Gets one account by ID.
---
--- /See:/ 'accountsGet' smart constructor.
-data AccountsGet =
-  AccountsGet'
-    { _aggProFileId :: !(Textual Int64)
-    , _aggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aggProFileId'
---
--- * 'aggId'
-accountsGet
-    :: Int64 -- ^ 'aggProFileId'
-    -> Int64 -- ^ 'aggId'
-    -> AccountsGet
-accountsGet pAggProFileId_ pAggId_ =
-  AccountsGet'
-    {_aggProFileId = _Coerce # pAggProFileId_, _aggId = _Coerce # pAggId_}
-
-
--- | User profile ID associated with this request.
-aggProFileId :: Lens' AccountsGet Int64
-aggProFileId
-  = lens _aggProFileId (\ s a -> s{_aggProFileId = a})
-      . _Coerce
-
--- | Account ID.
-aggId :: Lens' AccountsGet Int64
-aggId
-  = lens _aggId (\ s a -> s{_aggId = a}) . _Coerce
-
-instance GoogleRequest AccountsGet where
-        type Rs AccountsGet = Account
-        type Scopes AccountsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountsGet'{..}
-          = go _aggProFileId _aggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AccountsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Accounts/List.hs b/gen/Network/Google/Resource/DFAReporting/Accounts/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Accounts/List.hs
+++ /dev/null
@@ -1,189 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Accounts.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves the list of accounts, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accounts.list@.
-module Network.Google.Resource.DFAReporting.Accounts.List
-    (
-    -- * REST Resource
-      AccountsListResource
-
-    -- * Creating a Request
-    , accountsList
-    , AccountsList
-
-    -- * Request Lenses
-    , accSearchString
-    , accIds
-    , accProFileId
-    , accSortOrder
-    , accActive
-    , accPageToken
-    , accSortField
-    , accMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accounts.list@ method which the
--- 'AccountsList' request conforms to.
-type AccountsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accounts" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" AccountsListSortOrder :>
-                     QueryParam "active" Bool :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField" AccountsListSortField :>
-                           QueryParam "maxResults" (Textual Int32) :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON] AccountsListResponse
-
--- | Retrieves the list of accounts, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'accountsList' smart constructor.
-data AccountsList =
-  AccountsList'
-    { _accSearchString :: !(Maybe Text)
-    , _accIds          :: !(Maybe [Textual Int64])
-    , _accProFileId    :: !(Textual Int64)
-    , _accSortOrder    :: !AccountsListSortOrder
-    , _accActive       :: !(Maybe Bool)
-    , _accPageToken    :: !(Maybe Text)
-    , _accSortField    :: !AccountsListSortField
-    , _accMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'accSearchString'
---
--- * 'accIds'
---
--- * 'accProFileId'
---
--- * 'accSortOrder'
---
--- * 'accActive'
---
--- * 'accPageToken'
---
--- * 'accSortField'
---
--- * 'accMaxResults'
-accountsList
-    :: Int64 -- ^ 'accProFileId'
-    -> AccountsList
-accountsList pAccProFileId_ =
-  AccountsList'
-    { _accSearchString = Nothing
-    , _accIds = Nothing
-    , _accProFileId = _Coerce # pAccProFileId_
-    , _accSortOrder = AAscending
-    , _accActive = Nothing
-    , _accPageToken = Nothing
-    , _accSortField = AID
-    , _accMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"account*2015\" will return objects with names like
--- \"account June 2015\", \"account April 2015\", or simply \"account
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"account\" will match objects with name \"my account\", \"account
--- 2015\", or simply \"account\".
-accSearchString :: Lens' AccountsList (Maybe Text)
-accSearchString
-  = lens _accSearchString
-      (\ s a -> s{_accSearchString = a})
-
--- | Select only accounts with these IDs.
-accIds :: Lens' AccountsList [Int64]
-accIds
-  = lens _accIds (\ s a -> s{_accIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-accProFileId :: Lens' AccountsList Int64
-accProFileId
-  = lens _accProFileId (\ s a -> s{_accProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-accSortOrder :: Lens' AccountsList AccountsListSortOrder
-accSortOrder
-  = lens _accSortOrder (\ s a -> s{_accSortOrder = a})
-
--- | Select only active accounts. Don\'t set this field to select both active
--- and non-active accounts.
-accActive :: Lens' AccountsList (Maybe Bool)
-accActive
-  = lens _accActive (\ s a -> s{_accActive = a})
-
--- | Value of the nextPageToken from the previous result page.
-accPageToken :: Lens' AccountsList (Maybe Text)
-accPageToken
-  = lens _accPageToken (\ s a -> s{_accPageToken = a})
-
--- | Field by which to sort the list.
-accSortField :: Lens' AccountsList AccountsListSortField
-accSortField
-  = lens _accSortField (\ s a -> s{_accSortField = a})
-
--- | Maximum number of results to return.
-accMaxResults :: Lens' AccountsList Int32
-accMaxResults
-  = lens _accMaxResults
-      (\ s a -> s{_accMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest AccountsList where
-        type Rs AccountsList = AccountsListResponse
-        type Scopes AccountsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountsList'{..}
-          = go _accProFileId _accSearchString
-              (_accIds ^. _Default)
-              (Just _accSortOrder)
-              _accActive
-              _accPageToken
-              (Just _accSortField)
-              (Just _accMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AccountsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Accounts/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Accounts/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Accounts/Patch.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.Accounts.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing account. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accounts.patch@.
-module Network.Google.Resource.DFAReporting.Accounts.Patch
-    (
-    -- * REST Resource
-      AccountsPatchResource
-
-    -- * Creating a Request
-    , accountsPatch
-    , AccountsPatch
-
-    -- * Request Lenses
-    , appProFileId
-    , appPayload
-    , appId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accounts.patch@ method which the
--- 'AccountsPatch' request conforms to.
-type AccountsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accounts" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Account :> Patch '[JSON] Account
-
--- | Updates an existing account. This method supports patch semantics.
---
--- /See:/ 'accountsPatch' smart constructor.
-data AccountsPatch =
-  AccountsPatch'
-    { _appProFileId :: !(Textual Int64)
-    , _appPayload   :: !Account
-    , _appId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'appProFileId'
---
--- * 'appPayload'
---
--- * 'appId'
-accountsPatch
-    :: Int64 -- ^ 'appProFileId'
-    -> Account -- ^ 'appPayload'
-    -> Int64 -- ^ 'appId'
-    -> AccountsPatch
-accountsPatch pAppProFileId_ pAppPayload_ pAppId_ =
-  AccountsPatch'
-    { _appProFileId = _Coerce # pAppProFileId_
-    , _appPayload = pAppPayload_
-    , _appId = _Coerce # pAppId_
-    }
-
-
--- | User profile ID associated with this request.
-appProFileId :: Lens' AccountsPatch Int64
-appProFileId
-  = lens _appProFileId (\ s a -> s{_appProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-appPayload :: Lens' AccountsPatch Account
-appPayload
-  = lens _appPayload (\ s a -> s{_appPayload = a})
-
--- | Account ID.
-appId :: Lens' AccountsPatch Int64
-appId
-  = lens _appId (\ s a -> s{_appId = a}) . _Coerce
-
-instance GoogleRequest AccountsPatch where
-        type Rs AccountsPatch = Account
-        type Scopes AccountsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountsPatch'{..}
-          = go _appProFileId (Just _appId) (Just AltJSON)
-              _appPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AccountsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Accounts/Update.hs b/gen/Network/Google/Resource/DFAReporting/Accounts/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Accounts/Update.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.DFAReporting.Accounts.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing account.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.accounts.update@.
-module Network.Google.Resource.DFAReporting.Accounts.Update
-    (
-    -- * REST Resource
-      AccountsUpdateResource
-
-    -- * Creating a Request
-    , accountsUpdate
-    , AccountsUpdate
-
-    -- * Request Lenses
-    , auuProFileId
-    , auuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.accounts.update@ method which the
--- 'AccountsUpdate' request conforms to.
-type AccountsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "accounts" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Account :> Put '[JSON] Account
-
--- | Updates an existing account.
---
--- /See:/ 'accountsUpdate' smart constructor.
-data AccountsUpdate =
-  AccountsUpdate'
-    { _auuProFileId :: !(Textual Int64)
-    , _auuPayload   :: !Account
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AccountsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'auuProFileId'
---
--- * 'auuPayload'
-accountsUpdate
-    :: Int64 -- ^ 'auuProFileId'
-    -> Account -- ^ 'auuPayload'
-    -> AccountsUpdate
-accountsUpdate pAuuProFileId_ pAuuPayload_ =
-  AccountsUpdate'
-    {_auuProFileId = _Coerce # pAuuProFileId_, _auuPayload = pAuuPayload_}
-
-
--- | User profile ID associated with this request.
-auuProFileId :: Lens' AccountsUpdate Int64
-auuProFileId
-  = lens _auuProFileId (\ s a -> s{_auuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-auuPayload :: Lens' AccountsUpdate Account
-auuPayload
-  = lens _auuPayload (\ s a -> s{_auuPayload = a})
-
-instance GoogleRequest AccountsUpdate where
-        type Rs AccountsUpdate = Account
-        type Scopes AccountsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AccountsUpdate'{..}
-          = go _auuProFileId (Just AltJSON) _auuPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AccountsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Ads/Get.hs b/gen/Network/Google/Resource/DFAReporting/Ads/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Ads/Get.hs
+++ /dev/null
@@ -1,99 +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.DFAReporting.Ads.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one ad by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.ads.get@.
-module Network.Google.Resource.DFAReporting.Ads.Get
-    (
-    -- * REST Resource
-      AdsGetResource
-
-    -- * Creating a Request
-    , adsGet
-    , AdsGet
-
-    -- * Request Lenses
-    , adsProFileId
-    , adsId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.ads.get@ method which the
--- 'AdsGet' request conforms to.
-type AdsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "ads" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Ad
-
--- | Gets one ad by ID.
---
--- /See:/ 'adsGet' smart constructor.
-data AdsGet =
-  AdsGet'
-    { _adsProFileId :: !(Textual Int64)
-    , _adsId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'adsProFileId'
---
--- * 'adsId'
-adsGet
-    :: Int64 -- ^ 'adsProFileId'
-    -> Int64 -- ^ 'adsId'
-    -> AdsGet
-adsGet pAdsProFileId_ pAdsId_ =
-  AdsGet' {_adsProFileId = _Coerce # pAdsProFileId_, _adsId = _Coerce # pAdsId_}
-
-
--- | User profile ID associated with this request.
-adsProFileId :: Lens' AdsGet Int64
-adsProFileId
-  = lens _adsProFileId (\ s a -> s{_adsProFileId = a})
-      . _Coerce
-
--- | Ad ID.
-adsId :: Lens' AdsGet Int64
-adsId
-  = lens _adsId (\ s a -> s{_adsId = a}) . _Coerce
-
-instance GoogleRequest AdsGet where
-        type Rs AdsGet = Ad
-        type Scopes AdsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdsGet'{..}
-          = go _adsProFileId _adsId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdsGetResource) mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Ads/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Ads/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Ads/Insert.hs
+++ /dev/null
@@ -1,100 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Ads.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new ad.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.ads.insert@.
-module Network.Google.Resource.DFAReporting.Ads.Insert
-    (
-    -- * REST Resource
-      AdsInsertResource
-
-    -- * Creating a Request
-    , adsInsert
-    , AdsInsert
-
-    -- * Request Lenses
-    , aiProFileId
-    , aiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.ads.insert@ method which the
--- 'AdsInsert' request conforms to.
-type AdsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "ads" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Ad :> Post '[JSON] Ad
-
--- | Inserts a new ad.
---
--- /See:/ 'adsInsert' smart constructor.
-data AdsInsert =
-  AdsInsert'
-    { _aiProFileId :: !(Textual Int64)
-    , _aiPayload   :: !Ad
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aiProFileId'
---
--- * 'aiPayload'
-adsInsert
-    :: Int64 -- ^ 'aiProFileId'
-    -> Ad -- ^ 'aiPayload'
-    -> AdsInsert
-adsInsert pAiProFileId_ pAiPayload_ =
-  AdsInsert' {_aiProFileId = _Coerce # pAiProFileId_, _aiPayload = pAiPayload_}
-
-
--- | User profile ID associated with this request.
-aiProFileId :: Lens' AdsInsert Int64
-aiProFileId
-  = lens _aiProFileId (\ s a -> s{_aiProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-aiPayload :: Lens' AdsInsert Ad
-aiPayload
-  = lens _aiPayload (\ s a -> s{_aiPayload = a})
-
-instance GoogleRequest AdsInsert where
-        type Rs AdsInsert = Ad
-        type Scopes AdsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdsInsert'{..}
-          = go _aiProFileId (Just AltJSON) _aiPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Ads/List.hs b/gen/Network/Google/Resource/DFAReporting/Ads/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Ads/List.hs
+++ /dev/null
@@ -1,440 +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.DFAReporting.Ads.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of ads, possibly filtered. This method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.ads.list@.
-module Network.Google.Resource.DFAReporting.Ads.List
-    (
-    -- * REST Resource
-      AdsListResource
-
-    -- * Creating a Request
-    , adsList
-    , AdsList
-
-    -- * Request Lenses
-    , alRemarketingListIds
-    , alLandingPageIds
-    , alCreativeIds
-    , alAdvertiserId
-    , alCampaignIds
-    , alSearchString
-    , alSizeIds
-    , alSSLCompliant
-    , alIds
-    , alProFileId
-    , alSortOrder
-    , alActive
-    , alCreativeOptimizationConfigurationIds
-    , alPlacementIds
-    , alSSLRequired
-    , alOverriddenEventTagId
-    , alPageToken
-    , alSortField
-    , alType
-    , alDynamicClickTracker
-    , alCompatibility
-    , alArchived
-    , alMaxResults
-    , alAudienceSegmentIds
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.ads.list@ method which the
--- 'AdsList' request conforms to.
-type AdsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "ads" :>
-               QueryParams "remarketingListIds" (Textual Int64) :>
-                 QueryParams "landingPageIds" (Textual Int64) :>
-                   QueryParams "creativeIds" (Textual Int64) :>
-                     QueryParam "advertiserId" (Textual Int64) :>
-                       QueryParams "campaignIds" (Textual Int64) :>
-                         QueryParam "searchString" Text :>
-                           QueryParams "sizeIds" (Textual Int64) :>
-                             QueryParam "sslCompliant" Bool :>
-                               QueryParams "ids" (Textual Int64) :>
-                                 QueryParam "sortOrder" AdsListSortOrder :>
-                                   QueryParam "active" Bool :>
-                                     QueryParams
-                                       "creativeOptimizationConfigurationIds"
-                                       (Textual Int64)
-                                       :>
-                                       QueryParams "placementIds"
-                                         (Textual Int64)
-                                         :>
-                                         QueryParam "sslRequired" Bool :>
-                                           QueryParam "overriddenEventTagId"
-                                             (Textual Int64)
-                                             :>
-                                             QueryParam "pageToken" Text :>
-                                               QueryParam "sortField"
-                                                 AdsListSortField
-                                                 :>
-                                                 QueryParams "type" AdsListType
-                                                   :>
-                                                   QueryParam
-                                                     "dynamicClickTracker"
-                                                     Bool
-                                                     :>
-                                                     QueryParam "compatibility"
-                                                       AdsListCompatibility
-                                                       :>
-                                                       QueryParam "archived"
-                                                         Bool
-                                                         :>
-                                                         QueryParam "maxResults"
-                                                           (Textual Int32)
-                                                           :>
-                                                           QueryParams
-                                                             "audienceSegmentIds"
-                                                             (Textual Int64)
-                                                             :>
-                                                             QueryParam "alt"
-                                                               AltJSON
-                                                               :>
-                                                               Get '[JSON]
-                                                                 AdsListResponse
-
--- | Retrieves a list of ads, possibly filtered. This method supports paging.
---
--- /See:/ 'adsList' smart constructor.
-data AdsList =
-  AdsList'
-    { _alRemarketingListIds                   :: !(Maybe [Textual Int64])
-    , _alLandingPageIds                       :: !(Maybe [Textual Int64])
-    , _alCreativeIds                          :: !(Maybe [Textual Int64])
-    , _alAdvertiserId                         :: !(Maybe (Textual Int64))
-    , _alCampaignIds                          :: !(Maybe [Textual Int64])
-    , _alSearchString                         :: !(Maybe Text)
-    , _alSizeIds                              :: !(Maybe [Textual Int64])
-    , _alSSLCompliant                         :: !(Maybe Bool)
-    , _alIds                                  :: !(Maybe [Textual Int64])
-    , _alProFileId                            :: !(Textual Int64)
-    , _alSortOrder                            :: !AdsListSortOrder
-    , _alActive                               :: !(Maybe Bool)
-    , _alCreativeOptimizationConfigurationIds :: !(Maybe [Textual Int64])
-    , _alPlacementIds                         :: !(Maybe [Textual Int64])
-    , _alSSLRequired                          :: !(Maybe Bool)
-    , _alOverriddenEventTagId                 :: !(Maybe (Textual Int64))
-    , _alPageToken                            :: !(Maybe Text)
-    , _alSortField                            :: !AdsListSortField
-    , _alType                                 :: !(Maybe [AdsListType])
-    , _alDynamicClickTracker                  :: !(Maybe Bool)
-    , _alCompatibility                        :: !(Maybe AdsListCompatibility)
-    , _alArchived                             :: !(Maybe Bool)
-    , _alMaxResults                           :: !(Textual Int32)
-    , _alAudienceSegmentIds                   :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alRemarketingListIds'
---
--- * 'alLandingPageIds'
---
--- * 'alCreativeIds'
---
--- * 'alAdvertiserId'
---
--- * 'alCampaignIds'
---
--- * 'alSearchString'
---
--- * 'alSizeIds'
---
--- * 'alSSLCompliant'
---
--- * 'alIds'
---
--- * 'alProFileId'
---
--- * 'alSortOrder'
---
--- * 'alActive'
---
--- * 'alCreativeOptimizationConfigurationIds'
---
--- * 'alPlacementIds'
---
--- * 'alSSLRequired'
---
--- * 'alOverriddenEventTagId'
---
--- * 'alPageToken'
---
--- * 'alSortField'
---
--- * 'alType'
---
--- * 'alDynamicClickTracker'
---
--- * 'alCompatibility'
---
--- * 'alArchived'
---
--- * 'alMaxResults'
---
--- * 'alAudienceSegmentIds'
-adsList
-    :: Int64 -- ^ 'alProFileId'
-    -> AdsList
-adsList pAlProFileId_ =
-  AdsList'
-    { _alRemarketingListIds = Nothing
-    , _alLandingPageIds = Nothing
-    , _alCreativeIds = Nothing
-    , _alAdvertiserId = Nothing
-    , _alCampaignIds = Nothing
-    , _alSearchString = Nothing
-    , _alSizeIds = Nothing
-    , _alSSLCompliant = Nothing
-    , _alIds = Nothing
-    , _alProFileId = _Coerce # pAlProFileId_
-    , _alSortOrder = ADSAscending
-    , _alActive = Nothing
-    , _alCreativeOptimizationConfigurationIds = Nothing
-    , _alPlacementIds = Nothing
-    , _alSSLRequired = Nothing
-    , _alOverriddenEventTagId = Nothing
-    , _alPageToken = Nothing
-    , _alSortField = ALSFID
-    , _alType = Nothing
-    , _alDynamicClickTracker = Nothing
-    , _alCompatibility = Nothing
-    , _alArchived = Nothing
-    , _alMaxResults = 1000
-    , _alAudienceSegmentIds = Nothing
-    }
-
-
--- | Select only ads whose list targeting expression use these remarketing
--- list IDs.
-alRemarketingListIds :: Lens' AdsList [Int64]
-alRemarketingListIds
-  = lens _alRemarketingListIds
-      (\ s a -> s{_alRemarketingListIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only ads with these landing page IDs.
-alLandingPageIds :: Lens' AdsList [Int64]
-alLandingPageIds
-  = lens _alLandingPageIds
-      (\ s a -> s{_alLandingPageIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only ads with these creative IDs assigned.
-alCreativeIds :: Lens' AdsList [Int64]
-alCreativeIds
-  = lens _alCreativeIds
-      (\ s a -> s{_alCreativeIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only ads with this advertiser ID.
-alAdvertiserId :: Lens' AdsList (Maybe Int64)
-alAdvertiserId
-  = lens _alAdvertiserId
-      (\ s a -> s{_alAdvertiserId = a})
-      . mapping _Coerce
-
--- | Select only ads with these campaign IDs.
-alCampaignIds :: Lens' AdsList [Int64]
-alCampaignIds
-  = lens _alCampaignIds
-      (\ s a -> s{_alCampaignIds = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"ad*2015\" will return objects with names like \"ad June
--- 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches
--- also add wildcards implicitly at the start and the end of the search
--- string. For example, a search string of \"ad\" will match objects with
--- name \"my ad\", \"ad 2015\", or simply \"ad\".
-alSearchString :: Lens' AdsList (Maybe Text)
-alSearchString
-  = lens _alSearchString
-      (\ s a -> s{_alSearchString = a})
-
--- | Select only ads with these size IDs.
-alSizeIds :: Lens' AdsList [Int64]
-alSizeIds
-  = lens _alSizeIds (\ s a -> s{_alSizeIds = a}) .
-      _Default
-      . _Coerce
-
--- | Select only ads that are SSL-compliant.
-alSSLCompliant :: Lens' AdsList (Maybe Bool)
-alSSLCompliant
-  = lens _alSSLCompliant
-      (\ s a -> s{_alSSLCompliant = a})
-
--- | Select only ads with these IDs.
-alIds :: Lens' AdsList [Int64]
-alIds
-  = lens _alIds (\ s a -> s{_alIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-alProFileId :: Lens' AdsList Int64
-alProFileId
-  = lens _alProFileId (\ s a -> s{_alProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-alSortOrder :: Lens' AdsList AdsListSortOrder
-alSortOrder
-  = lens _alSortOrder (\ s a -> s{_alSortOrder = a})
-
--- | Select only active ads.
-alActive :: Lens' AdsList (Maybe Bool)
-alActive = lens _alActive (\ s a -> s{_alActive = a})
-
--- | Select only ads with these creative optimization configuration IDs.
-alCreativeOptimizationConfigurationIds :: Lens' AdsList [Int64]
-alCreativeOptimizationConfigurationIds
-  = lens _alCreativeOptimizationConfigurationIds
-      (\ s a ->
-         s{_alCreativeOptimizationConfigurationIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only ads with these placement IDs assigned.
-alPlacementIds :: Lens' AdsList [Int64]
-alPlacementIds
-  = lens _alPlacementIds
-      (\ s a -> s{_alPlacementIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only ads that require SSL.
-alSSLRequired :: Lens' AdsList (Maybe Bool)
-alSSLRequired
-  = lens _alSSLRequired
-      (\ s a -> s{_alSSLRequired = a})
-
--- | Select only ads with this event tag override ID.
-alOverriddenEventTagId :: Lens' AdsList (Maybe Int64)
-alOverriddenEventTagId
-  = lens _alOverriddenEventTagId
-      (\ s a -> s{_alOverriddenEventTagId = a})
-      . mapping _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-alPageToken :: Lens' AdsList (Maybe Text)
-alPageToken
-  = lens _alPageToken (\ s a -> s{_alPageToken = a})
-
--- | Field by which to sort the list.
-alSortField :: Lens' AdsList AdsListSortField
-alSortField
-  = lens _alSortField (\ s a -> s{_alSortField = a})
-
--- | Select only ads with these types.
-alType :: Lens' AdsList [AdsListType]
-alType
-  = lens _alType (\ s a -> s{_alType = a}) . _Default .
-      _Coerce
-
--- | Select only dynamic click trackers. Applicable when type is
--- AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If
--- false, select static click trackers. Leave unset to select both.
-alDynamicClickTracker :: Lens' AdsList (Maybe Bool)
-alDynamicClickTracker
-  = lens _alDynamicClickTracker
-      (\ s a -> s{_alDynamicClickTracker = a})
-
--- | Select default ads with the specified compatibility. Applicable when
--- type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to
--- rendering either on desktop or on mobile devices for regular or
--- interstitial ads, respectively. APP and APP_INTERSTITIAL are for
--- rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an
--- in-stream video ads developed with the VAST standard.
-alCompatibility :: Lens' AdsList (Maybe AdsListCompatibility)
-alCompatibility
-  = lens _alCompatibility
-      (\ s a -> s{_alCompatibility = a})
-
--- | Select only archived ads.
-alArchived :: Lens' AdsList (Maybe Bool)
-alArchived
-  = lens _alArchived (\ s a -> s{_alArchived = a})
-
--- | Maximum number of results to return.
-alMaxResults :: Lens' AdsList Int32
-alMaxResults
-  = lens _alMaxResults (\ s a -> s{_alMaxResults = a})
-      . _Coerce
-
--- | Select only ads with these audience segment IDs.
-alAudienceSegmentIds :: Lens' AdsList [Int64]
-alAudienceSegmentIds
-  = lens _alAudienceSegmentIds
-      (\ s a -> s{_alAudienceSegmentIds = a})
-      . _Default
-      . _Coerce
-
-instance GoogleRequest AdsList where
-        type Rs AdsList = AdsListResponse
-        type Scopes AdsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdsList'{..}
-          = go _alProFileId (_alRemarketingListIds ^. _Default)
-              (_alLandingPageIds ^. _Default)
-              (_alCreativeIds ^. _Default)
-              _alAdvertiserId
-              (_alCampaignIds ^. _Default)
-              _alSearchString
-              (_alSizeIds ^. _Default)
-              _alSSLCompliant
-              (_alIds ^. _Default)
-              (Just _alSortOrder)
-              _alActive
-              (_alCreativeOptimizationConfigurationIds ^. _Default)
-              (_alPlacementIds ^. _Default)
-              _alSSLRequired
-              _alOverriddenEventTagId
-              _alPageToken
-              (Just _alSortField)
-              (_alType ^. _Default)
-              _alDynamicClickTracker
-              _alCompatibility
-              _alArchived
-              (Just _alMaxResults)
-              (_alAudienceSegmentIds ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdsListResource) mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Ads/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Ads/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Ads/Patch.hs
+++ /dev/null
@@ -1,117 +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.DFAReporting.Ads.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing ad. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.ads.patch@.
-module Network.Google.Resource.DFAReporting.Ads.Patch
-    (
-    -- * REST Resource
-      AdsPatchResource
-
-    -- * Creating a Request
-    , adsPatch
-    , AdsPatch
-
-    -- * Request Lenses
-    , adsdProFileId
-    , adsdPayload
-    , adsdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.ads.patch@ method which the
--- 'AdsPatch' request conforms to.
-type AdsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "ads" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Ad :> Patch '[JSON] Ad
-
--- | Updates an existing ad. This method supports patch semantics.
---
--- /See:/ 'adsPatch' smart constructor.
-data AdsPatch =
-  AdsPatch'
-    { _adsdProFileId :: !(Textual Int64)
-    , _adsdPayload   :: !Ad
-    , _adsdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'adsdProFileId'
---
--- * 'adsdPayload'
---
--- * 'adsdId'
-adsPatch
-    :: Int64 -- ^ 'adsdProFileId'
-    -> Ad -- ^ 'adsdPayload'
-    -> Int64 -- ^ 'adsdId'
-    -> AdsPatch
-adsPatch pAdsdProFileId_ pAdsdPayload_ pAdsdId_ =
-  AdsPatch'
-    { _adsdProFileId = _Coerce # pAdsdProFileId_
-    , _adsdPayload = pAdsdPayload_
-    , _adsdId = _Coerce # pAdsdId_
-    }
-
-
--- | User profile ID associated with this request.
-adsdProFileId :: Lens' AdsPatch Int64
-adsdProFileId
-  = lens _adsdProFileId
-      (\ s a -> s{_adsdProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-adsdPayload :: Lens' AdsPatch Ad
-adsdPayload
-  = lens _adsdPayload (\ s a -> s{_adsdPayload = a})
-
--- | Ad ID.
-adsdId :: Lens' AdsPatch Int64
-adsdId
-  = lens _adsdId (\ s a -> s{_adsdId = a}) . _Coerce
-
-instance GoogleRequest AdsPatch where
-        type Rs AdsPatch = Ad
-        type Scopes AdsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdsPatch'{..}
-          = go _adsdProFileId (Just _adsdId) (Just AltJSON)
-              _adsdPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Ads/Update.hs b/gen/Network/Google/Resource/DFAReporting/Ads/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Ads/Update.hs
+++ /dev/null
@@ -1,99 +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.DFAReporting.Ads.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing ad.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.ads.update@.
-module Network.Google.Resource.DFAReporting.Ads.Update
-    (
-    -- * REST Resource
-      AdsUpdateResource
-
-    -- * Creating a Request
-    , adsUpdate
-    , AdsUpdate
-
-    -- * Request Lenses
-    , aProFileId
-    , aPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.ads.update@ method which the
--- 'AdsUpdate' request conforms to.
-type AdsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "ads" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Ad :> Put '[JSON] Ad
-
--- | Updates an existing ad.
---
--- /See:/ 'adsUpdate' smart constructor.
-data AdsUpdate =
-  AdsUpdate'
-    { _aProFileId :: !(Textual Int64)
-    , _aPayload   :: !Ad
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aProFileId'
---
--- * 'aPayload'
-adsUpdate
-    :: Int64 -- ^ 'aProFileId'
-    -> Ad -- ^ 'aPayload'
-    -> AdsUpdate
-adsUpdate pAProFileId_ pAPayload_ =
-  AdsUpdate' {_aProFileId = _Coerce # pAProFileId_, _aPayload = pAPayload_}
-
-
--- | User profile ID associated with this request.
-aProFileId :: Lens' AdsUpdate Int64
-aProFileId
-  = lens _aProFileId (\ s a -> s{_aProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-aPayload :: Lens' AdsUpdate Ad
-aPayload = lens _aPayload (\ s a -> s{_aPayload = a})
-
-instance GoogleRequest AdsUpdate where
-        type Rs AdsUpdate = Ad
-        type Scopes AdsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdsUpdate'{..}
-          = go _aProFileId (Just AltJSON) _aPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Delete.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Delete.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.AdvertiserGroups.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing advertiser group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.delete@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.Delete
-    (
-    -- * REST Resource
-      AdvertiserGroupsDeleteResource
-
-    -- * Creating a Request
-    , advertiserGroupsDelete
-    , AdvertiserGroupsDelete
-
-    -- * Request Lenses
-    , agdProFileId
-    , agdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.delete@ method which the
--- 'AdvertiserGroupsDelete' request conforms to.
-type AdvertiserGroupsDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing advertiser group.
---
--- /See:/ 'advertiserGroupsDelete' smart constructor.
-data AdvertiserGroupsDelete =
-  AdvertiserGroupsDelete'
-    { _agdProFileId :: !(Textual Int64)
-    , _agdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'agdProFileId'
---
--- * 'agdId'
-advertiserGroupsDelete
-    :: Int64 -- ^ 'agdProFileId'
-    -> Int64 -- ^ 'agdId'
-    -> AdvertiserGroupsDelete
-advertiserGroupsDelete pAgdProFileId_ pAgdId_ =
-  AdvertiserGroupsDelete'
-    {_agdProFileId = _Coerce # pAgdProFileId_, _agdId = _Coerce # pAgdId_}
-
-
--- | User profile ID associated with this request.
-agdProFileId :: Lens' AdvertiserGroupsDelete Int64
-agdProFileId
-  = lens _agdProFileId (\ s a -> s{_agdProFileId = a})
-      . _Coerce
-
--- | Advertiser group ID.
-agdId :: Lens' AdvertiserGroupsDelete Int64
-agdId
-  = lens _agdId (\ s a -> s{_agdId = a}) . _Coerce
-
-instance GoogleRequest AdvertiserGroupsDelete where
-        type Rs AdvertiserGroupsDelete = ()
-        type Scopes AdvertiserGroupsDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsDelete'{..}
-          = go _agdProFileId _agdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Get.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.AdvertiserGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one advertiser group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.get@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.Get
-    (
-    -- * REST Resource
-      AdvertiserGroupsGetResource
-
-    -- * Creating a Request
-    , advertiserGroupsGet
-    , AdvertiserGroupsGet
-
-    -- * Request Lenses
-    , agggProFileId
-    , agggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.get@ method which the
--- 'AdvertiserGroupsGet' request conforms to.
-type AdvertiserGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] AdvertiserGroup
-
--- | Gets one advertiser group by ID.
---
--- /See:/ 'advertiserGroupsGet' smart constructor.
-data AdvertiserGroupsGet =
-  AdvertiserGroupsGet'
-    { _agggProFileId :: !(Textual Int64)
-    , _agggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'agggProFileId'
---
--- * 'agggId'
-advertiserGroupsGet
-    :: Int64 -- ^ 'agggProFileId'
-    -> Int64 -- ^ 'agggId'
-    -> AdvertiserGroupsGet
-advertiserGroupsGet pAgggProFileId_ pAgggId_ =
-  AdvertiserGroupsGet'
-    {_agggProFileId = _Coerce # pAgggProFileId_, _agggId = _Coerce # pAgggId_}
-
-
--- | User profile ID associated with this request.
-agggProFileId :: Lens' AdvertiserGroupsGet Int64
-agggProFileId
-  = lens _agggProFileId
-      (\ s a -> s{_agggProFileId = a})
-      . _Coerce
-
--- | Advertiser group ID.
-agggId :: Lens' AdvertiserGroupsGet Int64
-agggId
-  = lens _agggId (\ s a -> s{_agggId = a}) . _Coerce
-
-instance GoogleRequest AdvertiserGroupsGet where
-        type Rs AdvertiserGroupsGet = AdvertiserGroup
-        type Scopes AdvertiserGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsGet'{..}
-          = go _agggProFileId _agggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Insert.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.AdvertiserGroups.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new advertiser group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.insert@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.Insert
-    (
-    -- * REST Resource
-      AdvertiserGroupsInsertResource
-
-    -- * Creating a Request
-    , advertiserGroupsInsert
-    , AdvertiserGroupsInsert
-
-    -- * Request Lenses
-    , agiProFileId
-    , agiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.insert@ method which the
--- 'AdvertiserGroupsInsert' request conforms to.
-type AdvertiserGroupsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] AdvertiserGroup :>
-                   Post '[JSON] AdvertiserGroup
-
--- | Inserts a new advertiser group.
---
--- /See:/ 'advertiserGroupsInsert' smart constructor.
-data AdvertiserGroupsInsert =
-  AdvertiserGroupsInsert'
-    { _agiProFileId :: !(Textual Int64)
-    , _agiPayload   :: !AdvertiserGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'agiProFileId'
---
--- * 'agiPayload'
-advertiserGroupsInsert
-    :: Int64 -- ^ 'agiProFileId'
-    -> AdvertiserGroup -- ^ 'agiPayload'
-    -> AdvertiserGroupsInsert
-advertiserGroupsInsert pAgiProFileId_ pAgiPayload_ =
-  AdvertiserGroupsInsert'
-    {_agiProFileId = _Coerce # pAgiProFileId_, _agiPayload = pAgiPayload_}
-
-
--- | User profile ID associated with this request.
-agiProFileId :: Lens' AdvertiserGroupsInsert Int64
-agiProFileId
-  = lens _agiProFileId (\ s a -> s{_agiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-agiPayload :: Lens' AdvertiserGroupsInsert AdvertiserGroup
-agiPayload
-  = lens _agiPayload (\ s a -> s{_agiPayload = a})
-
-instance GoogleRequest AdvertiserGroupsInsert where
-        type Rs AdvertiserGroupsInsert = AdvertiserGroup
-        type Scopes AdvertiserGroupsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsInsert'{..}
-          = go _agiProFileId (Just AltJSON) _agiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/List.hs
+++ /dev/null
@@ -1,181 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.AdvertiserGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of advertiser groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.list@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.List
-    (
-    -- * REST Resource
-      AdvertiserGroupsListResource
-
-    -- * Creating a Request
-    , advertiserGroupsList
-    , AdvertiserGroupsList
-
-    -- * Request Lenses
-    , aglSearchString
-    , aglIds
-    , aglProFileId
-    , aglSortOrder
-    , aglPageToken
-    , aglSortField
-    , aglMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.list@ method which the
--- 'AdvertiserGroupsList' request conforms to.
-type AdvertiserGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" AdvertiserGroupsListSortOrder
-                     :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" AdvertiserGroupsListSortField
-                         :>
-                         QueryParam "maxResults" (Textual Int32) :>
-                           QueryParam "alt" AltJSON :>
-                             Get '[JSON] AdvertiserGroupsListResponse
-
--- | Retrieves a list of advertiser groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'advertiserGroupsList' smart constructor.
-data AdvertiserGroupsList =
-  AdvertiserGroupsList'
-    { _aglSearchString :: !(Maybe Text)
-    , _aglIds          :: !(Maybe [Textual Int64])
-    , _aglProFileId    :: !(Textual Int64)
-    , _aglSortOrder    :: !AdvertiserGroupsListSortOrder
-    , _aglPageToken    :: !(Maybe Text)
-    , _aglSortField    :: !AdvertiserGroupsListSortField
-    , _aglMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aglSearchString'
---
--- * 'aglIds'
---
--- * 'aglProFileId'
---
--- * 'aglSortOrder'
---
--- * 'aglPageToken'
---
--- * 'aglSortField'
---
--- * 'aglMaxResults'
-advertiserGroupsList
-    :: Int64 -- ^ 'aglProFileId'
-    -> AdvertiserGroupsList
-advertiserGroupsList pAglProFileId_ =
-  AdvertiserGroupsList'
-    { _aglSearchString = Nothing
-    , _aglIds = Nothing
-    , _aglProFileId = _Coerce # pAglProFileId_
-    , _aglSortOrder = AGLSOAscending
-    , _aglPageToken = Nothing
-    , _aglSortField = AGLSFID
-    , _aglMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"advertiser*2015\" will return objects with names like
--- \"advertiser group June 2015\", \"advertiser group April 2015\", or
--- simply \"advertiser group 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"advertisergroup\" will match objects with
--- name \"my advertisergroup\", \"advertisergroup 2015\", or simply
--- \"advertisergroup\".
-aglSearchString :: Lens' AdvertiserGroupsList (Maybe Text)
-aglSearchString
-  = lens _aglSearchString
-      (\ s a -> s{_aglSearchString = a})
-
--- | Select only advertiser groups with these IDs.
-aglIds :: Lens' AdvertiserGroupsList [Int64]
-aglIds
-  = lens _aglIds (\ s a -> s{_aglIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-aglProFileId :: Lens' AdvertiserGroupsList Int64
-aglProFileId
-  = lens _aglProFileId (\ s a -> s{_aglProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-aglSortOrder :: Lens' AdvertiserGroupsList AdvertiserGroupsListSortOrder
-aglSortOrder
-  = lens _aglSortOrder (\ s a -> s{_aglSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-aglPageToken :: Lens' AdvertiserGroupsList (Maybe Text)
-aglPageToken
-  = lens _aglPageToken (\ s a -> s{_aglPageToken = a})
-
--- | Field by which to sort the list.
-aglSortField :: Lens' AdvertiserGroupsList AdvertiserGroupsListSortField
-aglSortField
-  = lens _aglSortField (\ s a -> s{_aglSortField = a})
-
--- | Maximum number of results to return.
-aglMaxResults :: Lens' AdvertiserGroupsList Int32
-aglMaxResults
-  = lens _aglMaxResults
-      (\ s a -> s{_aglMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest AdvertiserGroupsList where
-        type Rs AdvertiserGroupsList =
-             AdvertiserGroupsListResponse
-        type Scopes AdvertiserGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsList'{..}
-          = go _aglProFileId _aglSearchString
-              (_aglIds ^. _Default)
-              (Just _aglSortOrder)
-              _aglPageToken
-              (Just _aglSortField)
-              (Just _aglMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Patch.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.AdvertiserGroups.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing advertiser group. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.patch@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.Patch
-    (
-    -- * REST Resource
-      AdvertiserGroupsPatchResource
-
-    -- * Creating a Request
-    , advertiserGroupsPatch
-    , AdvertiserGroupsPatch
-
-    -- * Request Lenses
-    , agpProFileId
-    , agpPayload
-    , agpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.patch@ method which the
--- 'AdvertiserGroupsPatch' request conforms to.
-type AdvertiserGroupsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] AdvertiserGroup :>
-                     Patch '[JSON] AdvertiserGroup
-
--- | Updates an existing advertiser group. This method supports patch
--- semantics.
---
--- /See:/ 'advertiserGroupsPatch' smart constructor.
-data AdvertiserGroupsPatch =
-  AdvertiserGroupsPatch'
-    { _agpProFileId :: !(Textual Int64)
-    , _agpPayload   :: !AdvertiserGroup
-    , _agpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'agpProFileId'
---
--- * 'agpPayload'
---
--- * 'agpId'
-advertiserGroupsPatch
-    :: Int64 -- ^ 'agpProFileId'
-    -> AdvertiserGroup -- ^ 'agpPayload'
-    -> Int64 -- ^ 'agpId'
-    -> AdvertiserGroupsPatch
-advertiserGroupsPatch pAgpProFileId_ pAgpPayload_ pAgpId_ =
-  AdvertiserGroupsPatch'
-    { _agpProFileId = _Coerce # pAgpProFileId_
-    , _agpPayload = pAgpPayload_
-    , _agpId = _Coerce # pAgpId_
-    }
-
-
--- | User profile ID associated with this request.
-agpProFileId :: Lens' AdvertiserGroupsPatch Int64
-agpProFileId
-  = lens _agpProFileId (\ s a -> s{_agpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-agpPayload :: Lens' AdvertiserGroupsPatch AdvertiserGroup
-agpPayload
-  = lens _agpPayload (\ s a -> s{_agpPayload = a})
-
--- | Advertiser group ID.
-agpId :: Lens' AdvertiserGroupsPatch Int64
-agpId
-  = lens _agpId (\ s a -> s{_agpId = a}) . _Coerce
-
-instance GoogleRequest AdvertiserGroupsPatch where
-        type Rs AdvertiserGroupsPatch = AdvertiserGroup
-        type Scopes AdvertiserGroupsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsPatch'{..}
-          = go _agpProFileId (Just _agpId) (Just AltJSON)
-              _agpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Update.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserGroups/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.AdvertiserGroups.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing advertiser group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserGroups.update@.
-module Network.Google.Resource.DFAReporting.AdvertiserGroups.Update
-    (
-    -- * REST Resource
-      AdvertiserGroupsUpdateResource
-
-    -- * Creating a Request
-    , advertiserGroupsUpdate
-    , AdvertiserGroupsUpdate
-
-    -- * Request Lenses
-    , aguProFileId
-    , aguPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserGroups.update@ method which the
--- 'AdvertiserGroupsUpdate' request conforms to.
-type AdvertiserGroupsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] AdvertiserGroup :>
-                   Put '[JSON] AdvertiserGroup
-
--- | Updates an existing advertiser group.
---
--- /See:/ 'advertiserGroupsUpdate' smart constructor.
-data AdvertiserGroupsUpdate =
-  AdvertiserGroupsUpdate'
-    { _aguProFileId :: !(Textual Int64)
-    , _aguPayload   :: !AdvertiserGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserGroupsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aguProFileId'
---
--- * 'aguPayload'
-advertiserGroupsUpdate
-    :: Int64 -- ^ 'aguProFileId'
-    -> AdvertiserGroup -- ^ 'aguPayload'
-    -> AdvertiserGroupsUpdate
-advertiserGroupsUpdate pAguProFileId_ pAguPayload_ =
-  AdvertiserGroupsUpdate'
-    {_aguProFileId = _Coerce # pAguProFileId_, _aguPayload = pAguPayload_}
-
-
--- | User profile ID associated with this request.
-aguProFileId :: Lens' AdvertiserGroupsUpdate Int64
-aguProFileId
-  = lens _aguProFileId (\ s a -> s{_aguProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-aguPayload :: Lens' AdvertiserGroupsUpdate AdvertiserGroup
-aguPayload
-  = lens _aguPayload (\ s a -> s{_aguPayload = a})
-
-instance GoogleRequest AdvertiserGroupsUpdate where
-        type Rs AdvertiserGroupsUpdate = AdvertiserGroup
-        type Scopes AdvertiserGroupsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserGroupsUpdate'{..}
-          = go _aguProFileId (Just AltJSON) _aguPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserGroupsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Get.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Get.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one landing page by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserLandingPages.get@.
-module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Get
-    (
-    -- * REST Resource
-      AdvertiserLandingPagesGetResource
-
-    -- * Creating a Request
-    , advertiserLandingPagesGet
-    , AdvertiserLandingPagesGet
-
-    -- * Request Lenses
-    , alpgProFileId
-    , alpgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserLandingPages.get@ method which the
--- 'AdvertiserLandingPagesGet' request conforms to.
-type AdvertiserLandingPagesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserLandingPages" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] LandingPage
-
--- | Gets one landing page by ID.
---
--- /See:/ 'advertiserLandingPagesGet' smart constructor.
-data AdvertiserLandingPagesGet =
-  AdvertiserLandingPagesGet'
-    { _alpgProFileId :: !(Textual Int64)
-    , _alpgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alpgProFileId'
---
--- * 'alpgId'
-advertiserLandingPagesGet
-    :: Int64 -- ^ 'alpgProFileId'
-    -> Int64 -- ^ 'alpgId'
-    -> AdvertiserLandingPagesGet
-advertiserLandingPagesGet pAlpgProFileId_ pAlpgId_ =
-  AdvertiserLandingPagesGet'
-    {_alpgProFileId = _Coerce # pAlpgProFileId_, _alpgId = _Coerce # pAlpgId_}
-
-
--- | User profile ID associated with this request.
-alpgProFileId :: Lens' AdvertiserLandingPagesGet Int64
-alpgProFileId
-  = lens _alpgProFileId
-      (\ s a -> s{_alpgProFileId = a})
-      . _Coerce
-
--- | Landing page ID.
-alpgId :: Lens' AdvertiserLandingPagesGet Int64
-alpgId
-  = lens _alpgId (\ s a -> s{_alpgId = a}) . _Coerce
-
-instance GoogleRequest AdvertiserLandingPagesGet
-         where
-        type Rs AdvertiserLandingPagesGet = LandingPage
-        type Scopes AdvertiserLandingPagesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserLandingPagesGet'{..}
-          = go _alpgProFileId _alpgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserLandingPagesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Insert.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Insert.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.AdvertiserLandingPages.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new landing page.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserLandingPages.insert@.
-module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Insert
-    (
-    -- * REST Resource
-      AdvertiserLandingPagesInsertResource
-
-    -- * Creating a Request
-    , advertiserLandingPagesInsert
-    , AdvertiserLandingPagesInsert
-
-    -- * Request Lenses
-    , alpiProFileId
-    , alpiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserLandingPages.insert@ method which the
--- 'AdvertiserLandingPagesInsert' request conforms to.
-type AdvertiserLandingPagesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserLandingPages" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] LandingPage :>
-                   Post '[JSON] LandingPage
-
--- | Inserts a new landing page.
---
--- /See:/ 'advertiserLandingPagesInsert' smart constructor.
-data AdvertiserLandingPagesInsert =
-  AdvertiserLandingPagesInsert'
-    { _alpiProFileId :: !(Textual Int64)
-    , _alpiPayload   :: !LandingPage
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alpiProFileId'
---
--- * 'alpiPayload'
-advertiserLandingPagesInsert
-    :: Int64 -- ^ 'alpiProFileId'
-    -> LandingPage -- ^ 'alpiPayload'
-    -> AdvertiserLandingPagesInsert
-advertiserLandingPagesInsert pAlpiProFileId_ pAlpiPayload_ =
-  AdvertiserLandingPagesInsert'
-    {_alpiProFileId = _Coerce # pAlpiProFileId_, _alpiPayload = pAlpiPayload_}
-
-
--- | User profile ID associated with this request.
-alpiProFileId :: Lens' AdvertiserLandingPagesInsert Int64
-alpiProFileId
-  = lens _alpiProFileId
-      (\ s a -> s{_alpiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-alpiPayload :: Lens' AdvertiserLandingPagesInsert LandingPage
-alpiPayload
-  = lens _alpiPayload (\ s a -> s{_alpiPayload = a})
-
-instance GoogleRequest AdvertiserLandingPagesInsert
-         where
-        type Rs AdvertiserLandingPagesInsert = LandingPage
-        type Scopes AdvertiserLandingPagesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserLandingPagesInsert'{..}
-          = go _alpiProFileId (Just AltJSON) _alpiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserLandingPagesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/List.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/List.hs
+++ /dev/null
@@ -1,243 +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.DFAReporting.AdvertiserLandingPages.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of landing pages.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserLandingPages.list@.
-module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.List
-    (
-    -- * REST Resource
-      AdvertiserLandingPagesListResource
-
-    -- * Creating a Request
-    , advertiserLandingPagesList
-    , AdvertiserLandingPagesList
-
-    -- * Request Lenses
-    , alplCampaignIds
-    , alplSearchString
-    , alplIds
-    , alplProFileId
-    , alplSortOrder
-    , alplPageToken
-    , alplSortField
-    , alplSubAccountId
-    , alplAdvertiserIds
-    , alplArchived
-    , alplMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserLandingPages.list@ method which the
--- 'AdvertiserLandingPagesList' request conforms to.
-type AdvertiserLandingPagesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserLandingPages" :>
-               QueryParams "campaignIds" (Textual Int64) :>
-                 QueryParam "searchString" Text :>
-                   QueryParams "ids" (Textual Int64) :>
-                     QueryParam "sortOrder"
-                       AdvertiserLandingPagesListSortOrder
-                       :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField"
-                           AdvertiserLandingPagesListSortField
-                           :>
-                           QueryParam "subaccountId" (Textual Int64) :>
-                             QueryParams "advertiserIds" (Textual Int64) :>
-                               QueryParam "archived" Bool :>
-                                 QueryParam "maxResults" (Textual Int32) :>
-                                   QueryParam "alt" AltJSON :>
-                                     Get '[JSON]
-                                       AdvertiserLandingPagesListResponse
-
--- | Retrieves a list of landing pages.
---
--- /See:/ 'advertiserLandingPagesList' smart constructor.
-data AdvertiserLandingPagesList =
-  AdvertiserLandingPagesList'
-    { _alplCampaignIds   :: !(Maybe [Textual Int64])
-    , _alplSearchString  :: !(Maybe Text)
-    , _alplIds           :: !(Maybe [Textual Int64])
-    , _alplProFileId     :: !(Textual Int64)
-    , _alplSortOrder     :: !AdvertiserLandingPagesListSortOrder
-    , _alplPageToken     :: !(Maybe Text)
-    , _alplSortField     :: !AdvertiserLandingPagesListSortField
-    , _alplSubAccountId  :: !(Maybe (Textual Int64))
-    , _alplAdvertiserIds :: !(Maybe [Textual Int64])
-    , _alplArchived      :: !(Maybe Bool)
-    , _alplMaxResults    :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alplCampaignIds'
---
--- * 'alplSearchString'
---
--- * 'alplIds'
---
--- * 'alplProFileId'
---
--- * 'alplSortOrder'
---
--- * 'alplPageToken'
---
--- * 'alplSortField'
---
--- * 'alplSubAccountId'
---
--- * 'alplAdvertiserIds'
---
--- * 'alplArchived'
---
--- * 'alplMaxResults'
-advertiserLandingPagesList
-    :: Int64 -- ^ 'alplProFileId'
-    -> AdvertiserLandingPagesList
-advertiserLandingPagesList pAlplProFileId_ =
-  AdvertiserLandingPagesList'
-    { _alplCampaignIds = Nothing
-    , _alplSearchString = Nothing
-    , _alplIds = Nothing
-    , _alplProFileId = _Coerce # pAlplProFileId_
-    , _alplSortOrder = ALPLSOAscending
-    , _alplPageToken = Nothing
-    , _alplSortField = ALPLSFID
-    , _alplSubAccountId = Nothing
-    , _alplAdvertiserIds = Nothing
-    , _alplArchived = Nothing
-    , _alplMaxResults = 1000
-    }
-
-
--- | Select only landing pages that are associated with these campaigns.
-alplCampaignIds :: Lens' AdvertiserLandingPagesList [Int64]
-alplCampaignIds
-  = lens _alplCampaignIds
-      (\ s a -> s{_alplCampaignIds = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for landing pages by name or ID. Wildcards (*) are
--- allowed. For example, \"landingpage*2017\" will return landing pages
--- with names like \"landingpage July 2017\", \"landingpage March 2017\",
--- or simply \"landingpage 2017\". Most of the searches also add wildcards
--- implicitly at the start and the end of the search string. For example, a
--- search string of \"landingpage\" will match campaigns with name \"my
--- landingpage\", \"landingpage 2015\", or simply \"landingpage\".
-alplSearchString :: Lens' AdvertiserLandingPagesList (Maybe Text)
-alplSearchString
-  = lens _alplSearchString
-      (\ s a -> s{_alplSearchString = a})
-
--- | Select only landing pages with these IDs.
-alplIds :: Lens' AdvertiserLandingPagesList [Int64]
-alplIds
-  = lens _alplIds (\ s a -> s{_alplIds = a}) . _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-alplProFileId :: Lens' AdvertiserLandingPagesList Int64
-alplProFileId
-  = lens _alplProFileId
-      (\ s a -> s{_alplProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-alplSortOrder :: Lens' AdvertiserLandingPagesList AdvertiserLandingPagesListSortOrder
-alplSortOrder
-  = lens _alplSortOrder
-      (\ s a -> s{_alplSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-alplPageToken :: Lens' AdvertiserLandingPagesList (Maybe Text)
-alplPageToken
-  = lens _alplPageToken
-      (\ s a -> s{_alplPageToken = a})
-
--- | Field by which to sort the list.
-alplSortField :: Lens' AdvertiserLandingPagesList AdvertiserLandingPagesListSortField
-alplSortField
-  = lens _alplSortField
-      (\ s a -> s{_alplSortField = a})
-
--- | Select only landing pages that belong to this subaccount.
-alplSubAccountId :: Lens' AdvertiserLandingPagesList (Maybe Int64)
-alplSubAccountId
-  = lens _alplSubAccountId
-      (\ s a -> s{_alplSubAccountId = a})
-      . mapping _Coerce
-
--- | Select only landing pages that belong to these advertisers.
-alplAdvertiserIds :: Lens' AdvertiserLandingPagesList [Int64]
-alplAdvertiserIds
-  = lens _alplAdvertiserIds
-      (\ s a -> s{_alplAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only archived landing pages. Don\'t set this field to select both
--- archived and non-archived landing pages.
-alplArchived :: Lens' AdvertiserLandingPagesList (Maybe Bool)
-alplArchived
-  = lens _alplArchived (\ s a -> s{_alplArchived = a})
-
--- | Maximum number of results to return.
-alplMaxResults :: Lens' AdvertiserLandingPagesList Int32
-alplMaxResults
-  = lens _alplMaxResults
-      (\ s a -> s{_alplMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest AdvertiserLandingPagesList
-         where
-        type Rs AdvertiserLandingPagesList =
-             AdvertiserLandingPagesListResponse
-        type Scopes AdvertiserLandingPagesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserLandingPagesList'{..}
-          = go _alplProFileId (_alplCampaignIds ^. _Default)
-              _alplSearchString
-              (_alplIds ^. _Default)
-              (Just _alplSortOrder)
-              _alplPageToken
-              (Just _alplSortField)
-              _alplSubAccountId
-              (_alplAdvertiserIds ^. _Default)
-              _alplArchived
-              (Just _alplMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserLandingPagesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Patch.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.AdvertiserLandingPages.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing landing page. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserLandingPages.patch@.
-module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Patch
-    (
-    -- * REST Resource
-      AdvertiserLandingPagesPatchResource
-
-    -- * Creating a Request
-    , advertiserLandingPagesPatch
-    , AdvertiserLandingPagesPatch
-
-    -- * Request Lenses
-    , alppProFileId
-    , alppPayload
-    , alppId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserLandingPages.patch@ method which the
--- 'AdvertiserLandingPagesPatch' request conforms to.
-type AdvertiserLandingPagesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserLandingPages" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] LandingPage :>
-                     Patch '[JSON] LandingPage
-
--- | Updates an existing landing page. This method supports patch semantics.
---
--- /See:/ 'advertiserLandingPagesPatch' smart constructor.
-data AdvertiserLandingPagesPatch =
-  AdvertiserLandingPagesPatch'
-    { _alppProFileId :: !(Textual Int64)
-    , _alppPayload   :: !LandingPage
-    , _alppId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alppProFileId'
---
--- * 'alppPayload'
---
--- * 'alppId'
-advertiserLandingPagesPatch
-    :: Int64 -- ^ 'alppProFileId'
-    -> LandingPage -- ^ 'alppPayload'
-    -> Int64 -- ^ 'alppId'
-    -> AdvertiserLandingPagesPatch
-advertiserLandingPagesPatch pAlppProFileId_ pAlppPayload_ pAlppId_ =
-  AdvertiserLandingPagesPatch'
-    { _alppProFileId = _Coerce # pAlppProFileId_
-    , _alppPayload = pAlppPayload_
-    , _alppId = _Coerce # pAlppId_
-    }
-
-
--- | User profile ID associated with this request.
-alppProFileId :: Lens' AdvertiserLandingPagesPatch Int64
-alppProFileId
-  = lens _alppProFileId
-      (\ s a -> s{_alppProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-alppPayload :: Lens' AdvertiserLandingPagesPatch LandingPage
-alppPayload
-  = lens _alppPayload (\ s a -> s{_alppPayload = a})
-
--- | Landing page ID.
-alppId :: Lens' AdvertiserLandingPagesPatch Int64
-alppId
-  = lens _alppId (\ s a -> s{_alppId = a}) . _Coerce
-
-instance GoogleRequest AdvertiserLandingPagesPatch
-         where
-        type Rs AdvertiserLandingPagesPatch = LandingPage
-        type Scopes AdvertiserLandingPagesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserLandingPagesPatch'{..}
-          = go _alppProFileId (Just _alppId) (Just AltJSON)
-              _alppPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserLandingPagesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Update.hs b/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/AdvertiserLandingPages/Update.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.AdvertiserLandingPages.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing landing page.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertiserLandingPages.update@.
-module Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Update
-    (
-    -- * REST Resource
-      AdvertiserLandingPagesUpdateResource
-
-    -- * Creating a Request
-    , advertiserLandingPagesUpdate
-    , AdvertiserLandingPagesUpdate
-
-    -- * Request Lenses
-    , alpuProFileId
-    , alpuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertiserLandingPages.update@ method which the
--- 'AdvertiserLandingPagesUpdate' request conforms to.
-type AdvertiserLandingPagesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertiserLandingPages" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] LandingPage :>
-                   Put '[JSON] LandingPage
-
--- | Updates an existing landing page.
---
--- /See:/ 'advertiserLandingPagesUpdate' smart constructor.
-data AdvertiserLandingPagesUpdate =
-  AdvertiserLandingPagesUpdate'
-    { _alpuProFileId :: !(Textual Int64)
-    , _alpuPayload   :: !LandingPage
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertiserLandingPagesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'alpuProFileId'
---
--- * 'alpuPayload'
-advertiserLandingPagesUpdate
-    :: Int64 -- ^ 'alpuProFileId'
-    -> LandingPage -- ^ 'alpuPayload'
-    -> AdvertiserLandingPagesUpdate
-advertiserLandingPagesUpdate pAlpuProFileId_ pAlpuPayload_ =
-  AdvertiserLandingPagesUpdate'
-    {_alpuProFileId = _Coerce # pAlpuProFileId_, _alpuPayload = pAlpuPayload_}
-
-
--- | User profile ID associated with this request.
-alpuProFileId :: Lens' AdvertiserLandingPagesUpdate Int64
-alpuProFileId
-  = lens _alpuProFileId
-      (\ s a -> s{_alpuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-alpuPayload :: Lens' AdvertiserLandingPagesUpdate LandingPage
-alpuPayload
-  = lens _alpuPayload (\ s a -> s{_alpuPayload = a})
-
-instance GoogleRequest AdvertiserLandingPagesUpdate
-         where
-        type Rs AdvertiserLandingPagesUpdate = LandingPage
-        type Scopes AdvertiserLandingPagesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertiserLandingPagesUpdate'{..}
-          = go _alpuProFileId (Just AltJSON) _alpuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertiserLandingPagesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Advertisers/Get.hs b/gen/Network/Google/Resource/DFAReporting/Advertisers/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Advertisers/Get.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.DFAReporting.Advertisers.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one advertiser by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertisers.get@.
-module Network.Google.Resource.DFAReporting.Advertisers.Get
-    (
-    -- * REST Resource
-      AdvertisersGetResource
-
-    -- * Creating a Request
-    , advertisersGet
-    , AdvertisersGet
-
-    -- * Request Lenses
-    , advProFileId
-    , advId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertisers.get@ method which the
--- 'AdvertisersGet' request conforms to.
-type AdvertisersGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertisers" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Advertiser
-
--- | Gets one advertiser by ID.
---
--- /See:/ 'advertisersGet' smart constructor.
-data AdvertisersGet =
-  AdvertisersGet'
-    { _advProFileId :: !(Textual Int64)
-    , _advId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'advProFileId'
---
--- * 'advId'
-advertisersGet
-    :: Int64 -- ^ 'advProFileId'
-    -> Int64 -- ^ 'advId'
-    -> AdvertisersGet
-advertisersGet pAdvProFileId_ pAdvId_ =
-  AdvertisersGet'
-    {_advProFileId = _Coerce # pAdvProFileId_, _advId = _Coerce # pAdvId_}
-
-
--- | User profile ID associated with this request.
-advProFileId :: Lens' AdvertisersGet Int64
-advProFileId
-  = lens _advProFileId (\ s a -> s{_advProFileId = a})
-      . _Coerce
-
--- | Advertiser ID.
-advId :: Lens' AdvertisersGet Int64
-advId
-  = lens _advId (\ s a -> s{_advId = a}) . _Coerce
-
-instance GoogleRequest AdvertisersGet where
-        type Rs AdvertisersGet = Advertiser
-        type Scopes AdvertisersGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertisersGet'{..}
-          = go _advProFileId _advId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy AdvertisersGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Advertisers/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Advertisers/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Advertisers/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Advertisers.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new advertiser.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertisers.insert@.
-module Network.Google.Resource.DFAReporting.Advertisers.Insert
-    (
-    -- * REST Resource
-      AdvertisersInsertResource
-
-    -- * Creating a Request
-    , advertisersInsert
-    , AdvertisersInsert
-
-    -- * Request Lenses
-    , aiiProFileId
-    , aiiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertisers.insert@ method which the
--- 'AdvertisersInsert' request conforms to.
-type AdvertisersInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertisers" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Advertiser :> Post '[JSON] Advertiser
-
--- | Inserts a new advertiser.
---
--- /See:/ 'advertisersInsert' smart constructor.
-data AdvertisersInsert =
-  AdvertisersInsert'
-    { _aiiProFileId :: !(Textual Int64)
-    , _aiiPayload   :: !Advertiser
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'aiiProFileId'
---
--- * 'aiiPayload'
-advertisersInsert
-    :: Int64 -- ^ 'aiiProFileId'
-    -> Advertiser -- ^ 'aiiPayload'
-    -> AdvertisersInsert
-advertisersInsert pAiiProFileId_ pAiiPayload_ =
-  AdvertisersInsert'
-    {_aiiProFileId = _Coerce # pAiiProFileId_, _aiiPayload = pAiiPayload_}
-
-
--- | User profile ID associated with this request.
-aiiProFileId :: Lens' AdvertisersInsert Int64
-aiiProFileId
-  = lens _aiiProFileId (\ s a -> s{_aiiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-aiiPayload :: Lens' AdvertisersInsert Advertiser
-aiiPayload
-  = lens _aiiPayload (\ s a -> s{_aiiPayload = a})
-
-instance GoogleRequest AdvertisersInsert where
-        type Rs AdvertisersInsert = Advertiser
-        type Scopes AdvertisersInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertisersInsert'{..}
-          = go _aiiProFileId (Just AltJSON) _aiiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertisersInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Advertisers/List.hs b/gen/Network/Google/Resource/DFAReporting/Advertisers/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Advertisers/List.hs
+++ /dev/null
@@ -1,264 +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.DFAReporting.Advertisers.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of advertisers, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertisers.list@.
-module Network.Google.Resource.DFAReporting.Advertisers.List
-    (
-    -- * REST Resource
-      AdvertisersListResource
-
-    -- * Creating a Request
-    , advertisersList
-    , AdvertisersList
-
-    -- * Request Lenses
-    , allStatus
-    , allOnlyParent
-    , allSearchString
-    , allIds
-    , allIncludeAdvertisersWithoutGroupsOnly
-    , allProFileId
-    , allSortOrder
-    , allAdvertiserGroupIds
-    , allPageToken
-    , allSortField
-    , allSubAccountId
-    , allFloodlightConfigurationIds
-    , allMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertisers.list@ method which the
--- 'AdvertisersList' request conforms to.
-type AdvertisersListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertisers" :>
-               QueryParam "status" AdvertisersListStatus :>
-                 QueryParam "onlyParent" Bool :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "includeAdvertisersWithoutGroupsOnly" Bool
-                         :>
-                         QueryParam "sortOrder" AdvertisersListSortOrder :>
-                           QueryParams "advertiserGroupIds" (Textual Int64) :>
-                             QueryParam "pageToken" Text :>
-                               QueryParam "sortField" AdvertisersListSortField
-                                 :>
-                                 QueryParam "subaccountId" (Textual Int64) :>
-                                   QueryParams "floodlightConfigurationIds"
-                                     (Textual Int64)
-                                     :>
-                                     QueryParam "maxResults" (Textual Int32) :>
-                                       QueryParam "alt" AltJSON :>
-                                         Get '[JSON] AdvertisersListResponse
-
--- | Retrieves a list of advertisers, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'advertisersList' smart constructor.
-data AdvertisersList =
-  AdvertisersList'
-    { _allStatus                              :: !(Maybe AdvertisersListStatus)
-    , _allOnlyParent                          :: !(Maybe Bool)
-    , _allSearchString                        :: !(Maybe Text)
-    , _allIds                                 :: !(Maybe [Textual Int64])
-    , _allIncludeAdvertisersWithoutGroupsOnly :: !(Maybe Bool)
-    , _allProFileId                           :: !(Textual Int64)
-    , _allSortOrder                           :: !AdvertisersListSortOrder
-    , _allAdvertiserGroupIds                  :: !(Maybe [Textual Int64])
-    , _allPageToken                           :: !(Maybe Text)
-    , _allSortField                           :: !AdvertisersListSortField
-    , _allSubAccountId                        :: !(Maybe (Textual Int64))
-    , _allFloodlightConfigurationIds          :: !(Maybe [Textual Int64])
-    , _allMaxResults                          :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'allStatus'
---
--- * 'allOnlyParent'
---
--- * 'allSearchString'
---
--- * 'allIds'
---
--- * 'allIncludeAdvertisersWithoutGroupsOnly'
---
--- * 'allProFileId'
---
--- * 'allSortOrder'
---
--- * 'allAdvertiserGroupIds'
---
--- * 'allPageToken'
---
--- * 'allSortField'
---
--- * 'allSubAccountId'
---
--- * 'allFloodlightConfigurationIds'
---
--- * 'allMaxResults'
-advertisersList
-    :: Int64 -- ^ 'allProFileId'
-    -> AdvertisersList
-advertisersList pAllProFileId_ =
-  AdvertisersList'
-    { _allStatus = Nothing
-    , _allOnlyParent = Nothing
-    , _allSearchString = Nothing
-    , _allIds = Nothing
-    , _allIncludeAdvertisersWithoutGroupsOnly = Nothing
-    , _allProFileId = _Coerce # pAllProFileId_
-    , _allSortOrder = ALSOAscending
-    , _allAdvertiserGroupIds = Nothing
-    , _allPageToken = Nothing
-    , _allSortField = ID
-    , _allSubAccountId = Nothing
-    , _allFloodlightConfigurationIds = Nothing
-    , _allMaxResults = 1000
-    }
-
-
--- | Select only advertisers with the specified status.
-allStatus :: Lens' AdvertisersList (Maybe AdvertisersListStatus)
-allStatus
-  = lens _allStatus (\ s a -> s{_allStatus = a})
-
--- | Select only advertisers which use another advertiser\'s floodlight
--- configuration.
-allOnlyParent :: Lens' AdvertisersList (Maybe Bool)
-allOnlyParent
-  = lens _allOnlyParent
-      (\ s a -> s{_allOnlyParent = a})
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"advertiser*2015\" will return objects with names like
--- \"advertiser June 2015\", \"advertiser April 2015\", or simply
--- \"advertiser 2015\". Most of the searches also add wildcards implicitly
--- at the start and the end of the search string. For example, a search
--- string of \"advertiser\" will match objects with name \"my advertiser\",
--- \"advertiser 2015\", or simply \"advertiser\".
-allSearchString :: Lens' AdvertisersList (Maybe Text)
-allSearchString
-  = lens _allSearchString
-      (\ s a -> s{_allSearchString = a})
-
--- | Select only advertisers with these IDs.
-allIds :: Lens' AdvertisersList [Int64]
-allIds
-  = lens _allIds (\ s a -> s{_allIds = a}) . _Default .
-      _Coerce
-
--- | Select only advertisers which do not belong to any advertiser group.
-allIncludeAdvertisersWithoutGroupsOnly :: Lens' AdvertisersList (Maybe Bool)
-allIncludeAdvertisersWithoutGroupsOnly
-  = lens _allIncludeAdvertisersWithoutGroupsOnly
-      (\ s a ->
-         s{_allIncludeAdvertisersWithoutGroupsOnly = a})
-
--- | User profile ID associated with this request.
-allProFileId :: Lens' AdvertisersList Int64
-allProFileId
-  = lens _allProFileId (\ s a -> s{_allProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-allSortOrder :: Lens' AdvertisersList AdvertisersListSortOrder
-allSortOrder
-  = lens _allSortOrder (\ s a -> s{_allSortOrder = a})
-
--- | Select only advertisers with these advertiser group IDs.
-allAdvertiserGroupIds :: Lens' AdvertisersList [Int64]
-allAdvertiserGroupIds
-  = lens _allAdvertiserGroupIds
-      (\ s a -> s{_allAdvertiserGroupIds = a})
-      . _Default
-      . _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-allPageToken :: Lens' AdvertisersList (Maybe Text)
-allPageToken
-  = lens _allPageToken (\ s a -> s{_allPageToken = a})
-
--- | Field by which to sort the list.
-allSortField :: Lens' AdvertisersList AdvertisersListSortField
-allSortField
-  = lens _allSortField (\ s a -> s{_allSortField = a})
-
--- | Select only advertisers with these subaccount IDs.
-allSubAccountId :: Lens' AdvertisersList (Maybe Int64)
-allSubAccountId
-  = lens _allSubAccountId
-      (\ s a -> s{_allSubAccountId = a})
-      . mapping _Coerce
-
--- | Select only advertisers with these floodlight configuration IDs.
-allFloodlightConfigurationIds :: Lens' AdvertisersList [Int64]
-allFloodlightConfigurationIds
-  = lens _allFloodlightConfigurationIds
-      (\ s a -> s{_allFloodlightConfigurationIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-allMaxResults :: Lens' AdvertisersList Int32
-allMaxResults
-  = lens _allMaxResults
-      (\ s a -> s{_allMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest AdvertisersList where
-        type Rs AdvertisersList = AdvertisersListResponse
-        type Scopes AdvertisersList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertisersList'{..}
-          = go _allProFileId _allStatus _allOnlyParent
-              _allSearchString
-              (_allIds ^. _Default)
-              _allIncludeAdvertisersWithoutGroupsOnly
-              (Just _allSortOrder)
-              (_allAdvertiserGroupIds ^. _Default)
-              _allPageToken
-              (Just _allSortField)
-              _allSubAccountId
-              (_allFloodlightConfigurationIds ^. _Default)
-              (Just _allMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertisersListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Advertisers/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Advertisers/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Advertisers/Patch.hs
+++ /dev/null
@@ -1,117 +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.DFAReporting.Advertisers.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing advertiser. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertisers.patch@.
-module Network.Google.Resource.DFAReporting.Advertisers.Patch
-    (
-    -- * REST Resource
-      AdvertisersPatchResource
-
-    -- * Creating a Request
-    , advertisersPatch
-    , AdvertisersPatch
-
-    -- * Request Lenses
-    , apProFileId
-    , apPayload
-    , apId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertisers.patch@ method which the
--- 'AdvertisersPatch' request conforms to.
-type AdvertisersPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertisers" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Advertiser :>
-                     Patch '[JSON] Advertiser
-
--- | Updates an existing advertiser. This method supports patch semantics.
---
--- /See:/ 'advertisersPatch' smart constructor.
-data AdvertisersPatch =
-  AdvertisersPatch'
-    { _apProFileId :: !(Textual Int64)
-    , _apPayload   :: !Advertiser
-    , _apId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'apProFileId'
---
--- * 'apPayload'
---
--- * 'apId'
-advertisersPatch
-    :: Int64 -- ^ 'apProFileId'
-    -> Advertiser -- ^ 'apPayload'
-    -> Int64 -- ^ 'apId'
-    -> AdvertisersPatch
-advertisersPatch pApProFileId_ pApPayload_ pApId_ =
-  AdvertisersPatch'
-    { _apProFileId = _Coerce # pApProFileId_
-    , _apPayload = pApPayload_
-    , _apId = _Coerce # pApId_
-    }
-
-
--- | User profile ID associated with this request.
-apProFileId :: Lens' AdvertisersPatch Int64
-apProFileId
-  = lens _apProFileId (\ s a -> s{_apProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-apPayload :: Lens' AdvertisersPatch Advertiser
-apPayload
-  = lens _apPayload (\ s a -> s{_apPayload = a})
-
--- | Advertiser ID.
-apId :: Lens' AdvertisersPatch Int64
-apId = lens _apId (\ s a -> s{_apId = a}) . _Coerce
-
-instance GoogleRequest AdvertisersPatch where
-        type Rs AdvertisersPatch = Advertiser
-        type Scopes AdvertisersPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertisersPatch'{..}
-          = go _apProFileId (Just _apId) (Just AltJSON)
-              _apPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertisersPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Advertisers/Update.hs b/gen/Network/Google/Resource/DFAReporting/Advertisers/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Advertisers/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Advertisers.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing advertiser.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.advertisers.update@.
-module Network.Google.Resource.DFAReporting.Advertisers.Update
-    (
-    -- * REST Resource
-      AdvertisersUpdateResource
-
-    -- * Creating a Request
-    , advertisersUpdate
-    , AdvertisersUpdate
-
-    -- * Request Lenses
-    , auProFileId
-    , auPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.advertisers.update@ method which the
--- 'AdvertisersUpdate' request conforms to.
-type AdvertisersUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "advertisers" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Advertiser :> Put '[JSON] Advertiser
-
--- | Updates an existing advertiser.
---
--- /See:/ 'advertisersUpdate' smart constructor.
-data AdvertisersUpdate =
-  AdvertisersUpdate'
-    { _auProFileId :: !(Textual Int64)
-    , _auPayload   :: !Advertiser
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'AdvertisersUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'auProFileId'
---
--- * 'auPayload'
-advertisersUpdate
-    :: Int64 -- ^ 'auProFileId'
-    -> Advertiser -- ^ 'auPayload'
-    -> AdvertisersUpdate
-advertisersUpdate pAuProFileId_ pAuPayload_ =
-  AdvertisersUpdate'
-    {_auProFileId = _Coerce # pAuProFileId_, _auPayload = pAuPayload_}
-
-
--- | User profile ID associated with this request.
-auProFileId :: Lens' AdvertisersUpdate Int64
-auProFileId
-  = lens _auProFileId (\ s a -> s{_auProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-auPayload :: Lens' AdvertisersUpdate Advertiser
-auPayload
-  = lens _auPayload (\ s a -> s{_auPayload = a})
-
-instance GoogleRequest AdvertisersUpdate where
-        type Rs AdvertisersUpdate = Advertiser
-        type Scopes AdvertisersUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient AdvertisersUpdate'{..}
-          = go _auProFileId (Just AltJSON) _auPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy AdvertisersUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Browsers/List.hs b/gen/Network/Google/Resource/DFAReporting/Browsers/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Browsers/List.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.DFAReporting.Browsers.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of browsers.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.browsers.list@.
-module Network.Google.Resource.DFAReporting.Browsers.List
-    (
-    -- * REST Resource
-      BrowsersListResource
-
-    -- * Creating a Request
-    , browsersList
-    , BrowsersList
-
-    -- * Request Lenses
-    , blProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.browsers.list@ method which the
--- 'BrowsersList' request conforms to.
-type BrowsersListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "browsers" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] BrowsersListResponse
-
--- | Retrieves a list of browsers.
---
--- /See:/ 'browsersList' smart constructor.
-newtype BrowsersList =
-  BrowsersList'
-    { _blProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'BrowsersList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'blProFileId'
-browsersList
-    :: Int64 -- ^ 'blProFileId'
-    -> BrowsersList
-browsersList pBlProFileId_ =
-  BrowsersList' {_blProFileId = _Coerce # pBlProFileId_}
-
-
--- | User profile ID associated with this request.
-blProFileId :: Lens' BrowsersList Int64
-blProFileId
-  = lens _blProFileId (\ s a -> s{_blProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest BrowsersList where
-        type Rs BrowsersList = BrowsersListResponse
-        type Scopes BrowsersList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient BrowsersList'{..}
-          = go _blProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy BrowsersListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/Insert.hs b/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/Insert.hs
+++ /dev/null
@@ -1,130 +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.DFAReporting.CampaignCreativeAssociations.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Associates a creative with the specified campaign. This method creates a
--- default ad with dimensions matching the creative in the campaign if such
--- a default ad does not exist already.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaignCreativeAssociations.insert@.
-module Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.Insert
-    (
-    -- * REST Resource
-      CampaignCreativeAssociationsInsertResource
-
-    -- * Creating a Request
-    , campaignCreativeAssociationsInsert
-    , CampaignCreativeAssociationsInsert
-
-    -- * Request Lenses
-    , ccaiCampaignId
-    , ccaiProFileId
-    , ccaiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaignCreativeAssociations.insert@ method which the
--- 'CampaignCreativeAssociationsInsert' request conforms to.
-type CampaignCreativeAssociationsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               Capture "campaignId" (Textual Int64) :>
-                 "campaignCreativeAssociations" :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] CampaignCreativeAssociation :>
-                       Post '[JSON] CampaignCreativeAssociation
-
--- | Associates a creative with the specified campaign. This method creates a
--- default ad with dimensions matching the creative in the campaign if such
--- a default ad does not exist already.
---
--- /See:/ 'campaignCreativeAssociationsInsert' smart constructor.
-data CampaignCreativeAssociationsInsert =
-  CampaignCreativeAssociationsInsert'
-    { _ccaiCampaignId :: !(Textual Int64)
-    , _ccaiProFileId  :: !(Textual Int64)
-    , _ccaiPayload    :: !CampaignCreativeAssociation
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignCreativeAssociationsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccaiCampaignId'
---
--- * 'ccaiProFileId'
---
--- * 'ccaiPayload'
-campaignCreativeAssociationsInsert
-    :: Int64 -- ^ 'ccaiCampaignId'
-    -> Int64 -- ^ 'ccaiProFileId'
-    -> CampaignCreativeAssociation -- ^ 'ccaiPayload'
-    -> CampaignCreativeAssociationsInsert
-campaignCreativeAssociationsInsert pCcaiCampaignId_ pCcaiProFileId_ pCcaiPayload_ =
-  CampaignCreativeAssociationsInsert'
-    { _ccaiCampaignId = _Coerce # pCcaiCampaignId_
-    , _ccaiProFileId = _Coerce # pCcaiProFileId_
-    , _ccaiPayload = pCcaiPayload_
-    }
-
-
--- | Campaign ID in this association.
-ccaiCampaignId :: Lens' CampaignCreativeAssociationsInsert Int64
-ccaiCampaignId
-  = lens _ccaiCampaignId
-      (\ s a -> s{_ccaiCampaignId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-ccaiProFileId :: Lens' CampaignCreativeAssociationsInsert Int64
-ccaiProFileId
-  = lens _ccaiProFileId
-      (\ s a -> s{_ccaiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ccaiPayload :: Lens' CampaignCreativeAssociationsInsert CampaignCreativeAssociation
-ccaiPayload
-  = lens _ccaiPayload (\ s a -> s{_ccaiPayload = a})
-
-instance GoogleRequest
-           CampaignCreativeAssociationsInsert
-         where
-        type Rs CampaignCreativeAssociationsInsert =
-             CampaignCreativeAssociation
-        type Scopes CampaignCreativeAssociationsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignCreativeAssociationsInsert'{..}
-          = go _ccaiProFileId _ccaiCampaignId (Just AltJSON)
-              _ccaiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy CampaignCreativeAssociationsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/List.hs b/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CampaignCreativeAssociations/List.hs
+++ /dev/null
@@ -1,158 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves the list of creative IDs associated with the specified
--- campaign. This method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaignCreativeAssociations.list@.
-module Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.List
-    (
-    -- * REST Resource
-      CampaignCreativeAssociationsListResource
-
-    -- * Creating a Request
-    , campaignCreativeAssociationsList
-    , CampaignCreativeAssociationsList
-
-    -- * Request Lenses
-    , ccalCampaignId
-    , ccalProFileId
-    , ccalSortOrder
-    , ccalPageToken
-    , ccalMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaignCreativeAssociations.list@ method which the
--- 'CampaignCreativeAssociationsList' request conforms to.
-type CampaignCreativeAssociationsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               Capture "campaignId" (Textual Int64) :>
-                 "campaignCreativeAssociations" :>
-                   QueryParam "sortOrder"
-                     CampaignCreativeAssociationsListSortOrder
-                     :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "maxResults" (Textual Int32) :>
-                         QueryParam "alt" AltJSON :>
-                           Get '[JSON] CampaignCreativeAssociationsListResponse
-
--- | Retrieves the list of creative IDs associated with the specified
--- campaign. This method supports paging.
---
--- /See:/ 'campaignCreativeAssociationsList' smart constructor.
-data CampaignCreativeAssociationsList =
-  CampaignCreativeAssociationsList'
-    { _ccalCampaignId :: !(Textual Int64)
-    , _ccalProFileId  :: !(Textual Int64)
-    , _ccalSortOrder  :: !CampaignCreativeAssociationsListSortOrder
-    , _ccalPageToken  :: !(Maybe Text)
-    , _ccalMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignCreativeAssociationsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccalCampaignId'
---
--- * 'ccalProFileId'
---
--- * 'ccalSortOrder'
---
--- * 'ccalPageToken'
---
--- * 'ccalMaxResults'
-campaignCreativeAssociationsList
-    :: Int64 -- ^ 'ccalCampaignId'
-    -> Int64 -- ^ 'ccalProFileId'
-    -> CampaignCreativeAssociationsList
-campaignCreativeAssociationsList pCcalCampaignId_ pCcalProFileId_ =
-  CampaignCreativeAssociationsList'
-    { _ccalCampaignId = _Coerce # pCcalCampaignId_
-    , _ccalProFileId = _Coerce # pCcalProFileId_
-    , _ccalSortOrder = CCALSOAscending
-    , _ccalPageToken = Nothing
-    , _ccalMaxResults = 1000
-    }
-
-
--- | Campaign ID in this association.
-ccalCampaignId :: Lens' CampaignCreativeAssociationsList Int64
-ccalCampaignId
-  = lens _ccalCampaignId
-      (\ s a -> s{_ccalCampaignId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-ccalProFileId :: Lens' CampaignCreativeAssociationsList Int64
-ccalProFileId
-  = lens _ccalProFileId
-      (\ s a -> s{_ccalProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-ccalSortOrder :: Lens' CampaignCreativeAssociationsList CampaignCreativeAssociationsListSortOrder
-ccalSortOrder
-  = lens _ccalSortOrder
-      (\ s a -> s{_ccalSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-ccalPageToken :: Lens' CampaignCreativeAssociationsList (Maybe Text)
-ccalPageToken
-  = lens _ccalPageToken
-      (\ s a -> s{_ccalPageToken = a})
-
--- | Maximum number of results to return.
-ccalMaxResults :: Lens' CampaignCreativeAssociationsList Int32
-ccalMaxResults
-  = lens _ccalMaxResults
-      (\ s a -> s{_ccalMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest
-           CampaignCreativeAssociationsList
-         where
-        type Rs CampaignCreativeAssociationsList =
-             CampaignCreativeAssociationsListResponse
-        type Scopes CampaignCreativeAssociationsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignCreativeAssociationsList'{..}
-          = go _ccalProFileId _ccalCampaignId
-              (Just _ccalSortOrder)
-              _ccalPageToken
-              (Just _ccalMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy CampaignCreativeAssociationsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Campaigns/Get.hs b/gen/Network/Google/Resource/DFAReporting/Campaigns/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Campaigns/Get.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.DFAReporting.Campaigns.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one campaign by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaigns.get@.
-module Network.Google.Resource.DFAReporting.Campaigns.Get
-    (
-    -- * REST Resource
-      CampaignsGetResource
-
-    -- * Creating a Request
-    , campaignsGet
-    , CampaignsGet
-
-    -- * Request Lenses
-    , cggProFileId
-    , cggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaigns.get@ method which the
--- 'CampaignsGet' request conforms to.
-type CampaignsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Campaign
-
--- | Gets one campaign by ID.
---
--- /See:/ 'campaignsGet' smart constructor.
-data CampaignsGet =
-  CampaignsGet'
-    { _cggProFileId :: !(Textual Int64)
-    , _cggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cggProFileId'
---
--- * 'cggId'
-campaignsGet
-    :: Int64 -- ^ 'cggProFileId'
-    -> Int64 -- ^ 'cggId'
-    -> CampaignsGet
-campaignsGet pCggProFileId_ pCggId_ =
-  CampaignsGet'
-    {_cggProFileId = _Coerce # pCggProFileId_, _cggId = _Coerce # pCggId_}
-
-
--- | User profile ID associated with this request.
-cggProFileId :: Lens' CampaignsGet Int64
-cggProFileId
-  = lens _cggProFileId (\ s a -> s{_cggProFileId = a})
-      . _Coerce
-
--- | Campaign ID.
-cggId :: Lens' CampaignsGet Int64
-cggId
-  = lens _cggId (\ s a -> s{_cggId = a}) . _Coerce
-
-instance GoogleRequest CampaignsGet where
-        type Rs CampaignsGet = Campaign
-        type Scopes CampaignsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignsGet'{..}
-          = go _cggProFileId _cggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CampaignsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Campaigns/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Campaigns/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Campaigns/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Campaigns.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new campaign.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaigns.insert@.
-module Network.Google.Resource.DFAReporting.Campaigns.Insert
-    (
-    -- * REST Resource
-      CampaignsInsertResource
-
-    -- * Creating a Request
-    , campaignsInsert
-    , CampaignsInsert
-
-    -- * Request Lenses
-    , camProFileId
-    , camPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaigns.insert@ method which the
--- 'CampaignsInsert' request conforms to.
-type CampaignsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Campaign :> Post '[JSON] Campaign
-
--- | Inserts a new campaign.
---
--- /See:/ 'campaignsInsert' smart constructor.
-data CampaignsInsert =
-  CampaignsInsert'
-    { _camProFileId :: !(Textual Int64)
-    , _camPayload   :: !Campaign
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'camProFileId'
---
--- * 'camPayload'
-campaignsInsert
-    :: Int64 -- ^ 'camProFileId'
-    -> Campaign -- ^ 'camPayload'
-    -> CampaignsInsert
-campaignsInsert pCamProFileId_ pCamPayload_ =
-  CampaignsInsert'
-    {_camProFileId = _Coerce # pCamProFileId_, _camPayload = pCamPayload_}
-
-
--- | User profile ID associated with this request.
-camProFileId :: Lens' CampaignsInsert Int64
-camProFileId
-  = lens _camProFileId (\ s a -> s{_camProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-camPayload :: Lens' CampaignsInsert Campaign
-camPayload
-  = lens _camPayload (\ s a -> s{_camPayload = a})
-
-instance GoogleRequest CampaignsInsert where
-        type Rs CampaignsInsert = Campaign
-        type Scopes CampaignsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignsInsert'{..}
-          = go _camProFileId (Just AltJSON) _camPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CampaignsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Campaigns/List.hs b/gen/Network/Google/Resource/DFAReporting/Campaigns/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Campaigns/List.hs
+++ /dev/null
@@ -1,277 +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.DFAReporting.Campaigns.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of campaigns, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaigns.list@.
-module Network.Google.Resource.DFAReporting.Campaigns.List
-    (
-    -- * REST Resource
-      CampaignsListResource
-
-    -- * Creating a Request
-    , campaignsList
-    , CampaignsList
-
-    -- * Request Lenses
-    , clExcludedIds
-    , clSearchString
-    , clIds
-    , clProFileId
-    , clSortOrder
-    , clAdvertiserGroupIds
-    , clAtLeastOneOptimizationActivity
-    , clOverriddenEventTagId
-    , clPageToken
-    , clSortField
-    , clSubAccountId
-    , clAdvertiserIds
-    , clArchived
-    , clMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaigns.list@ method which the
--- 'CampaignsList' request conforms to.
-type CampaignsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               QueryParams "excludedIds" (Textual Int64) :>
-                 QueryParam "searchString" Text :>
-                   QueryParams "ids" (Textual Int64) :>
-                     QueryParam "sortOrder" CampaignsListSortOrder :>
-                       QueryParams "advertiserGroupIds" (Textual Int64) :>
-                         QueryParam "atLeastOneOptimizationActivity" Bool :>
-                           QueryParam "overriddenEventTagId" (Textual Int64) :>
-                             QueryParam "pageToken" Text :>
-                               QueryParam "sortField" CampaignsListSortField :>
-                                 QueryParam "subaccountId" (Textual Int64) :>
-                                   QueryParams "advertiserIds" (Textual Int64)
-                                     :>
-                                     QueryParam "archived" Bool :>
-                                       QueryParam "maxResults" (Textual Int32)
-                                         :>
-                                         QueryParam "alt" AltJSON :>
-                                           Get '[JSON] CampaignsListResponse
-
--- | Retrieves a list of campaigns, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'campaignsList' smart constructor.
-data CampaignsList =
-  CampaignsList'
-    { _clExcludedIds                    :: !(Maybe [Textual Int64])
-    , _clSearchString                   :: !(Maybe Text)
-    , _clIds                            :: !(Maybe [Textual Int64])
-    , _clProFileId                      :: !(Textual Int64)
-    , _clSortOrder                      :: !CampaignsListSortOrder
-    , _clAdvertiserGroupIds             :: !(Maybe [Textual Int64])
-    , _clAtLeastOneOptimizationActivity :: !(Maybe Bool)
-    , _clOverriddenEventTagId           :: !(Maybe (Textual Int64))
-    , _clPageToken                      :: !(Maybe Text)
-    , _clSortField                      :: !CampaignsListSortField
-    , _clSubAccountId                   :: !(Maybe (Textual Int64))
-    , _clAdvertiserIds                  :: !(Maybe [Textual Int64])
-    , _clArchived                       :: !(Maybe Bool)
-    , _clMaxResults                     :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'clExcludedIds'
---
--- * 'clSearchString'
---
--- * 'clIds'
---
--- * 'clProFileId'
---
--- * 'clSortOrder'
---
--- * 'clAdvertiserGroupIds'
---
--- * 'clAtLeastOneOptimizationActivity'
---
--- * 'clOverriddenEventTagId'
---
--- * 'clPageToken'
---
--- * 'clSortField'
---
--- * 'clSubAccountId'
---
--- * 'clAdvertiserIds'
---
--- * 'clArchived'
---
--- * 'clMaxResults'
-campaignsList
-    :: Int64 -- ^ 'clProFileId'
-    -> CampaignsList
-campaignsList pClProFileId_ =
-  CampaignsList'
-    { _clExcludedIds = Nothing
-    , _clSearchString = Nothing
-    , _clIds = Nothing
-    , _clProFileId = _Coerce # pClProFileId_
-    , _clSortOrder = CLSOAscending
-    , _clAdvertiserGroupIds = Nothing
-    , _clAtLeastOneOptimizationActivity = Nothing
-    , _clOverriddenEventTagId = Nothing
-    , _clPageToken = Nothing
-    , _clSortField = CLSFID
-    , _clSubAccountId = Nothing
-    , _clAdvertiserIds = Nothing
-    , _clArchived = Nothing
-    , _clMaxResults = 1000
-    }
-
-
--- | Exclude campaigns with these IDs.
-clExcludedIds :: Lens' CampaignsList [Int64]
-clExcludedIds
-  = lens _clExcludedIds
-      (\ s a -> s{_clExcludedIds = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for campaigns by name or ID. Wildcards (*) are allowed.
--- For example, \"campaign*2015\" will return campaigns with names like
--- \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"campaign\" will match campaigns with name \"my campaign\", \"campaign
--- 2015\", or simply \"campaign\".
-clSearchString :: Lens' CampaignsList (Maybe Text)
-clSearchString
-  = lens _clSearchString
-      (\ s a -> s{_clSearchString = a})
-
--- | Select only campaigns with these IDs.
-clIds :: Lens' CampaignsList [Int64]
-clIds
-  = lens _clIds (\ s a -> s{_clIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-clProFileId :: Lens' CampaignsList Int64
-clProFileId
-  = lens _clProFileId (\ s a -> s{_clProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-clSortOrder :: Lens' CampaignsList CampaignsListSortOrder
-clSortOrder
-  = lens _clSortOrder (\ s a -> s{_clSortOrder = a})
-
--- | Select only campaigns whose advertisers belong to these advertiser
--- groups.
-clAdvertiserGroupIds :: Lens' CampaignsList [Int64]
-clAdvertiserGroupIds
-  = lens _clAdvertiserGroupIds
-      (\ s a -> s{_clAdvertiserGroupIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only campaigns that have at least one optimization activity.
-clAtLeastOneOptimizationActivity :: Lens' CampaignsList (Maybe Bool)
-clAtLeastOneOptimizationActivity
-  = lens _clAtLeastOneOptimizationActivity
-      (\ s a -> s{_clAtLeastOneOptimizationActivity = a})
-
--- | Select only campaigns that have overridden this event tag ID.
-clOverriddenEventTagId :: Lens' CampaignsList (Maybe Int64)
-clOverriddenEventTagId
-  = lens _clOverriddenEventTagId
-      (\ s a -> s{_clOverriddenEventTagId = a})
-      . mapping _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-clPageToken :: Lens' CampaignsList (Maybe Text)
-clPageToken
-  = lens _clPageToken (\ s a -> s{_clPageToken = a})
-
--- | Field by which to sort the list.
-clSortField :: Lens' CampaignsList CampaignsListSortField
-clSortField
-  = lens _clSortField (\ s a -> s{_clSortField = a})
-
--- | Select only campaigns that belong to this subaccount.
-clSubAccountId :: Lens' CampaignsList (Maybe Int64)
-clSubAccountId
-  = lens _clSubAccountId
-      (\ s a -> s{_clSubAccountId = a})
-      . mapping _Coerce
-
--- | Select only campaigns that belong to these advertisers.
-clAdvertiserIds :: Lens' CampaignsList [Int64]
-clAdvertiserIds
-  = lens _clAdvertiserIds
-      (\ s a -> s{_clAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only archived campaigns. Don\'t set this field to select both
--- archived and non-archived campaigns.
-clArchived :: Lens' CampaignsList (Maybe Bool)
-clArchived
-  = lens _clArchived (\ s a -> s{_clArchived = a})
-
--- | Maximum number of results to return.
-clMaxResults :: Lens' CampaignsList Int32
-clMaxResults
-  = lens _clMaxResults (\ s a -> s{_clMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest CampaignsList where
-        type Rs CampaignsList = CampaignsListResponse
-        type Scopes CampaignsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignsList'{..}
-          = go _clProFileId (_clExcludedIds ^. _Default)
-              _clSearchString
-              (_clIds ^. _Default)
-              (Just _clSortOrder)
-              (_clAdvertiserGroupIds ^. _Default)
-              _clAtLeastOneOptimizationActivity
-              _clOverriddenEventTagId
-              _clPageToken
-              (Just _clSortField)
-              _clSubAccountId
-              (_clAdvertiserIds ^. _Default)
-              _clArchived
-              (Just _clMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CampaignsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Campaigns/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Campaigns/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Campaigns/Patch.hs
+++ /dev/null
@@ -1,115 +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.DFAReporting.Campaigns.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing campaign. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaigns.patch@.
-module Network.Google.Resource.DFAReporting.Campaigns.Patch
-    (
-    -- * REST Resource
-      CampaignsPatchResource
-
-    -- * Creating a Request
-    , campaignsPatch
-    , CampaignsPatch
-
-    -- * Request Lenses
-    , cpProFileId
-    , cpPayload
-    , cpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaigns.patch@ method which the
--- 'CampaignsPatch' request conforms to.
-type CampaignsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Campaign :> Patch '[JSON] Campaign
-
--- | Updates an existing campaign. This method supports patch semantics.
---
--- /See:/ 'campaignsPatch' smart constructor.
-data CampaignsPatch =
-  CampaignsPatch'
-    { _cpProFileId :: !(Textual Int64)
-    , _cpPayload   :: !Campaign
-    , _cpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cpProFileId'
---
--- * 'cpPayload'
---
--- * 'cpId'
-campaignsPatch
-    :: Int64 -- ^ 'cpProFileId'
-    -> Campaign -- ^ 'cpPayload'
-    -> Int64 -- ^ 'cpId'
-    -> CampaignsPatch
-campaignsPatch pCpProFileId_ pCpPayload_ pCpId_ =
-  CampaignsPatch'
-    { _cpProFileId = _Coerce # pCpProFileId_
-    , _cpPayload = pCpPayload_
-    , _cpId = _Coerce # pCpId_
-    }
-
-
--- | User profile ID associated with this request.
-cpProFileId :: Lens' CampaignsPatch Int64
-cpProFileId
-  = lens _cpProFileId (\ s a -> s{_cpProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-cpPayload :: Lens' CampaignsPatch Campaign
-cpPayload
-  = lens _cpPayload (\ s a -> s{_cpPayload = a})
-
--- | Campaign ID.
-cpId :: Lens' CampaignsPatch Int64
-cpId = lens _cpId (\ s a -> s{_cpId = a}) . _Coerce
-
-instance GoogleRequest CampaignsPatch where
-        type Rs CampaignsPatch = Campaign
-        type Scopes CampaignsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignsPatch'{..}
-          = go _cpProFileId (Just _cpId) (Just AltJSON)
-              _cpPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CampaignsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Campaigns/Update.hs b/gen/Network/Google/Resource/DFAReporting/Campaigns/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Campaigns/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Campaigns.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing campaign.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.campaigns.update@.
-module Network.Google.Resource.DFAReporting.Campaigns.Update
-    (
-    -- * REST Resource
-      CampaignsUpdateResource
-
-    -- * Creating a Request
-    , campaignsUpdate
-    , CampaignsUpdate
-
-    -- * Request Lenses
-    , cuProFileId
-    , cuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.campaigns.update@ method which the
--- 'CampaignsUpdate' request conforms to.
-type CampaignsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "campaigns" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Campaign :> Put '[JSON] Campaign
-
--- | Updates an existing campaign.
---
--- /See:/ 'campaignsUpdate' smart constructor.
-data CampaignsUpdate =
-  CampaignsUpdate'
-    { _cuProFileId :: !(Textual Int64)
-    , _cuPayload   :: !Campaign
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CampaignsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cuProFileId'
---
--- * 'cuPayload'
-campaignsUpdate
-    :: Int64 -- ^ 'cuProFileId'
-    -> Campaign -- ^ 'cuPayload'
-    -> CampaignsUpdate
-campaignsUpdate pCuProFileId_ pCuPayload_ =
-  CampaignsUpdate'
-    {_cuProFileId = _Coerce # pCuProFileId_, _cuPayload = pCuPayload_}
-
-
--- | User profile ID associated with this request.
-cuProFileId :: Lens' CampaignsUpdate Int64
-cuProFileId
-  = lens _cuProFileId (\ s a -> s{_cuProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-cuPayload :: Lens' CampaignsUpdate Campaign
-cuPayload
-  = lens _cuPayload (\ s a -> s{_cuPayload = a})
-
-instance GoogleRequest CampaignsUpdate where
-        type Rs CampaignsUpdate = Campaign
-        type Scopes CampaignsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CampaignsUpdate'{..}
-          = go _cuProFileId (Just AltJSON) _cuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CampaignsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ChangeLogs/Get.hs b/gen/Network/Google/Resource/DFAReporting/ChangeLogs/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ChangeLogs/Get.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.DFAReporting.ChangeLogs.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one change log by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.changeLogs.get@.
-module Network.Google.Resource.DFAReporting.ChangeLogs.Get
-    (
-    -- * REST Resource
-      ChangeLogsGetResource
-
-    -- * Creating a Request
-    , changeLogsGet
-    , ChangeLogsGet
-
-    -- * Request Lenses
-    , clgProFileId
-    , clgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.changeLogs.get@ method which the
--- 'ChangeLogsGet' request conforms to.
-type ChangeLogsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "changeLogs" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] ChangeLog
-
--- | Gets one change log by ID.
---
--- /See:/ 'changeLogsGet' smart constructor.
-data ChangeLogsGet =
-  ChangeLogsGet'
-    { _clgProFileId :: !(Textual Int64)
-    , _clgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ChangeLogsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'clgProFileId'
---
--- * 'clgId'
-changeLogsGet
-    :: Int64 -- ^ 'clgProFileId'
-    -> Int64 -- ^ 'clgId'
-    -> ChangeLogsGet
-changeLogsGet pClgProFileId_ pClgId_ =
-  ChangeLogsGet'
-    {_clgProFileId = _Coerce # pClgProFileId_, _clgId = _Coerce # pClgId_}
-
-
--- | User profile ID associated with this request.
-clgProFileId :: Lens' ChangeLogsGet Int64
-clgProFileId
-  = lens _clgProFileId (\ s a -> s{_clgProFileId = a})
-      . _Coerce
-
--- | Change log ID.
-clgId :: Lens' ChangeLogsGet Int64
-clgId
-  = lens _clgId (\ s a -> s{_clgId = a}) . _Coerce
-
-instance GoogleRequest ChangeLogsGet where
-        type Rs ChangeLogsGet = ChangeLog
-        type Scopes ChangeLogsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ChangeLogsGet'{..}
-          = go _clgProFileId _clgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ChangeLogsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ChangeLogs/List.hs b/gen/Network/Google/Resource/DFAReporting/ChangeLogs/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ChangeLogs/List.hs
+++ /dev/null
@@ -1,237 +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.DFAReporting.ChangeLogs.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of change logs. This method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.changeLogs.list@.
-module Network.Google.Resource.DFAReporting.ChangeLogs.List
-    (
-    -- * REST Resource
-      ChangeLogsListResource
-
-    -- * Creating a Request
-    , changeLogsList
-    , ChangeLogsList
-
-    -- * Request Lenses
-    , cllUserProFileIds
-    , cllObjectType
-    , cllSearchString
-    , cllIds
-    , cllProFileId
-    , cllAction
-    , cllMinChangeTime
-    , cllMaxChangeTime
-    , cllPageToken
-    , cllObjectIds
-    , cllMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.changeLogs.list@ method which the
--- 'ChangeLogsList' request conforms to.
-type ChangeLogsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "changeLogs" :>
-               QueryParams "userProfileIds" (Textual Int64) :>
-                 QueryParam "objectType" ChangeLogsListObjectType :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "action" ChangeLogsListAction :>
-                         QueryParam "minChangeTime" Text :>
-                           QueryParam "maxChangeTime" Text :>
-                             QueryParam "pageToken" Text :>
-                               QueryParams "objectIds" (Textual Int64) :>
-                                 QueryParam "maxResults" (Textual Int32) :>
-                                   QueryParam "alt" AltJSON :>
-                                     Get '[JSON] ChangeLogsListResponse
-
--- | Retrieves a list of change logs. This method supports paging.
---
--- /See:/ 'changeLogsList' smart constructor.
-data ChangeLogsList =
-  ChangeLogsList'
-    { _cllUserProFileIds :: !(Maybe [Textual Int64])
-    , _cllObjectType     :: !(Maybe ChangeLogsListObjectType)
-    , _cllSearchString   :: !(Maybe Text)
-    , _cllIds            :: !(Maybe [Textual Int64])
-    , _cllProFileId      :: !(Textual Int64)
-    , _cllAction         :: !(Maybe ChangeLogsListAction)
-    , _cllMinChangeTime  :: !(Maybe Text)
-    , _cllMaxChangeTime  :: !(Maybe Text)
-    , _cllPageToken      :: !(Maybe Text)
-    , _cllObjectIds      :: !(Maybe [Textual Int64])
-    , _cllMaxResults     :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ChangeLogsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cllUserProFileIds'
---
--- * 'cllObjectType'
---
--- * 'cllSearchString'
---
--- * 'cllIds'
---
--- * 'cllProFileId'
---
--- * 'cllAction'
---
--- * 'cllMinChangeTime'
---
--- * 'cllMaxChangeTime'
---
--- * 'cllPageToken'
---
--- * 'cllObjectIds'
---
--- * 'cllMaxResults'
-changeLogsList
-    :: Int64 -- ^ 'cllProFileId'
-    -> ChangeLogsList
-changeLogsList pCllProFileId_ =
-  ChangeLogsList'
-    { _cllUserProFileIds = Nothing
-    , _cllObjectType = Nothing
-    , _cllSearchString = Nothing
-    , _cllIds = Nothing
-    , _cllProFileId = _Coerce # pCllProFileId_
-    , _cllAction = Nothing
-    , _cllMinChangeTime = Nothing
-    , _cllMaxChangeTime = Nothing
-    , _cllPageToken = Nothing
-    , _cllObjectIds = Nothing
-    , _cllMaxResults = 1000
-    }
-
-
--- | Select only change logs with these user profile IDs.
-cllUserProFileIds :: Lens' ChangeLogsList [Int64]
-cllUserProFileIds
-  = lens _cllUserProFileIds
-      (\ s a -> s{_cllUserProFileIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only change logs with the specified object type.
-cllObjectType :: Lens' ChangeLogsList (Maybe ChangeLogsListObjectType)
-cllObjectType
-  = lens _cllObjectType
-      (\ s a -> s{_cllObjectType = a})
-
--- | Select only change logs whose object ID, user name, old or new values
--- match the search string.
-cllSearchString :: Lens' ChangeLogsList (Maybe Text)
-cllSearchString
-  = lens _cllSearchString
-      (\ s a -> s{_cllSearchString = a})
-
--- | Select only change logs with these IDs.
-cllIds :: Lens' ChangeLogsList [Int64]
-cllIds
-  = lens _cllIds (\ s a -> s{_cllIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-cllProFileId :: Lens' ChangeLogsList Int64
-cllProFileId
-  = lens _cllProFileId (\ s a -> s{_cllProFileId = a})
-      . _Coerce
-
--- | Select only change logs with the specified action.
-cllAction :: Lens' ChangeLogsList (Maybe ChangeLogsListAction)
-cllAction
-  = lens _cllAction (\ s a -> s{_cllAction = a})
-
--- | Select only change logs whose change time is before the specified
--- minChangeTime.The time should be formatted as an RFC3339 date\/time
--- string. For example, for 10:54 PM on July 18th, 2015, in the
--- America\/New York time zone, the format is
--- \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the
--- letter T, the hour (24-hour clock system), minute, second, and then the
--- time zone offset.
-cllMinChangeTime :: Lens' ChangeLogsList (Maybe Text)
-cllMinChangeTime
-  = lens _cllMinChangeTime
-      (\ s a -> s{_cllMinChangeTime = a})
-
--- | Select only change logs whose change time is before the specified
--- maxChangeTime.The time should be formatted as an RFC3339 date\/time
--- string. For example, for 10:54 PM on July 18th, 2015, in the
--- America\/New York time zone, the format is
--- \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the
--- letter T, the hour (24-hour clock system), minute, second, and then the
--- time zone offset.
-cllMaxChangeTime :: Lens' ChangeLogsList (Maybe Text)
-cllMaxChangeTime
-  = lens _cllMaxChangeTime
-      (\ s a -> s{_cllMaxChangeTime = a})
-
--- | Value of the nextPageToken from the previous result page.
-cllPageToken :: Lens' ChangeLogsList (Maybe Text)
-cllPageToken
-  = lens _cllPageToken (\ s a -> s{_cllPageToken = a})
-
--- | Select only change logs with these object IDs.
-cllObjectIds :: Lens' ChangeLogsList [Int64]
-cllObjectIds
-  = lens _cllObjectIds (\ s a -> s{_cllObjectIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-cllMaxResults :: Lens' ChangeLogsList Int32
-cllMaxResults
-  = lens _cllMaxResults
-      (\ s a -> s{_cllMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest ChangeLogsList where
-        type Rs ChangeLogsList = ChangeLogsListResponse
-        type Scopes ChangeLogsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ChangeLogsList'{..}
-          = go _cllProFileId (_cllUserProFileIds ^. _Default)
-              _cllObjectType
-              _cllSearchString
-              (_cllIds ^. _Default)
-              _cllAction
-              _cllMinChangeTime
-              _cllMaxChangeTime
-              _cllPageToken
-              (_cllObjectIds ^. _Default)
-              (Just _cllMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ChangeLogsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Cities/List.hs b/gen/Network/Google/Resource/DFAReporting/Cities/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Cities/List.hs
+++ /dev/null
@@ -1,149 +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.DFAReporting.Cities.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of cities, possibly filtered.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.cities.list@.
-module Network.Google.Resource.DFAReporting.Cities.List
-    (
-    -- * REST Resource
-      CitiesListResource
-
-    -- * Creating a Request
-    , citiesList
-    , CitiesList
-
-    -- * Request Lenses
-    , citRegionDartIds
-    , citProFileId
-    , citNamePrefix
-    , citCountryDartIds
-    , citDartIds
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.cities.list@ method which the
--- 'CitiesList' request conforms to.
-type CitiesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "cities" :>
-               QueryParams "regionDartIds" (Textual Int64) :>
-                 QueryParam "namePrefix" Text :>
-                   QueryParams "countryDartIds" (Textual Int64) :>
-                     QueryParams "dartIds" (Textual Int64) :>
-                       QueryParam "alt" AltJSON :>
-                         Get '[JSON] CitiesListResponse
-
--- | Retrieves a list of cities, possibly filtered.
---
--- /See:/ 'citiesList' smart constructor.
-data CitiesList =
-  CitiesList'
-    { _citRegionDartIds  :: !(Maybe [Textual Int64])
-    , _citProFileId      :: !(Textual Int64)
-    , _citNamePrefix     :: !(Maybe Text)
-    , _citCountryDartIds :: !(Maybe [Textual Int64])
-    , _citDartIds        :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CitiesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'citRegionDartIds'
---
--- * 'citProFileId'
---
--- * 'citNamePrefix'
---
--- * 'citCountryDartIds'
---
--- * 'citDartIds'
-citiesList
-    :: Int64 -- ^ 'citProFileId'
-    -> CitiesList
-citiesList pCitProFileId_ =
-  CitiesList'
-    { _citRegionDartIds = Nothing
-    , _citProFileId = _Coerce # pCitProFileId_
-    , _citNamePrefix = Nothing
-    , _citCountryDartIds = Nothing
-    , _citDartIds = Nothing
-    }
-
-
--- | Select only cities from these regions.
-citRegionDartIds :: Lens' CitiesList [Int64]
-citRegionDartIds
-  = lens _citRegionDartIds
-      (\ s a -> s{_citRegionDartIds = a})
-      . _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-citProFileId :: Lens' CitiesList Int64
-citProFileId
-  = lens _citProFileId (\ s a -> s{_citProFileId = a})
-      . _Coerce
-
--- | Select only cities with names starting with this prefix.
-citNamePrefix :: Lens' CitiesList (Maybe Text)
-citNamePrefix
-  = lens _citNamePrefix
-      (\ s a -> s{_citNamePrefix = a})
-
--- | Select only cities from these countries.
-citCountryDartIds :: Lens' CitiesList [Int64]
-citCountryDartIds
-  = lens _citCountryDartIds
-      (\ s a -> s{_citCountryDartIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only cities with these DART IDs.
-citDartIds :: Lens' CitiesList [Int64]
-citDartIds
-  = lens _citDartIds (\ s a -> s{_citDartIds = a}) .
-      _Default
-      . _Coerce
-
-instance GoogleRequest CitiesList where
-        type Rs CitiesList = CitiesListResponse
-        type Scopes CitiesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CitiesList'{..}
-          = go _citProFileId (_citRegionDartIds ^. _Default)
-              _citNamePrefix
-              (_citCountryDartIds ^. _Default)
-              (_citDartIds ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CitiesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/Get.hs b/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.ConnectionTypes.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one connection type by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.connectionTypes.get@.
-module Network.Google.Resource.DFAReporting.ConnectionTypes.Get
-    (
-    -- * REST Resource
-      ConnectionTypesGetResource
-
-    -- * Creating a Request
-    , connectionTypesGet
-    , ConnectionTypesGet
-
-    -- * Request Lenses
-    , ctgProFileId
-    , ctgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.connectionTypes.get@ method which the
--- 'ConnectionTypesGet' request conforms to.
-type ConnectionTypesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "connectionTypes" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] ConnectionType
-
--- | Gets one connection type by ID.
---
--- /See:/ 'connectionTypesGet' smart constructor.
-data ConnectionTypesGet =
-  ConnectionTypesGet'
-    { _ctgProFileId :: !(Textual Int64)
-    , _ctgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConnectionTypesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctgProFileId'
---
--- * 'ctgId'
-connectionTypesGet
-    :: Int64 -- ^ 'ctgProFileId'
-    -> Int64 -- ^ 'ctgId'
-    -> ConnectionTypesGet
-connectionTypesGet pCtgProFileId_ pCtgId_ =
-  ConnectionTypesGet'
-    {_ctgProFileId = _Coerce # pCtgProFileId_, _ctgId = _Coerce # pCtgId_}
-
-
--- | User profile ID associated with this request.
-ctgProFileId :: Lens' ConnectionTypesGet Int64
-ctgProFileId
-  = lens _ctgProFileId (\ s a -> s{_ctgProFileId = a})
-      . _Coerce
-
--- | Connection type ID.
-ctgId :: Lens' ConnectionTypesGet Int64
-ctgId
-  = lens _ctgId (\ s a -> s{_ctgId = a}) . _Coerce
-
-instance GoogleRequest ConnectionTypesGet where
-        type Rs ConnectionTypesGet = ConnectionType
-        type Scopes ConnectionTypesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ConnectionTypesGet'{..}
-          = go _ctgProFileId _ctgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ConnectionTypesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/List.hs b/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ConnectionTypes/List.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.ConnectionTypes.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of connection types.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.connectionTypes.list@.
-module Network.Google.Resource.DFAReporting.ConnectionTypes.List
-    (
-    -- * REST Resource
-      ConnectionTypesListResource
-
-    -- * Creating a Request
-    , connectionTypesList
-    , ConnectionTypesList
-
-    -- * Request Lenses
-    , ctlProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.connectionTypes.list@ method which the
--- 'ConnectionTypesList' request conforms to.
-type ConnectionTypesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "connectionTypes" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] ConnectionTypesListResponse
-
--- | Retrieves a list of connection types.
---
--- /See:/ 'connectionTypesList' smart constructor.
-newtype ConnectionTypesList =
-  ConnectionTypesList'
-    { _ctlProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConnectionTypesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ctlProFileId'
-connectionTypesList
-    :: Int64 -- ^ 'ctlProFileId'
-    -> ConnectionTypesList
-connectionTypesList pCtlProFileId_ =
-  ConnectionTypesList' {_ctlProFileId = _Coerce # pCtlProFileId_}
-
-
--- | User profile ID associated with this request.
-ctlProFileId :: Lens' ConnectionTypesList Int64
-ctlProFileId
-  = lens _ctlProFileId (\ s a -> s{_ctlProFileId = a})
-      . _Coerce
-
-instance GoogleRequest ConnectionTypesList where
-        type Rs ConnectionTypesList =
-             ConnectionTypesListResponse
-        type Scopes ConnectionTypesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ConnectionTypesList'{..}
-          = go _ctlProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ConnectionTypesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Delete.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Delete.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.ContentCategories.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing content category.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.delete@.
-module Network.Google.Resource.DFAReporting.ContentCategories.Delete
-    (
-    -- * REST Resource
-      ContentCategoriesDeleteResource
-
-    -- * Creating a Request
-    , contentCategoriesDelete
-    , ContentCategoriesDelete
-
-    -- * Request Lenses
-    , ccdProFileId
-    , ccdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.delete@ method which the
--- 'ContentCategoriesDelete' request conforms to.
-type ContentCategoriesDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing content category.
---
--- /See:/ 'contentCategoriesDelete' smart constructor.
-data ContentCategoriesDelete =
-  ContentCategoriesDelete'
-    { _ccdProFileId :: !(Textual Int64)
-    , _ccdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccdProFileId'
---
--- * 'ccdId'
-contentCategoriesDelete
-    :: Int64 -- ^ 'ccdProFileId'
-    -> Int64 -- ^ 'ccdId'
-    -> ContentCategoriesDelete
-contentCategoriesDelete pCcdProFileId_ pCcdId_ =
-  ContentCategoriesDelete'
-    {_ccdProFileId = _Coerce # pCcdProFileId_, _ccdId = _Coerce # pCcdId_}
-
-
--- | User profile ID associated with this request.
-ccdProFileId :: Lens' ContentCategoriesDelete Int64
-ccdProFileId
-  = lens _ccdProFileId (\ s a -> s{_ccdProFileId = a})
-      . _Coerce
-
--- | Content category ID.
-ccdId :: Lens' ContentCategoriesDelete Int64
-ccdId
-  = lens _ccdId (\ s a -> s{_ccdId = a}) . _Coerce
-
-instance GoogleRequest ContentCategoriesDelete where
-        type Rs ContentCategoriesDelete = ()
-        type Scopes ContentCategoriesDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesDelete'{..}
-          = go _ccdProFileId _ccdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Get.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.ContentCategories.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one content category by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.get@.
-module Network.Google.Resource.DFAReporting.ContentCategories.Get
-    (
-    -- * REST Resource
-      ContentCategoriesGetResource
-
-    -- * Creating a Request
-    , contentCategoriesGet
-    , ContentCategoriesGet
-
-    -- * Request Lenses
-    , ccgProFileId
-    , ccgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.get@ method which the
--- 'ContentCategoriesGet' request conforms to.
-type ContentCategoriesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] ContentCategory
-
--- | Gets one content category by ID.
---
--- /See:/ 'contentCategoriesGet' smart constructor.
-data ContentCategoriesGet =
-  ContentCategoriesGet'
-    { _ccgProFileId :: !(Textual Int64)
-    , _ccgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccgProFileId'
---
--- * 'ccgId'
-contentCategoriesGet
-    :: Int64 -- ^ 'ccgProFileId'
-    -> Int64 -- ^ 'ccgId'
-    -> ContentCategoriesGet
-contentCategoriesGet pCcgProFileId_ pCcgId_ =
-  ContentCategoriesGet'
-    {_ccgProFileId = _Coerce # pCcgProFileId_, _ccgId = _Coerce # pCcgId_}
-
-
--- | User profile ID associated with this request.
-ccgProFileId :: Lens' ContentCategoriesGet Int64
-ccgProFileId
-  = lens _ccgProFileId (\ s a -> s{_ccgProFileId = a})
-      . _Coerce
-
--- | Content category ID.
-ccgId :: Lens' ContentCategoriesGet Int64
-ccgId
-  = lens _ccgId (\ s a -> s{_ccgId = a}) . _Coerce
-
-instance GoogleRequest ContentCategoriesGet where
-        type Rs ContentCategoriesGet = ContentCategory
-        type Scopes ContentCategoriesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesGet'{..}
-          = go _ccgProFileId _ccgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Insert.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.ContentCategories.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new content category.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.insert@.
-module Network.Google.Resource.DFAReporting.ContentCategories.Insert
-    (
-    -- * REST Resource
-      ContentCategoriesInsertResource
-
-    -- * Creating a Request
-    , contentCategoriesInsert
-    , ContentCategoriesInsert
-
-    -- * Request Lenses
-    , cciProFileId
-    , cciPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.insert@ method which the
--- 'ContentCategoriesInsert' request conforms to.
-type ContentCategoriesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] ContentCategory :>
-                   Post '[JSON] ContentCategory
-
--- | Inserts a new content category.
---
--- /See:/ 'contentCategoriesInsert' smart constructor.
-data ContentCategoriesInsert =
-  ContentCategoriesInsert'
-    { _cciProFileId :: !(Textual Int64)
-    , _cciPayload   :: !ContentCategory
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cciProFileId'
---
--- * 'cciPayload'
-contentCategoriesInsert
-    :: Int64 -- ^ 'cciProFileId'
-    -> ContentCategory -- ^ 'cciPayload'
-    -> ContentCategoriesInsert
-contentCategoriesInsert pCciProFileId_ pCciPayload_ =
-  ContentCategoriesInsert'
-    {_cciProFileId = _Coerce # pCciProFileId_, _cciPayload = pCciPayload_}
-
-
--- | User profile ID associated with this request.
-cciProFileId :: Lens' ContentCategoriesInsert Int64
-cciProFileId
-  = lens _cciProFileId (\ s a -> s{_cciProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cciPayload :: Lens' ContentCategoriesInsert ContentCategory
-cciPayload
-  = lens _cciPayload (\ s a -> s{_cciPayload = a})
-
-instance GoogleRequest ContentCategoriesInsert where
-        type Rs ContentCategoriesInsert = ContentCategory
-        type Scopes ContentCategoriesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesInsert'{..}
-          = go _cciProFileId (Just AltJSON) _cciPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/List.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/List.hs
+++ /dev/null
@@ -1,181 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.ContentCategories.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of content categories, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.list@.
-module Network.Google.Resource.DFAReporting.ContentCategories.List
-    (
-    -- * REST Resource
-      ContentCategoriesListResource
-
-    -- * Creating a Request
-    , contentCategoriesList
-    , ContentCategoriesList
-
-    -- * Request Lenses
-    , cclSearchString
-    , cclIds
-    , cclProFileId
-    , cclSortOrder
-    , cclPageToken
-    , cclSortField
-    , cclMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.list@ method which the
--- 'ContentCategoriesList' request conforms to.
-type ContentCategoriesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" ContentCategoriesListSortOrder
-                     :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" ContentCategoriesListSortField
-                         :>
-                         QueryParam "maxResults" (Textual Int32) :>
-                           QueryParam "alt" AltJSON :>
-                             Get '[JSON] ContentCategoriesListResponse
-
--- | Retrieves a list of content categories, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'contentCategoriesList' smart constructor.
-data ContentCategoriesList =
-  ContentCategoriesList'
-    { _cclSearchString :: !(Maybe Text)
-    , _cclIds          :: !(Maybe [Textual Int64])
-    , _cclProFileId    :: !(Textual Int64)
-    , _cclSortOrder    :: !ContentCategoriesListSortOrder
-    , _cclPageToken    :: !(Maybe Text)
-    , _cclSortField    :: !ContentCategoriesListSortField
-    , _cclMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cclSearchString'
---
--- * 'cclIds'
---
--- * 'cclProFileId'
---
--- * 'cclSortOrder'
---
--- * 'cclPageToken'
---
--- * 'cclSortField'
---
--- * 'cclMaxResults'
-contentCategoriesList
-    :: Int64 -- ^ 'cclProFileId'
-    -> ContentCategoriesList
-contentCategoriesList pCclProFileId_ =
-  ContentCategoriesList'
-    { _cclSearchString = Nothing
-    , _cclIds = Nothing
-    , _cclProFileId = _Coerce # pCclProFileId_
-    , _cclSortOrder = CCLSOAscending
-    , _cclPageToken = Nothing
-    , _cclSortField = CCLSFID
-    , _cclMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"contentcategory*2015\" will return objects with names
--- like \"contentcategory June 2015\", \"contentcategory April 2015\", or
--- simply \"contentcategory 2015\". Most of the searches also add wildcards
--- implicitly at the start and the end of the search string. For example, a
--- search string of \"contentcategory\" will match objects with name \"my
--- contentcategory\", \"contentcategory 2015\", or simply
--- \"contentcategory\".
-cclSearchString :: Lens' ContentCategoriesList (Maybe Text)
-cclSearchString
-  = lens _cclSearchString
-      (\ s a -> s{_cclSearchString = a})
-
--- | Select only content categories with these IDs.
-cclIds :: Lens' ContentCategoriesList [Int64]
-cclIds
-  = lens _cclIds (\ s a -> s{_cclIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-cclProFileId :: Lens' ContentCategoriesList Int64
-cclProFileId
-  = lens _cclProFileId (\ s a -> s{_cclProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-cclSortOrder :: Lens' ContentCategoriesList ContentCategoriesListSortOrder
-cclSortOrder
-  = lens _cclSortOrder (\ s a -> s{_cclSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-cclPageToken :: Lens' ContentCategoriesList (Maybe Text)
-cclPageToken
-  = lens _cclPageToken (\ s a -> s{_cclPageToken = a})
-
--- | Field by which to sort the list.
-cclSortField :: Lens' ContentCategoriesList ContentCategoriesListSortField
-cclSortField
-  = lens _cclSortField (\ s a -> s{_cclSortField = a})
-
--- | Maximum number of results to return.
-cclMaxResults :: Lens' ContentCategoriesList Int32
-cclMaxResults
-  = lens _cclMaxResults
-      (\ s a -> s{_cclMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest ContentCategoriesList where
-        type Rs ContentCategoriesList =
-             ContentCategoriesListResponse
-        type Scopes ContentCategoriesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesList'{..}
-          = go _cclProFileId _cclSearchString
-              (_cclIds ^. _Default)
-              (Just _cclSortOrder)
-              _cclPageToken
-              (Just _cclSortField)
-              (Just _cclMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Patch.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.ContentCategories.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing content category. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.patch@.
-module Network.Google.Resource.DFAReporting.ContentCategories.Patch
-    (
-    -- * REST Resource
-      ContentCategoriesPatchResource
-
-    -- * Creating a Request
-    , contentCategoriesPatch
-    , ContentCategoriesPatch
-
-    -- * Request Lenses
-    , ccpProFileId
-    , ccpPayload
-    , ccpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.patch@ method which the
--- 'ContentCategoriesPatch' request conforms to.
-type ContentCategoriesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] ContentCategory :>
-                     Patch '[JSON] ContentCategory
-
--- | Updates an existing content category. This method supports patch
--- semantics.
---
--- /See:/ 'contentCategoriesPatch' smart constructor.
-data ContentCategoriesPatch =
-  ContentCategoriesPatch'
-    { _ccpProFileId :: !(Textual Int64)
-    , _ccpPayload   :: !ContentCategory
-    , _ccpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccpProFileId'
---
--- * 'ccpPayload'
---
--- * 'ccpId'
-contentCategoriesPatch
-    :: Int64 -- ^ 'ccpProFileId'
-    -> ContentCategory -- ^ 'ccpPayload'
-    -> Int64 -- ^ 'ccpId'
-    -> ContentCategoriesPatch
-contentCategoriesPatch pCcpProFileId_ pCcpPayload_ pCcpId_ =
-  ContentCategoriesPatch'
-    { _ccpProFileId = _Coerce # pCcpProFileId_
-    , _ccpPayload = pCcpPayload_
-    , _ccpId = _Coerce # pCcpId_
-    }
-
-
--- | User profile ID associated with this request.
-ccpProFileId :: Lens' ContentCategoriesPatch Int64
-ccpProFileId
-  = lens _ccpProFileId (\ s a -> s{_ccpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ccpPayload :: Lens' ContentCategoriesPatch ContentCategory
-ccpPayload
-  = lens _ccpPayload (\ s a -> s{_ccpPayload = a})
-
--- | Content category ID.
-ccpId :: Lens' ContentCategoriesPatch Int64
-ccpId
-  = lens _ccpId (\ s a -> s{_ccpId = a}) . _Coerce
-
-instance GoogleRequest ContentCategoriesPatch where
-        type Rs ContentCategoriesPatch = ContentCategory
-        type Scopes ContentCategoriesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesPatch'{..}
-          = go _ccpProFileId (Just _ccpId) (Just AltJSON)
-              _ccpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Update.hs b/gen/Network/Google/Resource/DFAReporting/ContentCategories/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/ContentCategories/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.ContentCategories.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing content category.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.contentCategories.update@.
-module Network.Google.Resource.DFAReporting.ContentCategories.Update
-    (
-    -- * REST Resource
-      ContentCategoriesUpdateResource
-
-    -- * Creating a Request
-    , contentCategoriesUpdate
-    , ContentCategoriesUpdate
-
-    -- * Request Lenses
-    , ccuProFileId
-    , ccuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.contentCategories.update@ method which the
--- 'ContentCategoriesUpdate' request conforms to.
-type ContentCategoriesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "contentCategories" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] ContentCategory :>
-                   Put '[JSON] ContentCategory
-
--- | Updates an existing content category.
---
--- /See:/ 'contentCategoriesUpdate' smart constructor.
-data ContentCategoriesUpdate =
-  ContentCategoriesUpdate'
-    { _ccuProFileId :: !(Textual Int64)
-    , _ccuPayload   :: !ContentCategory
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ContentCategoriesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccuProFileId'
---
--- * 'ccuPayload'
-contentCategoriesUpdate
-    :: Int64 -- ^ 'ccuProFileId'
-    -> ContentCategory -- ^ 'ccuPayload'
-    -> ContentCategoriesUpdate
-contentCategoriesUpdate pCcuProFileId_ pCcuPayload_ =
-  ContentCategoriesUpdate'
-    {_ccuProFileId = _Coerce # pCcuProFileId_, _ccuPayload = pCcuPayload_}
-
-
--- | User profile ID associated with this request.
-ccuProFileId :: Lens' ContentCategoriesUpdate Int64
-ccuProFileId
-  = lens _ccuProFileId (\ s a -> s{_ccuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ccuPayload :: Lens' ContentCategoriesUpdate ContentCategory
-ccuPayload
-  = lens _ccuPayload (\ s a -> s{_ccuPayload = a})
-
-instance GoogleRequest ContentCategoriesUpdate where
-        type Rs ContentCategoriesUpdate = ContentCategory
-        type Scopes ContentCategoriesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ContentCategoriesUpdate'{..}
-          = go _ccuProFileId (Just AltJSON) _ccuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ContentCategoriesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Conversions/Batchinsert.hs b/gen/Network/Google/Resource/DFAReporting/Conversions/Batchinsert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Conversions/Batchinsert.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.Conversions.Batchinsert
--- 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)
---
--- Inserts conversions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.conversions.batchinsert@.
-module Network.Google.Resource.DFAReporting.Conversions.Batchinsert
-    (
-    -- * REST Resource
-      ConversionsBatchinsertResource
-
-    -- * Creating a Request
-    , conversionsBatchinsert
-    , ConversionsBatchinsert
-
-    -- * Request Lenses
-    , cbProFileId
-    , cbPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.conversions.batchinsert@ method which the
--- 'ConversionsBatchinsert' request conforms to.
-type ConversionsBatchinsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "conversions" :>
-               "batchinsert" :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] ConversionsBatchInsertRequest :>
-                     Post '[JSON] ConversionsBatchInsertResponse
-
--- | Inserts conversions.
---
--- /See:/ 'conversionsBatchinsert' smart constructor.
-data ConversionsBatchinsert =
-  ConversionsBatchinsert'
-    { _cbProFileId :: !(Textual Int64)
-    , _cbPayload   :: !ConversionsBatchInsertRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchinsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cbProFileId'
---
--- * 'cbPayload'
-conversionsBatchinsert
-    :: Int64 -- ^ 'cbProFileId'
-    -> ConversionsBatchInsertRequest -- ^ 'cbPayload'
-    -> ConversionsBatchinsert
-conversionsBatchinsert pCbProFileId_ pCbPayload_ =
-  ConversionsBatchinsert'
-    {_cbProFileId = _Coerce # pCbProFileId_, _cbPayload = pCbPayload_}
-
-
--- | User profile ID associated with this request.
-cbProFileId :: Lens' ConversionsBatchinsert Int64
-cbProFileId
-  = lens _cbProFileId (\ s a -> s{_cbProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-cbPayload :: Lens' ConversionsBatchinsert ConversionsBatchInsertRequest
-cbPayload
-  = lens _cbPayload (\ s a -> s{_cbPayload = a})
-
-instance GoogleRequest ConversionsBatchinsert where
-        type Rs ConversionsBatchinsert =
-             ConversionsBatchInsertResponse
-        type Scopes ConversionsBatchinsert =
-             '["https://www.googleapis.com/auth/ddmconversions"]
-        requestClient ConversionsBatchinsert'{..}
-          = go _cbProFileId (Just AltJSON) _cbPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ConversionsBatchinsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Conversions/Batchupdate.hs b/gen/Network/Google/Resource/DFAReporting/Conversions/Batchupdate.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Conversions/Batchupdate.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.Conversions.Batchupdate
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates existing conversions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.conversions.batchupdate@.
-module Network.Google.Resource.DFAReporting.Conversions.Batchupdate
-    (
-    -- * REST Resource
-      ConversionsBatchupdateResource
-
-    -- * Creating a Request
-    , conversionsBatchupdate
-    , ConversionsBatchupdate
-
-    -- * Request Lenses
-    , conProFileId
-    , conPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.conversions.batchupdate@ method which the
--- 'ConversionsBatchupdate' request conforms to.
-type ConversionsBatchupdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "conversions" :>
-               "batchupdate" :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] ConversionsBatchUpdateRequest :>
-                     Post '[JSON] ConversionsBatchUpdateResponse
-
--- | Updates existing conversions.
---
--- /See:/ 'conversionsBatchupdate' smart constructor.
-data ConversionsBatchupdate =
-  ConversionsBatchupdate'
-    { _conProFileId :: !(Textual Int64)
-    , _conPayload   :: !ConversionsBatchUpdateRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ConversionsBatchupdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'conProFileId'
---
--- * 'conPayload'
-conversionsBatchupdate
-    :: Int64 -- ^ 'conProFileId'
-    -> ConversionsBatchUpdateRequest -- ^ 'conPayload'
-    -> ConversionsBatchupdate
-conversionsBatchupdate pConProFileId_ pConPayload_ =
-  ConversionsBatchupdate'
-    {_conProFileId = _Coerce # pConProFileId_, _conPayload = pConPayload_}
-
-
--- | User profile ID associated with this request.
-conProFileId :: Lens' ConversionsBatchupdate Int64
-conProFileId
-  = lens _conProFileId (\ s a -> s{_conProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-conPayload :: Lens' ConversionsBatchupdate ConversionsBatchUpdateRequest
-conPayload
-  = lens _conPayload (\ s a -> s{_conPayload = a})
-
-instance GoogleRequest ConversionsBatchupdate where
-        type Rs ConversionsBatchupdate =
-             ConversionsBatchUpdateResponse
-        type Scopes ConversionsBatchupdate =
-             '["https://www.googleapis.com/auth/ddmconversions"]
-        requestClient ConversionsBatchupdate'{..}
-          = go _conProFileId (Just AltJSON) _conPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ConversionsBatchupdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Countries/Get.hs b/gen/Network/Google/Resource/DFAReporting/Countries/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Countries/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Countries.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one country by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.countries.get@.
-module Network.Google.Resource.DFAReporting.Countries.Get
-    (
-    -- * REST Resource
-      CountriesGetResource
-
-    -- * Creating a Request
-    , countriesGet
-    , CountriesGet
-
-    -- * Request Lenses
-    , cgProFileId
-    , cgDartId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.countries.get@ method which the
--- 'CountriesGet' request conforms to.
-type CountriesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "countries" :>
-               Capture "dartId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Country
-
--- | Gets one country by ID.
---
--- /See:/ 'countriesGet' smart constructor.
-data CountriesGet =
-  CountriesGet'
-    { _cgProFileId :: !(Textual Int64)
-    , _cgDartId    :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CountriesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgProFileId'
---
--- * 'cgDartId'
-countriesGet
-    :: Int64 -- ^ 'cgProFileId'
-    -> Int64 -- ^ 'cgDartId'
-    -> CountriesGet
-countriesGet pCgProFileId_ pCgDartId_ =
-  CountriesGet'
-    {_cgProFileId = _Coerce # pCgProFileId_, _cgDartId = _Coerce # pCgDartId_}
-
-
--- | User profile ID associated with this request.
-cgProFileId :: Lens' CountriesGet Int64
-cgProFileId
-  = lens _cgProFileId (\ s a -> s{_cgProFileId = a}) .
-      _Coerce
-
--- | Country DART ID.
-cgDartId :: Lens' CountriesGet Int64
-cgDartId
-  = lens _cgDartId (\ s a -> s{_cgDartId = a}) .
-      _Coerce
-
-instance GoogleRequest CountriesGet where
-        type Rs CountriesGet = Country
-        type Scopes CountriesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CountriesGet'{..}
-          = go _cgProFileId _cgDartId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CountriesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Countries/List.hs b/gen/Network/Google/Resource/DFAReporting/Countries/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Countries/List.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.DFAReporting.Countries.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of countries.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.countries.list@.
-module Network.Google.Resource.DFAReporting.Countries.List
-    (
-    -- * REST Resource
-      CountriesListResource
-
-    -- * Creating a Request
-    , countriesList
-    , CountriesList
-
-    -- * Request Lenses
-    , couProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.countries.list@ method which the
--- 'CountriesList' request conforms to.
-type CountriesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "countries" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] CountriesListResponse
-
--- | Retrieves a list of countries.
---
--- /See:/ 'countriesList' smart constructor.
-newtype CountriesList =
-  CountriesList'
-    { _couProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CountriesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'couProFileId'
-countriesList
-    :: Int64 -- ^ 'couProFileId'
-    -> CountriesList
-countriesList pCouProFileId_ =
-  CountriesList' {_couProFileId = _Coerce # pCouProFileId_}
-
-
--- | User profile ID associated with this request.
-couProFileId :: Lens' CountriesList Int64
-couProFileId
-  = lens _couProFileId (\ s a -> s{_couProFileId = a})
-      . _Coerce
-
-instance GoogleRequest CountriesList where
-        type Rs CountriesList = CountriesListResponse
-        type Scopes CountriesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CountriesList'{..}
-          = go _couProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CountriesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeAssets/Insert.hs b/gen/Network/Google/Resource/DFAReporting/CreativeAssets/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeAssets/Insert.hs
+++ /dev/null
@@ -1,153 +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.DFAReporting.CreativeAssets.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new creative asset.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeAssets.insert@.
-module Network.Google.Resource.DFAReporting.CreativeAssets.Insert
-    (
-    -- * REST Resource
-      CreativeAssetsInsertResource
-
-    -- * Creating a Request
-    , creativeAssetsInsert
-    , CreativeAssetsInsert
-
-    -- * Request Lenses
-    , caiAdvertiserId
-    , caiProFileId
-    , caiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeAssets.insert@ method which the
--- 'CreativeAssetsInsert' request conforms to.
-type CreativeAssetsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeAssets" :>
-               Capture "advertiserId" (Textual Int64) :>
-                 "creativeAssets" :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] CreativeAssetMetadata :>
-                       Post '[JSON] CreativeAssetMetadata
-       :<|>
-       "upload" :>
-         "dfareporting" :>
-           "v3.3" :>
-             "userprofiles" :>
-               Capture "profileId" (Textual Int64) :>
-                 "creativeAssets" :>
-                   Capture "advertiserId" (Textual Int64) :>
-                     "creativeAssets" :>
-                       QueryParam "alt" AltJSON :>
-                         QueryParam "uploadType" Multipart :>
-                           MultipartRelated '[JSON] CreativeAssetMetadata :>
-                             Post '[JSON] CreativeAssetMetadata
-
--- | Inserts a new creative asset.
---
--- /See:/ 'creativeAssetsInsert' smart constructor.
-data CreativeAssetsInsert =
-  CreativeAssetsInsert'
-    { _caiAdvertiserId :: !(Textual Int64)
-    , _caiProFileId    :: !(Textual Int64)
-    , _caiPayload      :: !CreativeAssetMetadata
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeAssetsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'caiAdvertiserId'
---
--- * 'caiProFileId'
---
--- * 'caiPayload'
-creativeAssetsInsert
-    :: Int64 -- ^ 'caiAdvertiserId'
-    -> Int64 -- ^ 'caiProFileId'
-    -> CreativeAssetMetadata -- ^ 'caiPayload'
-    -> CreativeAssetsInsert
-creativeAssetsInsert pCaiAdvertiserId_ pCaiProFileId_ pCaiPayload_ =
-  CreativeAssetsInsert'
-    { _caiAdvertiserId = _Coerce # pCaiAdvertiserId_
-    , _caiProFileId = _Coerce # pCaiProFileId_
-    , _caiPayload = pCaiPayload_
-    }
-
-
--- | Advertiser ID of this creative. This is a required field.
-caiAdvertiserId :: Lens' CreativeAssetsInsert Int64
-caiAdvertiserId
-  = lens _caiAdvertiserId
-      (\ s a -> s{_caiAdvertiserId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-caiProFileId :: Lens' CreativeAssetsInsert Int64
-caiProFileId
-  = lens _caiProFileId (\ s a -> s{_caiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-caiPayload :: Lens' CreativeAssetsInsert CreativeAssetMetadata
-caiPayload
-  = lens _caiPayload (\ s a -> s{_caiPayload = a})
-
-instance GoogleRequest CreativeAssetsInsert where
-        type Rs CreativeAssetsInsert = CreativeAssetMetadata
-        type Scopes CreativeAssetsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeAssetsInsert'{..}
-          = go _caiProFileId _caiAdvertiserId (Just AltJSON)
-              _caiPayload
-              dFAReportingService
-          where go :<|> _
-                  = buildClient
-                      (Proxy :: Proxy CreativeAssetsInsertResource)
-                      mempty
-
-instance GoogleRequest
-           (MediaUpload CreativeAssetsInsert)
-         where
-        type Rs (MediaUpload CreativeAssetsInsert) =
-             CreativeAssetMetadata
-        type Scopes (MediaUpload CreativeAssetsInsert) =
-             Scopes CreativeAssetsInsert
-        requestClient
-          (MediaUpload CreativeAssetsInsert'{..} body)
-          = go _caiProFileId _caiAdvertiserId (Just AltJSON)
-              (Just Multipart)
-              _caiPayload
-              body
-              dFAReportingService
-          where _ :<|> go
-                  = buildClient
-                      (Proxy :: Proxy CreativeAssetsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Delete.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Delete.hs
+++ /dev/null
@@ -1,122 +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.DFAReporting.CreativeFieldValues.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing creative field value.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.delete@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.Delete
-    (
-    -- * REST Resource
-      CreativeFieldValuesDeleteResource
-
-    -- * Creating a Request
-    , creativeFieldValuesDelete
-    , CreativeFieldValuesDelete
-
-    -- * Request Lenses
-    , cfvdCreativeFieldId
-    , cfvdProFileId
-    , cfvdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.delete@ method which the
--- 'CreativeFieldValuesDelete' request conforms to.
-type CreativeFieldValuesDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   Capture "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing creative field value.
---
--- /See:/ 'creativeFieldValuesDelete' smart constructor.
-data CreativeFieldValuesDelete =
-  CreativeFieldValuesDelete'
-    { _cfvdCreativeFieldId :: !(Textual Int64)
-    , _cfvdProFileId       :: !(Textual Int64)
-    , _cfvdId              :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvdCreativeFieldId'
---
--- * 'cfvdProFileId'
---
--- * 'cfvdId'
-creativeFieldValuesDelete
-    :: Int64 -- ^ 'cfvdCreativeFieldId'
-    -> Int64 -- ^ 'cfvdProFileId'
-    -> Int64 -- ^ 'cfvdId'
-    -> CreativeFieldValuesDelete
-creativeFieldValuesDelete pCfvdCreativeFieldId_ pCfvdProFileId_ pCfvdId_ =
-  CreativeFieldValuesDelete'
-    { _cfvdCreativeFieldId = _Coerce # pCfvdCreativeFieldId_
-    , _cfvdProFileId = _Coerce # pCfvdProFileId_
-    , _cfvdId = _Coerce # pCfvdId_
-    }
-
-
--- | Creative field ID for this creative field value.
-cfvdCreativeFieldId :: Lens' CreativeFieldValuesDelete Int64
-cfvdCreativeFieldId
-  = lens _cfvdCreativeFieldId
-      (\ s a -> s{_cfvdCreativeFieldId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfvdProFileId :: Lens' CreativeFieldValuesDelete Int64
-cfvdProFileId
-  = lens _cfvdProFileId
-      (\ s a -> s{_cfvdProFileId = a})
-      . _Coerce
-
--- | Creative Field Value ID
-cfvdId :: Lens' CreativeFieldValuesDelete Int64
-cfvdId
-  = lens _cfvdId (\ s a -> s{_cfvdId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldValuesDelete
-         where
-        type Rs CreativeFieldValuesDelete = ()
-        type Scopes CreativeFieldValuesDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesDelete'{..}
-          = go _cfvdProFileId _cfvdCreativeFieldId _cfvdId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Get.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Get.hs
+++ /dev/null
@@ -1,122 +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.DFAReporting.CreativeFieldValues.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one creative field value by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.get@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.Get
-    (
-    -- * REST Resource
-      CreativeFieldValuesGetResource
-
-    -- * Creating a Request
-    , creativeFieldValuesGet
-    , CreativeFieldValuesGet
-
-    -- * Request Lenses
-    , cfvgCreativeFieldId
-    , cfvgProFileId
-    , cfvgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.get@ method which the
--- 'CreativeFieldValuesGet' request conforms to.
-type CreativeFieldValuesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   Capture "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :>
-                       Get '[JSON] CreativeFieldValue
-
--- | Gets one creative field value by ID.
---
--- /See:/ 'creativeFieldValuesGet' smart constructor.
-data CreativeFieldValuesGet =
-  CreativeFieldValuesGet'
-    { _cfvgCreativeFieldId :: !(Textual Int64)
-    , _cfvgProFileId       :: !(Textual Int64)
-    , _cfvgId              :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvgCreativeFieldId'
---
--- * 'cfvgProFileId'
---
--- * 'cfvgId'
-creativeFieldValuesGet
-    :: Int64 -- ^ 'cfvgCreativeFieldId'
-    -> Int64 -- ^ 'cfvgProFileId'
-    -> Int64 -- ^ 'cfvgId'
-    -> CreativeFieldValuesGet
-creativeFieldValuesGet pCfvgCreativeFieldId_ pCfvgProFileId_ pCfvgId_ =
-  CreativeFieldValuesGet'
-    { _cfvgCreativeFieldId = _Coerce # pCfvgCreativeFieldId_
-    , _cfvgProFileId = _Coerce # pCfvgProFileId_
-    , _cfvgId = _Coerce # pCfvgId_
-    }
-
-
--- | Creative field ID for this creative field value.
-cfvgCreativeFieldId :: Lens' CreativeFieldValuesGet Int64
-cfvgCreativeFieldId
-  = lens _cfvgCreativeFieldId
-      (\ s a -> s{_cfvgCreativeFieldId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfvgProFileId :: Lens' CreativeFieldValuesGet Int64
-cfvgProFileId
-  = lens _cfvgProFileId
-      (\ s a -> s{_cfvgProFileId = a})
-      . _Coerce
-
--- | Creative Field Value ID
-cfvgId :: Lens' CreativeFieldValuesGet Int64
-cfvgId
-  = lens _cfvgId (\ s a -> s{_cfvgId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldValuesGet where
-        type Rs CreativeFieldValuesGet = CreativeFieldValue
-        type Scopes CreativeFieldValuesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesGet'{..}
-          = go _cfvgProFileId _cfvgCreativeFieldId _cfvgId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Insert.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Insert.hs
+++ /dev/null
@@ -1,125 +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.DFAReporting.CreativeFieldValues.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new creative field value.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.insert@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.Insert
-    (
-    -- * REST Resource
-      CreativeFieldValuesInsertResource
-
-    -- * Creating a Request
-    , creativeFieldValuesInsert
-    , CreativeFieldValuesInsert
-
-    -- * Request Lenses
-    , cfviCreativeFieldId
-    , cfviProFileId
-    , cfviPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.insert@ method which the
--- 'CreativeFieldValuesInsert' request conforms to.
-type CreativeFieldValuesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] CreativeFieldValue :>
-                       Post '[JSON] CreativeFieldValue
-
--- | Inserts a new creative field value.
---
--- /See:/ 'creativeFieldValuesInsert' smart constructor.
-data CreativeFieldValuesInsert =
-  CreativeFieldValuesInsert'
-    { _cfviCreativeFieldId :: !(Textual Int64)
-    , _cfviProFileId       :: !(Textual Int64)
-    , _cfviPayload         :: !CreativeFieldValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfviCreativeFieldId'
---
--- * 'cfviProFileId'
---
--- * 'cfviPayload'
-creativeFieldValuesInsert
-    :: Int64 -- ^ 'cfviCreativeFieldId'
-    -> Int64 -- ^ 'cfviProFileId'
-    -> CreativeFieldValue -- ^ 'cfviPayload'
-    -> CreativeFieldValuesInsert
-creativeFieldValuesInsert pCfviCreativeFieldId_ pCfviProFileId_ pCfviPayload_ =
-  CreativeFieldValuesInsert'
-    { _cfviCreativeFieldId = _Coerce # pCfviCreativeFieldId_
-    , _cfviProFileId = _Coerce # pCfviProFileId_
-    , _cfviPayload = pCfviPayload_
-    }
-
-
--- | Creative field ID for this creative field value.
-cfviCreativeFieldId :: Lens' CreativeFieldValuesInsert Int64
-cfviCreativeFieldId
-  = lens _cfviCreativeFieldId
-      (\ s a -> s{_cfviCreativeFieldId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfviProFileId :: Lens' CreativeFieldValuesInsert Int64
-cfviProFileId
-  = lens _cfviProFileId
-      (\ s a -> s{_cfviProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfviPayload :: Lens' CreativeFieldValuesInsert CreativeFieldValue
-cfviPayload
-  = lens _cfviPayload (\ s a -> s{_cfviPayload = a})
-
-instance GoogleRequest CreativeFieldValuesInsert
-         where
-        type Rs CreativeFieldValuesInsert =
-             CreativeFieldValue
-        type Scopes CreativeFieldValuesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesInsert'{..}
-          = go _cfviProFileId _cfviCreativeFieldId
-              (Just AltJSON)
-              _cfviPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/List.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/List.hs
+++ /dev/null
@@ -1,197 +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.DFAReporting.CreativeFieldValues.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of creative field values, possibly filtered. This
--- method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.list@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.List
-    (
-    -- * REST Resource
-      CreativeFieldValuesListResource
-
-    -- * Creating a Request
-    , creativeFieldValuesList
-    , CreativeFieldValuesList
-
-    -- * Request Lenses
-    , cfvlCreativeFieldId
-    , cfvlSearchString
-    , cfvlIds
-    , cfvlProFileId
-    , cfvlSortOrder
-    , cfvlPageToken
-    , cfvlSortField
-    , cfvlMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.list@ method which the
--- 'CreativeFieldValuesList' request conforms to.
-type CreativeFieldValuesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "sortOrder"
-                         CreativeFieldValuesListSortOrder
-                         :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField"
-                             CreativeFieldValuesListSortField
-                             :>
-                             QueryParam "maxResults" (Textual Int32) :>
-                               QueryParam "alt" AltJSON :>
-                                 Get '[JSON] CreativeFieldValuesListResponse
-
--- | Retrieves a list of creative field values, possibly filtered. This
--- method supports paging.
---
--- /See:/ 'creativeFieldValuesList' smart constructor.
-data CreativeFieldValuesList =
-  CreativeFieldValuesList'
-    { _cfvlCreativeFieldId :: !(Textual Int64)
-    , _cfvlSearchString    :: !(Maybe Text)
-    , _cfvlIds             :: !(Maybe [Textual Int64])
-    , _cfvlProFileId       :: !(Textual Int64)
-    , _cfvlSortOrder       :: !CreativeFieldValuesListSortOrder
-    , _cfvlPageToken       :: !(Maybe Text)
-    , _cfvlSortField       :: !CreativeFieldValuesListSortField
-    , _cfvlMaxResults      :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvlCreativeFieldId'
---
--- * 'cfvlSearchString'
---
--- * 'cfvlIds'
---
--- * 'cfvlProFileId'
---
--- * 'cfvlSortOrder'
---
--- * 'cfvlPageToken'
---
--- * 'cfvlSortField'
---
--- * 'cfvlMaxResults'
-creativeFieldValuesList
-    :: Int64 -- ^ 'cfvlCreativeFieldId'
-    -> Int64 -- ^ 'cfvlProFileId'
-    -> CreativeFieldValuesList
-creativeFieldValuesList pCfvlCreativeFieldId_ pCfvlProFileId_ =
-  CreativeFieldValuesList'
-    { _cfvlCreativeFieldId = _Coerce # pCfvlCreativeFieldId_
-    , _cfvlSearchString = Nothing
-    , _cfvlIds = Nothing
-    , _cfvlProFileId = _Coerce # pCfvlProFileId_
-    , _cfvlSortOrder = CFVLSOAscending
-    , _cfvlPageToken = Nothing
-    , _cfvlSortField = CFVLSFID
-    , _cfvlMaxResults = 1000
-    }
-
-
--- | Creative field ID for this creative field value.
-cfvlCreativeFieldId :: Lens' CreativeFieldValuesList Int64
-cfvlCreativeFieldId
-  = lens _cfvlCreativeFieldId
-      (\ s a -> s{_cfvlCreativeFieldId = a})
-      . _Coerce
-
--- | Allows searching for creative field values by their values. Wildcards
--- (e.g. *) are not allowed.
-cfvlSearchString :: Lens' CreativeFieldValuesList (Maybe Text)
-cfvlSearchString
-  = lens _cfvlSearchString
-      (\ s a -> s{_cfvlSearchString = a})
-
--- | Select only creative field values with these IDs.
-cfvlIds :: Lens' CreativeFieldValuesList [Int64]
-cfvlIds
-  = lens _cfvlIds (\ s a -> s{_cfvlIds = a}) . _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfvlProFileId :: Lens' CreativeFieldValuesList Int64
-cfvlProFileId
-  = lens _cfvlProFileId
-      (\ s a -> s{_cfvlProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-cfvlSortOrder :: Lens' CreativeFieldValuesList CreativeFieldValuesListSortOrder
-cfvlSortOrder
-  = lens _cfvlSortOrder
-      (\ s a -> s{_cfvlSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-cfvlPageToken :: Lens' CreativeFieldValuesList (Maybe Text)
-cfvlPageToken
-  = lens _cfvlPageToken
-      (\ s a -> s{_cfvlPageToken = a})
-
--- | Field by which to sort the list.
-cfvlSortField :: Lens' CreativeFieldValuesList CreativeFieldValuesListSortField
-cfvlSortField
-  = lens _cfvlSortField
-      (\ s a -> s{_cfvlSortField = a})
-
--- | Maximum number of results to return.
-cfvlMaxResults :: Lens' CreativeFieldValuesList Int32
-cfvlMaxResults
-  = lens _cfvlMaxResults
-      (\ s a -> s{_cfvlMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest CreativeFieldValuesList where
-        type Rs CreativeFieldValuesList =
-             CreativeFieldValuesListResponse
-        type Scopes CreativeFieldValuesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesList'{..}
-          = go _cfvlProFileId _cfvlCreativeFieldId
-              _cfvlSearchString
-              (_cfvlIds ^. _Default)
-              (Just _cfvlSortOrder)
-              _cfvlPageToken
-              (Just _cfvlSortField)
-              (Just _cfvlMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Patch.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Patch.hs
+++ /dev/null
@@ -1,138 +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.DFAReporting.CreativeFieldValues.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative field value. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.patch@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.Patch
-    (
-    -- * REST Resource
-      CreativeFieldValuesPatchResource
-
-    -- * Creating a Request
-    , creativeFieldValuesPatch
-    , CreativeFieldValuesPatch
-
-    -- * Request Lenses
-    , cfvpCreativeFieldId
-    , cfvpProFileId
-    , cfvpPayload
-    , cfvpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.patch@ method which the
--- 'CreativeFieldValuesPatch' request conforms to.
-type CreativeFieldValuesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   QueryParam "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON] CreativeFieldValue :>
-                         Patch '[JSON] CreativeFieldValue
-
--- | Updates an existing creative field value. This method supports patch
--- semantics.
---
--- /See:/ 'creativeFieldValuesPatch' smart constructor.
-data CreativeFieldValuesPatch =
-  CreativeFieldValuesPatch'
-    { _cfvpCreativeFieldId :: !(Textual Int64)
-    , _cfvpProFileId       :: !(Textual Int64)
-    , _cfvpPayload         :: !CreativeFieldValue
-    , _cfvpId              :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvpCreativeFieldId'
---
--- * 'cfvpProFileId'
---
--- * 'cfvpPayload'
---
--- * 'cfvpId'
-creativeFieldValuesPatch
-    :: Int64 -- ^ 'cfvpCreativeFieldId'
-    -> Int64 -- ^ 'cfvpProFileId'
-    -> CreativeFieldValue -- ^ 'cfvpPayload'
-    -> Int64 -- ^ 'cfvpId'
-    -> CreativeFieldValuesPatch
-creativeFieldValuesPatch pCfvpCreativeFieldId_ pCfvpProFileId_ pCfvpPayload_ pCfvpId_ =
-  CreativeFieldValuesPatch'
-    { _cfvpCreativeFieldId = _Coerce # pCfvpCreativeFieldId_
-    , _cfvpProFileId = _Coerce # pCfvpProFileId_
-    , _cfvpPayload = pCfvpPayload_
-    , _cfvpId = _Coerce # pCfvpId_
-    }
-
-
--- | Creative field ID for this creative field value.
-cfvpCreativeFieldId :: Lens' CreativeFieldValuesPatch Int64
-cfvpCreativeFieldId
-  = lens _cfvpCreativeFieldId
-      (\ s a -> s{_cfvpCreativeFieldId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfvpProFileId :: Lens' CreativeFieldValuesPatch Int64
-cfvpProFileId
-  = lens _cfvpProFileId
-      (\ s a -> s{_cfvpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfvpPayload :: Lens' CreativeFieldValuesPatch CreativeFieldValue
-cfvpPayload
-  = lens _cfvpPayload (\ s a -> s{_cfvpPayload = a})
-
--- | Creative Field Value ID
-cfvpId :: Lens' CreativeFieldValuesPatch Int64
-cfvpId
-  = lens _cfvpId (\ s a -> s{_cfvpId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldValuesPatch where
-        type Rs CreativeFieldValuesPatch = CreativeFieldValue
-        type Scopes CreativeFieldValuesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesPatch'{..}
-          = go _cfvpProFileId _cfvpCreativeFieldId
-              (Just _cfvpId)
-              (Just AltJSON)
-              _cfvpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Update.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFieldValues/Update.hs
+++ /dev/null
@@ -1,125 +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.DFAReporting.CreativeFieldValues.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative field value.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFieldValues.update@.
-module Network.Google.Resource.DFAReporting.CreativeFieldValues.Update
-    (
-    -- * REST Resource
-      CreativeFieldValuesUpdateResource
-
-    -- * Creating a Request
-    , creativeFieldValuesUpdate
-    , CreativeFieldValuesUpdate
-
-    -- * Request Lenses
-    , cfvuCreativeFieldId
-    , cfvuProFileId
-    , cfvuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFieldValues.update@ method which the
--- 'CreativeFieldValuesUpdate' request conforms to.
-type CreativeFieldValuesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "creativeFieldId" (Textual Int64) :>
-                 "creativeFieldValues" :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] CreativeFieldValue :>
-                       Put '[JSON] CreativeFieldValue
-
--- | Updates an existing creative field value.
---
--- /See:/ 'creativeFieldValuesUpdate' smart constructor.
-data CreativeFieldValuesUpdate =
-  CreativeFieldValuesUpdate'
-    { _cfvuCreativeFieldId :: !(Textual Int64)
-    , _cfvuProFileId       :: !(Textual Int64)
-    , _cfvuPayload         :: !CreativeFieldValue
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldValuesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfvuCreativeFieldId'
---
--- * 'cfvuProFileId'
---
--- * 'cfvuPayload'
-creativeFieldValuesUpdate
-    :: Int64 -- ^ 'cfvuCreativeFieldId'
-    -> Int64 -- ^ 'cfvuProFileId'
-    -> CreativeFieldValue -- ^ 'cfvuPayload'
-    -> CreativeFieldValuesUpdate
-creativeFieldValuesUpdate pCfvuCreativeFieldId_ pCfvuProFileId_ pCfvuPayload_ =
-  CreativeFieldValuesUpdate'
-    { _cfvuCreativeFieldId = _Coerce # pCfvuCreativeFieldId_
-    , _cfvuProFileId = _Coerce # pCfvuProFileId_
-    , _cfvuPayload = pCfvuPayload_
-    }
-
-
--- | Creative field ID for this creative field value.
-cfvuCreativeFieldId :: Lens' CreativeFieldValuesUpdate Int64
-cfvuCreativeFieldId
-  = lens _cfvuCreativeFieldId
-      (\ s a -> s{_cfvuCreativeFieldId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-cfvuProFileId :: Lens' CreativeFieldValuesUpdate Int64
-cfvuProFileId
-  = lens _cfvuProFileId
-      (\ s a -> s{_cfvuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfvuPayload :: Lens' CreativeFieldValuesUpdate CreativeFieldValue
-cfvuPayload
-  = lens _cfvuPayload (\ s a -> s{_cfvuPayload = a})
-
-instance GoogleRequest CreativeFieldValuesUpdate
-         where
-        type Rs CreativeFieldValuesUpdate =
-             CreativeFieldValue
-        type Scopes CreativeFieldValuesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldValuesUpdate'{..}
-          = go _cfvuProFileId _cfvuCreativeFieldId
-              (Just AltJSON)
-              _cfvuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldValuesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Delete.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Delete.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.CreativeFields.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing creative field.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.delete@.
-module Network.Google.Resource.DFAReporting.CreativeFields.Delete
-    (
-    -- * REST Resource
-      CreativeFieldsDeleteResource
-
-    -- * Creating a Request
-    , creativeFieldsDelete
-    , CreativeFieldsDelete
-
-    -- * Request Lenses
-    , cfdProFileId
-    , cfdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.delete@ method which the
--- 'CreativeFieldsDelete' request conforms to.
-type CreativeFieldsDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing creative field.
---
--- /See:/ 'creativeFieldsDelete' smart constructor.
-data CreativeFieldsDelete =
-  CreativeFieldsDelete'
-    { _cfdProFileId :: !(Textual Int64)
-    , _cfdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfdProFileId'
---
--- * 'cfdId'
-creativeFieldsDelete
-    :: Int64 -- ^ 'cfdProFileId'
-    -> Int64 -- ^ 'cfdId'
-    -> CreativeFieldsDelete
-creativeFieldsDelete pCfdProFileId_ pCfdId_ =
-  CreativeFieldsDelete'
-    {_cfdProFileId = _Coerce # pCfdProFileId_, _cfdId = _Coerce # pCfdId_}
-
-
--- | User profile ID associated with this request.
-cfdProFileId :: Lens' CreativeFieldsDelete Int64
-cfdProFileId
-  = lens _cfdProFileId (\ s a -> s{_cfdProFileId = a})
-      . _Coerce
-
--- | Creative Field ID
-cfdId :: Lens' CreativeFieldsDelete Int64
-cfdId
-  = lens _cfdId (\ s a -> s{_cfdId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldsDelete where
-        type Rs CreativeFieldsDelete = ()
-        type Scopes CreativeFieldsDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsDelete'{..}
-          = go _cfdProFileId _cfdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Get.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.CreativeFields.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one creative field by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.get@.
-module Network.Google.Resource.DFAReporting.CreativeFields.Get
-    (
-    -- * REST Resource
-      CreativeFieldsGetResource
-
-    -- * Creating a Request
-    , creativeFieldsGet
-    , CreativeFieldsGet
-
-    -- * Request Lenses
-    , cfgProFileId
-    , cfgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.get@ method which the
--- 'CreativeFieldsGet' request conforms to.
-type CreativeFieldsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] CreativeField
-
--- | Gets one creative field by ID.
---
--- /See:/ 'creativeFieldsGet' smart constructor.
-data CreativeFieldsGet =
-  CreativeFieldsGet'
-    { _cfgProFileId :: !(Textual Int64)
-    , _cfgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfgProFileId'
---
--- * 'cfgId'
-creativeFieldsGet
-    :: Int64 -- ^ 'cfgProFileId'
-    -> Int64 -- ^ 'cfgId'
-    -> CreativeFieldsGet
-creativeFieldsGet pCfgProFileId_ pCfgId_ =
-  CreativeFieldsGet'
-    {_cfgProFileId = _Coerce # pCfgProFileId_, _cfgId = _Coerce # pCfgId_}
-
-
--- | User profile ID associated with this request.
-cfgProFileId :: Lens' CreativeFieldsGet Int64
-cfgProFileId
-  = lens _cfgProFileId (\ s a -> s{_cfgProFileId = a})
-      . _Coerce
-
--- | Creative Field ID
-cfgId :: Lens' CreativeFieldsGet Int64
-cfgId
-  = lens _cfgId (\ s a -> s{_cfgId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldsGet where
-        type Rs CreativeFieldsGet = CreativeField
-        type Scopes CreativeFieldsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsGet'{..}
-          = go _cfgProFileId _cfgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Insert.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.CreativeFields.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new creative field.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.insert@.
-module Network.Google.Resource.DFAReporting.CreativeFields.Insert
-    (
-    -- * REST Resource
-      CreativeFieldsInsertResource
-
-    -- * Creating a Request
-    , creativeFieldsInsert
-    , CreativeFieldsInsert
-
-    -- * Request Lenses
-    , cfiProFileId
-    , cfiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.insert@ method which the
--- 'CreativeFieldsInsert' request conforms to.
-type CreativeFieldsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] CreativeField :>
-                   Post '[JSON] CreativeField
-
--- | Inserts a new creative field.
---
--- /See:/ 'creativeFieldsInsert' smart constructor.
-data CreativeFieldsInsert =
-  CreativeFieldsInsert'
-    { _cfiProFileId :: !(Textual Int64)
-    , _cfiPayload   :: !CreativeField
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfiProFileId'
---
--- * 'cfiPayload'
-creativeFieldsInsert
-    :: Int64 -- ^ 'cfiProFileId'
-    -> CreativeField -- ^ 'cfiPayload'
-    -> CreativeFieldsInsert
-creativeFieldsInsert pCfiProFileId_ pCfiPayload_ =
-  CreativeFieldsInsert'
-    {_cfiProFileId = _Coerce # pCfiProFileId_, _cfiPayload = pCfiPayload_}
-
-
--- | User profile ID associated with this request.
-cfiProFileId :: Lens' CreativeFieldsInsert Int64
-cfiProFileId
-  = lens _cfiProFileId (\ s a -> s{_cfiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfiPayload :: Lens' CreativeFieldsInsert CreativeField
-cfiPayload
-  = lens _cfiPayload (\ s a -> s{_cfiPayload = a})
-
-instance GoogleRequest CreativeFieldsInsert where
-        type Rs CreativeFieldsInsert = CreativeField
-        type Scopes CreativeFieldsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsInsert'{..}
-          = go _cfiProFileId (Just AltJSON) _cfiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/List.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/List.hs
+++ /dev/null
@@ -1,194 +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.DFAReporting.CreativeFields.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of creative fields, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.list@.
-module Network.Google.Resource.DFAReporting.CreativeFields.List
-    (
-    -- * REST Resource
-      CreativeFieldsListResource
-
-    -- * Creating a Request
-    , creativeFieldsList
-    , CreativeFieldsList
-
-    -- * Request Lenses
-    , cflSearchString
-    , cflIds
-    , cflProFileId
-    , cflSortOrder
-    , cflPageToken
-    , cflSortField
-    , cflAdvertiserIds
-    , cflMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.list@ method which the
--- 'CreativeFieldsList' request conforms to.
-type CreativeFieldsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" CreativeFieldsListSortOrder :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" CreativeFieldsListSortField :>
-                         QueryParams "advertiserIds" (Textual Int64) :>
-                           QueryParam "maxResults" (Textual Int32) :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON] CreativeFieldsListResponse
-
--- | Retrieves a list of creative fields, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'creativeFieldsList' smart constructor.
-data CreativeFieldsList =
-  CreativeFieldsList'
-    { _cflSearchString  :: !(Maybe Text)
-    , _cflIds           :: !(Maybe [Textual Int64])
-    , _cflProFileId     :: !(Textual Int64)
-    , _cflSortOrder     :: !CreativeFieldsListSortOrder
-    , _cflPageToken     :: !(Maybe Text)
-    , _cflSortField     :: !CreativeFieldsListSortField
-    , _cflAdvertiserIds :: !(Maybe [Textual Int64])
-    , _cflMaxResults    :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cflSearchString'
---
--- * 'cflIds'
---
--- * 'cflProFileId'
---
--- * 'cflSortOrder'
---
--- * 'cflPageToken'
---
--- * 'cflSortField'
---
--- * 'cflAdvertiserIds'
---
--- * 'cflMaxResults'
-creativeFieldsList
-    :: Int64 -- ^ 'cflProFileId'
-    -> CreativeFieldsList
-creativeFieldsList pCflProFileId_ =
-  CreativeFieldsList'
-    { _cflSearchString = Nothing
-    , _cflIds = Nothing
-    , _cflProFileId = _Coerce # pCflProFileId_
-    , _cflSortOrder = CFLSOAscending
-    , _cflPageToken = Nothing
-    , _cflSortField = CFLSFID
-    , _cflAdvertiserIds = Nothing
-    , _cflMaxResults = 1000
-    }
-
-
--- | Allows searching for creative fields by name or ID. Wildcards (*) are
--- allowed. For example, \"creativefield*2015\" will return creative fields
--- with names like \"creativefield June 2015\", \"creativefield April
--- 2015\", or simply \"creativefield 2015\". Most of the searches also add
--- wild-cards implicitly at the start and the end of the search string. For
--- example, a search string of \"creativefield\" will match creative fields
--- with the name \"my creativefield\", \"creativefield 2015\", or simply
--- \"creativefield\".
-cflSearchString :: Lens' CreativeFieldsList (Maybe Text)
-cflSearchString
-  = lens _cflSearchString
-      (\ s a -> s{_cflSearchString = a})
-
--- | Select only creative fields with these IDs.
-cflIds :: Lens' CreativeFieldsList [Int64]
-cflIds
-  = lens _cflIds (\ s a -> s{_cflIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-cflProFileId :: Lens' CreativeFieldsList Int64
-cflProFileId
-  = lens _cflProFileId (\ s a -> s{_cflProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-cflSortOrder :: Lens' CreativeFieldsList CreativeFieldsListSortOrder
-cflSortOrder
-  = lens _cflSortOrder (\ s a -> s{_cflSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-cflPageToken :: Lens' CreativeFieldsList (Maybe Text)
-cflPageToken
-  = lens _cflPageToken (\ s a -> s{_cflPageToken = a})
-
--- | Field by which to sort the list.
-cflSortField :: Lens' CreativeFieldsList CreativeFieldsListSortField
-cflSortField
-  = lens _cflSortField (\ s a -> s{_cflSortField = a})
-
--- | Select only creative fields that belong to these advertisers.
-cflAdvertiserIds :: Lens' CreativeFieldsList [Int64]
-cflAdvertiserIds
-  = lens _cflAdvertiserIds
-      (\ s a -> s{_cflAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-cflMaxResults :: Lens' CreativeFieldsList Int32
-cflMaxResults
-  = lens _cflMaxResults
-      (\ s a -> s{_cflMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest CreativeFieldsList where
-        type Rs CreativeFieldsList =
-             CreativeFieldsListResponse
-        type Scopes CreativeFieldsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsList'{..}
-          = go _cflProFileId _cflSearchString
-              (_cflIds ^. _Default)
-              (Just _cflSortOrder)
-              _cflPageToken
-              (Just _cflSortField)
-              (_cflAdvertiserIds ^. _Default)
-              (Just _cflMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Patch.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.CreativeFields.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative field. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.patch@.
-module Network.Google.Resource.DFAReporting.CreativeFields.Patch
-    (
-    -- * REST Resource
-      CreativeFieldsPatchResource
-
-    -- * Creating a Request
-    , creativeFieldsPatch
-    , CreativeFieldsPatch
-
-    -- * Request Lenses
-    , cfpProFileId
-    , cfpPayload
-    , cfpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.patch@ method which the
--- 'CreativeFieldsPatch' request conforms to.
-type CreativeFieldsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] CreativeField :>
-                     Patch '[JSON] CreativeField
-
--- | Updates an existing creative field. This method supports patch
--- semantics.
---
--- /See:/ 'creativeFieldsPatch' smart constructor.
-data CreativeFieldsPatch =
-  CreativeFieldsPatch'
-    { _cfpProFileId :: !(Textual Int64)
-    , _cfpPayload   :: !CreativeField
-    , _cfpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfpProFileId'
---
--- * 'cfpPayload'
---
--- * 'cfpId'
-creativeFieldsPatch
-    :: Int64 -- ^ 'cfpProFileId'
-    -> CreativeField -- ^ 'cfpPayload'
-    -> Int64 -- ^ 'cfpId'
-    -> CreativeFieldsPatch
-creativeFieldsPatch pCfpProFileId_ pCfpPayload_ pCfpId_ =
-  CreativeFieldsPatch'
-    { _cfpProFileId = _Coerce # pCfpProFileId_
-    , _cfpPayload = pCfpPayload_
-    , _cfpId = _Coerce # pCfpId_
-    }
-
-
--- | User profile ID associated with this request.
-cfpProFileId :: Lens' CreativeFieldsPatch Int64
-cfpProFileId
-  = lens _cfpProFileId (\ s a -> s{_cfpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfpPayload :: Lens' CreativeFieldsPatch CreativeField
-cfpPayload
-  = lens _cfpPayload (\ s a -> s{_cfpPayload = a})
-
--- | Creative Field ID
-cfpId :: Lens' CreativeFieldsPatch Int64
-cfpId
-  = lens _cfpId (\ s a -> s{_cfpId = a}) . _Coerce
-
-instance GoogleRequest CreativeFieldsPatch where
-        type Rs CreativeFieldsPatch = CreativeField
-        type Scopes CreativeFieldsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsPatch'{..}
-          = go _cfpProFileId (Just _cfpId) (Just AltJSON)
-              _cfpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Update.hs b/gen/Network/Google/Resource/DFAReporting/CreativeFields/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeFields/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.CreativeFields.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative field.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeFields.update@.
-module Network.Google.Resource.DFAReporting.CreativeFields.Update
-    (
-    -- * REST Resource
-      CreativeFieldsUpdateResource
-
-    -- * Creating a Request
-    , creativeFieldsUpdate
-    , CreativeFieldsUpdate
-
-    -- * Request Lenses
-    , cfuProFileId
-    , cfuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeFields.update@ method which the
--- 'CreativeFieldsUpdate' request conforms to.
-type CreativeFieldsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeFields" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] CreativeField :>
-                   Put '[JSON] CreativeField
-
--- | Updates an existing creative field.
---
--- /See:/ 'creativeFieldsUpdate' smart constructor.
-data CreativeFieldsUpdate =
-  CreativeFieldsUpdate'
-    { _cfuProFileId :: !(Textual Int64)
-    , _cfuPayload   :: !CreativeField
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeFieldsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cfuProFileId'
---
--- * 'cfuPayload'
-creativeFieldsUpdate
-    :: Int64 -- ^ 'cfuProFileId'
-    -> CreativeField -- ^ 'cfuPayload'
-    -> CreativeFieldsUpdate
-creativeFieldsUpdate pCfuProFileId_ pCfuPayload_ =
-  CreativeFieldsUpdate'
-    {_cfuProFileId = _Coerce # pCfuProFileId_, _cfuPayload = pCfuPayload_}
-
-
--- | User profile ID associated with this request.
-cfuProFileId :: Lens' CreativeFieldsUpdate Int64
-cfuProFileId
-  = lens _cfuProFileId (\ s a -> s{_cfuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cfuPayload :: Lens' CreativeFieldsUpdate CreativeField
-cfuPayload
-  = lens _cfuPayload (\ s a -> s{_cfuPayload = a})
-
-instance GoogleRequest CreativeFieldsUpdate where
-        type Rs CreativeFieldsUpdate = CreativeField
-        type Scopes CreativeFieldsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeFieldsUpdate'{..}
-          = go _cfuProFileId (Just AltJSON) _cfuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeFieldsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.CreativeGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one creative group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeGroups.get@.
-module Network.Google.Resource.DFAReporting.CreativeGroups.Get
-    (
-    -- * REST Resource
-      CreativeGroupsGetResource
-
-    -- * Creating a Request
-    , creativeGroupsGet
-    , CreativeGroupsGet
-
-    -- * Request Lenses
-    , cgggProFileId
-    , cgggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeGroups.get@ method which the
--- 'CreativeGroupsGet' request conforms to.
-type CreativeGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] CreativeGroup
-
--- | Gets one creative group by ID.
---
--- /See:/ 'creativeGroupsGet' smart constructor.
-data CreativeGroupsGet =
-  CreativeGroupsGet'
-    { _cgggProFileId :: !(Textual Int64)
-    , _cgggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgggProFileId'
---
--- * 'cgggId'
-creativeGroupsGet
-    :: Int64 -- ^ 'cgggProFileId'
-    -> Int64 -- ^ 'cgggId'
-    -> CreativeGroupsGet
-creativeGroupsGet pCgggProFileId_ pCgggId_ =
-  CreativeGroupsGet'
-    {_cgggProFileId = _Coerce # pCgggProFileId_, _cgggId = _Coerce # pCgggId_}
-
-
--- | User profile ID associated with this request.
-cgggProFileId :: Lens' CreativeGroupsGet Int64
-cgggProFileId
-  = lens _cgggProFileId
-      (\ s a -> s{_cgggProFileId = a})
-      . _Coerce
-
--- | Creative group ID.
-cgggId :: Lens' CreativeGroupsGet Int64
-cgggId
-  = lens _cgggId (\ s a -> s{_cgggId = a}) . _Coerce
-
-instance GoogleRequest CreativeGroupsGet where
-        type Rs CreativeGroupsGet = CreativeGroup
-        type Scopes CreativeGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeGroupsGet'{..}
-          = go _cgggProFileId _cgggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Insert.hs b/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.CreativeGroups.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new creative group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeGroups.insert@.
-module Network.Google.Resource.DFAReporting.CreativeGroups.Insert
-    (
-    -- * REST Resource
-      CreativeGroupsInsertResource
-
-    -- * Creating a Request
-    , creativeGroupsInsert
-    , CreativeGroupsInsert
-
-    -- * Request Lenses
-    , cgiProFileId
-    , cgiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeGroups.insert@ method which the
--- 'CreativeGroupsInsert' request conforms to.
-type CreativeGroupsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] CreativeGroup :>
-                   Post '[JSON] CreativeGroup
-
--- | Inserts a new creative group.
---
--- /See:/ 'creativeGroupsInsert' smart constructor.
-data CreativeGroupsInsert =
-  CreativeGroupsInsert'
-    { _cgiProFileId :: !(Textual Int64)
-    , _cgiPayload   :: !CreativeGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgiProFileId'
---
--- * 'cgiPayload'
-creativeGroupsInsert
-    :: Int64 -- ^ 'cgiProFileId'
-    -> CreativeGroup -- ^ 'cgiPayload'
-    -> CreativeGroupsInsert
-creativeGroupsInsert pCgiProFileId_ pCgiPayload_ =
-  CreativeGroupsInsert'
-    {_cgiProFileId = _Coerce # pCgiProFileId_, _cgiPayload = pCgiPayload_}
-
-
--- | User profile ID associated with this request.
-cgiProFileId :: Lens' CreativeGroupsInsert Int64
-cgiProFileId
-  = lens _cgiProFileId (\ s a -> s{_cgiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cgiPayload :: Lens' CreativeGroupsInsert CreativeGroup
-cgiPayload
-  = lens _cgiPayload (\ s a -> s{_cgiPayload = a})
-
-instance GoogleRequest CreativeGroupsInsert where
-        type Rs CreativeGroupsInsert = CreativeGroup
-        type Scopes CreativeGroupsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeGroupsInsert'{..}
-          = go _cgiProFileId (Just AltJSON) _cgiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeGroupsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/CreativeGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/List.hs
+++ /dev/null
@@ -1,208 +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.DFAReporting.CreativeGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of creative groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeGroups.list@.
-module Network.Google.Resource.DFAReporting.CreativeGroups.List
-    (
-    -- * REST Resource
-      CreativeGroupsListResource
-
-    -- * Creating a Request
-    , creativeGroupsList
-    , CreativeGroupsList
-
-    -- * Request Lenses
-    , cglSearchString
-    , cglIds
-    , cglProFileId
-    , cglSortOrder
-    , cglGroupNumber
-    , cglPageToken
-    , cglSortField
-    , cglAdvertiserIds
-    , cglMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeGroups.list@ method which the
--- 'CreativeGroupsList' request conforms to.
-type CreativeGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeGroups" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" CreativeGroupsListSortOrder :>
-                     QueryParam "groupNumber" (Textual Int32) :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField" CreativeGroupsListSortField :>
-                           QueryParams "advertiserIds" (Textual Int64) :>
-                             QueryParam "maxResults" (Textual Int32) :>
-                               QueryParam "alt" AltJSON :>
-                                 Get '[JSON] CreativeGroupsListResponse
-
--- | Retrieves a list of creative groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'creativeGroupsList' smart constructor.
-data CreativeGroupsList =
-  CreativeGroupsList'
-    { _cglSearchString  :: !(Maybe Text)
-    , _cglIds           :: !(Maybe [Textual Int64])
-    , _cglProFileId     :: !(Textual Int64)
-    , _cglSortOrder     :: !CreativeGroupsListSortOrder
-    , _cglGroupNumber   :: !(Maybe (Textual Int32))
-    , _cglPageToken     :: !(Maybe Text)
-    , _cglSortField     :: !CreativeGroupsListSortField
-    , _cglAdvertiserIds :: !(Maybe [Textual Int64])
-    , _cglMaxResults    :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cglSearchString'
---
--- * 'cglIds'
---
--- * 'cglProFileId'
---
--- * 'cglSortOrder'
---
--- * 'cglGroupNumber'
---
--- * 'cglPageToken'
---
--- * 'cglSortField'
---
--- * 'cglAdvertiserIds'
---
--- * 'cglMaxResults'
-creativeGroupsList
-    :: Int64 -- ^ 'cglProFileId'
-    -> CreativeGroupsList
-creativeGroupsList pCglProFileId_ =
-  CreativeGroupsList'
-    { _cglSearchString = Nothing
-    , _cglIds = Nothing
-    , _cglProFileId = _Coerce # pCglProFileId_
-    , _cglSortOrder = CGLSOAscending
-    , _cglGroupNumber = Nothing
-    , _cglPageToken = Nothing
-    , _cglSortField = CGLSFID
-    , _cglAdvertiserIds = Nothing
-    , _cglMaxResults = 1000
-    }
-
-
--- | Allows searching for creative groups by name or ID. Wildcards (*) are
--- allowed. For example, \"creativegroup*2015\" will return creative groups
--- with names like \"creativegroup June 2015\", \"creativegroup April
--- 2015\", or simply \"creativegroup 2015\". Most of the searches also add
--- wild-cards implicitly at the start and the end of the search string. For
--- example, a search string of \"creativegroup\" will match creative groups
--- with the name \"my creativegroup\", \"creativegroup 2015\", or simply
--- \"creativegroup\".
-cglSearchString :: Lens' CreativeGroupsList (Maybe Text)
-cglSearchString
-  = lens _cglSearchString
-      (\ s a -> s{_cglSearchString = a})
-
--- | Select only creative groups with these IDs.
-cglIds :: Lens' CreativeGroupsList [Int64]
-cglIds
-  = lens _cglIds (\ s a -> s{_cglIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-cglProFileId :: Lens' CreativeGroupsList Int64
-cglProFileId
-  = lens _cglProFileId (\ s a -> s{_cglProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-cglSortOrder :: Lens' CreativeGroupsList CreativeGroupsListSortOrder
-cglSortOrder
-  = lens _cglSortOrder (\ s a -> s{_cglSortOrder = a})
-
--- | Select only creative groups that belong to this subgroup.
-cglGroupNumber :: Lens' CreativeGroupsList (Maybe Int32)
-cglGroupNumber
-  = lens _cglGroupNumber
-      (\ s a -> s{_cglGroupNumber = a})
-      . mapping _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-cglPageToken :: Lens' CreativeGroupsList (Maybe Text)
-cglPageToken
-  = lens _cglPageToken (\ s a -> s{_cglPageToken = a})
-
--- | Field by which to sort the list.
-cglSortField :: Lens' CreativeGroupsList CreativeGroupsListSortField
-cglSortField
-  = lens _cglSortField (\ s a -> s{_cglSortField = a})
-
--- | Select only creative groups that belong to these advertisers.
-cglAdvertiserIds :: Lens' CreativeGroupsList [Int64]
-cglAdvertiserIds
-  = lens _cglAdvertiserIds
-      (\ s a -> s{_cglAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-cglMaxResults :: Lens' CreativeGroupsList Int32
-cglMaxResults
-  = lens _cglMaxResults
-      (\ s a -> s{_cglMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest CreativeGroupsList where
-        type Rs CreativeGroupsList =
-             CreativeGroupsListResponse
-        type Scopes CreativeGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeGroupsList'{..}
-          = go _cglProFileId _cglSearchString
-              (_cglIds ^. _Default)
-              (Just _cglSortOrder)
-              _cglGroupNumber
-              _cglPageToken
-              (Just _cglSortField)
-              (_cglAdvertiserIds ^. _Default)
-              (Just _cglMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Patch.hs b/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.CreativeGroups.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative group. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeGroups.patch@.
-module Network.Google.Resource.DFAReporting.CreativeGroups.Patch
-    (
-    -- * REST Resource
-      CreativeGroupsPatchResource
-
-    -- * Creating a Request
-    , creativeGroupsPatch
-    , CreativeGroupsPatch
-
-    -- * Request Lenses
-    , cgpProFileId
-    , cgpPayload
-    , cgpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeGroups.patch@ method which the
--- 'CreativeGroupsPatch' request conforms to.
-type CreativeGroupsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeGroups" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] CreativeGroup :>
-                     Patch '[JSON] CreativeGroup
-
--- | Updates an existing creative group. This method supports patch
--- semantics.
---
--- /See:/ 'creativeGroupsPatch' smart constructor.
-data CreativeGroupsPatch =
-  CreativeGroupsPatch'
-    { _cgpProFileId :: !(Textual Int64)
-    , _cgpPayload   :: !CreativeGroup
-    , _cgpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cgpProFileId'
---
--- * 'cgpPayload'
---
--- * 'cgpId'
-creativeGroupsPatch
-    :: Int64 -- ^ 'cgpProFileId'
-    -> CreativeGroup -- ^ 'cgpPayload'
-    -> Int64 -- ^ 'cgpId'
-    -> CreativeGroupsPatch
-creativeGroupsPatch pCgpProFileId_ pCgpPayload_ pCgpId_ =
-  CreativeGroupsPatch'
-    { _cgpProFileId = _Coerce # pCgpProFileId_
-    , _cgpPayload = pCgpPayload_
-    , _cgpId = _Coerce # pCgpId_
-    }
-
-
--- | User profile ID associated with this request.
-cgpProFileId :: Lens' CreativeGroupsPatch Int64
-cgpProFileId
-  = lens _cgpProFileId (\ s a -> s{_cgpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cgpPayload :: Lens' CreativeGroupsPatch CreativeGroup
-cgpPayload
-  = lens _cgpPayload (\ s a -> s{_cgpPayload = a})
-
--- | Creative group ID.
-cgpId :: Lens' CreativeGroupsPatch Int64
-cgpId
-  = lens _cgpId (\ s a -> s{_cgpId = a}) . _Coerce
-
-instance GoogleRequest CreativeGroupsPatch where
-        type Rs CreativeGroupsPatch = CreativeGroup
-        type Scopes CreativeGroupsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeGroupsPatch'{..}
-          = go _cgpProFileId (Just _cgpId) (Just AltJSON)
-              _cgpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeGroupsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Update.hs b/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/CreativeGroups/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.CreativeGroups.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creativeGroups.update@.
-module Network.Google.Resource.DFAReporting.CreativeGroups.Update
-    (
-    -- * REST Resource
-      CreativeGroupsUpdateResource
-
-    -- * Creating a Request
-    , creativeGroupsUpdate
-    , CreativeGroupsUpdate
-
-    -- * Request Lenses
-    , cguProFileId
-    , cguPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creativeGroups.update@ method which the
--- 'CreativeGroupsUpdate' request conforms to.
-type CreativeGroupsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creativeGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] CreativeGroup :>
-                   Put '[JSON] CreativeGroup
-
--- | Updates an existing creative group.
---
--- /See:/ 'creativeGroupsUpdate' smart constructor.
-data CreativeGroupsUpdate =
-  CreativeGroupsUpdate'
-    { _cguProFileId :: !(Textual Int64)
-    , _cguPayload   :: !CreativeGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativeGroupsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cguProFileId'
---
--- * 'cguPayload'
-creativeGroupsUpdate
-    :: Int64 -- ^ 'cguProFileId'
-    -> CreativeGroup -- ^ 'cguPayload'
-    -> CreativeGroupsUpdate
-creativeGroupsUpdate pCguProFileId_ pCguPayload_ =
-  CreativeGroupsUpdate'
-    {_cguProFileId = _Coerce # pCguProFileId_, _cguPayload = pCguPayload_}
-
-
--- | User profile ID associated with this request.
-cguProFileId :: Lens' CreativeGroupsUpdate Int64
-cguProFileId
-  = lens _cguProFileId (\ s a -> s{_cguProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cguPayload :: Lens' CreativeGroupsUpdate CreativeGroup
-cguPayload
-  = lens _cguPayload (\ s a -> s{_cguPayload = a})
-
-instance GoogleRequest CreativeGroupsUpdate where
-        type Rs CreativeGroupsUpdate = CreativeGroup
-        type Scopes CreativeGroupsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativeGroupsUpdate'{..}
-          = go _cguProFileId (Just AltJSON) _cguPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativeGroupsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Creatives/Get.hs b/gen/Network/Google/Resource/DFAReporting/Creatives/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Creatives/Get.hs
+++ /dev/null
@@ -1,100 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Creatives.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one creative by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creatives.get@.
-module Network.Google.Resource.DFAReporting.Creatives.Get
-    (
-    -- * REST Resource
-      CreativesGetResource
-
-    -- * Creating a Request
-    , creativesGet
-    , CreativesGet
-
-    -- * Request Lenses
-    , ccProFileId
-    , ccId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creatives.get@ method which the
--- 'CreativesGet' request conforms to.
-type CreativesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creatives" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Creative
-
--- | Gets one creative by ID.
---
--- /See:/ 'creativesGet' smart constructor.
-data CreativesGet =
-  CreativesGet'
-    { _ccProFileId :: !(Textual Int64)
-    , _ccId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ccProFileId'
---
--- * 'ccId'
-creativesGet
-    :: Int64 -- ^ 'ccProFileId'
-    -> Int64 -- ^ 'ccId'
-    -> CreativesGet
-creativesGet pCcProFileId_ pCcId_ =
-  CreativesGet'
-    {_ccProFileId = _Coerce # pCcProFileId_, _ccId = _Coerce # pCcId_}
-
-
--- | User profile ID associated with this request.
-ccProFileId :: Lens' CreativesGet Int64
-ccProFileId
-  = lens _ccProFileId (\ s a -> s{_ccProFileId = a}) .
-      _Coerce
-
--- | Creative ID.
-ccId :: Lens' CreativesGet Int64
-ccId = lens _ccId (\ s a -> s{_ccId = a}) . _Coerce
-
-instance GoogleRequest CreativesGet where
-        type Rs CreativesGet = Creative
-        type Scopes CreativesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativesGet'{..}
-          = go _ccProFileId _ccId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CreativesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Creatives/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Creatives/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Creatives/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Creatives.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new creative.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creatives.insert@.
-module Network.Google.Resource.DFAReporting.Creatives.Insert
-    (
-    -- * REST Resource
-      CreativesInsertResource
-
-    -- * Creating a Request
-    , creativesInsert
-    , CreativesInsert
-
-    -- * Request Lenses
-    , ciProFileId
-    , ciPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creatives.insert@ method which the
--- 'CreativesInsert' request conforms to.
-type CreativesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creatives" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Creative :> Post '[JSON] Creative
-
--- | Inserts a new creative.
---
--- /See:/ 'creativesInsert' smart constructor.
-data CreativesInsert =
-  CreativesInsert'
-    { _ciProFileId :: !(Textual Int64)
-    , _ciPayload   :: !Creative
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ciProFileId'
---
--- * 'ciPayload'
-creativesInsert
-    :: Int64 -- ^ 'ciProFileId'
-    -> Creative -- ^ 'ciPayload'
-    -> CreativesInsert
-creativesInsert pCiProFileId_ pCiPayload_ =
-  CreativesInsert'
-    {_ciProFileId = _Coerce # pCiProFileId_, _ciPayload = pCiPayload_}
-
-
--- | User profile ID associated with this request.
-ciProFileId :: Lens' CreativesInsert Int64
-ciProFileId
-  = lens _ciProFileId (\ s a -> s{_ciProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-ciPayload :: Lens' CreativesInsert Creative
-ciPayload
-  = lens _ciPayload (\ s a -> s{_ciPayload = a})
-
-instance GoogleRequest CreativesInsert where
-        type Rs CreativesInsert = Creative
-        type Scopes CreativesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativesInsert'{..}
-          = go _ciProFileId (Just AltJSON) _ciPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Creatives/List.hs b/gen/Network/Google/Resource/DFAReporting/Creatives/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Creatives/List.hs
+++ /dev/null
@@ -1,322 +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.DFAReporting.Creatives.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of creatives, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creatives.list@.
-module Network.Google.Resource.DFAReporting.Creatives.List
-    (
-    -- * REST Resource
-      CreativesListResource
-
-    -- * Creating a Request
-    , creativesList
-    , CreativesList
-
-    -- * Request Lenses
-    , cRenderingIds
-    , cAdvertiserId
-    , cSearchString
-    , cSizeIds
-    , cCompanionCreativeIds
-    , cCampaignId
-    , cTypes
-    , cIds
-    , cProFileId
-    , cSortOrder
-    , cActive
-    , cCreativeFieldIds
-    , cPageToken
-    , cSortField
-    , cStudioCreativeId
-    , cArchived
-    , cMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creatives.list@ method which the
--- 'CreativesList' request conforms to.
-type CreativesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creatives" :>
-               QueryParams "renderingIds" (Textual Int64) :>
-                 QueryParam "advertiserId" (Textual Int64) :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "sizeIds" (Textual Int64) :>
-                       QueryParams "companionCreativeIds" (Textual Int64) :>
-                         QueryParam "campaignId" (Textual Int64) :>
-                           QueryParams "types" CreativesListTypes :>
-                             QueryParams "ids" (Textual Int64) :>
-                               QueryParam "sortOrder" CreativesListSortOrder :>
-                                 QueryParam "active" Bool :>
-                                   QueryParams "creativeFieldIds"
-                                     (Textual Int64)
-                                     :>
-                                     QueryParam "pageToken" Text :>
-                                       QueryParam "sortField"
-                                         CreativesListSortField
-                                         :>
-                                         QueryParam "studioCreativeId"
-                                           (Textual Int64)
-                                           :>
-                                           QueryParam "archived" Bool :>
-                                             QueryParam "maxResults"
-                                               (Textual Int32)
-                                               :>
-                                               QueryParam "alt" AltJSON :>
-                                                 Get '[JSON]
-                                                   CreativesListResponse
-
--- | Retrieves a list of creatives, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'creativesList' smart constructor.
-data CreativesList =
-  CreativesList'
-    { _cRenderingIds         :: !(Maybe [Textual Int64])
-    , _cAdvertiserId         :: !(Maybe (Textual Int64))
-    , _cSearchString         :: !(Maybe Text)
-    , _cSizeIds              :: !(Maybe [Textual Int64])
-    , _cCompanionCreativeIds :: !(Maybe [Textual Int64])
-    , _cCampaignId           :: !(Maybe (Textual Int64))
-    , _cTypes                :: !(Maybe [CreativesListTypes])
-    , _cIds                  :: !(Maybe [Textual Int64])
-    , _cProFileId            :: !(Textual Int64)
-    , _cSortOrder            :: !CreativesListSortOrder
-    , _cActive               :: !(Maybe Bool)
-    , _cCreativeFieldIds     :: !(Maybe [Textual Int64])
-    , _cPageToken            :: !(Maybe Text)
-    , _cSortField            :: !CreativesListSortField
-    , _cStudioCreativeId     :: !(Maybe (Textual Int64))
-    , _cArchived             :: !(Maybe Bool)
-    , _cMaxResults           :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cRenderingIds'
---
--- * 'cAdvertiserId'
---
--- * 'cSearchString'
---
--- * 'cSizeIds'
---
--- * 'cCompanionCreativeIds'
---
--- * 'cCampaignId'
---
--- * 'cTypes'
---
--- * 'cIds'
---
--- * 'cProFileId'
---
--- * 'cSortOrder'
---
--- * 'cActive'
---
--- * 'cCreativeFieldIds'
---
--- * 'cPageToken'
---
--- * 'cSortField'
---
--- * 'cStudioCreativeId'
---
--- * 'cArchived'
---
--- * 'cMaxResults'
-creativesList
-    :: Int64 -- ^ 'cProFileId'
-    -> CreativesList
-creativesList pCProFileId_ =
-  CreativesList'
-    { _cRenderingIds = Nothing
-    , _cAdvertiserId = Nothing
-    , _cSearchString = Nothing
-    , _cSizeIds = Nothing
-    , _cCompanionCreativeIds = Nothing
-    , _cCampaignId = Nothing
-    , _cTypes = Nothing
-    , _cIds = Nothing
-    , _cProFileId = _Coerce # pCProFileId_
-    , _cSortOrder = CAscending
-    , _cActive = Nothing
-    , _cCreativeFieldIds = Nothing
-    , _cPageToken = Nothing
-    , _cSortField = CID
-    , _cStudioCreativeId = Nothing
-    , _cArchived = Nothing
-    , _cMaxResults = 1000
-    }
-
-
--- | Select only creatives with these rendering IDs.
-cRenderingIds :: Lens' CreativesList [Int64]
-cRenderingIds
-  = lens _cRenderingIds
-      (\ s a -> s{_cRenderingIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only creatives with this advertiser ID.
-cAdvertiserId :: Lens' CreativesList (Maybe Int64)
-cAdvertiserId
-  = lens _cAdvertiserId
-      (\ s a -> s{_cAdvertiserId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"creative*2015\" will return objects with names like
--- \"creative June 2015\", \"creative April 2015\", or simply \"creative
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"creative\" will match objects with name \"my creative\", \"creative
--- 2015\", or simply \"creative\".
-cSearchString :: Lens' CreativesList (Maybe Text)
-cSearchString
-  = lens _cSearchString
-      (\ s a -> s{_cSearchString = a})
-
--- | Select only creatives with these size IDs.
-cSizeIds :: Lens' CreativesList [Int64]
-cSizeIds
-  = lens _cSizeIds (\ s a -> s{_cSizeIds = a}) .
-      _Default
-      . _Coerce
-
--- | Select only in-stream video creatives with these companion IDs.
-cCompanionCreativeIds :: Lens' CreativesList [Int64]
-cCompanionCreativeIds
-  = lens _cCompanionCreativeIds
-      (\ s a -> s{_cCompanionCreativeIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only creatives with this campaign ID.
-cCampaignId :: Lens' CreativesList (Maybe Int64)
-cCampaignId
-  = lens _cCampaignId (\ s a -> s{_cCampaignId = a}) .
-      mapping _Coerce
-
--- | Select only creatives with these creative types.
-cTypes :: Lens' CreativesList [CreativesListTypes]
-cTypes
-  = lens _cTypes (\ s a -> s{_cTypes = a}) . _Default .
-      _Coerce
-
--- | Select only creatives with these IDs.
-cIds :: Lens' CreativesList [Int64]
-cIds
-  = lens _cIds (\ s a -> s{_cIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-cProFileId :: Lens' CreativesList Int64
-cProFileId
-  = lens _cProFileId (\ s a -> s{_cProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-cSortOrder :: Lens' CreativesList CreativesListSortOrder
-cSortOrder
-  = lens _cSortOrder (\ s a -> s{_cSortOrder = a})
-
--- | Select only active creatives. Leave blank to select active and inactive
--- creatives.
-cActive :: Lens' CreativesList (Maybe Bool)
-cActive = lens _cActive (\ s a -> s{_cActive = a})
-
--- | Select only creatives with these creative field IDs.
-cCreativeFieldIds :: Lens' CreativesList [Int64]
-cCreativeFieldIds
-  = lens _cCreativeFieldIds
-      (\ s a -> s{_cCreativeFieldIds = a})
-      . _Default
-      . _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-cPageToken :: Lens' CreativesList (Maybe Text)
-cPageToken
-  = lens _cPageToken (\ s a -> s{_cPageToken = a})
-
--- | Field by which to sort the list.
-cSortField :: Lens' CreativesList CreativesListSortField
-cSortField
-  = lens _cSortField (\ s a -> s{_cSortField = a})
-
--- | Select only creatives corresponding to this Studio creative ID.
-cStudioCreativeId :: Lens' CreativesList (Maybe Int64)
-cStudioCreativeId
-  = lens _cStudioCreativeId
-      (\ s a -> s{_cStudioCreativeId = a})
-      . mapping _Coerce
-
--- | Select only archived creatives. Leave blank to select archived and
--- unarchived creatives.
-cArchived :: Lens' CreativesList (Maybe Bool)
-cArchived
-  = lens _cArchived (\ s a -> s{_cArchived = a})
-
--- | Maximum number of results to return.
-cMaxResults :: Lens' CreativesList Int32
-cMaxResults
-  = lens _cMaxResults (\ s a -> s{_cMaxResults = a}) .
-      _Coerce
-
-instance GoogleRequest CreativesList where
-        type Rs CreativesList = CreativesListResponse
-        type Scopes CreativesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativesList'{..}
-          = go _cProFileId (_cRenderingIds ^. _Default)
-              _cAdvertiserId
-              _cSearchString
-              (_cSizeIds ^. _Default)
-              (_cCompanionCreativeIds ^. _Default)
-              _cCampaignId
-              (_cTypes ^. _Default)
-              (_cIds ^. _Default)
-              (Just _cSortOrder)
-              _cActive
-              (_cCreativeFieldIds ^. _Default)
-              _cPageToken
-              (Just _cSortField)
-              _cStudioCreativeId
-              _cArchived
-              (Just _cMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CreativesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Creatives/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Creatives/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Creatives/Patch.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.Creatives.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creatives.patch@.
-module Network.Google.Resource.DFAReporting.Creatives.Patch
-    (
-    -- * REST Resource
-      CreativesPatchResource
-
-    -- * Creating a Request
-    , creativesPatch
-    , CreativesPatch
-
-    -- * Request Lenses
-    , cppProFileId
-    , cppPayload
-    , cppId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creatives.patch@ method which the
--- 'CreativesPatch' request conforms to.
-type CreativesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creatives" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Creative :> Patch '[JSON] Creative
-
--- | Updates an existing creative. This method supports patch semantics.
---
--- /See:/ 'creativesPatch' smart constructor.
-data CreativesPatch =
-  CreativesPatch'
-    { _cppProFileId :: !(Textual Int64)
-    , _cppPayload   :: !Creative
-    , _cppId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'cppProFileId'
---
--- * 'cppPayload'
---
--- * 'cppId'
-creativesPatch
-    :: Int64 -- ^ 'cppProFileId'
-    -> Creative -- ^ 'cppPayload'
-    -> Int64 -- ^ 'cppId'
-    -> CreativesPatch
-creativesPatch pCppProFileId_ pCppPayload_ pCppId_ =
-  CreativesPatch'
-    { _cppProFileId = _Coerce # pCppProFileId_
-    , _cppPayload = pCppPayload_
-    , _cppId = _Coerce # pCppId_
-    }
-
-
--- | User profile ID associated with this request.
-cppProFileId :: Lens' CreativesPatch Int64
-cppProFileId
-  = lens _cppProFileId (\ s a -> s{_cppProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-cppPayload :: Lens' CreativesPatch Creative
-cppPayload
-  = lens _cppPayload (\ s a -> s{_cppPayload = a})
-
--- | Creative ID.
-cppId :: Lens' CreativesPatch Int64
-cppId
-  = lens _cppId (\ s a -> s{_cppId = a}) . _Coerce
-
-instance GoogleRequest CreativesPatch where
-        type Rs CreativesPatch = Creative
-        type Scopes CreativesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativesPatch'{..}
-          = go _cppProFileId (Just _cppId) (Just AltJSON)
-              _cppPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy CreativesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Creatives/Update.hs b/gen/Network/Google/Resource/DFAReporting/Creatives/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Creatives/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Creatives.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing creative.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.creatives.update@.
-module Network.Google.Resource.DFAReporting.Creatives.Update
-    (
-    -- * REST Resource
-      CreativesUpdateResource
-
-    -- * Creating a Request
-    , creativesUpdate
-    , CreativesUpdate
-
-    -- * Request Lenses
-    , creProFileId
-    , crePayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.creatives.update@ method which the
--- 'CreativesUpdate' request conforms to.
-type CreativesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "creatives" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Creative :> Put '[JSON] Creative
-
--- | Updates an existing creative.
---
--- /See:/ 'creativesUpdate' smart constructor.
-data CreativesUpdate =
-  CreativesUpdate'
-    { _creProFileId :: !(Textual Int64)
-    , _crePayload   :: !Creative
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'CreativesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'creProFileId'
---
--- * 'crePayload'
-creativesUpdate
-    :: Int64 -- ^ 'creProFileId'
-    -> Creative -- ^ 'crePayload'
-    -> CreativesUpdate
-creativesUpdate pCreProFileId_ pCrePayload_ =
-  CreativesUpdate'
-    {_creProFileId = _Coerce # pCreProFileId_, _crePayload = pCrePayload_}
-
-
--- | User profile ID associated with this request.
-creProFileId :: Lens' CreativesUpdate Int64
-creProFileId
-  = lens _creProFileId (\ s a -> s{_creProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-crePayload :: Lens' CreativesUpdate Creative
-crePayload
-  = lens _crePayload (\ s a -> s{_crePayload = a})
-
-instance GoogleRequest CreativesUpdate where
-        type Rs CreativesUpdate = Creative
-        type Scopes CreativesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient CreativesUpdate'{..}
-          = go _creProFileId (Just AltJSON) _crePayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy CreativesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DimensionValues/Query.hs b/gen/Network/Google/Resource/DFAReporting/DimensionValues/Query.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DimensionValues/Query.hs
+++ /dev/null
@@ -1,133 +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.DFAReporting.DimensionValues.Query
--- 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 list of report dimension values for a list of filters.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.dimensionValues.query@.
-module Network.Google.Resource.DFAReporting.DimensionValues.Query
-    (
-    -- * REST Resource
-      DimensionValuesQueryResource
-
-    -- * Creating a Request
-    , dimensionValuesQuery
-    , DimensionValuesQuery
-
-    -- * Request Lenses
-    , dvqProFileId
-    , dvqPayload
-    , dvqPageToken
-    , dvqMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.dimensionValues.query@ method which the
--- 'DimensionValuesQuery' request conforms to.
-type DimensionValuesQueryResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "dimensionvalues" :>
-               "query" :>
-                 QueryParam "pageToken" Text :>
-                   QueryParam "maxResults" (Textual Int32) :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON] DimensionValueRequest :>
-                         Post '[JSON] DimensionValueList
-
--- | Retrieves list of report dimension values for a list of filters.
---
--- /See:/ 'dimensionValuesQuery' smart constructor.
-data DimensionValuesQuery =
-  DimensionValuesQuery'
-    { _dvqProFileId  :: !(Textual Int64)
-    , _dvqPayload    :: !DimensionValueRequest
-    , _dvqPageToken  :: !(Maybe Text)
-    , _dvqMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DimensionValuesQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dvqProFileId'
---
--- * 'dvqPayload'
---
--- * 'dvqPageToken'
---
--- * 'dvqMaxResults'
-dimensionValuesQuery
-    :: Int64 -- ^ 'dvqProFileId'
-    -> DimensionValueRequest -- ^ 'dvqPayload'
-    -> DimensionValuesQuery
-dimensionValuesQuery pDvqProFileId_ pDvqPayload_ =
-  DimensionValuesQuery'
-    { _dvqProFileId = _Coerce # pDvqProFileId_
-    , _dvqPayload = pDvqPayload_
-    , _dvqPageToken = Nothing
-    , _dvqMaxResults = 100
-    }
-
-
--- | The DFA user profile ID.
-dvqProFileId :: Lens' DimensionValuesQuery Int64
-dvqProFileId
-  = lens _dvqProFileId (\ s a -> s{_dvqProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-dvqPayload :: Lens' DimensionValuesQuery DimensionValueRequest
-dvqPayload
-  = lens _dvqPayload (\ s a -> s{_dvqPayload = a})
-
--- | The value of the nextToken from the previous result page.
-dvqPageToken :: Lens' DimensionValuesQuery (Maybe Text)
-dvqPageToken
-  = lens _dvqPageToken (\ s a -> s{_dvqPageToken = a})
-
--- | Maximum number of results to return.
-dvqMaxResults :: Lens' DimensionValuesQuery Int32
-dvqMaxResults
-  = lens _dvqMaxResults
-      (\ s a -> s{_dvqMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest DimensionValuesQuery where
-        type Rs DimensionValuesQuery = DimensionValueList
-        type Scopes DimensionValuesQuery =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient DimensionValuesQuery'{..}
-          = go _dvqProFileId _dvqPageToken
-              (Just _dvqMaxResults)
-              (Just AltJSON)
-              _dvqPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DimensionValuesQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DirectorySites/Get.hs b/gen/Network/Google/Resource/DFAReporting/DirectorySites/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DirectorySites/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.DirectorySites.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one directory site by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.directorySites.get@.
-module Network.Google.Resource.DFAReporting.DirectorySites.Get
-    (
-    -- * REST Resource
-      DirectorySitesGetResource
-
-    -- * Creating a Request
-    , directorySitesGet
-    , DirectorySitesGet
-
-    -- * Request Lenses
-    , dsgProFileId
-    , dsgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.directorySites.get@ method which the
--- 'DirectorySitesGet' request conforms to.
-type DirectorySitesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "directorySites" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] DirectorySite
-
--- | Gets one directory site by ID.
---
--- /See:/ 'directorySitesGet' smart constructor.
-data DirectorySitesGet =
-  DirectorySitesGet'
-    { _dsgProFileId :: !(Textual Int64)
-    , _dsgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySitesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dsgProFileId'
---
--- * 'dsgId'
-directorySitesGet
-    :: Int64 -- ^ 'dsgProFileId'
-    -> Int64 -- ^ 'dsgId'
-    -> DirectorySitesGet
-directorySitesGet pDsgProFileId_ pDsgId_ =
-  DirectorySitesGet'
-    {_dsgProFileId = _Coerce # pDsgProFileId_, _dsgId = _Coerce # pDsgId_}
-
-
--- | User profile ID associated with this request.
-dsgProFileId :: Lens' DirectorySitesGet Int64
-dsgProFileId
-  = lens _dsgProFileId (\ s a -> s{_dsgProFileId = a})
-      . _Coerce
-
--- | Directory site ID.
-dsgId :: Lens' DirectorySitesGet Int64
-dsgId
-  = lens _dsgId (\ s a -> s{_dsgId = a}) . _Coerce
-
-instance GoogleRequest DirectorySitesGet where
-        type Rs DirectorySitesGet = DirectorySite
-        type Scopes DirectorySitesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DirectorySitesGet'{..}
-          = go _dsgProFileId _dsgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DirectorySitesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DirectorySites/Insert.hs b/gen/Network/Google/Resource/DFAReporting/DirectorySites/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DirectorySites/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.DirectorySites.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new directory site.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.directorySites.insert@.
-module Network.Google.Resource.DFAReporting.DirectorySites.Insert
-    (
-    -- * REST Resource
-      DirectorySitesInsertResource
-
-    -- * Creating a Request
-    , directorySitesInsert
-    , DirectorySitesInsert
-
-    -- * Request Lenses
-    , dsiProFileId
-    , dsiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.directorySites.insert@ method which the
--- 'DirectorySitesInsert' request conforms to.
-type DirectorySitesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "directorySites" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] DirectorySite :>
-                   Post '[JSON] DirectorySite
-
--- | Inserts a new directory site.
---
--- /See:/ 'directorySitesInsert' smart constructor.
-data DirectorySitesInsert =
-  DirectorySitesInsert'
-    { _dsiProFileId :: !(Textual Int64)
-    , _dsiPayload   :: !DirectorySite
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySitesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dsiProFileId'
---
--- * 'dsiPayload'
-directorySitesInsert
-    :: Int64 -- ^ 'dsiProFileId'
-    -> DirectorySite -- ^ 'dsiPayload'
-    -> DirectorySitesInsert
-directorySitesInsert pDsiProFileId_ pDsiPayload_ =
-  DirectorySitesInsert'
-    {_dsiProFileId = _Coerce # pDsiProFileId_, _dsiPayload = pDsiPayload_}
-
-
--- | User profile ID associated with this request.
-dsiProFileId :: Lens' DirectorySitesInsert Int64
-dsiProFileId
-  = lens _dsiProFileId (\ s a -> s{_dsiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-dsiPayload :: Lens' DirectorySitesInsert DirectorySite
-dsiPayload
-  = lens _dsiPayload (\ s a -> s{_dsiPayload = a})
-
-instance GoogleRequest DirectorySitesInsert where
-        type Rs DirectorySitesInsert = DirectorySite
-        type Scopes DirectorySitesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DirectorySitesInsert'{..}
-          = go _dsiProFileId (Just AltJSON) _dsiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DirectorySitesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DirectorySites/List.hs b/gen/Network/Google/Resource/DFAReporting/DirectorySites/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DirectorySites/List.hs
+++ /dev/null
@@ -1,249 +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.DFAReporting.DirectorySites.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of directory sites, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.directorySites.list@.
-module Network.Google.Resource.DFAReporting.DirectorySites.List
-    (
-    -- * REST Resource
-      DirectorySitesListResource
-
-    -- * Creating a Request
-    , directorySitesList
-    , DirectorySitesList
-
-    -- * Request Lenses
-    , dslSearchString
-    , dslAcceptsInterstitialPlacements
-    , dslAcceptsPublisherPaidPlacements
-    , dslIds
-    , dslProFileId
-    , dslSortOrder
-    , dslActive
-    , dslPageToken
-    , dslSortField
-    , dslAcceptsInStreamVideoPlacements
-    , dslMaxResults
-    , dslDfpNetworkCode
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.directorySites.list@ method which the
--- 'DirectorySitesList' request conforms to.
-type DirectorySitesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "directorySites" :>
-               QueryParam "searchString" Text :>
-                 QueryParam "acceptsInterstitialPlacements" Bool :>
-                   QueryParam "acceptsPublisherPaidPlacements" Bool :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "sortOrder" DirectorySitesListSortOrder :>
-                         QueryParam "active" Bool :>
-                           QueryParam "pageToken" Text :>
-                             QueryParam "sortField" DirectorySitesListSortField
-                               :>
-                               QueryParam "acceptsInStreamVideoPlacements" Bool
-                                 :>
-                                 QueryParam "maxResults" (Textual Int32) :>
-                                   QueryParam "dfpNetworkCode" Text :>
-                                     QueryParam "alt" AltJSON :>
-                                       Get '[JSON] DirectorySitesListResponse
-
--- | Retrieves a list of directory sites, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'directorySitesList' smart constructor.
-data DirectorySitesList =
-  DirectorySitesList'
-    { _dslSearchString                   :: !(Maybe Text)
-    , _dslAcceptsInterstitialPlacements  :: !(Maybe Bool)
-    , _dslAcceptsPublisherPaidPlacements :: !(Maybe Bool)
-    , _dslIds                            :: !(Maybe [Textual Int64])
-    , _dslProFileId                      :: !(Textual Int64)
-    , _dslSortOrder                      :: !DirectorySitesListSortOrder
-    , _dslActive                         :: !(Maybe Bool)
-    , _dslPageToken                      :: !(Maybe Text)
-    , _dslSortField                      :: !DirectorySitesListSortField
-    , _dslAcceptsInStreamVideoPlacements :: !(Maybe Bool)
-    , _dslMaxResults                     :: !(Textual Int32)
-    , _dslDfpNetworkCode                 :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DirectorySitesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dslSearchString'
---
--- * 'dslAcceptsInterstitialPlacements'
---
--- * 'dslAcceptsPublisherPaidPlacements'
---
--- * 'dslIds'
---
--- * 'dslProFileId'
---
--- * 'dslSortOrder'
---
--- * 'dslActive'
---
--- * 'dslPageToken'
---
--- * 'dslSortField'
---
--- * 'dslAcceptsInStreamVideoPlacements'
---
--- * 'dslMaxResults'
---
--- * 'dslDfpNetworkCode'
-directorySitesList
-    :: Int64 -- ^ 'dslProFileId'
-    -> DirectorySitesList
-directorySitesList pDslProFileId_ =
-  DirectorySitesList'
-    { _dslSearchString = Nothing
-    , _dslAcceptsInterstitialPlacements = Nothing
-    , _dslAcceptsPublisherPaidPlacements = Nothing
-    , _dslIds = Nothing
-    , _dslProFileId = _Coerce # pDslProFileId_
-    , _dslSortOrder = DSLSOAscending
-    , _dslActive = Nothing
-    , _dslPageToken = Nothing
-    , _dslSortField = DSLSFID
-    , _dslAcceptsInStreamVideoPlacements = Nothing
-    , _dslMaxResults = 1000
-    , _dslDfpNetworkCode = Nothing
-    }
-
-
--- | Allows searching for objects by name, ID or URL. Wildcards (*) are
--- allowed. For example, \"directory site*2015\" will return objects with
--- names like \"directory site June 2015\", \"directory site April 2015\",
--- or simply \"directory site 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"directory site\" will match objects with
--- name \"my directory site\", \"directory site 2015\" or simply,
--- \"directory site\".
-dslSearchString :: Lens' DirectorySitesList (Maybe Text)
-dslSearchString
-  = lens _dslSearchString
-      (\ s a -> s{_dslSearchString = a})
-
--- | This search filter is no longer supported and will have no effect on the
--- results returned.
-dslAcceptsInterstitialPlacements :: Lens' DirectorySitesList (Maybe Bool)
-dslAcceptsInterstitialPlacements
-  = lens _dslAcceptsInterstitialPlacements
-      (\ s a -> s{_dslAcceptsInterstitialPlacements = a})
-
--- | Select only directory sites that accept publisher paid placements. This
--- field can be left blank.
-dslAcceptsPublisherPaidPlacements :: Lens' DirectorySitesList (Maybe Bool)
-dslAcceptsPublisherPaidPlacements
-  = lens _dslAcceptsPublisherPaidPlacements
-      (\ s a -> s{_dslAcceptsPublisherPaidPlacements = a})
-
--- | Select only directory sites with these IDs.
-dslIds :: Lens' DirectorySitesList [Int64]
-dslIds
-  = lens _dslIds (\ s a -> s{_dslIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-dslProFileId :: Lens' DirectorySitesList Int64
-dslProFileId
-  = lens _dslProFileId (\ s a -> s{_dslProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-dslSortOrder :: Lens' DirectorySitesList DirectorySitesListSortOrder
-dslSortOrder
-  = lens _dslSortOrder (\ s a -> s{_dslSortOrder = a})
-
--- | Select only active directory sites. Leave blank to retrieve both active
--- and inactive directory sites.
-dslActive :: Lens' DirectorySitesList (Maybe Bool)
-dslActive
-  = lens _dslActive (\ s a -> s{_dslActive = a})
-
--- | Value of the nextPageToken from the previous result page.
-dslPageToken :: Lens' DirectorySitesList (Maybe Text)
-dslPageToken
-  = lens _dslPageToken (\ s a -> s{_dslPageToken = a})
-
--- | Field by which to sort the list.
-dslSortField :: Lens' DirectorySitesList DirectorySitesListSortField
-dslSortField
-  = lens _dslSortField (\ s a -> s{_dslSortField = a})
-
--- | This search filter is no longer supported and will have no effect on the
--- results returned.
-dslAcceptsInStreamVideoPlacements :: Lens' DirectorySitesList (Maybe Bool)
-dslAcceptsInStreamVideoPlacements
-  = lens _dslAcceptsInStreamVideoPlacements
-      (\ s a -> s{_dslAcceptsInStreamVideoPlacements = a})
-
--- | Maximum number of results to return.
-dslMaxResults :: Lens' DirectorySitesList Int32
-dslMaxResults
-  = lens _dslMaxResults
-      (\ s a -> s{_dslMaxResults = a})
-      . _Coerce
-
--- | Select only directory sites with this Ad Manager network code.
-dslDfpNetworkCode :: Lens' DirectorySitesList (Maybe Text)
-dslDfpNetworkCode
-  = lens _dslDfpNetworkCode
-      (\ s a -> s{_dslDfpNetworkCode = a})
-
-instance GoogleRequest DirectorySitesList where
-        type Rs DirectorySitesList =
-             DirectorySitesListResponse
-        type Scopes DirectorySitesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DirectorySitesList'{..}
-          = go _dslProFileId _dslSearchString
-              _dslAcceptsInterstitialPlacements
-              _dslAcceptsPublisherPaidPlacements
-              (_dslIds ^. _Default)
-              (Just _dslSortOrder)
-              _dslActive
-              _dslPageToken
-              (Just _dslSortField)
-              _dslAcceptsInStreamVideoPlacements
-              (Just _dslMaxResults)
-              _dslDfpNetworkCode
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DirectorySitesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Delete.hs b/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Delete.hs
+++ /dev/null
@@ -1,138 +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.DFAReporting.DynamicTargetingKeys.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing dynamic targeting key.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.dynamicTargetingKeys.delete@.
-module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Delete
-    (
-    -- * REST Resource
-      DynamicTargetingKeysDeleteResource
-
-    -- * Creating a Request
-    , dynamicTargetingKeysDelete
-    , DynamicTargetingKeysDelete
-
-    -- * Request Lenses
-    , dtkdObjectType
-    , dtkdObjectId
-    , dtkdProFileId
-    , dtkdName
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.dynamicTargetingKeys.delete@ method which the
--- 'DynamicTargetingKeysDelete' request conforms to.
-type DynamicTargetingKeysDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "dynamicTargetingKeys" :>
-               Capture "objectId" (Textual Int64) :>
-                 QueryParam "name" Text :>
-                   QueryParam "objectType"
-                     DynamicTargetingKeysDeleteObjectType
-                     :> QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing dynamic targeting key.
---
--- /See:/ 'dynamicTargetingKeysDelete' smart constructor.
-data DynamicTargetingKeysDelete =
-  DynamicTargetingKeysDelete'
-    { _dtkdObjectType :: !DynamicTargetingKeysDeleteObjectType
-    , _dtkdObjectId   :: !(Textual Int64)
-    , _dtkdProFileId  :: !(Textual Int64)
-    , _dtkdName       :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DynamicTargetingKeysDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dtkdObjectType'
---
--- * 'dtkdObjectId'
---
--- * 'dtkdProFileId'
---
--- * 'dtkdName'
-dynamicTargetingKeysDelete
-    :: DynamicTargetingKeysDeleteObjectType -- ^ 'dtkdObjectType'
-    -> Int64 -- ^ 'dtkdObjectId'
-    -> Int64 -- ^ 'dtkdProFileId'
-    -> Text -- ^ 'dtkdName'
-    -> DynamicTargetingKeysDelete
-dynamicTargetingKeysDelete pDtkdObjectType_ pDtkdObjectId_ pDtkdProFileId_ pDtkdName_ =
-  DynamicTargetingKeysDelete'
-    { _dtkdObjectType = pDtkdObjectType_
-    , _dtkdObjectId = _Coerce # pDtkdObjectId_
-    , _dtkdProFileId = _Coerce # pDtkdProFileId_
-    , _dtkdName = pDtkdName_
-    }
-
-
--- | Type of the object of this dynamic targeting key. This is a required
--- field.
-dtkdObjectType :: Lens' DynamicTargetingKeysDelete DynamicTargetingKeysDeleteObjectType
-dtkdObjectType
-  = lens _dtkdObjectType
-      (\ s a -> s{_dtkdObjectType = a})
-
--- | ID of the object of this dynamic targeting key. This is a required
--- field.
-dtkdObjectId :: Lens' DynamicTargetingKeysDelete Int64
-dtkdObjectId
-  = lens _dtkdObjectId (\ s a -> s{_dtkdObjectId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-dtkdProFileId :: Lens' DynamicTargetingKeysDelete Int64
-dtkdProFileId
-  = lens _dtkdProFileId
-      (\ s a -> s{_dtkdProFileId = a})
-      . _Coerce
-
--- | Name of this dynamic targeting key. This is a required field. Must be
--- less than 256 characters long and cannot contain commas. All characters
--- are converted to lowercase.
-dtkdName :: Lens' DynamicTargetingKeysDelete Text
-dtkdName = lens _dtkdName (\ s a -> s{_dtkdName = a})
-
-instance GoogleRequest DynamicTargetingKeysDelete
-         where
-        type Rs DynamicTargetingKeysDelete = ()
-        type Scopes DynamicTargetingKeysDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DynamicTargetingKeysDelete'{..}
-          = go _dtkdProFileId _dtkdObjectId (Just _dtkdName)
-              (Just _dtkdObjectType)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DynamicTargetingKeysDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Insert.hs b/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/Insert.hs
+++ /dev/null
@@ -1,114 +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.DFAReporting.DynamicTargetingKeys.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new dynamic targeting key. Keys must be created at the
--- advertiser level before being assigned to the advertiser\'s ads,
--- creatives, or placements. There is a maximum of 1000 keys per
--- advertiser, out of which a maximum of 20 keys can be assigned per ad,
--- creative, or placement.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.dynamicTargetingKeys.insert@.
-module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Insert
-    (
-    -- * REST Resource
-      DynamicTargetingKeysInsertResource
-
-    -- * Creating a Request
-    , dynamicTargetingKeysInsert
-    , DynamicTargetingKeysInsert
-
-    -- * Request Lenses
-    , dtkiProFileId
-    , dtkiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.dynamicTargetingKeys.insert@ method which the
--- 'DynamicTargetingKeysInsert' request conforms to.
-type DynamicTargetingKeysInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "dynamicTargetingKeys" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] DynamicTargetingKey :>
-                   Post '[JSON] DynamicTargetingKey
-
--- | Inserts a new dynamic targeting key. Keys must be created at the
--- advertiser level before being assigned to the advertiser\'s ads,
--- creatives, or placements. There is a maximum of 1000 keys per
--- advertiser, out of which a maximum of 20 keys can be assigned per ad,
--- creative, or placement.
---
--- /See:/ 'dynamicTargetingKeysInsert' smart constructor.
-data DynamicTargetingKeysInsert =
-  DynamicTargetingKeysInsert'
-    { _dtkiProFileId :: !(Textual Int64)
-    , _dtkiPayload   :: !DynamicTargetingKey
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DynamicTargetingKeysInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dtkiProFileId'
---
--- * 'dtkiPayload'
-dynamicTargetingKeysInsert
-    :: Int64 -- ^ 'dtkiProFileId'
-    -> DynamicTargetingKey -- ^ 'dtkiPayload'
-    -> DynamicTargetingKeysInsert
-dynamicTargetingKeysInsert pDtkiProFileId_ pDtkiPayload_ =
-  DynamicTargetingKeysInsert'
-    {_dtkiProFileId = _Coerce # pDtkiProFileId_, _dtkiPayload = pDtkiPayload_}
-
-
--- | User profile ID associated with this request.
-dtkiProFileId :: Lens' DynamicTargetingKeysInsert Int64
-dtkiProFileId
-  = lens _dtkiProFileId
-      (\ s a -> s{_dtkiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-dtkiPayload :: Lens' DynamicTargetingKeysInsert DynamicTargetingKey
-dtkiPayload
-  = lens _dtkiPayload (\ s a -> s{_dtkiPayload = a})
-
-instance GoogleRequest DynamicTargetingKeysInsert
-         where
-        type Rs DynamicTargetingKeysInsert =
-             DynamicTargetingKey
-        type Scopes DynamicTargetingKeysInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DynamicTargetingKeysInsert'{..}
-          = go _dtkiProFileId (Just AltJSON) _dtkiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DynamicTargetingKeysInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/List.hs b/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/DynamicTargetingKeys/List.hs
+++ /dev/null
@@ -1,150 +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.DFAReporting.DynamicTargetingKeys.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of dynamic targeting keys.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.dynamicTargetingKeys.list@.
-module Network.Google.Resource.DFAReporting.DynamicTargetingKeys.List
-    (
-    -- * REST Resource
-      DynamicTargetingKeysListResource
-
-    -- * Creating a Request
-    , dynamicTargetingKeysList
-    , DynamicTargetingKeysList
-
-    -- * Request Lenses
-    , dtklObjectType
-    , dtklAdvertiserId
-    , dtklObjectId
-    , dtklProFileId
-    , dtklNames
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.dynamicTargetingKeys.list@ method which the
--- 'DynamicTargetingKeysList' request conforms to.
-type DynamicTargetingKeysListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "dynamicTargetingKeys" :>
-               QueryParam "objectType"
-                 DynamicTargetingKeysListObjectType
-                 :>
-                 QueryParam "advertiserId" (Textual Int64) :>
-                   QueryParam "objectId" (Textual Int64) :>
-                     QueryParams "names" Text :>
-                       QueryParam "alt" AltJSON :>
-                         Get '[JSON] DynamicTargetingKeysListResponse
-
--- | Retrieves a list of dynamic targeting keys.
---
--- /See:/ 'dynamicTargetingKeysList' smart constructor.
-data DynamicTargetingKeysList =
-  DynamicTargetingKeysList'
-    { _dtklObjectType   :: !(Maybe DynamicTargetingKeysListObjectType)
-    , _dtklAdvertiserId :: !(Maybe (Textual Int64))
-    , _dtklObjectId     :: !(Maybe (Textual Int64))
-    , _dtklProFileId    :: !(Textual Int64)
-    , _dtklNames        :: !(Maybe [Text])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DynamicTargetingKeysList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'dtklObjectType'
---
--- * 'dtklAdvertiserId'
---
--- * 'dtklObjectId'
---
--- * 'dtklProFileId'
---
--- * 'dtklNames'
-dynamicTargetingKeysList
-    :: Int64 -- ^ 'dtklProFileId'
-    -> DynamicTargetingKeysList
-dynamicTargetingKeysList pDtklProFileId_ =
-  DynamicTargetingKeysList'
-    { _dtklObjectType = Nothing
-    , _dtklAdvertiserId = Nothing
-    , _dtklObjectId = Nothing
-    , _dtklProFileId = _Coerce # pDtklProFileId_
-    , _dtklNames = Nothing
-    }
-
-
--- | Select only dynamic targeting keys with this object type.
-dtklObjectType :: Lens' DynamicTargetingKeysList (Maybe DynamicTargetingKeysListObjectType)
-dtklObjectType
-  = lens _dtklObjectType
-      (\ s a -> s{_dtklObjectType = a})
-
--- | Select only dynamic targeting keys whose object has this advertiser ID.
-dtklAdvertiserId :: Lens' DynamicTargetingKeysList (Maybe Int64)
-dtklAdvertiserId
-  = lens _dtklAdvertiserId
-      (\ s a -> s{_dtklAdvertiserId = a})
-      . mapping _Coerce
-
--- | Select only dynamic targeting keys with this object ID.
-dtklObjectId :: Lens' DynamicTargetingKeysList (Maybe Int64)
-dtklObjectId
-  = lens _dtklObjectId (\ s a -> s{_dtklObjectId = a})
-      . mapping _Coerce
-
--- | User profile ID associated with this request.
-dtklProFileId :: Lens' DynamicTargetingKeysList Int64
-dtklProFileId
-  = lens _dtklProFileId
-      (\ s a -> s{_dtklProFileId = a})
-      . _Coerce
-
--- | Select only dynamic targeting keys exactly matching these names.
-dtklNames :: Lens' DynamicTargetingKeysList [Text]
-dtklNames
-  = lens _dtklNames (\ s a -> s{_dtklNames = a}) .
-      _Default
-      . _Coerce
-
-instance GoogleRequest DynamicTargetingKeysList where
-        type Rs DynamicTargetingKeysList =
-             DynamicTargetingKeysListResponse
-        type Scopes DynamicTargetingKeysList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient DynamicTargetingKeysList'{..}
-          = go _dtklProFileId _dtklObjectType _dtklAdvertiserId
-              _dtklObjectId
-              (_dtklNames ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy DynamicTargetingKeysListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/Delete.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/Delete.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.EventTags.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing event tag.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.delete@.
-module Network.Google.Resource.DFAReporting.EventTags.Delete
-    (
-    -- * REST Resource
-      EventTagsDeleteResource
-
-    -- * Creating a Request
-    , eventTagsDelete
-    , EventTagsDelete
-
-    -- * Request Lenses
-    , etdProFileId
-    , etdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.delete@ method which the
--- 'EventTagsDelete' request conforms to.
-type EventTagsDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing event tag.
---
--- /See:/ 'eventTagsDelete' smart constructor.
-data EventTagsDelete =
-  EventTagsDelete'
-    { _etdProFileId :: !(Textual Int64)
-    , _etdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etdProFileId'
---
--- * 'etdId'
-eventTagsDelete
-    :: Int64 -- ^ 'etdProFileId'
-    -> Int64 -- ^ 'etdId'
-    -> EventTagsDelete
-eventTagsDelete pEtdProFileId_ pEtdId_ =
-  EventTagsDelete'
-    {_etdProFileId = _Coerce # pEtdProFileId_, _etdId = _Coerce # pEtdId_}
-
-
--- | User profile ID associated with this request.
-etdProFileId :: Lens' EventTagsDelete Int64
-etdProFileId
-  = lens _etdProFileId (\ s a -> s{_etdProFileId = a})
-      . _Coerce
-
--- | Event tag ID.
-etdId :: Lens' EventTagsDelete Int64
-etdId
-  = lens _etdId (\ s a -> s{_etdId = a}) . _Coerce
-
-instance GoogleRequest EventTagsDelete where
-        type Rs EventTagsDelete = ()
-        type Scopes EventTagsDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsDelete'{..}
-          = go _etdProFileId _etdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy EventTagsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/Get.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/Get.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.DFAReporting.EventTags.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one event tag by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.get@.
-module Network.Google.Resource.DFAReporting.EventTags.Get
-    (
-    -- * REST Resource
-      EventTagsGetResource
-
-    -- * Creating a Request
-    , eventTagsGet
-    , EventTagsGet
-
-    -- * Request Lenses
-    , etgProFileId
-    , etgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.get@ method which the
--- 'EventTagsGet' request conforms to.
-type EventTagsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] EventTag
-
--- | Gets one event tag by ID.
---
--- /See:/ 'eventTagsGet' smart constructor.
-data EventTagsGet =
-  EventTagsGet'
-    { _etgProFileId :: !(Textual Int64)
-    , _etgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etgProFileId'
---
--- * 'etgId'
-eventTagsGet
-    :: Int64 -- ^ 'etgProFileId'
-    -> Int64 -- ^ 'etgId'
-    -> EventTagsGet
-eventTagsGet pEtgProFileId_ pEtgId_ =
-  EventTagsGet'
-    {_etgProFileId = _Coerce # pEtgProFileId_, _etgId = _Coerce # pEtgId_}
-
-
--- | User profile ID associated with this request.
-etgProFileId :: Lens' EventTagsGet Int64
-etgProFileId
-  = lens _etgProFileId (\ s a -> s{_etgProFileId = a})
-      . _Coerce
-
--- | Event tag ID.
-etgId :: Lens' EventTagsGet Int64
-etgId
-  = lens _etgId (\ s a -> s{_etgId = a}) . _Coerce
-
-instance GoogleRequest EventTagsGet where
-        type Rs EventTagsGet = EventTag
-        type Scopes EventTagsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsGet'{..}
-          = go _etgProFileId _etgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy EventTagsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/Insert.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.EventTags.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new event tag.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.insert@.
-module Network.Google.Resource.DFAReporting.EventTags.Insert
-    (
-    -- * REST Resource
-      EventTagsInsertResource
-
-    -- * Creating a Request
-    , eventTagsInsert
-    , EventTagsInsert
-
-    -- * Request Lenses
-    , etiProFileId
-    , etiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.insert@ method which the
--- 'EventTagsInsert' request conforms to.
-type EventTagsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] EventTag :> Post '[JSON] EventTag
-
--- | Inserts a new event tag.
---
--- /See:/ 'eventTagsInsert' smart constructor.
-data EventTagsInsert =
-  EventTagsInsert'
-    { _etiProFileId :: !(Textual Int64)
-    , _etiPayload   :: !EventTag
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etiProFileId'
---
--- * 'etiPayload'
-eventTagsInsert
-    :: Int64 -- ^ 'etiProFileId'
-    -> EventTag -- ^ 'etiPayload'
-    -> EventTagsInsert
-eventTagsInsert pEtiProFileId_ pEtiPayload_ =
-  EventTagsInsert'
-    {_etiProFileId = _Coerce # pEtiProFileId_, _etiPayload = pEtiPayload_}
-
-
--- | User profile ID associated with this request.
-etiProFileId :: Lens' EventTagsInsert Int64
-etiProFileId
-  = lens _etiProFileId (\ s a -> s{_etiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-etiPayload :: Lens' EventTagsInsert EventTag
-etiPayload
-  = lens _etiPayload (\ s a -> s{_etiPayload = a})
-
-instance GoogleRequest EventTagsInsert where
-        type Rs EventTagsInsert = EventTag
-        type Scopes EventTagsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsInsert'{..}
-          = go _etiProFileId (Just AltJSON) _etiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy EventTagsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/List.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/List.hs
+++ /dev/null
@@ -1,246 +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.DFAReporting.EventTags.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of event tags, possibly filtered.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.list@.
-module Network.Google.Resource.DFAReporting.EventTags.List
-    (
-    -- * REST Resource
-      EventTagsListResource
-
-    -- * Creating a Request
-    , eventTagsList
-    , EventTagsList
-
-    -- * Request Lenses
-    , etlDefinitionsOnly
-    , etlEventTagTypes
-    , etlEnabled
-    , etlAdvertiserId
-    , etlSearchString
-    , etlCampaignId
-    , etlIds
-    , etlProFileId
-    , etlSortOrder
-    , etlAdId
-    , etlSortField
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.list@ method which the
--- 'EventTagsList' request conforms to.
-type EventTagsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               QueryParam "definitionsOnly" Bool :>
-                 QueryParams "eventTagTypes"
-                   EventTagsListEventTagTypes
-                   :>
-                   QueryParam "enabled" Bool :>
-                     QueryParam "advertiserId" (Textual Int64) :>
-                       QueryParam "searchString" Text :>
-                         QueryParam "campaignId" (Textual Int64) :>
-                           QueryParams "ids" (Textual Int64) :>
-                             QueryParam "sortOrder" EventTagsListSortOrder :>
-                               QueryParam "adId" (Textual Int64) :>
-                                 QueryParam "sortField" EventTagsListSortField
-                                   :>
-                                   QueryParam "alt" AltJSON :>
-                                     Get '[JSON] EventTagsListResponse
-
--- | Retrieves a list of event tags, possibly filtered.
---
--- /See:/ 'eventTagsList' smart constructor.
-data EventTagsList =
-  EventTagsList'
-    { _etlDefinitionsOnly :: !(Maybe Bool)
-    , _etlEventTagTypes   :: !(Maybe [EventTagsListEventTagTypes])
-    , _etlEnabled         :: !(Maybe Bool)
-    , _etlAdvertiserId    :: !(Maybe (Textual Int64))
-    , _etlSearchString    :: !(Maybe Text)
-    , _etlCampaignId      :: !(Maybe (Textual Int64))
-    , _etlIds             :: !(Maybe [Textual Int64])
-    , _etlProFileId       :: !(Textual Int64)
-    , _etlSortOrder       :: !EventTagsListSortOrder
-    , _etlAdId            :: !(Maybe (Textual Int64))
-    , _etlSortField       :: !EventTagsListSortField
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etlDefinitionsOnly'
---
--- * 'etlEventTagTypes'
---
--- * 'etlEnabled'
---
--- * 'etlAdvertiserId'
---
--- * 'etlSearchString'
---
--- * 'etlCampaignId'
---
--- * 'etlIds'
---
--- * 'etlProFileId'
---
--- * 'etlSortOrder'
---
--- * 'etlAdId'
---
--- * 'etlSortField'
-eventTagsList
-    :: Int64 -- ^ 'etlProFileId'
-    -> EventTagsList
-eventTagsList pEtlProFileId_ =
-  EventTagsList'
-    { _etlDefinitionsOnly = Nothing
-    , _etlEventTagTypes = Nothing
-    , _etlEnabled = Nothing
-    , _etlAdvertiserId = Nothing
-    , _etlSearchString = Nothing
-    , _etlCampaignId = Nothing
-    , _etlIds = Nothing
-    , _etlProFileId = _Coerce # pEtlProFileId_
-    , _etlSortOrder = ETLSOAscending
-    , _etlAdId = Nothing
-    , _etlSortField = ETLSFID
-    }
-
-
--- | Examine only the specified campaign or advertiser\'s event tags for
--- matching selector criteria. When set to false, the parent advertiser and
--- parent campaign of the specified ad or campaign is examined as well. In
--- addition, when set to false, the status field is examined as well, along
--- with the enabledByDefault field. This parameter can not be set to true
--- when adId is specified as ads do not define their own even tags.
-etlDefinitionsOnly :: Lens' EventTagsList (Maybe Bool)
-etlDefinitionsOnly
-  = lens _etlDefinitionsOnly
-      (\ s a -> s{_etlDefinitionsOnly = a})
-
--- | Select only event tags with the specified event tag types. Event tag
--- types can be used to specify whether to use a third-party pixel, a
--- third-party JavaScript URL, or a third-party click-through URL for
--- either impression or click tracking.
-etlEventTagTypes :: Lens' EventTagsList [EventTagsListEventTagTypes]
-etlEventTagTypes
-  = lens _etlEventTagTypes
-      (\ s a -> s{_etlEventTagTypes = a})
-      . _Default
-      . _Coerce
-
--- | Select only enabled event tags. What is considered enabled or disabled
--- depends on the definitionsOnly parameter. When definitionsOnly is set to
--- true, only the specified advertiser or campaign\'s event tags\'
--- enabledByDefault field is examined. When definitionsOnly is set to
--- false, the specified ad or specified campaign\'s parent advertiser\'s or
--- parent campaign\'s event tags\' enabledByDefault and status fields are
--- examined as well.
-etlEnabled :: Lens' EventTagsList (Maybe Bool)
-etlEnabled
-  = lens _etlEnabled (\ s a -> s{_etlEnabled = a})
-
--- | Select only event tags that belong to this advertiser.
-etlAdvertiserId :: Lens' EventTagsList (Maybe Int64)
-etlAdvertiserId
-  = lens _etlAdvertiserId
-      (\ s a -> s{_etlAdvertiserId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"eventtag*2015\" will return objects with names like
--- \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"eventtag\" will match objects with name \"my eventtag\", \"eventtag
--- 2015\", or simply \"eventtag\".
-etlSearchString :: Lens' EventTagsList (Maybe Text)
-etlSearchString
-  = lens _etlSearchString
-      (\ s a -> s{_etlSearchString = a})
-
--- | Select only event tags that belong to this campaign.
-etlCampaignId :: Lens' EventTagsList (Maybe Int64)
-etlCampaignId
-  = lens _etlCampaignId
-      (\ s a -> s{_etlCampaignId = a})
-      . mapping _Coerce
-
--- | Select only event tags with these IDs.
-etlIds :: Lens' EventTagsList [Int64]
-etlIds
-  = lens _etlIds (\ s a -> s{_etlIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-etlProFileId :: Lens' EventTagsList Int64
-etlProFileId
-  = lens _etlProFileId (\ s a -> s{_etlProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-etlSortOrder :: Lens' EventTagsList EventTagsListSortOrder
-etlSortOrder
-  = lens _etlSortOrder (\ s a -> s{_etlSortOrder = a})
-
--- | Select only event tags that belong to this ad.
-etlAdId :: Lens' EventTagsList (Maybe Int64)
-etlAdId
-  = lens _etlAdId (\ s a -> s{_etlAdId = a}) .
-      mapping _Coerce
-
--- | Field by which to sort the list.
-etlSortField :: Lens' EventTagsList EventTagsListSortField
-etlSortField
-  = lens _etlSortField (\ s a -> s{_etlSortField = a})
-
-instance GoogleRequest EventTagsList where
-        type Rs EventTagsList = EventTagsListResponse
-        type Scopes EventTagsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsList'{..}
-          = go _etlProFileId _etlDefinitionsOnly
-              (_etlEventTagTypes ^. _Default)
-              _etlEnabled
-              _etlAdvertiserId
-              _etlSearchString
-              _etlCampaignId
-              (_etlIds ^. _Default)
-              (Just _etlSortOrder)
-              _etlAdId
-              (Just _etlSortField)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy EventTagsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/Patch.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/Patch.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.EventTags.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing event tag. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.patch@.
-module Network.Google.Resource.DFAReporting.EventTags.Patch
-    (
-    -- * REST Resource
-      EventTagsPatchResource
-
-    -- * Creating a Request
-    , eventTagsPatch
-    , EventTagsPatch
-
-    -- * Request Lenses
-    , etpProFileId
-    , etpPayload
-    , etpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.patch@ method which the
--- 'EventTagsPatch' request conforms to.
-type EventTagsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] EventTag :> Patch '[JSON] EventTag
-
--- | Updates an existing event tag. This method supports patch semantics.
---
--- /See:/ 'eventTagsPatch' smart constructor.
-data EventTagsPatch =
-  EventTagsPatch'
-    { _etpProFileId :: !(Textual Int64)
-    , _etpPayload   :: !EventTag
-    , _etpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etpProFileId'
---
--- * 'etpPayload'
---
--- * 'etpId'
-eventTagsPatch
-    :: Int64 -- ^ 'etpProFileId'
-    -> EventTag -- ^ 'etpPayload'
-    -> Int64 -- ^ 'etpId'
-    -> EventTagsPatch
-eventTagsPatch pEtpProFileId_ pEtpPayload_ pEtpId_ =
-  EventTagsPatch'
-    { _etpProFileId = _Coerce # pEtpProFileId_
-    , _etpPayload = pEtpPayload_
-    , _etpId = _Coerce # pEtpId_
-    }
-
-
--- | User profile ID associated with this request.
-etpProFileId :: Lens' EventTagsPatch Int64
-etpProFileId
-  = lens _etpProFileId (\ s a -> s{_etpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-etpPayload :: Lens' EventTagsPatch EventTag
-etpPayload
-  = lens _etpPayload (\ s a -> s{_etpPayload = a})
-
--- | Event tag ID.
-etpId :: Lens' EventTagsPatch Int64
-etpId
-  = lens _etpId (\ s a -> s{_etpId = a}) . _Coerce
-
-instance GoogleRequest EventTagsPatch where
-        type Rs EventTagsPatch = EventTag
-        type Scopes EventTagsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsPatch'{..}
-          = go _etpProFileId (Just _etpId) (Just AltJSON)
-              _etpPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy EventTagsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/EventTags/Update.hs b/gen/Network/Google/Resource/DFAReporting/EventTags/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/EventTags/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.EventTags.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing event tag.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.eventTags.update@.
-module Network.Google.Resource.DFAReporting.EventTags.Update
-    (
-    -- * REST Resource
-      EventTagsUpdateResource
-
-    -- * Creating a Request
-    , eventTagsUpdate
-    , EventTagsUpdate
-
-    -- * Request Lenses
-    , etuProFileId
-    , etuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.eventTags.update@ method which the
--- 'EventTagsUpdate' request conforms to.
-type EventTagsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "eventTags" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] EventTag :> Put '[JSON] EventTag
-
--- | Updates an existing event tag.
---
--- /See:/ 'eventTagsUpdate' smart constructor.
-data EventTagsUpdate =
-  EventTagsUpdate'
-    { _etuProFileId :: !(Textual Int64)
-    , _etuPayload   :: !EventTag
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'EventTagsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'etuProFileId'
---
--- * 'etuPayload'
-eventTagsUpdate
-    :: Int64 -- ^ 'etuProFileId'
-    -> EventTag -- ^ 'etuPayload'
-    -> EventTagsUpdate
-eventTagsUpdate pEtuProFileId_ pEtuPayload_ =
-  EventTagsUpdate'
-    {_etuProFileId = _Coerce # pEtuProFileId_, _etuPayload = pEtuPayload_}
-
-
--- | User profile ID associated with this request.
-etuProFileId :: Lens' EventTagsUpdate Int64
-etuProFileId
-  = lens _etuProFileId (\ s a -> s{_etuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-etuPayload :: Lens' EventTagsUpdate EventTag
-etuPayload
-  = lens _etuPayload (\ s a -> s{_etuPayload = a})
-
-instance GoogleRequest EventTagsUpdate where
-        type Rs EventTagsUpdate = EventTag
-        type Scopes EventTagsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient EventTagsUpdate'{..}
-          = go _etuProFileId (Just AltJSON) _etuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy EventTagsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Files/Get.hs b/gen/Network/Google/Resource/DFAReporting/Files/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Files/Get.hs
+++ /dev/null
@@ -1,124 +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.DFAReporting.Files.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a report file by its report ID and file ID. This method
--- supports media download.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.files.get@.
-module Network.Google.Resource.DFAReporting.Files.Get
-    (
-    -- * REST Resource
-      FilesGetResource
-
-    -- * Creating a Request
-    , filesGet
-    , FilesGet
-
-    -- * Request Lenses
-    , fgReportId
-    , fgFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.files.get@ method which the
--- 'FilesGet' request conforms to.
-type FilesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "reports" :>
-           Capture "reportId" (Textual Int64) :>
-             "files" :>
-               Capture "fileId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] File
-       :<|>
-       "dfareporting" :>
-         "v3.3" :>
-           "reports" :>
-             Capture "reportId" (Textual Int64) :>
-               "files" :>
-                 Capture "fileId" (Textual Int64) :>
-                   QueryParam "alt" AltMedia :>
-                     Get '[OctetStream] Stream
-
--- | Retrieves a report file by its report ID and file ID. This method
--- supports media download.
---
--- /See:/ 'filesGet' smart constructor.
-data FilesGet =
-  FilesGet'
-    { _fgReportId :: !(Textual Int64)
-    , _fgFileId   :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FilesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fgReportId'
---
--- * 'fgFileId'
-filesGet
-    :: Int64 -- ^ 'fgReportId'
-    -> Int64 -- ^ 'fgFileId'
-    -> FilesGet
-filesGet pFgReportId_ pFgFileId_ =
-  FilesGet'
-    {_fgReportId = _Coerce # pFgReportId_, _fgFileId = _Coerce # pFgFileId_}
-
-
--- | The ID of the report.
-fgReportId :: Lens' FilesGet Int64
-fgReportId
-  = lens _fgReportId (\ s a -> s{_fgReportId = a}) .
-      _Coerce
-
--- | The ID of the report file.
-fgFileId :: Lens' FilesGet Int64
-fgFileId
-  = lens _fgFileId (\ s a -> s{_fgFileId = a}) .
-      _Coerce
-
-instance GoogleRequest FilesGet where
-        type Rs FilesGet = File
-        type Scopes FilesGet =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient FilesGet'{..}
-          = go _fgReportId _fgFileId (Just AltJSON)
-              dFAReportingService
-          where go :<|> _
-                  = buildClient (Proxy :: Proxy FilesGetResource)
-                      mempty
-
-instance GoogleRequest (MediaDownload FilesGet) where
-        type Rs (MediaDownload FilesGet) = Stream
-        type Scopes (MediaDownload FilesGet) =
-             Scopes FilesGet
-        requestClient (MediaDownload FilesGet'{..})
-          = go _fgReportId _fgFileId (Just AltMedia)
-              dFAReportingService
-          where _ :<|> go
-                  = buildClient (Proxy :: Proxy FilesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Files/List.hs b/gen/Network/Google/Resource/DFAReporting/Files/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Files/List.hs
+++ /dev/null
@@ -1,150 +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.DFAReporting.Files.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists files for a user profile.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.files.list@.
-module Network.Google.Resource.DFAReporting.Files.List
-    (
-    -- * REST Resource
-      FilesListResource
-
-    -- * Creating a Request
-    , filesList
-    , FilesList
-
-    -- * Request Lenses
-    , flProFileId
-    , flSortOrder
-    , flScope
-    , flPageToken
-    , flSortField
-    , flMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.files.list@ method which the
--- 'FilesList' request conforms to.
-type FilesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "files" :>
-               QueryParam "sortOrder" FilesListSortOrder :>
-                 QueryParam "scope" FilesListScope :>
-                   QueryParam "pageToken" Text :>
-                     QueryParam "sortField" FilesListSortField :>
-                       QueryParam "maxResults" (Textual Int32) :>
-                         QueryParam "alt" AltJSON :> Get '[JSON] FileList
-
--- | Lists files for a user profile.
---
--- /See:/ 'filesList' smart constructor.
-data FilesList =
-  FilesList'
-    { _flProFileId  :: !(Textual Int64)
-    , _flSortOrder  :: !FilesListSortOrder
-    , _flScope      :: !FilesListScope
-    , _flPageToken  :: !(Maybe Text)
-    , _flSortField  :: !FilesListSortField
-    , _flMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FilesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'flProFileId'
---
--- * 'flSortOrder'
---
--- * 'flScope'
---
--- * 'flPageToken'
---
--- * 'flSortField'
---
--- * 'flMaxResults'
-filesList
-    :: Int64 -- ^ 'flProFileId'
-    -> FilesList
-filesList pFlProFileId_ =
-  FilesList'
-    { _flProFileId = _Coerce # pFlProFileId_
-    , _flSortOrder = FLSODescending
-    , _flScope = FLSMine
-    , _flPageToken = Nothing
-    , _flSortField = FLSFLastModifiedTime
-    , _flMaxResults = 10
-    }
-
-
--- | The DFA profile ID.
-flProFileId :: Lens' FilesList Int64
-flProFileId
-  = lens _flProFileId (\ s a -> s{_flProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-flSortOrder :: Lens' FilesList FilesListSortOrder
-flSortOrder
-  = lens _flSortOrder (\ s a -> s{_flSortOrder = a})
-
--- | The scope that defines which results are returned.
-flScope :: Lens' FilesList FilesListScope
-flScope = lens _flScope (\ s a -> s{_flScope = a})
-
--- | The value of the nextToken from the previous result page.
-flPageToken :: Lens' FilesList (Maybe Text)
-flPageToken
-  = lens _flPageToken (\ s a -> s{_flPageToken = a})
-
--- | The field by which to sort the list.
-flSortField :: Lens' FilesList FilesListSortField
-flSortField
-  = lens _flSortField (\ s a -> s{_flSortField = a})
-
--- | Maximum number of results to return.
-flMaxResults :: Lens' FilesList Int32
-flMaxResults
-  = lens _flMaxResults (\ s a -> s{_flMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest FilesList where
-        type Rs FilesList = FileList
-        type Scopes FilesList =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient FilesList'{..}
-          = go _flProFileId (Just _flSortOrder) (Just _flScope)
-              _flPageToken
-              (Just _flSortField)
-              (Just _flMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy FilesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Delete.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Delete.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.FloodlightActivities.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing floodlight activity.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.delete@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Delete
-    (
-    -- * REST Resource
-      FloodlightActivitiesDeleteResource
-
-    -- * Creating a Request
-    , floodlightActivitiesDelete
-    , FloodlightActivitiesDelete
-
-    -- * Request Lenses
-    , fadProFileId
-    , fadId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.delete@ method which the
--- 'FloodlightActivitiesDelete' request conforms to.
-type FloodlightActivitiesDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing floodlight activity.
---
--- /See:/ 'floodlightActivitiesDelete' smart constructor.
-data FloodlightActivitiesDelete =
-  FloodlightActivitiesDelete'
-    { _fadProFileId :: !(Textual Int64)
-    , _fadId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fadProFileId'
---
--- * 'fadId'
-floodlightActivitiesDelete
-    :: Int64 -- ^ 'fadProFileId'
-    -> Int64 -- ^ 'fadId'
-    -> FloodlightActivitiesDelete
-floodlightActivitiesDelete pFadProFileId_ pFadId_ =
-  FloodlightActivitiesDelete'
-    {_fadProFileId = _Coerce # pFadProFileId_, _fadId = _Coerce # pFadId_}
-
-
--- | User profile ID associated with this request.
-fadProFileId :: Lens' FloodlightActivitiesDelete Int64
-fadProFileId
-  = lens _fadProFileId (\ s a -> s{_fadProFileId = a})
-      . _Coerce
-
--- | Floodlight activity ID.
-fadId :: Lens' FloodlightActivitiesDelete Int64
-fadId
-  = lens _fadId (\ s a -> s{_fadId = a}) . _Coerce
-
-instance GoogleRequest FloodlightActivitiesDelete
-         where
-        type Rs FloodlightActivitiesDelete = ()
-        type Scopes FloodlightActivitiesDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesDelete'{..}
-          = go _fadProFileId _fadId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Generatetag.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Generatetag.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Generatetag.hs
+++ /dev/null
@@ -1,112 +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.DFAReporting.FloodlightActivities.Generatetag
--- 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)
---
--- Generates a tag for a floodlight activity.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.generatetag@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Generatetag
-    (
-    -- * REST Resource
-      FloodlightActivitiesGeneratetagResource
-
-    -- * Creating a Request
-    , floodlightActivitiesGeneratetag
-    , FloodlightActivitiesGeneratetag
-
-    -- * Request Lenses
-    , fagFloodlightActivityId
-    , fagProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.generatetag@ method which the
--- 'FloodlightActivitiesGeneratetag' request conforms to.
-type FloodlightActivitiesGeneratetagResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               "generatetag" :>
-                 QueryParam "floodlightActivityId" (Textual Int64) :>
-                   QueryParam "alt" AltJSON :>
-                     Post '[JSON] FloodlightActivitiesGenerateTagResponse
-
--- | Generates a tag for a floodlight activity.
---
--- /See:/ 'floodlightActivitiesGeneratetag' smart constructor.
-data FloodlightActivitiesGeneratetag =
-  FloodlightActivitiesGeneratetag'
-    { _fagFloodlightActivityId :: !(Maybe (Textual Int64))
-    , _fagProFileId            :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesGeneratetag' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fagFloodlightActivityId'
---
--- * 'fagProFileId'
-floodlightActivitiesGeneratetag
-    :: Int64 -- ^ 'fagProFileId'
-    -> FloodlightActivitiesGeneratetag
-floodlightActivitiesGeneratetag pFagProFileId_ =
-  FloodlightActivitiesGeneratetag'
-    { _fagFloodlightActivityId = Nothing
-    , _fagProFileId = _Coerce # pFagProFileId_
-    }
-
-
--- | Floodlight activity ID for which we want to generate a tag.
-fagFloodlightActivityId :: Lens' FloodlightActivitiesGeneratetag (Maybe Int64)
-fagFloodlightActivityId
-  = lens _fagFloodlightActivityId
-      (\ s a -> s{_fagFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | User profile ID associated with this request.
-fagProFileId :: Lens' FloodlightActivitiesGeneratetag Int64
-fagProFileId
-  = lens _fagProFileId (\ s a -> s{_fagProFileId = a})
-      . _Coerce
-
-instance GoogleRequest
-           FloodlightActivitiesGeneratetag
-         where
-        type Rs FloodlightActivitiesGeneratetag =
-             FloodlightActivitiesGenerateTagResponse
-        type Scopes FloodlightActivitiesGeneratetag =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesGeneratetag'{..}
-          = go _fagProFileId _fagFloodlightActivityId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightActivitiesGeneratetagResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Get.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.FloodlightActivities.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one floodlight activity by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.get@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Get
-    (
-    -- * REST Resource
-      FloodlightActivitiesGetResource
-
-    -- * Creating a Request
-    , floodlightActivitiesGet
-    , FloodlightActivitiesGet
-
-    -- * Request Lenses
-    , fProFileId
-    , fId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.get@ method which the
--- 'FloodlightActivitiesGet' request conforms to.
-type FloodlightActivitiesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] FloodlightActivity
-
--- | Gets one floodlight activity by ID.
---
--- /See:/ 'floodlightActivitiesGet' smart constructor.
-data FloodlightActivitiesGet =
-  FloodlightActivitiesGet'
-    { _fProFileId :: !(Textual Int64)
-    , _fId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fProFileId'
---
--- * 'fId'
-floodlightActivitiesGet
-    :: Int64 -- ^ 'fProFileId'
-    -> Int64 -- ^ 'fId'
-    -> FloodlightActivitiesGet
-floodlightActivitiesGet pFProFileId_ pFId_ =
-  FloodlightActivitiesGet'
-    {_fProFileId = _Coerce # pFProFileId_, _fId = _Coerce # pFId_}
-
-
--- | User profile ID associated with this request.
-fProFileId :: Lens' FloodlightActivitiesGet Int64
-fProFileId
-  = lens _fProFileId (\ s a -> s{_fProFileId = a}) .
-      _Coerce
-
--- | Floodlight activity ID.
-fId :: Lens' FloodlightActivitiesGet Int64
-fId = lens _fId (\ s a -> s{_fId = a}) . _Coerce
-
-instance GoogleRequest FloodlightActivitiesGet where
-        type Rs FloodlightActivitiesGet = FloodlightActivity
-        type Scopes FloodlightActivitiesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesGet'{..}
-          = go _fProFileId _fId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Insert.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Insert.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.FloodlightActivities.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new floodlight activity.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.insert@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Insert
-    (
-    -- * REST Resource
-      FloodlightActivitiesInsertResource
-
-    -- * Creating a Request
-    , floodlightActivitiesInsert
-    , FloodlightActivitiesInsert
-
-    -- * Request Lenses
-    , faiProFileId
-    , faiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.insert@ method which the
--- 'FloodlightActivitiesInsert' request conforms to.
-type FloodlightActivitiesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] FloodlightActivity :>
-                   Post '[JSON] FloodlightActivity
-
--- | Inserts a new floodlight activity.
---
--- /See:/ 'floodlightActivitiesInsert' smart constructor.
-data FloodlightActivitiesInsert =
-  FloodlightActivitiesInsert'
-    { _faiProFileId :: !(Textual Int64)
-    , _faiPayload   :: !FloodlightActivity
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faiProFileId'
---
--- * 'faiPayload'
-floodlightActivitiesInsert
-    :: Int64 -- ^ 'faiProFileId'
-    -> FloodlightActivity -- ^ 'faiPayload'
-    -> FloodlightActivitiesInsert
-floodlightActivitiesInsert pFaiProFileId_ pFaiPayload_ =
-  FloodlightActivitiesInsert'
-    {_faiProFileId = _Coerce # pFaiProFileId_, _faiPayload = pFaiPayload_}
-
-
--- | User profile ID associated with this request.
-faiProFileId :: Lens' FloodlightActivitiesInsert Int64
-faiProFileId
-  = lens _faiProFileId (\ s a -> s{_faiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-faiPayload :: Lens' FloodlightActivitiesInsert FloodlightActivity
-faiPayload
-  = lens _faiPayload (\ s a -> s{_faiPayload = a})
-
-instance GoogleRequest FloodlightActivitiesInsert
-         where
-        type Rs FloodlightActivitiesInsert =
-             FloodlightActivity
-        type Scopes FloodlightActivitiesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesInsert'{..}
-          = go _faiProFileId (Just AltJSON) _faiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/List.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/List.hs
+++ /dev/null
@@ -1,297 +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.DFAReporting.FloodlightActivities.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of floodlight activities, possibly filtered. This
--- method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.list@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.List
-    (
-    -- * REST Resource
-      FloodlightActivitiesListResource
-
-    -- * Creating a Request
-    , floodlightActivitiesList
-    , FloodlightActivitiesList
-
-    -- * Request Lenses
-    , falTagString
-    , falFloodlightActivityGroupTagString
-    , falFloodlightConfigurationId
-    , falAdvertiserId
-    , falSearchString
-    , falIds
-    , falProFileId
-    , falFloodlightActivityGroupIds
-    , falSortOrder
-    , falFloodlightActivityGroupType
-    , falFloodlightActivityGroupName
-    , falPageToken
-    , falSortField
-    , falMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.list@ method which the
--- 'FloodlightActivitiesList' request conforms to.
-type FloodlightActivitiesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               QueryParam "tagString" Text :>
-                 QueryParam "floodlightActivityGroupTagString" Text :>
-                   QueryParam "floodlightConfigurationId"
-                     (Textual Int64)
-                     :>
-                     QueryParam "advertiserId" (Textual Int64) :>
-                       QueryParam "searchString" Text :>
-                         QueryParams "ids" (Textual Int64) :>
-                           QueryParams "floodlightActivityGroupIds"
-                             (Textual Int64)
-                             :>
-                             QueryParam "sortOrder"
-                               FloodlightActivitiesListSortOrder
-                               :>
-                               QueryParam "floodlightActivityGroupType"
-                                 FloodlightActivitiesListFloodlightActivityGroupType
-                                 :>
-                                 QueryParam "floodlightActivityGroupName" Text
-                                   :>
-                                   QueryParam "pageToken" Text :>
-                                     QueryParam "sortField"
-                                       FloodlightActivitiesListSortField
-                                       :>
-                                       QueryParam "maxResults" (Textual Int32)
-                                         :>
-                                         QueryParam "alt" AltJSON :>
-                                           Get '[JSON]
-                                             FloodlightActivitiesListResponse
-
--- | Retrieves a list of floodlight activities, possibly filtered. This
--- method supports paging.
---
--- /See:/ 'floodlightActivitiesList' smart constructor.
-data FloodlightActivitiesList =
-  FloodlightActivitiesList'
-    { _falTagString                        :: !(Maybe Text)
-    , _falFloodlightActivityGroupTagString :: !(Maybe Text)
-    , _falFloodlightConfigurationId        :: !(Maybe (Textual Int64))
-    , _falAdvertiserId                     :: !(Maybe (Textual Int64))
-    , _falSearchString                     :: !(Maybe Text)
-    , _falIds                              :: !(Maybe [Textual Int64])
-    , _falProFileId                        :: !(Textual Int64)
-    , _falFloodlightActivityGroupIds       :: !(Maybe [Textual Int64])
-    , _falSortOrder                        :: !FloodlightActivitiesListSortOrder
-    , _falFloodlightActivityGroupType      :: !(Maybe FloodlightActivitiesListFloodlightActivityGroupType)
-    , _falFloodlightActivityGroupName      :: !(Maybe Text)
-    , _falPageToken                        :: !(Maybe Text)
-    , _falSortField                        :: !FloodlightActivitiesListSortField
-    , _falMaxResults                       :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'falTagString'
---
--- * 'falFloodlightActivityGroupTagString'
---
--- * 'falFloodlightConfigurationId'
---
--- * 'falAdvertiserId'
---
--- * 'falSearchString'
---
--- * 'falIds'
---
--- * 'falProFileId'
---
--- * 'falFloodlightActivityGroupIds'
---
--- * 'falSortOrder'
---
--- * 'falFloodlightActivityGroupType'
---
--- * 'falFloodlightActivityGroupName'
---
--- * 'falPageToken'
---
--- * 'falSortField'
---
--- * 'falMaxResults'
-floodlightActivitiesList
-    :: Int64 -- ^ 'falProFileId'
-    -> FloodlightActivitiesList
-floodlightActivitiesList pFalProFileId_ =
-  FloodlightActivitiesList'
-    { _falTagString = Nothing
-    , _falFloodlightActivityGroupTagString = Nothing
-    , _falFloodlightConfigurationId = Nothing
-    , _falAdvertiserId = Nothing
-    , _falSearchString = Nothing
-    , _falIds = Nothing
-    , _falProFileId = _Coerce # pFalProFileId_
-    , _falFloodlightActivityGroupIds = Nothing
-    , _falSortOrder = FALSOAscending
-    , _falFloodlightActivityGroupType = Nothing
-    , _falFloodlightActivityGroupName = Nothing
-    , _falPageToken = Nothing
-    , _falSortField = FALSFID
-    , _falMaxResults = 1000
-    }
-
-
--- | Select only floodlight activities with the specified tag string.
-falTagString :: Lens' FloodlightActivitiesList (Maybe Text)
-falTagString
-  = lens _falTagString (\ s a -> s{_falTagString = a})
-
--- | Select only floodlight activities with the specified floodlight activity
--- group tag string.
-falFloodlightActivityGroupTagString :: Lens' FloodlightActivitiesList (Maybe Text)
-falFloodlightActivityGroupTagString
-  = lens _falFloodlightActivityGroupTagString
-      (\ s a ->
-         s{_falFloodlightActivityGroupTagString = a})
-
--- | Select only floodlight activities for the specified floodlight
--- configuration ID. Must specify either ids, advertiserId, or
--- floodlightConfigurationId for a non-empty result.
-falFloodlightConfigurationId :: Lens' FloodlightActivitiesList (Maybe Int64)
-falFloodlightConfigurationId
-  = lens _falFloodlightConfigurationId
-      (\ s a -> s{_falFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Select only floodlight activities for the specified advertiser ID. Must
--- specify either ids, advertiserId, or floodlightConfigurationId for a
--- non-empty result.
-falAdvertiserId :: Lens' FloodlightActivitiesList (Maybe Int64)
-falAdvertiserId
-  = lens _falAdvertiserId
-      (\ s a -> s{_falAdvertiserId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"floodlightactivity*2015\" will return objects with names
--- like \"floodlightactivity June 2015\", \"floodlightactivity April
--- 2015\", or simply \"floodlightactivity 2015\". Most of the searches also
--- add wildcards implicitly at the start and the end of the search string.
--- For example, a search string of \"floodlightactivity\" will match
--- objects with name \"my floodlightactivity activity\",
--- \"floodlightactivity 2015\", or simply \"floodlightactivity\".
-falSearchString :: Lens' FloodlightActivitiesList (Maybe Text)
-falSearchString
-  = lens _falSearchString
-      (\ s a -> s{_falSearchString = a})
-
--- | Select only floodlight activities with the specified IDs. Must specify
--- either ids, advertiserId, or floodlightConfigurationId for a non-empty
--- result.
-falIds :: Lens' FloodlightActivitiesList [Int64]
-falIds
-  = lens _falIds (\ s a -> s{_falIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-falProFileId :: Lens' FloodlightActivitiesList Int64
-falProFileId
-  = lens _falProFileId (\ s a -> s{_falProFileId = a})
-      . _Coerce
-
--- | Select only floodlight activities with the specified floodlight activity
--- group IDs.
-falFloodlightActivityGroupIds :: Lens' FloodlightActivitiesList [Int64]
-falFloodlightActivityGroupIds
-  = lens _falFloodlightActivityGroupIds
-      (\ s a -> s{_falFloodlightActivityGroupIds = a})
-      . _Default
-      . _Coerce
-
--- | Order of sorted results.
-falSortOrder :: Lens' FloodlightActivitiesList FloodlightActivitiesListSortOrder
-falSortOrder
-  = lens _falSortOrder (\ s a -> s{_falSortOrder = a})
-
--- | Select only floodlight activities with the specified floodlight activity
--- group type.
-falFloodlightActivityGroupType :: Lens' FloodlightActivitiesList (Maybe FloodlightActivitiesListFloodlightActivityGroupType)
-falFloodlightActivityGroupType
-  = lens _falFloodlightActivityGroupType
-      (\ s a -> s{_falFloodlightActivityGroupType = a})
-
--- | Select only floodlight activities with the specified floodlight activity
--- group name.
-falFloodlightActivityGroupName :: Lens' FloodlightActivitiesList (Maybe Text)
-falFloodlightActivityGroupName
-  = lens _falFloodlightActivityGroupName
-      (\ s a -> s{_falFloodlightActivityGroupName = a})
-
--- | Value of the nextPageToken from the previous result page.
-falPageToken :: Lens' FloodlightActivitiesList (Maybe Text)
-falPageToken
-  = lens _falPageToken (\ s a -> s{_falPageToken = a})
-
--- | Field by which to sort the list.
-falSortField :: Lens' FloodlightActivitiesList FloodlightActivitiesListSortField
-falSortField
-  = lens _falSortField (\ s a -> s{_falSortField = a})
-
--- | Maximum number of results to return.
-falMaxResults :: Lens' FloodlightActivitiesList Int32
-falMaxResults
-  = lens _falMaxResults
-      (\ s a -> s{_falMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest FloodlightActivitiesList where
-        type Rs FloodlightActivitiesList =
-             FloodlightActivitiesListResponse
-        type Scopes FloodlightActivitiesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesList'{..}
-          = go _falProFileId _falTagString
-              _falFloodlightActivityGroupTagString
-              _falFloodlightConfigurationId
-              _falAdvertiserId
-              _falSearchString
-              (_falIds ^. _Default)
-              (_falFloodlightActivityGroupIds ^. _Default)
-              (Just _falSortOrder)
-              _falFloodlightActivityGroupType
-              _falFloodlightActivityGroupName
-              _falPageToken
-              (Just _falSortField)
-              (Just _falMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Patch.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Patch.hs
+++ /dev/null
@@ -1,122 +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.DFAReporting.FloodlightActivities.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight activity. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.patch@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Patch
-    (
-    -- * REST Resource
-      FloodlightActivitiesPatchResource
-
-    -- * Creating a Request
-    , floodlightActivitiesPatch
-    , FloodlightActivitiesPatch
-
-    -- * Request Lenses
-    , fapProFileId
-    , fapPayload
-    , fapId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.patch@ method which the
--- 'FloodlightActivitiesPatch' request conforms to.
-type FloodlightActivitiesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] FloodlightActivity :>
-                     Patch '[JSON] FloodlightActivity
-
--- | Updates an existing floodlight activity. This method supports patch
--- semantics.
---
--- /See:/ 'floodlightActivitiesPatch' smart constructor.
-data FloodlightActivitiesPatch =
-  FloodlightActivitiesPatch'
-    { _fapProFileId :: !(Textual Int64)
-    , _fapPayload   :: !FloodlightActivity
-    , _fapId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fapProFileId'
---
--- * 'fapPayload'
---
--- * 'fapId'
-floodlightActivitiesPatch
-    :: Int64 -- ^ 'fapProFileId'
-    -> FloodlightActivity -- ^ 'fapPayload'
-    -> Int64 -- ^ 'fapId'
-    -> FloodlightActivitiesPatch
-floodlightActivitiesPatch pFapProFileId_ pFapPayload_ pFapId_ =
-  FloodlightActivitiesPatch'
-    { _fapProFileId = _Coerce # pFapProFileId_
-    , _fapPayload = pFapPayload_
-    , _fapId = _Coerce # pFapId_
-    }
-
-
--- | User profile ID associated with this request.
-fapProFileId :: Lens' FloodlightActivitiesPatch Int64
-fapProFileId
-  = lens _fapProFileId (\ s a -> s{_fapProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fapPayload :: Lens' FloodlightActivitiesPatch FloodlightActivity
-fapPayload
-  = lens _fapPayload (\ s a -> s{_fapPayload = a})
-
--- | Floodlight activity ID.
-fapId :: Lens' FloodlightActivitiesPatch Int64
-fapId
-  = lens _fapId (\ s a -> s{_fapId = a}) . _Coerce
-
-instance GoogleRequest FloodlightActivitiesPatch
-         where
-        type Rs FloodlightActivitiesPatch =
-             FloodlightActivity
-        type Scopes FloodlightActivitiesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesPatch'{..}
-          = go _fapProFileId (Just _fapId) (Just AltJSON)
-              _fapPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Update.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivities/Update.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.FloodlightActivities.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight activity.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivities.update@.
-module Network.Google.Resource.DFAReporting.FloodlightActivities.Update
-    (
-    -- * REST Resource
-      FloodlightActivitiesUpdateResource
-
-    -- * Creating a Request
-    , floodlightActivitiesUpdate
-    , FloodlightActivitiesUpdate
-
-    -- * Request Lenses
-    , fauProFileId
-    , fauPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivities.update@ method which the
--- 'FloodlightActivitiesUpdate' request conforms to.
-type FloodlightActivitiesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivities" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] FloodlightActivity :>
-                   Put '[JSON] FloodlightActivity
-
--- | Updates an existing floodlight activity.
---
--- /See:/ 'floodlightActivitiesUpdate' smart constructor.
-data FloodlightActivitiesUpdate =
-  FloodlightActivitiesUpdate'
-    { _fauProFileId :: !(Textual Int64)
-    , _fauPayload   :: !FloodlightActivity
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivitiesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fauProFileId'
---
--- * 'fauPayload'
-floodlightActivitiesUpdate
-    :: Int64 -- ^ 'fauProFileId'
-    -> FloodlightActivity -- ^ 'fauPayload'
-    -> FloodlightActivitiesUpdate
-floodlightActivitiesUpdate pFauProFileId_ pFauPayload_ =
-  FloodlightActivitiesUpdate'
-    {_fauProFileId = _Coerce # pFauProFileId_, _fauPayload = pFauPayload_}
-
-
--- | User profile ID associated with this request.
-fauProFileId :: Lens' FloodlightActivitiesUpdate Int64
-fauProFileId
-  = lens _fauProFileId (\ s a -> s{_fauProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fauPayload :: Lens' FloodlightActivitiesUpdate FloodlightActivity
-fauPayload
-  = lens _fauPayload (\ s a -> s{_fauPayload = a})
-
-instance GoogleRequest FloodlightActivitiesUpdate
-         where
-        type Rs FloodlightActivitiesUpdate =
-             FloodlightActivity
-        type Scopes FloodlightActivitiesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivitiesUpdate'{..}
-          = go _fauProFileId (Just AltJSON) _fauPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivitiesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Get.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.FloodlightActivityGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one floodlight activity group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivityGroups.get@.
-module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Get
-    (
-    -- * REST Resource
-      FloodlightActivityGroupsGetResource
-
-    -- * Creating a Request
-    , floodlightActivityGroupsGet
-    , FloodlightActivityGroupsGet
-
-    -- * Request Lenses
-    , faggProFileId
-    , faggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivityGroups.get@ method which the
--- 'FloodlightActivityGroupsGet' request conforms to.
-type FloodlightActivityGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivityGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] FloodlightActivityGroup
-
--- | Gets one floodlight activity group by ID.
---
--- /See:/ 'floodlightActivityGroupsGet' smart constructor.
-data FloodlightActivityGroupsGet =
-  FloodlightActivityGroupsGet'
-    { _faggProFileId :: !(Textual Int64)
-    , _faggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faggProFileId'
---
--- * 'faggId'
-floodlightActivityGroupsGet
-    :: Int64 -- ^ 'faggProFileId'
-    -> Int64 -- ^ 'faggId'
-    -> FloodlightActivityGroupsGet
-floodlightActivityGroupsGet pFaggProFileId_ pFaggId_ =
-  FloodlightActivityGroupsGet'
-    {_faggProFileId = _Coerce # pFaggProFileId_, _faggId = _Coerce # pFaggId_}
-
-
--- | User profile ID associated with this request.
-faggProFileId :: Lens' FloodlightActivityGroupsGet Int64
-faggProFileId
-  = lens _faggProFileId
-      (\ s a -> s{_faggProFileId = a})
-      . _Coerce
-
--- | Floodlight activity Group ID.
-faggId :: Lens' FloodlightActivityGroupsGet Int64
-faggId
-  = lens _faggId (\ s a -> s{_faggId = a}) . _Coerce
-
-instance GoogleRequest FloodlightActivityGroupsGet
-         where
-        type Rs FloodlightActivityGroupsGet =
-             FloodlightActivityGroup
-        type Scopes FloodlightActivityGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivityGroupsGet'{..}
-          = go _faggProFileId _faggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivityGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Insert.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Insert.hs
+++ /dev/null
@@ -1,107 +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.DFAReporting.FloodlightActivityGroups.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new floodlight activity group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivityGroups.insert@.
-module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Insert
-    (
-    -- * REST Resource
-      FloodlightActivityGroupsInsertResource
-
-    -- * Creating a Request
-    , floodlightActivityGroupsInsert
-    , FloodlightActivityGroupsInsert
-
-    -- * Request Lenses
-    , fagiProFileId
-    , fagiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivityGroups.insert@ method which the
--- 'FloodlightActivityGroupsInsert' request conforms to.
-type FloodlightActivityGroupsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivityGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] FloodlightActivityGroup :>
-                   Post '[JSON] FloodlightActivityGroup
-
--- | Inserts a new floodlight activity group.
---
--- /See:/ 'floodlightActivityGroupsInsert' smart constructor.
-data FloodlightActivityGroupsInsert =
-  FloodlightActivityGroupsInsert'
-    { _fagiProFileId :: !(Textual Int64)
-    , _fagiPayload   :: !FloodlightActivityGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fagiProFileId'
---
--- * 'fagiPayload'
-floodlightActivityGroupsInsert
-    :: Int64 -- ^ 'fagiProFileId'
-    -> FloodlightActivityGroup -- ^ 'fagiPayload'
-    -> FloodlightActivityGroupsInsert
-floodlightActivityGroupsInsert pFagiProFileId_ pFagiPayload_ =
-  FloodlightActivityGroupsInsert'
-    {_fagiProFileId = _Coerce # pFagiProFileId_, _fagiPayload = pFagiPayload_}
-
-
--- | User profile ID associated with this request.
-fagiProFileId :: Lens' FloodlightActivityGroupsInsert Int64
-fagiProFileId
-  = lens _fagiProFileId
-      (\ s a -> s{_fagiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fagiPayload :: Lens' FloodlightActivityGroupsInsert FloodlightActivityGroup
-fagiPayload
-  = lens _fagiPayload (\ s a -> s{_fagiPayload = a})
-
-instance GoogleRequest FloodlightActivityGroupsInsert
-         where
-        type Rs FloodlightActivityGroupsInsert =
-             FloodlightActivityGroup
-        type Scopes FloodlightActivityGroupsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivityGroupsInsert'{..}
-          = go _fagiProFileId (Just AltJSON) _fagiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightActivityGroupsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/List.hs
+++ /dev/null
@@ -1,239 +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.DFAReporting.FloodlightActivityGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of floodlight activity groups, possibly filtered. This
--- method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivityGroups.list@.
-module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.List
-    (
-    -- * REST Resource
-      FloodlightActivityGroupsListResource
-
-    -- * Creating a Request
-    , floodlightActivityGroupsList
-    , FloodlightActivityGroupsList
-
-    -- * Request Lenses
-    , faglFloodlightConfigurationId
-    , faglAdvertiserId
-    , faglSearchString
-    , faglIds
-    , faglProFileId
-    , faglSortOrder
-    , faglPageToken
-    , faglSortField
-    , faglType
-    , faglMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivityGroups.list@ method which the
--- 'FloodlightActivityGroupsList' request conforms to.
-type FloodlightActivityGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivityGroups" :>
-               QueryParam "floodlightConfigurationId"
-                 (Textual Int64)
-                 :>
-                 QueryParam "advertiserId" (Textual Int64) :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "sortOrder"
-                         FloodlightActivityGroupsListSortOrder
-                         :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField"
-                             FloodlightActivityGroupsListSortField
-                             :>
-                             QueryParam "type" FloodlightActivityGroupsListType
-                               :>
-                               QueryParam "maxResults" (Textual Int32) :>
-                                 QueryParam "alt" AltJSON :>
-                                   Get '[JSON]
-                                     FloodlightActivityGroupsListResponse
-
--- | Retrieves a list of floodlight activity groups, possibly filtered. This
--- method supports paging.
---
--- /See:/ 'floodlightActivityGroupsList' smart constructor.
-data FloodlightActivityGroupsList =
-  FloodlightActivityGroupsList'
-    { _faglFloodlightConfigurationId :: !(Maybe (Textual Int64))
-    , _faglAdvertiserId              :: !(Maybe (Textual Int64))
-    , _faglSearchString              :: !(Maybe Text)
-    , _faglIds                       :: !(Maybe [Textual Int64])
-    , _faglProFileId                 :: !(Textual Int64)
-    , _faglSortOrder                 :: !FloodlightActivityGroupsListSortOrder
-    , _faglPageToken                 :: !(Maybe Text)
-    , _faglSortField                 :: !FloodlightActivityGroupsListSortField
-    , _faglType                      :: !(Maybe FloodlightActivityGroupsListType)
-    , _faglMaxResults                :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faglFloodlightConfigurationId'
---
--- * 'faglAdvertiserId'
---
--- * 'faglSearchString'
---
--- * 'faglIds'
---
--- * 'faglProFileId'
---
--- * 'faglSortOrder'
---
--- * 'faglPageToken'
---
--- * 'faglSortField'
---
--- * 'faglType'
---
--- * 'faglMaxResults'
-floodlightActivityGroupsList
-    :: Int64 -- ^ 'faglProFileId'
-    -> FloodlightActivityGroupsList
-floodlightActivityGroupsList pFaglProFileId_ =
-  FloodlightActivityGroupsList'
-    { _faglFloodlightConfigurationId = Nothing
-    , _faglAdvertiserId = Nothing
-    , _faglSearchString = Nothing
-    , _faglIds = Nothing
-    , _faglProFileId = _Coerce # pFaglProFileId_
-    , _faglSortOrder = FAGLSOAscending
-    , _faglPageToken = Nothing
-    , _faglSortField = FAGLSFID
-    , _faglType = Nothing
-    , _faglMaxResults = 1000
-    }
-
-
--- | Select only floodlight activity groups with the specified floodlight
--- configuration ID. Must specify either advertiserId, or
--- floodlightConfigurationId for a non-empty result.
-faglFloodlightConfigurationId :: Lens' FloodlightActivityGroupsList (Maybe Int64)
-faglFloodlightConfigurationId
-  = lens _faglFloodlightConfigurationId
-      (\ s a -> s{_faglFloodlightConfigurationId = a})
-      . mapping _Coerce
-
--- | Select only floodlight activity groups with the specified advertiser ID.
--- Must specify either advertiserId or floodlightConfigurationId for a
--- non-empty result.
-faglAdvertiserId :: Lens' FloodlightActivityGroupsList (Maybe Int64)
-faglAdvertiserId
-  = lens _faglAdvertiserId
-      (\ s a -> s{_faglAdvertiserId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"floodlightactivitygroup*2015\" will return objects with
--- names like \"floodlightactivitygroup June 2015\",
--- \"floodlightactivitygroup April 2015\", or simply
--- \"floodlightactivitygroup 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"floodlightactivitygroup\" will match
--- objects with name \"my floodlightactivitygroup activity\",
--- \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".
-faglSearchString :: Lens' FloodlightActivityGroupsList (Maybe Text)
-faglSearchString
-  = lens _faglSearchString
-      (\ s a -> s{_faglSearchString = a})
-
--- | Select only floodlight activity groups with the specified IDs. Must
--- specify either advertiserId or floodlightConfigurationId for a non-empty
--- result.
-faglIds :: Lens' FloodlightActivityGroupsList [Int64]
-faglIds
-  = lens _faglIds (\ s a -> s{_faglIds = a}) . _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-faglProFileId :: Lens' FloodlightActivityGroupsList Int64
-faglProFileId
-  = lens _faglProFileId
-      (\ s a -> s{_faglProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-faglSortOrder :: Lens' FloodlightActivityGroupsList FloodlightActivityGroupsListSortOrder
-faglSortOrder
-  = lens _faglSortOrder
-      (\ s a -> s{_faglSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-faglPageToken :: Lens' FloodlightActivityGroupsList (Maybe Text)
-faglPageToken
-  = lens _faglPageToken
-      (\ s a -> s{_faglPageToken = a})
-
--- | Field by which to sort the list.
-faglSortField :: Lens' FloodlightActivityGroupsList FloodlightActivityGroupsListSortField
-faglSortField
-  = lens _faglSortField
-      (\ s a -> s{_faglSortField = a})
-
--- | Select only floodlight activity groups with the specified floodlight
--- activity group type.
-faglType :: Lens' FloodlightActivityGroupsList (Maybe FloodlightActivityGroupsListType)
-faglType = lens _faglType (\ s a -> s{_faglType = a})
-
--- | Maximum number of results to return.
-faglMaxResults :: Lens' FloodlightActivityGroupsList Int32
-faglMaxResults
-  = lens _faglMaxResults
-      (\ s a -> s{_faglMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest FloodlightActivityGroupsList
-         where
-        type Rs FloodlightActivityGroupsList =
-             FloodlightActivityGroupsListResponse
-        type Scopes FloodlightActivityGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivityGroupsList'{..}
-          = go _faglProFileId _faglFloodlightConfigurationId
-              _faglAdvertiserId
-              _faglSearchString
-              (_faglIds ^. _Default)
-              (Just _faglSortOrder)
-              _faglPageToken
-              (Just _faglSortField)
-              _faglType
-              (Just _faglMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightActivityGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Patch.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Patch.hs
+++ /dev/null
@@ -1,124 +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.DFAReporting.FloodlightActivityGroups.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight activity group. This method supports
--- patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivityGroups.patch@.
-module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Patch
-    (
-    -- * REST Resource
-      FloodlightActivityGroupsPatchResource
-
-    -- * Creating a Request
-    , floodlightActivityGroupsPatch
-    , FloodlightActivityGroupsPatch
-
-    -- * Request Lenses
-    , fagpProFileId
-    , fagpPayload
-    , fagpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivityGroups.patch@ method which the
--- 'FloodlightActivityGroupsPatch' request conforms to.
-type FloodlightActivityGroupsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivityGroups" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] FloodlightActivityGroup :>
-                     Patch '[JSON] FloodlightActivityGroup
-
--- | Updates an existing floodlight activity group. This method supports
--- patch semantics.
---
--- /See:/ 'floodlightActivityGroupsPatch' smart constructor.
-data FloodlightActivityGroupsPatch =
-  FloodlightActivityGroupsPatch'
-    { _fagpProFileId :: !(Textual Int64)
-    , _fagpPayload   :: !FloodlightActivityGroup
-    , _fagpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fagpProFileId'
---
--- * 'fagpPayload'
---
--- * 'fagpId'
-floodlightActivityGroupsPatch
-    :: Int64 -- ^ 'fagpProFileId'
-    -> FloodlightActivityGroup -- ^ 'fagpPayload'
-    -> Int64 -- ^ 'fagpId'
-    -> FloodlightActivityGroupsPatch
-floodlightActivityGroupsPatch pFagpProFileId_ pFagpPayload_ pFagpId_ =
-  FloodlightActivityGroupsPatch'
-    { _fagpProFileId = _Coerce # pFagpProFileId_
-    , _fagpPayload = pFagpPayload_
-    , _fagpId = _Coerce # pFagpId_
-    }
-
-
--- | User profile ID associated with this request.
-fagpProFileId :: Lens' FloodlightActivityGroupsPatch Int64
-fagpProFileId
-  = lens _fagpProFileId
-      (\ s a -> s{_fagpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fagpPayload :: Lens' FloodlightActivityGroupsPatch FloodlightActivityGroup
-fagpPayload
-  = lens _fagpPayload (\ s a -> s{_fagpPayload = a})
-
--- | Floodlight activity Group ID.
-fagpId :: Lens' FloodlightActivityGroupsPatch Int64
-fagpId
-  = lens _fagpId (\ s a -> s{_fagpId = a}) . _Coerce
-
-instance GoogleRequest FloodlightActivityGroupsPatch
-         where
-        type Rs FloodlightActivityGroupsPatch =
-             FloodlightActivityGroup
-        type Scopes FloodlightActivityGroupsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivityGroupsPatch'{..}
-          = go _fagpProFileId (Just _fagpId) (Just AltJSON)
-              _fagpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightActivityGroupsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Update.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightActivityGroups/Update.hs
+++ /dev/null
@@ -1,107 +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.DFAReporting.FloodlightActivityGroups.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight activity group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightActivityGroups.update@.
-module Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Update
-    (
-    -- * REST Resource
-      FloodlightActivityGroupsUpdateResource
-
-    -- * Creating a Request
-    , floodlightActivityGroupsUpdate
-    , FloodlightActivityGroupsUpdate
-
-    -- * Request Lenses
-    , faguProFileId
-    , faguPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightActivityGroups.update@ method which the
--- 'FloodlightActivityGroupsUpdate' request conforms to.
-type FloodlightActivityGroupsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightActivityGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] FloodlightActivityGroup :>
-                   Put '[JSON] FloodlightActivityGroup
-
--- | Updates an existing floodlight activity group.
---
--- /See:/ 'floodlightActivityGroupsUpdate' smart constructor.
-data FloodlightActivityGroupsUpdate =
-  FloodlightActivityGroupsUpdate'
-    { _faguProFileId :: !(Textual Int64)
-    , _faguPayload   :: !FloodlightActivityGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightActivityGroupsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'faguProFileId'
---
--- * 'faguPayload'
-floodlightActivityGroupsUpdate
-    :: Int64 -- ^ 'faguProFileId'
-    -> FloodlightActivityGroup -- ^ 'faguPayload'
-    -> FloodlightActivityGroupsUpdate
-floodlightActivityGroupsUpdate pFaguProFileId_ pFaguPayload_ =
-  FloodlightActivityGroupsUpdate'
-    {_faguProFileId = _Coerce # pFaguProFileId_, _faguPayload = pFaguPayload_}
-
-
--- | User profile ID associated with this request.
-faguProFileId :: Lens' FloodlightActivityGroupsUpdate Int64
-faguProFileId
-  = lens _faguProFileId
-      (\ s a -> s{_faguProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-faguPayload :: Lens' FloodlightActivityGroupsUpdate FloodlightActivityGroup
-faguPayload
-  = lens _faguPayload (\ s a -> s{_faguPayload = a})
-
-instance GoogleRequest FloodlightActivityGroupsUpdate
-         where
-        type Rs FloodlightActivityGroupsUpdate =
-             FloodlightActivityGroup
-        type Scopes FloodlightActivityGroupsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightActivityGroupsUpdate'{..}
-          = go _faguProFileId (Just AltJSON) _faguPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightActivityGroupsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Get.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Get.hs
+++ /dev/null
@@ -1,105 +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.DFAReporting.FloodlightConfigurations.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one floodlight configuration by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightConfigurations.get@.
-module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Get
-    (
-    -- * REST Resource
-      FloodlightConfigurationsGetResource
-
-    -- * Creating a Request
-    , floodlightConfigurationsGet
-    , FloodlightConfigurationsGet
-
-    -- * Request Lenses
-    , fcgProFileId
-    , fcgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightConfigurations.get@ method which the
--- 'FloodlightConfigurationsGet' request conforms to.
-type FloodlightConfigurationsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightConfigurations" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] FloodlightConfiguration
-
--- | Gets one floodlight configuration by ID.
---
--- /See:/ 'floodlightConfigurationsGet' smart constructor.
-data FloodlightConfigurationsGet =
-  FloodlightConfigurationsGet'
-    { _fcgProFileId :: !(Textual Int64)
-    , _fcgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfigurationsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcgProFileId'
---
--- * 'fcgId'
-floodlightConfigurationsGet
-    :: Int64 -- ^ 'fcgProFileId'
-    -> Int64 -- ^ 'fcgId'
-    -> FloodlightConfigurationsGet
-floodlightConfigurationsGet pFcgProFileId_ pFcgId_ =
-  FloodlightConfigurationsGet'
-    {_fcgProFileId = _Coerce # pFcgProFileId_, _fcgId = _Coerce # pFcgId_}
-
-
--- | User profile ID associated with this request.
-fcgProFileId :: Lens' FloodlightConfigurationsGet Int64
-fcgProFileId
-  = lens _fcgProFileId (\ s a -> s{_fcgProFileId = a})
-      . _Coerce
-
--- | Floodlight configuration ID.
-fcgId :: Lens' FloodlightConfigurationsGet Int64
-fcgId
-  = lens _fcgId (\ s a -> s{_fcgId = a}) . _Coerce
-
-instance GoogleRequest FloodlightConfigurationsGet
-         where
-        type Rs FloodlightConfigurationsGet =
-             FloodlightConfiguration
-        type Scopes FloodlightConfigurationsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightConfigurationsGet'{..}
-          = go _fcgProFileId _fcgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightConfigurationsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/List.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/List.hs
+++ /dev/null
@@ -1,107 +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.DFAReporting.FloodlightConfigurations.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of floodlight configurations, possibly filtered.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightConfigurations.list@.
-module Network.Google.Resource.DFAReporting.FloodlightConfigurations.List
-    (
-    -- * REST Resource
-      FloodlightConfigurationsListResource
-
-    -- * Creating a Request
-    , floodlightConfigurationsList
-    , FloodlightConfigurationsList
-
-    -- * Request Lenses
-    , fclIds
-    , fclProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightConfigurations.list@ method which the
--- 'FloodlightConfigurationsList' request conforms to.
-type FloodlightConfigurationsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightConfigurations" :>
-               QueryParams "ids" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] FloodlightConfigurationsListResponse
-
--- | Retrieves a list of floodlight configurations, possibly filtered.
---
--- /See:/ 'floodlightConfigurationsList' smart constructor.
-data FloodlightConfigurationsList =
-  FloodlightConfigurationsList'
-    { _fclIds       :: !(Maybe [Textual Int64])
-    , _fclProFileId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfigurationsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fclIds'
---
--- * 'fclProFileId'
-floodlightConfigurationsList
-    :: Int64 -- ^ 'fclProFileId'
-    -> FloodlightConfigurationsList
-floodlightConfigurationsList pFclProFileId_ =
-  FloodlightConfigurationsList'
-    {_fclIds = Nothing, _fclProFileId = _Coerce # pFclProFileId_}
-
-
--- | Set of IDs of floodlight configurations to retrieve. Required field;
--- otherwise an empty list will be returned.
-fclIds :: Lens' FloodlightConfigurationsList [Int64]
-fclIds
-  = lens _fclIds (\ s a -> s{_fclIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-fclProFileId :: Lens' FloodlightConfigurationsList Int64
-fclProFileId
-  = lens _fclProFileId (\ s a -> s{_fclProFileId = a})
-      . _Coerce
-
-instance GoogleRequest FloodlightConfigurationsList
-         where
-        type Rs FloodlightConfigurationsList =
-             FloodlightConfigurationsListResponse
-        type Scopes FloodlightConfigurationsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightConfigurationsList'{..}
-          = go _fclProFileId (_fclIds ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy FloodlightConfigurationsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Patch.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Patch.hs
+++ /dev/null
@@ -1,123 +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.DFAReporting.FloodlightConfigurations.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight configuration. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightConfigurations.patch@.
-module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Patch
-    (
-    -- * REST Resource
-      FloodlightConfigurationsPatchResource
-
-    -- * Creating a Request
-    , floodlightConfigurationsPatch
-    , FloodlightConfigurationsPatch
-
-    -- * Request Lenses
-    , fcpProFileId
-    , fcpPayload
-    , fcpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightConfigurations.patch@ method which the
--- 'FloodlightConfigurationsPatch' request conforms to.
-type FloodlightConfigurationsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightConfigurations" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] FloodlightConfiguration :>
-                     Patch '[JSON] FloodlightConfiguration
-
--- | Updates an existing floodlight configuration. This method supports patch
--- semantics.
---
--- /See:/ 'floodlightConfigurationsPatch' smart constructor.
-data FloodlightConfigurationsPatch =
-  FloodlightConfigurationsPatch'
-    { _fcpProFileId :: !(Textual Int64)
-    , _fcpPayload   :: !FloodlightConfiguration
-    , _fcpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfigurationsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcpProFileId'
---
--- * 'fcpPayload'
---
--- * 'fcpId'
-floodlightConfigurationsPatch
-    :: Int64 -- ^ 'fcpProFileId'
-    -> FloodlightConfiguration -- ^ 'fcpPayload'
-    -> Int64 -- ^ 'fcpId'
-    -> FloodlightConfigurationsPatch
-floodlightConfigurationsPatch pFcpProFileId_ pFcpPayload_ pFcpId_ =
-  FloodlightConfigurationsPatch'
-    { _fcpProFileId = _Coerce # pFcpProFileId_
-    , _fcpPayload = pFcpPayload_
-    , _fcpId = _Coerce # pFcpId_
-    }
-
-
--- | User profile ID associated with this request.
-fcpProFileId :: Lens' FloodlightConfigurationsPatch Int64
-fcpProFileId
-  = lens _fcpProFileId (\ s a -> s{_fcpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fcpPayload :: Lens' FloodlightConfigurationsPatch FloodlightConfiguration
-fcpPayload
-  = lens _fcpPayload (\ s a -> s{_fcpPayload = a})
-
--- | Floodlight configuration ID.
-fcpId :: Lens' FloodlightConfigurationsPatch Int64
-fcpId
-  = lens _fcpId (\ s a -> s{_fcpId = a}) . _Coerce
-
-instance GoogleRequest FloodlightConfigurationsPatch
-         where
-        type Rs FloodlightConfigurationsPatch =
-             FloodlightConfiguration
-        type Scopes FloodlightConfigurationsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightConfigurationsPatch'{..}
-          = go _fcpProFileId (Just _fcpId) (Just AltJSON)
-              _fcpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightConfigurationsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Update.hs b/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/FloodlightConfigurations/Update.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.FloodlightConfigurations.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing floodlight configuration.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.floodlightConfigurations.update@.
-module Network.Google.Resource.DFAReporting.FloodlightConfigurations.Update
-    (
-    -- * REST Resource
-      FloodlightConfigurationsUpdateResource
-
-    -- * Creating a Request
-    , floodlightConfigurationsUpdate
-    , FloodlightConfigurationsUpdate
-
-    -- * Request Lenses
-    , fcuProFileId
-    , fcuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.floodlightConfigurations.update@ method which the
--- 'FloodlightConfigurationsUpdate' request conforms to.
-type FloodlightConfigurationsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "floodlightConfigurations" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] FloodlightConfiguration :>
-                   Put '[JSON] FloodlightConfiguration
-
--- | Updates an existing floodlight configuration.
---
--- /See:/ 'floodlightConfigurationsUpdate' smart constructor.
-data FloodlightConfigurationsUpdate =
-  FloodlightConfigurationsUpdate'
-    { _fcuProFileId :: !(Textual Int64)
-    , _fcuPayload   :: !FloodlightConfiguration
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FloodlightConfigurationsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fcuProFileId'
---
--- * 'fcuPayload'
-floodlightConfigurationsUpdate
-    :: Int64 -- ^ 'fcuProFileId'
-    -> FloodlightConfiguration -- ^ 'fcuPayload'
-    -> FloodlightConfigurationsUpdate
-floodlightConfigurationsUpdate pFcuProFileId_ pFcuPayload_ =
-  FloodlightConfigurationsUpdate'
-    {_fcuProFileId = _Coerce # pFcuProFileId_, _fcuPayload = pFcuPayload_}
-
-
--- | User profile ID associated with this request.
-fcuProFileId :: Lens' FloodlightConfigurationsUpdate Int64
-fcuProFileId
-  = lens _fcuProFileId (\ s a -> s{_fcuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-fcuPayload :: Lens' FloodlightConfigurationsUpdate FloodlightConfiguration
-fcuPayload
-  = lens _fcuPayload (\ s a -> s{_fcuPayload = a})
-
-instance GoogleRequest FloodlightConfigurationsUpdate
-         where
-        type Rs FloodlightConfigurationsUpdate =
-             FloodlightConfiguration
-        type Scopes FloodlightConfigurationsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient FloodlightConfigurationsUpdate'{..}
-          = go _fcuProFileId (Just AltJSON) _fcuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy FloodlightConfigurationsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/InventoryItems/Get.hs b/gen/Network/Google/Resource/DFAReporting/InventoryItems/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/InventoryItems/Get.hs
+++ /dev/null
@@ -1,119 +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.DFAReporting.InventoryItems.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one inventory item by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.inventoryItems.get@.
-module Network.Google.Resource.DFAReporting.InventoryItems.Get
-    (
-    -- * REST Resource
-      InventoryItemsGetResource
-
-    -- * Creating a Request
-    , inventoryItemsGet
-    , InventoryItemsGet
-
-    -- * Request Lenses
-    , iigProFileId
-    , iigId
-    , iigProjectId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.inventoryItems.get@ method which the
--- 'InventoryItemsGet' request conforms to.
-type InventoryItemsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "inventoryItems" :>
-                   Capture "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :> Get '[JSON] InventoryItem
-
--- | Gets one inventory item by ID.
---
--- /See:/ 'inventoryItemsGet' smart constructor.
-data InventoryItemsGet =
-  InventoryItemsGet'
-    { _iigProFileId :: !(Textual Int64)
-    , _iigId        :: !(Textual Int64)
-    , _iigProjectId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'InventoryItemsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'iigProFileId'
---
--- * 'iigId'
---
--- * 'iigProjectId'
-inventoryItemsGet
-    :: Int64 -- ^ 'iigProFileId'
-    -> Int64 -- ^ 'iigId'
-    -> Int64 -- ^ 'iigProjectId'
-    -> InventoryItemsGet
-inventoryItemsGet pIigProFileId_ pIigId_ pIigProjectId_ =
-  InventoryItemsGet'
-    { _iigProFileId = _Coerce # pIigProFileId_
-    , _iigId = _Coerce # pIigId_
-    , _iigProjectId = _Coerce # pIigProjectId_
-    }
-
-
--- | User profile ID associated with this request.
-iigProFileId :: Lens' InventoryItemsGet Int64
-iigProFileId
-  = lens _iigProFileId (\ s a -> s{_iigProFileId = a})
-      . _Coerce
-
--- | Inventory item ID.
-iigId :: Lens' InventoryItemsGet Int64
-iigId
-  = lens _iigId (\ s a -> s{_iigId = a}) . _Coerce
-
--- | Project ID for order documents.
-iigProjectId :: Lens' InventoryItemsGet Int64
-iigProjectId
-  = lens _iigProjectId (\ s a -> s{_iigProjectId = a})
-      . _Coerce
-
-instance GoogleRequest InventoryItemsGet where
-        type Rs InventoryItemsGet = InventoryItem
-        type Scopes InventoryItemsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient InventoryItemsGet'{..}
-          = go _iigProFileId _iigProjectId _iigId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy InventoryItemsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/InventoryItems/List.hs b/gen/Network/Google/Resource/DFAReporting/InventoryItems/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/InventoryItems/List.hs
+++ /dev/null
@@ -1,225 +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.DFAReporting.InventoryItems.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of inventory items, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.inventoryItems.list@.
-module Network.Google.Resource.DFAReporting.InventoryItems.List
-    (
-    -- * REST Resource
-      InventoryItemsListResource
-
-    -- * Creating a Request
-    , inventoryItemsList
-    , InventoryItemsList
-
-    -- * Request Lenses
-    , iilIds
-    , iilProFileId
-    , iilSortOrder
-    , iilInPlan
-    , iilPageToken
-    , iilProjectId
-    , iilSortField
-    , iilType
-    , iilOrderId
-    , iilSiteId
-    , iilMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.inventoryItems.list@ method which the
--- 'InventoryItemsList' request conforms to.
-type InventoryItemsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "inventoryItems" :>
-                   QueryParams "ids" (Textual Int64) :>
-                     QueryParam "sortOrder" InventoryItemsListSortOrder :>
-                       QueryParam "inPlan" Bool :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField" InventoryItemsListSortField :>
-                             QueryParam "type" InventoryItemsListType :>
-                               QueryParams "orderId" (Textual Int64) :>
-                                 QueryParams "siteId" (Textual Int64) :>
-                                   QueryParam "maxResults" (Textual Int32) :>
-                                     QueryParam "alt" AltJSON :>
-                                       Get '[JSON] InventoryItemsListResponse
-
--- | Retrieves a list of inventory items, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'inventoryItemsList' smart constructor.
-data InventoryItemsList =
-  InventoryItemsList'
-    { _iilIds        :: !(Maybe [Textual Int64])
-    , _iilProFileId  :: !(Textual Int64)
-    , _iilSortOrder  :: !InventoryItemsListSortOrder
-    , _iilInPlan     :: !(Maybe Bool)
-    , _iilPageToken  :: !(Maybe Text)
-    , _iilProjectId  :: !(Textual Int64)
-    , _iilSortField  :: !InventoryItemsListSortField
-    , _iilType       :: !(Maybe InventoryItemsListType)
-    , _iilOrderId    :: !(Maybe [Textual Int64])
-    , _iilSiteId     :: !(Maybe [Textual Int64])
-    , _iilMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'InventoryItemsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'iilIds'
---
--- * 'iilProFileId'
---
--- * 'iilSortOrder'
---
--- * 'iilInPlan'
---
--- * 'iilPageToken'
---
--- * 'iilProjectId'
---
--- * 'iilSortField'
---
--- * 'iilType'
---
--- * 'iilOrderId'
---
--- * 'iilSiteId'
---
--- * 'iilMaxResults'
-inventoryItemsList
-    :: Int64 -- ^ 'iilProFileId'
-    -> Int64 -- ^ 'iilProjectId'
-    -> InventoryItemsList
-inventoryItemsList pIilProFileId_ pIilProjectId_ =
-  InventoryItemsList'
-    { _iilIds = Nothing
-    , _iilProFileId = _Coerce # pIilProFileId_
-    , _iilSortOrder = IILSOAscending
-    , _iilInPlan = Nothing
-    , _iilPageToken = Nothing
-    , _iilProjectId = _Coerce # pIilProjectId_
-    , _iilSortField = IILSFID
-    , _iilType = Nothing
-    , _iilOrderId = Nothing
-    , _iilSiteId = Nothing
-    , _iilMaxResults = 1000
-    }
-
-
--- | Select only inventory items with these IDs.
-iilIds :: Lens' InventoryItemsList [Int64]
-iilIds
-  = lens _iilIds (\ s a -> s{_iilIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-iilProFileId :: Lens' InventoryItemsList Int64
-iilProFileId
-  = lens _iilProFileId (\ s a -> s{_iilProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-iilSortOrder :: Lens' InventoryItemsList InventoryItemsListSortOrder
-iilSortOrder
-  = lens _iilSortOrder (\ s a -> s{_iilSortOrder = a})
-
--- | Select only inventory items that are in plan.
-iilInPlan :: Lens' InventoryItemsList (Maybe Bool)
-iilInPlan
-  = lens _iilInPlan (\ s a -> s{_iilInPlan = a})
-
--- | Value of the nextPageToken from the previous result page.
-iilPageToken :: Lens' InventoryItemsList (Maybe Text)
-iilPageToken
-  = lens _iilPageToken (\ s a -> s{_iilPageToken = a})
-
--- | Project ID for order documents.
-iilProjectId :: Lens' InventoryItemsList Int64
-iilProjectId
-  = lens _iilProjectId (\ s a -> s{_iilProjectId = a})
-      . _Coerce
-
--- | Field by which to sort the list.
-iilSortField :: Lens' InventoryItemsList InventoryItemsListSortField
-iilSortField
-  = lens _iilSortField (\ s a -> s{_iilSortField = a})
-
--- | Select only inventory items with this type.
-iilType :: Lens' InventoryItemsList (Maybe InventoryItemsListType)
-iilType = lens _iilType (\ s a -> s{_iilType = a})
-
--- | Select only inventory items that belong to specified orders.
-iilOrderId :: Lens' InventoryItemsList [Int64]
-iilOrderId
-  = lens _iilOrderId (\ s a -> s{_iilOrderId = a}) .
-      _Default
-      . _Coerce
-
--- | Select only inventory items that are associated with these sites.
-iilSiteId :: Lens' InventoryItemsList [Int64]
-iilSiteId
-  = lens _iilSiteId (\ s a -> s{_iilSiteId = a}) .
-      _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-iilMaxResults :: Lens' InventoryItemsList Int32
-iilMaxResults
-  = lens _iilMaxResults
-      (\ s a -> s{_iilMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest InventoryItemsList where
-        type Rs InventoryItemsList =
-             InventoryItemsListResponse
-        type Scopes InventoryItemsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient InventoryItemsList'{..}
-          = go _iilProFileId _iilProjectId
-              (_iilIds ^. _Default)
-              (Just _iilSortOrder)
-              _iilInPlan
-              _iilPageToken
-              (Just _iilSortField)
-              _iilType
-              (_iilOrderId ^. _Default)
-              (_iilSiteId ^. _Default)
-              (Just _iilMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy InventoryItemsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Languages/List.hs b/gen/Network/Google/Resource/DFAReporting/Languages/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Languages/List.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.DFAReporting.Languages.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of languages.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.languages.list@.
-module Network.Google.Resource.DFAReporting.Languages.List
-    (
-    -- * REST Resource
-      LanguagesListResource
-
-    -- * Creating a Request
-    , languagesList
-    , LanguagesList
-
-    -- * Request Lenses
-    , llProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.languages.list@ method which the
--- 'LanguagesList' request conforms to.
-type LanguagesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "languages" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] LanguagesListResponse
-
--- | Retrieves a list of languages.
---
--- /See:/ 'languagesList' smart constructor.
-newtype LanguagesList =
-  LanguagesList'
-    { _llProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'LanguagesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'llProFileId'
-languagesList
-    :: Int64 -- ^ 'llProFileId'
-    -> LanguagesList
-languagesList pLlProFileId_ =
-  LanguagesList' {_llProFileId = _Coerce # pLlProFileId_}
-
-
--- | User profile ID associated with this request.
-llProFileId :: Lens' LanguagesList Int64
-llProFileId
-  = lens _llProFileId (\ s a -> s{_llProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest LanguagesList where
-        type Rs LanguagesList = LanguagesListResponse
-        type Scopes LanguagesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient LanguagesList'{..}
-          = go _llProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy LanguagesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Metros/List.hs b/gen/Network/Google/Resource/DFAReporting/Metros/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Metros/List.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.DFAReporting.Metros.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of metros.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.metros.list@.
-module Network.Google.Resource.DFAReporting.Metros.List
-    (
-    -- * REST Resource
-      MetrosListResource
-
-    -- * Creating a Request
-    , metrosList
-    , MetrosList
-
-    -- * Request Lenses
-    , mlProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.metros.list@ method which the
--- 'MetrosList' request conforms to.
-type MetrosListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "metros" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] MetrosListResponse
-
--- | Retrieves a list of metros.
---
--- /See:/ 'metrosList' smart constructor.
-newtype MetrosList =
-  MetrosList'
-    { _mlProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MetrosList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mlProFileId'
-metrosList
-    :: Int64 -- ^ 'mlProFileId'
-    -> MetrosList
-metrosList pMlProFileId_ = MetrosList' {_mlProFileId = _Coerce # pMlProFileId_}
-
-
--- | User profile ID associated with this request.
-mlProFileId :: Lens' MetrosList Int64
-mlProFileId
-  = lens _mlProFileId (\ s a -> s{_mlProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest MetrosList where
-        type Rs MetrosList = MetrosListResponse
-        type Scopes MetrosList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient MetrosList'{..}
-          = go _mlProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy MetrosListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/MobileApps/Get.hs b/gen/Network/Google/Resource/DFAReporting/MobileApps/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/MobileApps/Get.hs
+++ /dev/null
@@ -1,99 +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.DFAReporting.MobileApps.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one mobile app by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.mobileApps.get@.
-module Network.Google.Resource.DFAReporting.MobileApps.Get
-    (
-    -- * REST Resource
-      MobileAppsGetResource
-
-    -- * Creating a Request
-    , mobileAppsGet
-    , MobileAppsGet
-
-    -- * Request Lenses
-    , magProFileId
-    , magId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.mobileApps.get@ method which the
--- 'MobileAppsGet' request conforms to.
-type MobileAppsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "mobileApps" :>
-               Capture "id" Text :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] MobileApp
-
--- | Gets one mobile app by ID.
---
--- /See:/ 'mobileAppsGet' smart constructor.
-data MobileAppsGet =
-  MobileAppsGet'
-    { _magProFileId :: !(Textual Int64)
-    , _magId        :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileAppsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'magProFileId'
---
--- * 'magId'
-mobileAppsGet
-    :: Int64 -- ^ 'magProFileId'
-    -> Text -- ^ 'magId'
-    -> MobileAppsGet
-mobileAppsGet pMagProFileId_ pMagId_ =
-  MobileAppsGet' {_magProFileId = _Coerce # pMagProFileId_, _magId = pMagId_}
-
-
--- | User profile ID associated with this request.
-magProFileId :: Lens' MobileAppsGet Int64
-magProFileId
-  = lens _magProFileId (\ s a -> s{_magProFileId = a})
-      . _Coerce
-
--- | Mobile app ID.
-magId :: Lens' MobileAppsGet Text
-magId = lens _magId (\ s a -> s{_magId = a})
-
-instance GoogleRequest MobileAppsGet where
-        type Rs MobileAppsGet = MobileApp
-        type Scopes MobileAppsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient MobileAppsGet'{..}
-          = go _magProFileId _magId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy MobileAppsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/MobileApps/List.hs b/gen/Network/Google/Resource/DFAReporting/MobileApps/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/MobileApps/List.hs
+++ /dev/null
@@ -1,165 +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.DFAReporting.MobileApps.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves list of available mobile apps.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.mobileApps.list@.
-module Network.Google.Resource.DFAReporting.MobileApps.List
-    (
-    -- * REST Resource
-      MobileAppsListResource
-
-    -- * Creating a Request
-    , mobileAppsList
-    , MobileAppsList
-
-    -- * Request Lenses
-    , malDirectories
-    , malSearchString
-    , malIds
-    , malProFileId
-    , malPageToken
-    , malMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.mobileApps.list@ method which the
--- 'MobileAppsList' request conforms to.
-type MobileAppsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "mobileApps" :>
-               QueryParams "directories" MobileAppsListDirectories
-                 :>
-                 QueryParam "searchString" Text :>
-                   QueryParams "ids" Text :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "maxResults" (Textual Int32) :>
-                         QueryParam "alt" AltJSON :>
-                           Get '[JSON] MobileAppsListResponse
-
--- | Retrieves list of available mobile apps.
---
--- /See:/ 'mobileAppsList' smart constructor.
-data MobileAppsList =
-  MobileAppsList'
-    { _malDirectories  :: !(Maybe [MobileAppsListDirectories])
-    , _malSearchString :: !(Maybe Text)
-    , _malIds          :: !(Maybe [Text])
-    , _malProFileId    :: !(Textual Int64)
-    , _malPageToken    :: !(Maybe Text)
-    , _malMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileAppsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'malDirectories'
---
--- * 'malSearchString'
---
--- * 'malIds'
---
--- * 'malProFileId'
---
--- * 'malPageToken'
---
--- * 'malMaxResults'
-mobileAppsList
-    :: Int64 -- ^ 'malProFileId'
-    -> MobileAppsList
-mobileAppsList pMalProFileId_ =
-  MobileAppsList'
-    { _malDirectories = Nothing
-    , _malSearchString = Nothing
-    , _malIds = Nothing
-    , _malProFileId = _Coerce # pMalProFileId_
-    , _malPageToken = Nothing
-    , _malMaxResults = 1000
-    }
-
-
--- | Select only apps from these directories.
-malDirectories :: Lens' MobileAppsList [MobileAppsListDirectories]
-malDirectories
-  = lens _malDirectories
-      (\ s a -> s{_malDirectories = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"app*2015\" will return objects with names like \"app Jan
--- 2018\", \"app Jan 2018\", or simply \"app 2018\". Most of the searches
--- also add wildcards implicitly at the start and the end of the search
--- string. For example, a search string of \"app\" will match objects with
--- name \"my app\", \"app 2018\", or simply \"app\".
-malSearchString :: Lens' MobileAppsList (Maybe Text)
-malSearchString
-  = lens _malSearchString
-      (\ s a -> s{_malSearchString = a})
-
--- | Select only apps with these IDs.
-malIds :: Lens' MobileAppsList [Text]
-malIds
-  = lens _malIds (\ s a -> s{_malIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-malProFileId :: Lens' MobileAppsList Int64
-malProFileId
-  = lens _malProFileId (\ s a -> s{_malProFileId = a})
-      . _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-malPageToken :: Lens' MobileAppsList (Maybe Text)
-malPageToken
-  = lens _malPageToken (\ s a -> s{_malPageToken = a})
-
--- | Maximum number of results to return.
-malMaxResults :: Lens' MobileAppsList Int32
-malMaxResults
-  = lens _malMaxResults
-      (\ s a -> s{_malMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest MobileAppsList where
-        type Rs MobileAppsList = MobileAppsListResponse
-        type Scopes MobileAppsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient MobileAppsList'{..}
-          = go _malProFileId (_malDirectories ^. _Default)
-              _malSearchString
-              (_malIds ^. _Default)
-              _malPageToken
-              (Just _malMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy MobileAppsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/MobileCarriers/Get.hs b/gen/Network/Google/Resource/DFAReporting/MobileCarriers/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/MobileCarriers/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.MobileCarriers.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one mobile carrier by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.mobileCarriers.get@.
-module Network.Google.Resource.DFAReporting.MobileCarriers.Get
-    (
-    -- * REST Resource
-      MobileCarriersGetResource
-
-    -- * Creating a Request
-    , mobileCarriersGet
-    , MobileCarriersGet
-
-    -- * Request Lenses
-    , mcgProFileId
-    , mcgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.mobileCarriers.get@ method which the
--- 'MobileCarriersGet' request conforms to.
-type MobileCarriersGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "mobileCarriers" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] MobileCarrier
-
--- | Gets one mobile carrier by ID.
---
--- /See:/ 'mobileCarriersGet' smart constructor.
-data MobileCarriersGet =
-  MobileCarriersGet'
-    { _mcgProFileId :: !(Textual Int64)
-    , _mcgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileCarriersGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mcgProFileId'
---
--- * 'mcgId'
-mobileCarriersGet
-    :: Int64 -- ^ 'mcgProFileId'
-    -> Int64 -- ^ 'mcgId'
-    -> MobileCarriersGet
-mobileCarriersGet pMcgProFileId_ pMcgId_ =
-  MobileCarriersGet'
-    {_mcgProFileId = _Coerce # pMcgProFileId_, _mcgId = _Coerce # pMcgId_}
-
-
--- | User profile ID associated with this request.
-mcgProFileId :: Lens' MobileCarriersGet Int64
-mcgProFileId
-  = lens _mcgProFileId (\ s a -> s{_mcgProFileId = a})
-      . _Coerce
-
--- | Mobile carrier ID.
-mcgId :: Lens' MobileCarriersGet Int64
-mcgId
-  = lens _mcgId (\ s a -> s{_mcgId = a}) . _Coerce
-
-instance GoogleRequest MobileCarriersGet where
-        type Rs MobileCarriersGet = MobileCarrier
-        type Scopes MobileCarriersGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient MobileCarriersGet'{..}
-          = go _mcgProFileId _mcgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy MobileCarriersGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/MobileCarriers/List.hs b/gen/Network/Google/Resource/DFAReporting/MobileCarriers/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/MobileCarriers/List.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.MobileCarriers.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of mobile carriers.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.mobileCarriers.list@.
-module Network.Google.Resource.DFAReporting.MobileCarriers.List
-    (
-    -- * REST Resource
-      MobileCarriersListResource
-
-    -- * Creating a Request
-    , mobileCarriersList
-    , MobileCarriersList
-
-    -- * Request Lenses
-    , mclProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.mobileCarriers.list@ method which the
--- 'MobileCarriersList' request conforms to.
-type MobileCarriersListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "mobileCarriers" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] MobileCarriersListResponse
-
--- | Retrieves a list of mobile carriers.
---
--- /See:/ 'mobileCarriersList' smart constructor.
-newtype MobileCarriersList =
-  MobileCarriersList'
-    { _mclProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileCarriersList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mclProFileId'
-mobileCarriersList
-    :: Int64 -- ^ 'mclProFileId'
-    -> MobileCarriersList
-mobileCarriersList pMclProFileId_ =
-  MobileCarriersList' {_mclProFileId = _Coerce # pMclProFileId_}
-
-
--- | User profile ID associated with this request.
-mclProFileId :: Lens' MobileCarriersList Int64
-mclProFileId
-  = lens _mclProFileId (\ s a -> s{_mclProFileId = a})
-      . _Coerce
-
-instance GoogleRequest MobileCarriersList where
-        type Rs MobileCarriersList =
-             MobileCarriersListResponse
-        type Scopes MobileCarriersList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient MobileCarriersList'{..}
-          = go _mclProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy MobileCarriersListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/Get.hs b/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/Get.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.OperatingSystemVersions.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one operating system version by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.operatingSystemVersions.get@.
-module Network.Google.Resource.DFAReporting.OperatingSystemVersions.Get
-    (
-    -- * REST Resource
-      OperatingSystemVersionsGetResource
-
-    -- * Creating a Request
-    , operatingSystemVersionsGet
-    , OperatingSystemVersionsGet
-
-    -- * Request Lenses
-    , osvgProFileId
-    , osvgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.operatingSystemVersions.get@ method which the
--- 'OperatingSystemVersionsGet' request conforms to.
-type OperatingSystemVersionsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "operatingSystemVersions" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] OperatingSystemVersion
-
--- | Gets one operating system version by ID.
---
--- /See:/ 'operatingSystemVersionsGet' smart constructor.
-data OperatingSystemVersionsGet =
-  OperatingSystemVersionsGet'
-    { _osvgProFileId :: !(Textual Int64)
-    , _osvgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemVersionsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osvgProFileId'
---
--- * 'osvgId'
-operatingSystemVersionsGet
-    :: Int64 -- ^ 'osvgProFileId'
-    -> Int64 -- ^ 'osvgId'
-    -> OperatingSystemVersionsGet
-operatingSystemVersionsGet pOsvgProFileId_ pOsvgId_ =
-  OperatingSystemVersionsGet'
-    {_osvgProFileId = _Coerce # pOsvgProFileId_, _osvgId = _Coerce # pOsvgId_}
-
-
--- | User profile ID associated with this request.
-osvgProFileId :: Lens' OperatingSystemVersionsGet Int64
-osvgProFileId
-  = lens _osvgProFileId
-      (\ s a -> s{_osvgProFileId = a})
-      . _Coerce
-
--- | Operating system version ID.
-osvgId :: Lens' OperatingSystemVersionsGet Int64
-osvgId
-  = lens _osvgId (\ s a -> s{_osvgId = a}) . _Coerce
-
-instance GoogleRequest OperatingSystemVersionsGet
-         where
-        type Rs OperatingSystemVersionsGet =
-             OperatingSystemVersion
-        type Scopes OperatingSystemVersionsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OperatingSystemVersionsGet'{..}
-          = go _osvgProFileId _osvgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OperatingSystemVersionsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/List.hs b/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OperatingSystemVersions/List.hs
+++ /dev/null
@@ -1,94 +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.DFAReporting.OperatingSystemVersions.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of operating system versions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.operatingSystemVersions.list@.
-module Network.Google.Resource.DFAReporting.OperatingSystemVersions.List
-    (
-    -- * REST Resource
-      OperatingSystemVersionsListResource
-
-    -- * Creating a Request
-    , operatingSystemVersionsList
-    , OperatingSystemVersionsList
-
-    -- * Request Lenses
-    , osvlProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.operatingSystemVersions.list@ method which the
--- 'OperatingSystemVersionsList' request conforms to.
-type OperatingSystemVersionsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "operatingSystemVersions" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] OperatingSystemVersionsListResponse
-
--- | Retrieves a list of operating system versions.
---
--- /See:/ 'operatingSystemVersionsList' smart constructor.
-newtype OperatingSystemVersionsList =
-  OperatingSystemVersionsList'
-    { _osvlProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemVersionsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osvlProFileId'
-operatingSystemVersionsList
-    :: Int64 -- ^ 'osvlProFileId'
-    -> OperatingSystemVersionsList
-operatingSystemVersionsList pOsvlProFileId_ =
-  OperatingSystemVersionsList' {_osvlProFileId = _Coerce # pOsvlProFileId_}
-
-
--- | User profile ID associated with this request.
-osvlProFileId :: Lens' OperatingSystemVersionsList Int64
-osvlProFileId
-  = lens _osvlProFileId
-      (\ s a -> s{_osvlProFileId = a})
-      . _Coerce
-
-instance GoogleRequest OperatingSystemVersionsList
-         where
-        type Rs OperatingSystemVersionsList =
-             OperatingSystemVersionsListResponse
-        type Scopes OperatingSystemVersionsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OperatingSystemVersionsList'{..}
-          = go _osvlProFileId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OperatingSystemVersionsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OperatingSystems/Get.hs b/gen/Network/Google/Resource/DFAReporting/OperatingSystems/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OperatingSystems/Get.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.OperatingSystems.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one operating system by DART ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.operatingSystems.get@.
-module Network.Google.Resource.DFAReporting.OperatingSystems.Get
-    (
-    -- * REST Resource
-      OperatingSystemsGetResource
-
-    -- * Creating a Request
-    , operatingSystemsGet
-    , OperatingSystemsGet
-
-    -- * Request Lenses
-    , osgProFileId
-    , osgDartId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.operatingSystems.get@ method which the
--- 'OperatingSystemsGet' request conforms to.
-type OperatingSystemsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "operatingSystems" :>
-               Capture "dartId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] OperatingSystem
-
--- | Gets one operating system by DART ID.
---
--- /See:/ 'operatingSystemsGet' smart constructor.
-data OperatingSystemsGet =
-  OperatingSystemsGet'
-    { _osgProFileId :: !(Textual Int64)
-    , _osgDartId    :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'osgProFileId'
---
--- * 'osgDartId'
-operatingSystemsGet
-    :: Int64 -- ^ 'osgProFileId'
-    -> Int64 -- ^ 'osgDartId'
-    -> OperatingSystemsGet
-operatingSystemsGet pOsgProFileId_ pOsgDartId_ =
-  OperatingSystemsGet'
-    { _osgProFileId = _Coerce # pOsgProFileId_
-    , _osgDartId = _Coerce # pOsgDartId_
-    }
-
-
--- | User profile ID associated with this request.
-osgProFileId :: Lens' OperatingSystemsGet Int64
-osgProFileId
-  = lens _osgProFileId (\ s a -> s{_osgProFileId = a})
-      . _Coerce
-
--- | Operating system DART ID.
-osgDartId :: Lens' OperatingSystemsGet Int64
-osgDartId
-  = lens _osgDartId (\ s a -> s{_osgDartId = a}) .
-      _Coerce
-
-instance GoogleRequest OperatingSystemsGet where
-        type Rs OperatingSystemsGet = OperatingSystem
-        type Scopes OperatingSystemsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OperatingSystemsGet'{..}
-          = go _osgProFileId _osgDartId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OperatingSystemsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OperatingSystems/List.hs b/gen/Network/Google/Resource/DFAReporting/OperatingSystems/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OperatingSystems/List.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.OperatingSystems.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of operating systems.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.operatingSystems.list@.
-module Network.Google.Resource.DFAReporting.OperatingSystems.List
-    (
-    -- * REST Resource
-      OperatingSystemsListResource
-
-    -- * Creating a Request
-    , operatingSystemsList
-    , OperatingSystemsList
-
-    -- * Request Lenses
-    , oslProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.operatingSystems.list@ method which the
--- 'OperatingSystemsList' request conforms to.
-type OperatingSystemsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "operatingSystems" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] OperatingSystemsListResponse
-
--- | Retrieves a list of operating systems.
---
--- /See:/ 'operatingSystemsList' smart constructor.
-newtype OperatingSystemsList =
-  OperatingSystemsList'
-    { _oslProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OperatingSystemsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'oslProFileId'
-operatingSystemsList
-    :: Int64 -- ^ 'oslProFileId'
-    -> OperatingSystemsList
-operatingSystemsList pOslProFileId_ =
-  OperatingSystemsList' {_oslProFileId = _Coerce # pOslProFileId_}
-
-
--- | User profile ID associated with this request.
-oslProFileId :: Lens' OperatingSystemsList Int64
-oslProFileId
-  = lens _oslProFileId (\ s a -> s{_oslProFileId = a})
-      . _Coerce
-
-instance GoogleRequest OperatingSystemsList where
-        type Rs OperatingSystemsList =
-             OperatingSystemsListResponse
-        type Scopes OperatingSystemsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OperatingSystemsList'{..}
-          = go _oslProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OperatingSystemsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OrderDocuments/Get.hs b/gen/Network/Google/Resource/DFAReporting/OrderDocuments/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OrderDocuments/Get.hs
+++ /dev/null
@@ -1,119 +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.DFAReporting.OrderDocuments.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one order document by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.orderDocuments.get@.
-module Network.Google.Resource.DFAReporting.OrderDocuments.Get
-    (
-    -- * REST Resource
-      OrderDocumentsGetResource
-
-    -- * Creating a Request
-    , orderDocumentsGet
-    , OrderDocumentsGet
-
-    -- * Request Lenses
-    , odgProFileId
-    , odgId
-    , odgProjectId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.orderDocuments.get@ method which the
--- 'OrderDocumentsGet' request conforms to.
-type OrderDocumentsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "orderDocuments" :>
-                   Capture "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :> Get '[JSON] OrderDocument
-
--- | Gets one order document by ID.
---
--- /See:/ 'orderDocumentsGet' smart constructor.
-data OrderDocumentsGet =
-  OrderDocumentsGet'
-    { _odgProFileId :: !(Textual Int64)
-    , _odgId        :: !(Textual Int64)
-    , _odgProjectId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrderDocumentsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'odgProFileId'
---
--- * 'odgId'
---
--- * 'odgProjectId'
-orderDocumentsGet
-    :: Int64 -- ^ 'odgProFileId'
-    -> Int64 -- ^ 'odgId'
-    -> Int64 -- ^ 'odgProjectId'
-    -> OrderDocumentsGet
-orderDocumentsGet pOdgProFileId_ pOdgId_ pOdgProjectId_ =
-  OrderDocumentsGet'
-    { _odgProFileId = _Coerce # pOdgProFileId_
-    , _odgId = _Coerce # pOdgId_
-    , _odgProjectId = _Coerce # pOdgProjectId_
-    }
-
-
--- | User profile ID associated with this request.
-odgProFileId :: Lens' OrderDocumentsGet Int64
-odgProFileId
-  = lens _odgProFileId (\ s a -> s{_odgProFileId = a})
-      . _Coerce
-
--- | Order document ID.
-odgId :: Lens' OrderDocumentsGet Int64
-odgId
-  = lens _odgId (\ s a -> s{_odgId = a}) . _Coerce
-
--- | Project ID for order documents.
-odgProjectId :: Lens' OrderDocumentsGet Int64
-odgProjectId
-  = lens _odgProjectId (\ s a -> s{_odgProjectId = a})
-      . _Coerce
-
-instance GoogleRequest OrderDocumentsGet where
-        type Rs OrderDocumentsGet = OrderDocument
-        type Scopes OrderDocumentsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OrderDocumentsGet'{..}
-          = go _odgProFileId _odgProjectId _odgId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OrderDocumentsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/OrderDocuments/List.hs b/gen/Network/Google/Resource/DFAReporting/OrderDocuments/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/OrderDocuments/List.hs
+++ /dev/null
@@ -1,234 +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.DFAReporting.OrderDocuments.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of order documents, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.orderDocuments.list@.
-module Network.Google.Resource.DFAReporting.OrderDocuments.List
-    (
-    -- * REST Resource
-      OrderDocumentsListResource
-
-    -- * Creating a Request
-    , orderDocumentsList
-    , OrderDocumentsList
-
-    -- * Request Lenses
-    , odlSearchString
-    , odlIds
-    , odlProFileId
-    , odlSortOrder
-    , odlPageToken
-    , odlProjectId
-    , odlSortField
-    , odlOrderId
-    , odlApproved
-    , odlSiteId
-    , odlMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.orderDocuments.list@ method which the
--- 'OrderDocumentsList' request conforms to.
-type OrderDocumentsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "orderDocuments" :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "sortOrder" OrderDocumentsListSortOrder :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField" OrderDocumentsListSortField :>
-                             QueryParams "orderId" (Textual Int64) :>
-                               QueryParam "approved" Bool :>
-                                 QueryParams "siteId" (Textual Int64) :>
-                                   QueryParam "maxResults" (Textual Int32) :>
-                                     QueryParam "alt" AltJSON :>
-                                       Get '[JSON] OrderDocumentsListResponse
-
--- | Retrieves a list of order documents, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'orderDocumentsList' smart constructor.
-data OrderDocumentsList =
-  OrderDocumentsList'
-    { _odlSearchString :: !(Maybe Text)
-    , _odlIds          :: !(Maybe [Textual Int64])
-    , _odlProFileId    :: !(Textual Int64)
-    , _odlSortOrder    :: !OrderDocumentsListSortOrder
-    , _odlPageToken    :: !(Maybe Text)
-    , _odlProjectId    :: !(Textual Int64)
-    , _odlSortField    :: !OrderDocumentsListSortField
-    , _odlOrderId      :: !(Maybe [Textual Int64])
-    , _odlApproved     :: !(Maybe Bool)
-    , _odlSiteId       :: !(Maybe [Textual Int64])
-    , _odlMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrderDocumentsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'odlSearchString'
---
--- * 'odlIds'
---
--- * 'odlProFileId'
---
--- * 'odlSortOrder'
---
--- * 'odlPageToken'
---
--- * 'odlProjectId'
---
--- * 'odlSortField'
---
--- * 'odlOrderId'
---
--- * 'odlApproved'
---
--- * 'odlSiteId'
---
--- * 'odlMaxResults'
-orderDocumentsList
-    :: Int64 -- ^ 'odlProFileId'
-    -> Int64 -- ^ 'odlProjectId'
-    -> OrderDocumentsList
-orderDocumentsList pOdlProFileId_ pOdlProjectId_ =
-  OrderDocumentsList'
-    { _odlSearchString = Nothing
-    , _odlIds = Nothing
-    , _odlProFileId = _Coerce # pOdlProFileId_
-    , _odlSortOrder = ODLSOAscending
-    , _odlPageToken = Nothing
-    , _odlProjectId = _Coerce # pOdlProjectId_
-    , _odlSortField = ODLSFID
-    , _odlOrderId = Nothing
-    , _odlApproved = Nothing
-    , _odlSiteId = Nothing
-    , _odlMaxResults = 1000
-    }
-
-
--- | Allows searching for order documents by name or ID. Wildcards (*) are
--- allowed. For example, \"orderdocument*2015\" will return order documents
--- with names like \"orderdocument June 2015\", \"orderdocument April
--- 2015\", or simply \"orderdocument 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"orderdocument\" will match order documents
--- with name \"my orderdocument\", \"orderdocument 2015\", or simply
--- \"orderdocument\".
-odlSearchString :: Lens' OrderDocumentsList (Maybe Text)
-odlSearchString
-  = lens _odlSearchString
-      (\ s a -> s{_odlSearchString = a})
-
--- | Select only order documents with these IDs.
-odlIds :: Lens' OrderDocumentsList [Int64]
-odlIds
-  = lens _odlIds (\ s a -> s{_odlIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-odlProFileId :: Lens' OrderDocumentsList Int64
-odlProFileId
-  = lens _odlProFileId (\ s a -> s{_odlProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-odlSortOrder :: Lens' OrderDocumentsList OrderDocumentsListSortOrder
-odlSortOrder
-  = lens _odlSortOrder (\ s a -> s{_odlSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-odlPageToken :: Lens' OrderDocumentsList (Maybe Text)
-odlPageToken
-  = lens _odlPageToken (\ s a -> s{_odlPageToken = a})
-
--- | Project ID for order documents.
-odlProjectId :: Lens' OrderDocumentsList Int64
-odlProjectId
-  = lens _odlProjectId (\ s a -> s{_odlProjectId = a})
-      . _Coerce
-
--- | Field by which to sort the list.
-odlSortField :: Lens' OrderDocumentsList OrderDocumentsListSortField
-odlSortField
-  = lens _odlSortField (\ s a -> s{_odlSortField = a})
-
--- | Select only order documents for specified orders.
-odlOrderId :: Lens' OrderDocumentsList [Int64]
-odlOrderId
-  = lens _odlOrderId (\ s a -> s{_odlOrderId = a}) .
-      _Default
-      . _Coerce
-
--- | Select only order documents that have been approved by at least one
--- user.
-odlApproved :: Lens' OrderDocumentsList (Maybe Bool)
-odlApproved
-  = lens _odlApproved (\ s a -> s{_odlApproved = a})
-
--- | Select only order documents that are associated with these sites.
-odlSiteId :: Lens' OrderDocumentsList [Int64]
-odlSiteId
-  = lens _odlSiteId (\ s a -> s{_odlSiteId = a}) .
-      _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-odlMaxResults :: Lens' OrderDocumentsList Int32
-odlMaxResults
-  = lens _odlMaxResults
-      (\ s a -> s{_odlMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest OrderDocumentsList where
-        type Rs OrderDocumentsList =
-             OrderDocumentsListResponse
-        type Scopes OrderDocumentsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OrderDocumentsList'{..}
-          = go _odlProFileId _odlProjectId _odlSearchString
-              (_odlIds ^. _Default)
-              (Just _odlSortOrder)
-              _odlPageToken
-              (Just _odlSortField)
-              (_odlOrderId ^. _Default)
-              _odlApproved
-              (_odlSiteId ^. _Default)
-              (Just _odlMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy OrderDocumentsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Orders/Get.hs b/gen/Network/Google/Resource/DFAReporting/Orders/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Orders/Get.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.Orders.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one order by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.orders.get@.
-module Network.Google.Resource.DFAReporting.Orders.Get
-    (
-    -- * REST Resource
-      OrdersGetResource
-
-    -- * Creating a Request
-    , ordersGet
-    , OrdersGet
-
-    -- * Request Lenses
-    , ogProFileId
-    , ogId
-    , ogProjectId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.orders.get@ method which the
--- 'OrdersGet' request conforms to.
-type OrdersGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "orders" :>
-                   Capture "id" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :> Get '[JSON] Order
-
--- | Gets one order by ID.
---
--- /See:/ 'ordersGet' smart constructor.
-data OrdersGet =
-  OrdersGet'
-    { _ogProFileId :: !(Textual Int64)
-    , _ogId        :: !(Textual Int64)
-    , _ogProjectId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrdersGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ogProFileId'
---
--- * 'ogId'
---
--- * 'ogProjectId'
-ordersGet
-    :: Int64 -- ^ 'ogProFileId'
-    -> Int64 -- ^ 'ogId'
-    -> Int64 -- ^ 'ogProjectId'
-    -> OrdersGet
-ordersGet pOgProFileId_ pOgId_ pOgProjectId_ =
-  OrdersGet'
-    { _ogProFileId = _Coerce # pOgProFileId_
-    , _ogId = _Coerce # pOgId_
-    , _ogProjectId = _Coerce # pOgProjectId_
-    }
-
-
--- | User profile ID associated with this request.
-ogProFileId :: Lens' OrdersGet Int64
-ogProFileId
-  = lens _ogProFileId (\ s a -> s{_ogProFileId = a}) .
-      _Coerce
-
--- | Order ID.
-ogId :: Lens' OrdersGet Int64
-ogId = lens _ogId (\ s a -> s{_ogId = a}) . _Coerce
-
--- | Project ID for orders.
-ogProjectId :: Lens' OrdersGet Int64
-ogProjectId
-  = lens _ogProjectId (\ s a -> s{_ogProjectId = a}) .
-      _Coerce
-
-instance GoogleRequest OrdersGet where
-        type Rs OrdersGet = Order
-        type Scopes OrdersGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OrdersGet'{..}
-          = go _ogProFileId _ogProjectId _ogId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy OrdersGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Orders/List.hs b/gen/Network/Google/Resource/DFAReporting/Orders/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Orders/List.hs
+++ /dev/null
@@ -1,202 +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.DFAReporting.Orders.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of orders, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.orders.list@.
-module Network.Google.Resource.DFAReporting.Orders.List
-    (
-    -- * REST Resource
-      OrdersListResource
-
-    -- * Creating a Request
-    , ordersList
-    , OrdersList
-
-    -- * Request Lenses
-    , olSearchString
-    , olIds
-    , olProFileId
-    , olSortOrder
-    , olPageToken
-    , olProjectId
-    , olSortField
-    , olSiteId
-    , olMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.orders.list@ method which the
--- 'OrdersList' request conforms to.
-type OrdersListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "projectId" (Textual Int64) :>
-                 "orders" :>
-                   QueryParam "searchString" Text :>
-                     QueryParams "ids" (Textual Int64) :>
-                       QueryParam "sortOrder" OrdersListSortOrder :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField" OrdersListSortField :>
-                             QueryParams "siteId" (Textual Int64) :>
-                               QueryParam "maxResults" (Textual Int32) :>
-                                 QueryParam "alt" AltJSON :>
-                                   Get '[JSON] OrdersListResponse
-
--- | Retrieves a list of orders, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'ordersList' smart constructor.
-data OrdersList =
-  OrdersList'
-    { _olSearchString :: !(Maybe Text)
-    , _olIds          :: !(Maybe [Textual Int64])
-    , _olProFileId    :: !(Textual Int64)
-    , _olSortOrder    :: !OrdersListSortOrder
-    , _olPageToken    :: !(Maybe Text)
-    , _olProjectId    :: !(Textual Int64)
-    , _olSortField    :: !OrdersListSortField
-    , _olSiteId       :: !(Maybe [Textual Int64])
-    , _olMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'OrdersList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'olSearchString'
---
--- * 'olIds'
---
--- * 'olProFileId'
---
--- * 'olSortOrder'
---
--- * 'olPageToken'
---
--- * 'olProjectId'
---
--- * 'olSortField'
---
--- * 'olSiteId'
---
--- * 'olMaxResults'
-ordersList
-    :: Int64 -- ^ 'olProFileId'
-    -> Int64 -- ^ 'olProjectId'
-    -> OrdersList
-ordersList pOlProFileId_ pOlProjectId_ =
-  OrdersList'
-    { _olSearchString = Nothing
-    , _olIds = Nothing
-    , _olProFileId = _Coerce # pOlProFileId_
-    , _olSortOrder = OLSOAscending
-    , _olPageToken = Nothing
-    , _olProjectId = _Coerce # pOlProjectId_
-    , _olSortField = OLSFID
-    , _olSiteId = Nothing
-    , _olMaxResults = 1000
-    }
-
-
--- | Allows searching for orders by name or ID. Wildcards (*) are allowed.
--- For example, \"order*2015\" will return orders with names like \"order
--- June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the
--- searches also add wildcards implicitly at the start and the end of the
--- search string. For example, a search string of \"order\" will match
--- orders with name \"my order\", \"order 2015\", or simply \"order\".
-olSearchString :: Lens' OrdersList (Maybe Text)
-olSearchString
-  = lens _olSearchString
-      (\ s a -> s{_olSearchString = a})
-
--- | Select only orders with these IDs.
-olIds :: Lens' OrdersList [Int64]
-olIds
-  = lens _olIds (\ s a -> s{_olIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-olProFileId :: Lens' OrdersList Int64
-olProFileId
-  = lens _olProFileId (\ s a -> s{_olProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-olSortOrder :: Lens' OrdersList OrdersListSortOrder
-olSortOrder
-  = lens _olSortOrder (\ s a -> s{_olSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-olPageToken :: Lens' OrdersList (Maybe Text)
-olPageToken
-  = lens _olPageToken (\ s a -> s{_olPageToken = a})
-
--- | Project ID for orders.
-olProjectId :: Lens' OrdersList Int64
-olProjectId
-  = lens _olProjectId (\ s a -> s{_olProjectId = a}) .
-      _Coerce
-
--- | Field by which to sort the list.
-olSortField :: Lens' OrdersList OrdersListSortField
-olSortField
-  = lens _olSortField (\ s a -> s{_olSortField = a})
-
--- | Select only orders that are associated with these site IDs.
-olSiteId :: Lens' OrdersList [Int64]
-olSiteId
-  = lens _olSiteId (\ s a -> s{_olSiteId = a}) .
-      _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-olMaxResults :: Lens' OrdersList Int32
-olMaxResults
-  = lens _olMaxResults (\ s a -> s{_olMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest OrdersList where
-        type Rs OrdersList = OrdersListResponse
-        type Scopes OrdersList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient OrdersList'{..}
-          = go _olProFileId _olProjectId _olSearchString
-              (_olIds ^. _Default)
-              (Just _olSortOrder)
-              _olPageToken
-              (Just _olSortField)
-              (_olSiteId ^. _Default)
-              (Just _olMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy OrdersListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.PlacementGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one placement group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementGroups.get@.
-module Network.Google.Resource.DFAReporting.PlacementGroups.Get
-    (
-    -- * REST Resource
-      PlacementGroupsGetResource
-
-    -- * Creating a Request
-    , placementGroupsGet
-    , PlacementGroupsGet
-
-    -- * Request Lenses
-    , pggProFileId
-    , pggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementGroups.get@ method which the
--- 'PlacementGroupsGet' request conforms to.
-type PlacementGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] PlacementGroup
-
--- | Gets one placement group by ID.
---
--- /See:/ 'placementGroupsGet' smart constructor.
-data PlacementGroupsGet =
-  PlacementGroupsGet'
-    { _pggProFileId :: !(Textual Int64)
-    , _pggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pggProFileId'
---
--- * 'pggId'
-placementGroupsGet
-    :: Int64 -- ^ 'pggProFileId'
-    -> Int64 -- ^ 'pggId'
-    -> PlacementGroupsGet
-placementGroupsGet pPggProFileId_ pPggId_ =
-  PlacementGroupsGet'
-    {_pggProFileId = _Coerce # pPggProFileId_, _pggId = _Coerce # pPggId_}
-
-
--- | User profile ID associated with this request.
-pggProFileId :: Lens' PlacementGroupsGet Int64
-pggProFileId
-  = lens _pggProFileId (\ s a -> s{_pggProFileId = a})
-      . _Coerce
-
--- | Placement group ID.
-pggId :: Lens' PlacementGroupsGet Int64
-pggId
-  = lens _pggId (\ s a -> s{_pggId = a}) . _Coerce
-
-instance GoogleRequest PlacementGroupsGet where
-        type Rs PlacementGroupsGet = PlacementGroup
-        type Scopes PlacementGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementGroupsGet'{..}
-          = go _pggProFileId _pggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Insert.hs b/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.PlacementGroups.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new placement group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementGroups.insert@.
-module Network.Google.Resource.DFAReporting.PlacementGroups.Insert
-    (
-    -- * REST Resource
-      PlacementGroupsInsertResource
-
-    -- * Creating a Request
-    , placementGroupsInsert
-    , PlacementGroupsInsert
-
-    -- * Request Lenses
-    , pgiProFileId
-    , pgiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementGroups.insert@ method which the
--- 'PlacementGroupsInsert' request conforms to.
-type PlacementGroupsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] PlacementGroup :>
-                   Post '[JSON] PlacementGroup
-
--- | Inserts a new placement group.
---
--- /See:/ 'placementGroupsInsert' smart constructor.
-data PlacementGroupsInsert =
-  PlacementGroupsInsert'
-    { _pgiProFileId :: !(Textual Int64)
-    , _pgiPayload   :: !PlacementGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgiProFileId'
---
--- * 'pgiPayload'
-placementGroupsInsert
-    :: Int64 -- ^ 'pgiProFileId'
-    -> PlacementGroup -- ^ 'pgiPayload'
-    -> PlacementGroupsInsert
-placementGroupsInsert pPgiProFileId_ pPgiPayload_ =
-  PlacementGroupsInsert'
-    {_pgiProFileId = _Coerce # pPgiProFileId_, _pgiPayload = pPgiPayload_}
-
-
--- | User profile ID associated with this request.
-pgiProFileId :: Lens' PlacementGroupsInsert Int64
-pgiProFileId
-  = lens _pgiProFileId (\ s a -> s{_pgiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-pgiPayload :: Lens' PlacementGroupsInsert PlacementGroup
-pgiPayload
-  = lens _pgiPayload (\ s a -> s{_pgiPayload = a})
-
-instance GoogleRequest PlacementGroupsInsert where
-        type Rs PlacementGroupsInsert = PlacementGroup
-        type Scopes PlacementGroupsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementGroupsInsert'{..}
-          = go _pgiProFileId (Just AltJSON) _pgiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementGroupsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/PlacementGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/List.hs
+++ /dev/null
@@ -1,392 +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.DFAReporting.PlacementGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of placement groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementGroups.list@.
-module Network.Google.Resource.DFAReporting.PlacementGroups.List
-    (
-    -- * REST Resource
-      PlacementGroupsListResource
-
-    -- * Creating a Request
-    , placementGroupsList
-    , PlacementGroupsList
-
-    -- * Request Lenses
-    , pglPlacementStrategyIds
-    , pglContentCategoryIds
-    , pglMaxEndDate
-    , pglCampaignIds
-    , pglPricingTypes
-    , pglSearchString
-    , pglIds
-    , pglProFileId
-    , pglPlacementGroupType
-    , pglDirectorySiteIds
-    , pglSortOrder
-    , pglSiteIds
-    , pglPageToken
-    , pglSortField
-    , pglMaxStartDate
-    , pglAdvertiserIds
-    , pglMinStartDate
-    , pglArchived
-    , pglMaxResults
-    , pglMinEndDate
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementGroups.list@ method which the
--- 'PlacementGroupsList' request conforms to.
-type PlacementGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementGroups" :>
-               QueryParams "placementStrategyIds" (Textual Int64) :>
-                 QueryParams "contentCategoryIds" (Textual Int64) :>
-                   QueryParam "maxEndDate" Text :>
-                     QueryParams "campaignIds" (Textual Int64) :>
-                       QueryParams "pricingTypes"
-                         PlacementGroupsListPricingTypes
-                         :>
-                         QueryParam "searchString" Text :>
-                           QueryParams "ids" (Textual Int64) :>
-                             QueryParam "placementGroupType"
-                               PlacementGroupsListPlacementGroupType
-                               :>
-                               QueryParams "directorySiteIds" (Textual Int64) :>
-                                 QueryParam "sortOrder"
-                                   PlacementGroupsListSortOrder
-                                   :>
-                                   QueryParams "siteIds" (Textual Int64) :>
-                                     QueryParam "pageToken" Text :>
-                                       QueryParam "sortField"
-                                         PlacementGroupsListSortField
-                                         :>
-                                         QueryParam "maxStartDate" Text :>
-                                           QueryParams "advertiserIds"
-                                             (Textual Int64)
-                                             :>
-                                             QueryParam "minStartDate" Text :>
-                                               QueryParam "archived" Bool :>
-                                                 QueryParam "maxResults"
-                                                   (Textual Int32)
-                                                   :>
-                                                   QueryParam "minEndDate" Text
-                                                     :>
-                                                     QueryParam "alt" AltJSON :>
-                                                       Get '[JSON]
-                                                         PlacementGroupsListResponse
-
--- | Retrieves a list of placement groups, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'placementGroupsList' smart constructor.
-data PlacementGroupsList =
-  PlacementGroupsList'
-    { _pglPlacementStrategyIds :: !(Maybe [Textual Int64])
-    , _pglContentCategoryIds   :: !(Maybe [Textual Int64])
-    , _pglMaxEndDate           :: !(Maybe Text)
-    , _pglCampaignIds          :: !(Maybe [Textual Int64])
-    , _pglPricingTypes         :: !(Maybe [PlacementGroupsListPricingTypes])
-    , _pglSearchString         :: !(Maybe Text)
-    , _pglIds                  :: !(Maybe [Textual Int64])
-    , _pglProFileId            :: !(Textual Int64)
-    , _pglPlacementGroupType   :: !(Maybe PlacementGroupsListPlacementGroupType)
-    , _pglDirectorySiteIds     :: !(Maybe [Textual Int64])
-    , _pglSortOrder            :: !PlacementGroupsListSortOrder
-    , _pglSiteIds              :: !(Maybe [Textual Int64])
-    , _pglPageToken            :: !(Maybe Text)
-    , _pglSortField            :: !PlacementGroupsListSortField
-    , _pglMaxStartDate         :: !(Maybe Text)
-    , _pglAdvertiserIds        :: !(Maybe [Textual Int64])
-    , _pglMinStartDate         :: !(Maybe Text)
-    , _pglArchived             :: !(Maybe Bool)
-    , _pglMaxResults           :: !(Textual Int32)
-    , _pglMinEndDate           :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pglPlacementStrategyIds'
---
--- * 'pglContentCategoryIds'
---
--- * 'pglMaxEndDate'
---
--- * 'pglCampaignIds'
---
--- * 'pglPricingTypes'
---
--- * 'pglSearchString'
---
--- * 'pglIds'
---
--- * 'pglProFileId'
---
--- * 'pglPlacementGroupType'
---
--- * 'pglDirectorySiteIds'
---
--- * 'pglSortOrder'
---
--- * 'pglSiteIds'
---
--- * 'pglPageToken'
---
--- * 'pglSortField'
---
--- * 'pglMaxStartDate'
---
--- * 'pglAdvertiserIds'
---
--- * 'pglMinStartDate'
---
--- * 'pglArchived'
---
--- * 'pglMaxResults'
---
--- * 'pglMinEndDate'
-placementGroupsList
-    :: Int64 -- ^ 'pglProFileId'
-    -> PlacementGroupsList
-placementGroupsList pPglProFileId_ =
-  PlacementGroupsList'
-    { _pglPlacementStrategyIds = Nothing
-    , _pglContentCategoryIds = Nothing
-    , _pglMaxEndDate = Nothing
-    , _pglCampaignIds = Nothing
-    , _pglPricingTypes = Nothing
-    , _pglSearchString = Nothing
-    , _pglIds = Nothing
-    , _pglProFileId = _Coerce # pPglProFileId_
-    , _pglPlacementGroupType = Nothing
-    , _pglDirectorySiteIds = Nothing
-    , _pglSortOrder = PGLSOAscending
-    , _pglSiteIds = Nothing
-    , _pglPageToken = Nothing
-    , _pglSortField = PGLSFID
-    , _pglMaxStartDate = Nothing
-    , _pglAdvertiserIds = Nothing
-    , _pglMinStartDate = Nothing
-    , _pglArchived = Nothing
-    , _pglMaxResults = 800
-    , _pglMinEndDate = Nothing
-    }
-
-
--- | Select only placement groups that are associated with these placement
--- strategies.
-pglPlacementStrategyIds :: Lens' PlacementGroupsList [Int64]
-pglPlacementStrategyIds
-  = lens _pglPlacementStrategyIds
-      (\ s a -> s{_pglPlacementStrategyIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placement groups that are associated with these content
--- categories.
-pglContentCategoryIds :: Lens' PlacementGroupsList [Int64]
-pglContentCategoryIds
-  = lens _pglContentCategoryIds
-      (\ s a -> s{_pglContentCategoryIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements or placement groups whose end date is on or
--- before the specified maxEndDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pglMaxEndDate :: Lens' PlacementGroupsList (Maybe Text)
-pglMaxEndDate
-  = lens _pglMaxEndDate
-      (\ s a -> s{_pglMaxEndDate = a})
-
--- | Select only placement groups that belong to these campaigns.
-pglCampaignIds :: Lens' PlacementGroupsList [Int64]
-pglCampaignIds
-  = lens _pglCampaignIds
-      (\ s a -> s{_pglCampaignIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placement groups with these pricing types.
-pglPricingTypes :: Lens' PlacementGroupsList [PlacementGroupsListPricingTypes]
-pglPricingTypes
-  = lens _pglPricingTypes
-      (\ s a -> s{_pglPricingTypes = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for placement groups by name or ID. Wildcards (*) are
--- allowed. For example, \"placement*2015\" will return placement groups
--- with names like \"placement group June 2015\", \"placement group May
--- 2015\", or simply \"placements 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"placementgroup\" will match placement
--- groups with name \"my placementgroup\", \"placementgroup 2015\", or
--- simply \"placementgroup\".
-pglSearchString :: Lens' PlacementGroupsList (Maybe Text)
-pglSearchString
-  = lens _pglSearchString
-      (\ s a -> s{_pglSearchString = a})
-
--- | Select only placement groups with these IDs.
-pglIds :: Lens' PlacementGroupsList [Int64]
-pglIds
-  = lens _pglIds (\ s a -> s{_pglIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-pglProFileId :: Lens' PlacementGroupsList Int64
-pglProFileId
-  = lens _pglProFileId (\ s a -> s{_pglProFileId = a})
-      . _Coerce
-
--- | Select only placement groups belonging with this group type. A package
--- is a simple group of placements that acts as a single pricing point for
--- a group of tags. A roadblock is a group of placements that not only acts
--- as a single pricing point but also assumes that all the tags in it will
--- be served at the same time. A roadblock requires one of its assigned
--- placements to be marked as primary for reporting.
-pglPlacementGroupType :: Lens' PlacementGroupsList (Maybe PlacementGroupsListPlacementGroupType)
-pglPlacementGroupType
-  = lens _pglPlacementGroupType
-      (\ s a -> s{_pglPlacementGroupType = a})
-
--- | Select only placement groups that are associated with these directory
--- sites.
-pglDirectorySiteIds :: Lens' PlacementGroupsList [Int64]
-pglDirectorySiteIds
-  = lens _pglDirectorySiteIds
-      (\ s a -> s{_pglDirectorySiteIds = a})
-      . _Default
-      . _Coerce
-
--- | Order of sorted results.
-pglSortOrder :: Lens' PlacementGroupsList PlacementGroupsListSortOrder
-pglSortOrder
-  = lens _pglSortOrder (\ s a -> s{_pglSortOrder = a})
-
--- | Select only placement groups that are associated with these sites.
-pglSiteIds :: Lens' PlacementGroupsList [Int64]
-pglSiteIds
-  = lens _pglSiteIds (\ s a -> s{_pglSiteIds = a}) .
-      _Default
-      . _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-pglPageToken :: Lens' PlacementGroupsList (Maybe Text)
-pglPageToken
-  = lens _pglPageToken (\ s a -> s{_pglPageToken = a})
-
--- | Field by which to sort the list.
-pglSortField :: Lens' PlacementGroupsList PlacementGroupsListSortField
-pglSortField
-  = lens _pglSortField (\ s a -> s{_pglSortField = a})
-
--- | Select only placements or placement groups whose start date is on or
--- before the specified maxStartDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pglMaxStartDate :: Lens' PlacementGroupsList (Maybe Text)
-pglMaxStartDate
-  = lens _pglMaxStartDate
-      (\ s a -> s{_pglMaxStartDate = a})
-
--- | Select only placement groups that belong to these advertisers.
-pglAdvertiserIds :: Lens' PlacementGroupsList [Int64]
-pglAdvertiserIds
-  = lens _pglAdvertiserIds
-      (\ s a -> s{_pglAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements or placement groups whose start date is on or
--- after the specified minStartDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pglMinStartDate :: Lens' PlacementGroupsList (Maybe Text)
-pglMinStartDate
-  = lens _pglMinStartDate
-      (\ s a -> s{_pglMinStartDate = a})
-
--- | Select only archived placements. Don\'t set this field to select both
--- archived and non-archived placements.
-pglArchived :: Lens' PlacementGroupsList (Maybe Bool)
-pglArchived
-  = lens _pglArchived (\ s a -> s{_pglArchived = a})
-
--- | Maximum number of results to return.
-pglMaxResults :: Lens' PlacementGroupsList Int32
-pglMaxResults
-  = lens _pglMaxResults
-      (\ s a -> s{_pglMaxResults = a})
-      . _Coerce
-
--- | Select only placements or placement groups whose end date is on or after
--- the specified minEndDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pglMinEndDate :: Lens' PlacementGroupsList (Maybe Text)
-pglMinEndDate
-  = lens _pglMinEndDate
-      (\ s a -> s{_pglMinEndDate = a})
-
-instance GoogleRequest PlacementGroupsList where
-        type Rs PlacementGroupsList =
-             PlacementGroupsListResponse
-        type Scopes PlacementGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementGroupsList'{..}
-          = go _pglProFileId
-              (_pglPlacementStrategyIds ^. _Default)
-              (_pglContentCategoryIds ^. _Default)
-              _pglMaxEndDate
-              (_pglCampaignIds ^. _Default)
-              (_pglPricingTypes ^. _Default)
-              _pglSearchString
-              (_pglIds ^. _Default)
-              _pglPlacementGroupType
-              (_pglDirectorySiteIds ^. _Default)
-              (Just _pglSortOrder)
-              (_pglSiteIds ^. _Default)
-              _pglPageToken
-              (Just _pglSortField)
-              _pglMaxStartDate
-              (_pglAdvertiserIds ^. _Default)
-              _pglMinStartDate
-              _pglArchived
-              (Just _pglMaxResults)
-              _pglMinEndDate
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Patch.hs b/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.PlacementGroups.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement group. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementGroups.patch@.
-module Network.Google.Resource.DFAReporting.PlacementGroups.Patch
-    (
-    -- * REST Resource
-      PlacementGroupsPatchResource
-
-    -- * Creating a Request
-    , placementGroupsPatch
-    , PlacementGroupsPatch
-
-    -- * Request Lenses
-    , pgpProFileId
-    , pgpPayload
-    , pgpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementGroups.patch@ method which the
--- 'PlacementGroupsPatch' request conforms to.
-type PlacementGroupsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementGroups" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] PlacementGroup :>
-                     Patch '[JSON] PlacementGroup
-
--- | Updates an existing placement group. This method supports patch
--- semantics.
---
--- /See:/ 'placementGroupsPatch' smart constructor.
-data PlacementGroupsPatch =
-  PlacementGroupsPatch'
-    { _pgpProFileId :: !(Textual Int64)
-    , _pgpPayload   :: !PlacementGroup
-    , _pgpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgpProFileId'
---
--- * 'pgpPayload'
---
--- * 'pgpId'
-placementGroupsPatch
-    :: Int64 -- ^ 'pgpProFileId'
-    -> PlacementGroup -- ^ 'pgpPayload'
-    -> Int64 -- ^ 'pgpId'
-    -> PlacementGroupsPatch
-placementGroupsPatch pPgpProFileId_ pPgpPayload_ pPgpId_ =
-  PlacementGroupsPatch'
-    { _pgpProFileId = _Coerce # pPgpProFileId_
-    , _pgpPayload = pPgpPayload_
-    , _pgpId = _Coerce # pPgpId_
-    }
-
-
--- | User profile ID associated with this request.
-pgpProFileId :: Lens' PlacementGroupsPatch Int64
-pgpProFileId
-  = lens _pgpProFileId (\ s a -> s{_pgpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-pgpPayload :: Lens' PlacementGroupsPatch PlacementGroup
-pgpPayload
-  = lens _pgpPayload (\ s a -> s{_pgpPayload = a})
-
--- | Placement group ID.
-pgpId :: Lens' PlacementGroupsPatch Int64
-pgpId
-  = lens _pgpId (\ s a -> s{_pgpId = a}) . _Coerce
-
-instance GoogleRequest PlacementGroupsPatch where
-        type Rs PlacementGroupsPatch = PlacementGroup
-        type Scopes PlacementGroupsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementGroupsPatch'{..}
-          = go _pgpProFileId (Just _pgpId) (Just AltJSON)
-              _pgpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementGroupsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Update.hs b/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementGroups/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.PlacementGroups.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement group.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementGroups.update@.
-module Network.Google.Resource.DFAReporting.PlacementGroups.Update
-    (
-    -- * REST Resource
-      PlacementGroupsUpdateResource
-
-    -- * Creating a Request
-    , placementGroupsUpdate
-    , PlacementGroupsUpdate
-
-    -- * Request Lenses
-    , pguProFileId
-    , pguPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementGroups.update@ method which the
--- 'PlacementGroupsUpdate' request conforms to.
-type PlacementGroupsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementGroups" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] PlacementGroup :>
-                   Put '[JSON] PlacementGroup
-
--- | Updates an existing placement group.
---
--- /See:/ 'placementGroupsUpdate' smart constructor.
-data PlacementGroupsUpdate =
-  PlacementGroupsUpdate'
-    { _pguProFileId :: !(Textual Int64)
-    , _pguPayload   :: !PlacementGroup
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementGroupsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pguProFileId'
---
--- * 'pguPayload'
-placementGroupsUpdate
-    :: Int64 -- ^ 'pguProFileId'
-    -> PlacementGroup -- ^ 'pguPayload'
-    -> PlacementGroupsUpdate
-placementGroupsUpdate pPguProFileId_ pPguPayload_ =
-  PlacementGroupsUpdate'
-    {_pguProFileId = _Coerce # pPguProFileId_, _pguPayload = pPguPayload_}
-
-
--- | User profile ID associated with this request.
-pguProFileId :: Lens' PlacementGroupsUpdate Int64
-pguProFileId
-  = lens _pguProFileId (\ s a -> s{_pguProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-pguPayload :: Lens' PlacementGroupsUpdate PlacementGroup
-pguPayload
-  = lens _pguPayload (\ s a -> s{_pguPayload = a})
-
-instance GoogleRequest PlacementGroupsUpdate where
-        type Rs PlacementGroupsUpdate = PlacementGroup
-        type Scopes PlacementGroupsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementGroupsUpdate'{..}
-          = go _pguProFileId (Just AltJSON) _pguPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementGroupsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Delete.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Delete.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.PlacementStrategies.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing placement strategy.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.delete@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.Delete
-    (
-    -- * REST Resource
-      PlacementStrategiesDeleteResource
-
-    -- * Creating a Request
-    , placementStrategiesDelete
-    , PlacementStrategiesDelete
-
-    -- * Request Lenses
-    , psdProFileId
-    , psdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.delete@ method which the
--- 'PlacementStrategiesDelete' request conforms to.
-type PlacementStrategiesDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing placement strategy.
---
--- /See:/ 'placementStrategiesDelete' smart constructor.
-data PlacementStrategiesDelete =
-  PlacementStrategiesDelete'
-    { _psdProFileId :: !(Textual Int64)
-    , _psdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psdProFileId'
---
--- * 'psdId'
-placementStrategiesDelete
-    :: Int64 -- ^ 'psdProFileId'
-    -> Int64 -- ^ 'psdId'
-    -> PlacementStrategiesDelete
-placementStrategiesDelete pPsdProFileId_ pPsdId_ =
-  PlacementStrategiesDelete'
-    {_psdProFileId = _Coerce # pPsdProFileId_, _psdId = _Coerce # pPsdId_}
-
-
--- | User profile ID associated with this request.
-psdProFileId :: Lens' PlacementStrategiesDelete Int64
-psdProFileId
-  = lens _psdProFileId (\ s a -> s{_psdProFileId = a})
-      . _Coerce
-
--- | Placement strategy ID.
-psdId :: Lens' PlacementStrategiesDelete Int64
-psdId
-  = lens _psdId (\ s a -> s{_psdId = a}) . _Coerce
-
-instance GoogleRequest PlacementStrategiesDelete
-         where
-        type Rs PlacementStrategiesDelete = ()
-        type Scopes PlacementStrategiesDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesDelete'{..}
-          = go _psdProFileId _psdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Get.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.PlacementStrategies.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one placement strategy by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.get@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.Get
-    (
-    -- * REST Resource
-      PlacementStrategiesGetResource
-
-    -- * Creating a Request
-    , placementStrategiesGet
-    , PlacementStrategiesGet
-
-    -- * Request Lenses
-    , psgProFileId
-    , psgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.get@ method which the
--- 'PlacementStrategiesGet' request conforms to.
-type PlacementStrategiesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] PlacementStrategy
-
--- | Gets one placement strategy by ID.
---
--- /See:/ 'placementStrategiesGet' smart constructor.
-data PlacementStrategiesGet =
-  PlacementStrategiesGet'
-    { _psgProFileId :: !(Textual Int64)
-    , _psgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psgProFileId'
---
--- * 'psgId'
-placementStrategiesGet
-    :: Int64 -- ^ 'psgProFileId'
-    -> Int64 -- ^ 'psgId'
-    -> PlacementStrategiesGet
-placementStrategiesGet pPsgProFileId_ pPsgId_ =
-  PlacementStrategiesGet'
-    {_psgProFileId = _Coerce # pPsgProFileId_, _psgId = _Coerce # pPsgId_}
-
-
--- | User profile ID associated with this request.
-psgProFileId :: Lens' PlacementStrategiesGet Int64
-psgProFileId
-  = lens _psgProFileId (\ s a -> s{_psgProFileId = a})
-      . _Coerce
-
--- | Placement strategy ID.
-psgId :: Lens' PlacementStrategiesGet Int64
-psgId
-  = lens _psgId (\ s a -> s{_psgId = a}) . _Coerce
-
-instance GoogleRequest PlacementStrategiesGet where
-        type Rs PlacementStrategiesGet = PlacementStrategy
-        type Scopes PlacementStrategiesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesGet'{..}
-          = go _psgProFileId _psgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Insert.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Insert.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.PlacementStrategies.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new placement strategy.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.insert@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.Insert
-    (
-    -- * REST Resource
-      PlacementStrategiesInsertResource
-
-    -- * Creating a Request
-    , placementStrategiesInsert
-    , PlacementStrategiesInsert
-
-    -- * Request Lenses
-    , psiProFileId
-    , psiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.insert@ method which the
--- 'PlacementStrategiesInsert' request conforms to.
-type PlacementStrategiesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] PlacementStrategy :>
-                   Post '[JSON] PlacementStrategy
-
--- | Inserts a new placement strategy.
---
--- /See:/ 'placementStrategiesInsert' smart constructor.
-data PlacementStrategiesInsert =
-  PlacementStrategiesInsert'
-    { _psiProFileId :: !(Textual Int64)
-    , _psiPayload   :: !PlacementStrategy
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psiProFileId'
---
--- * 'psiPayload'
-placementStrategiesInsert
-    :: Int64 -- ^ 'psiProFileId'
-    -> PlacementStrategy -- ^ 'psiPayload'
-    -> PlacementStrategiesInsert
-placementStrategiesInsert pPsiProFileId_ pPsiPayload_ =
-  PlacementStrategiesInsert'
-    {_psiProFileId = _Coerce # pPsiProFileId_, _psiPayload = pPsiPayload_}
-
-
--- | User profile ID associated with this request.
-psiProFileId :: Lens' PlacementStrategiesInsert Int64
-psiProFileId
-  = lens _psiProFileId (\ s a -> s{_psiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-psiPayload :: Lens' PlacementStrategiesInsert PlacementStrategy
-psiPayload
-  = lens _psiPayload (\ s a -> s{_psiPayload = a})
-
-instance GoogleRequest PlacementStrategiesInsert
-         where
-        type Rs PlacementStrategiesInsert = PlacementStrategy
-        type Scopes PlacementStrategiesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesInsert'{..}
-          = go _psiProFileId (Just AltJSON) _psiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/List.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/List.hs
+++ /dev/null
@@ -1,183 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.PlacementStrategies.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of placement strategies, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.list@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.List
-    (
-    -- * REST Resource
-      PlacementStrategiesListResource
-
-    -- * Creating a Request
-    , placementStrategiesList
-    , PlacementStrategiesList
-
-    -- * Request Lenses
-    , pslSearchString
-    , pslIds
-    , pslProFileId
-    , pslSortOrder
-    , pslPageToken
-    , pslSortField
-    , pslMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.list@ method which the
--- 'PlacementStrategiesList' request conforms to.
-type PlacementStrategiesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder"
-                     PlacementStrategiesListSortOrder
-                     :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField"
-                         PlacementStrategiesListSortField
-                         :>
-                         QueryParam "maxResults" (Textual Int32) :>
-                           QueryParam "alt" AltJSON :>
-                             Get '[JSON] PlacementStrategiesListResponse
-
--- | Retrieves a list of placement strategies, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'placementStrategiesList' smart constructor.
-data PlacementStrategiesList =
-  PlacementStrategiesList'
-    { _pslSearchString :: !(Maybe Text)
-    , _pslIds          :: !(Maybe [Textual Int64])
-    , _pslProFileId    :: !(Textual Int64)
-    , _pslSortOrder    :: !PlacementStrategiesListSortOrder
-    , _pslPageToken    :: !(Maybe Text)
-    , _pslSortField    :: !PlacementStrategiesListSortField
-    , _pslMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pslSearchString'
---
--- * 'pslIds'
---
--- * 'pslProFileId'
---
--- * 'pslSortOrder'
---
--- * 'pslPageToken'
---
--- * 'pslSortField'
---
--- * 'pslMaxResults'
-placementStrategiesList
-    :: Int64 -- ^ 'pslProFileId'
-    -> PlacementStrategiesList
-placementStrategiesList pPslProFileId_ =
-  PlacementStrategiesList'
-    { _pslSearchString = Nothing
-    , _pslIds = Nothing
-    , _pslProFileId = _Coerce # pPslProFileId_
-    , _pslSortOrder = PSLSOAscending
-    , _pslPageToken = Nothing
-    , _pslSortField = PSLSFID
-    , _pslMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"placementstrategy*2015\" will return objects with names
--- like \"placementstrategy June 2015\", \"placementstrategy April 2015\",
--- or simply \"placementstrategy 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"placementstrategy\" will match objects
--- with name \"my placementstrategy\", \"placementstrategy 2015\", or
--- simply \"placementstrategy\".
-pslSearchString :: Lens' PlacementStrategiesList (Maybe Text)
-pslSearchString
-  = lens _pslSearchString
-      (\ s a -> s{_pslSearchString = a})
-
--- | Select only placement strategies with these IDs.
-pslIds :: Lens' PlacementStrategiesList [Int64]
-pslIds
-  = lens _pslIds (\ s a -> s{_pslIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-pslProFileId :: Lens' PlacementStrategiesList Int64
-pslProFileId
-  = lens _pslProFileId (\ s a -> s{_pslProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-pslSortOrder :: Lens' PlacementStrategiesList PlacementStrategiesListSortOrder
-pslSortOrder
-  = lens _pslSortOrder (\ s a -> s{_pslSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-pslPageToken :: Lens' PlacementStrategiesList (Maybe Text)
-pslPageToken
-  = lens _pslPageToken (\ s a -> s{_pslPageToken = a})
-
--- | Field by which to sort the list.
-pslSortField :: Lens' PlacementStrategiesList PlacementStrategiesListSortField
-pslSortField
-  = lens _pslSortField (\ s a -> s{_pslSortField = a})
-
--- | Maximum number of results to return.
-pslMaxResults :: Lens' PlacementStrategiesList Int32
-pslMaxResults
-  = lens _pslMaxResults
-      (\ s a -> s{_pslMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest PlacementStrategiesList where
-        type Rs PlacementStrategiesList =
-             PlacementStrategiesListResponse
-        type Scopes PlacementStrategiesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesList'{..}
-          = go _pslProFileId _pslSearchString
-              (_pslIds ^. _Default)
-              (Just _pslSortOrder)
-              _pslPageToken
-              (Just _pslSortField)
-              (Just _pslMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Patch.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.PlacementStrategies.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement strategy. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.patch@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.Patch
-    (
-    -- * REST Resource
-      PlacementStrategiesPatchResource
-
-    -- * Creating a Request
-    , placementStrategiesPatch
-    , PlacementStrategiesPatch
-
-    -- * Request Lenses
-    , pspProFileId
-    , pspPayload
-    , pspId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.patch@ method which the
--- 'PlacementStrategiesPatch' request conforms to.
-type PlacementStrategiesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] PlacementStrategy :>
-                     Patch '[JSON] PlacementStrategy
-
--- | Updates an existing placement strategy. This method supports patch
--- semantics.
---
--- /See:/ 'placementStrategiesPatch' smart constructor.
-data PlacementStrategiesPatch =
-  PlacementStrategiesPatch'
-    { _pspProFileId :: !(Textual Int64)
-    , _pspPayload   :: !PlacementStrategy
-    , _pspId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pspProFileId'
---
--- * 'pspPayload'
---
--- * 'pspId'
-placementStrategiesPatch
-    :: Int64 -- ^ 'pspProFileId'
-    -> PlacementStrategy -- ^ 'pspPayload'
-    -> Int64 -- ^ 'pspId'
-    -> PlacementStrategiesPatch
-placementStrategiesPatch pPspProFileId_ pPspPayload_ pPspId_ =
-  PlacementStrategiesPatch'
-    { _pspProFileId = _Coerce # pPspProFileId_
-    , _pspPayload = pPspPayload_
-    , _pspId = _Coerce # pPspId_
-    }
-
-
--- | User profile ID associated with this request.
-pspProFileId :: Lens' PlacementStrategiesPatch Int64
-pspProFileId
-  = lens _pspProFileId (\ s a -> s{_pspProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-pspPayload :: Lens' PlacementStrategiesPatch PlacementStrategy
-pspPayload
-  = lens _pspPayload (\ s a -> s{_pspPayload = a})
-
--- | Placement strategy ID.
-pspId :: Lens' PlacementStrategiesPatch Int64
-pspId
-  = lens _pspId (\ s a -> s{_pspId = a}) . _Coerce
-
-instance GoogleRequest PlacementStrategiesPatch where
-        type Rs PlacementStrategiesPatch = PlacementStrategy
-        type Scopes PlacementStrategiesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesPatch'{..}
-          = go _pspProFileId (Just _pspId) (Just AltJSON)
-              _pspPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Update.hs b/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlacementStrategies/Update.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.PlacementStrategies.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement strategy.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placementStrategies.update@.
-module Network.Google.Resource.DFAReporting.PlacementStrategies.Update
-    (
-    -- * REST Resource
-      PlacementStrategiesUpdateResource
-
-    -- * Creating a Request
-    , placementStrategiesUpdate
-    , PlacementStrategiesUpdate
-
-    -- * Request Lenses
-    , psuProFileId
-    , psuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placementStrategies.update@ method which the
--- 'PlacementStrategiesUpdate' request conforms to.
-type PlacementStrategiesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placementStrategies" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] PlacementStrategy :>
-                   Put '[JSON] PlacementStrategy
-
--- | Updates an existing placement strategy.
---
--- /See:/ 'placementStrategiesUpdate' smart constructor.
-data PlacementStrategiesUpdate =
-  PlacementStrategiesUpdate'
-    { _psuProFileId :: !(Textual Int64)
-    , _psuPayload   :: !PlacementStrategy
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementStrategiesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'psuProFileId'
---
--- * 'psuPayload'
-placementStrategiesUpdate
-    :: Int64 -- ^ 'psuProFileId'
-    -> PlacementStrategy -- ^ 'psuPayload'
-    -> PlacementStrategiesUpdate
-placementStrategiesUpdate pPsuProFileId_ pPsuPayload_ =
-  PlacementStrategiesUpdate'
-    {_psuProFileId = _Coerce # pPsuProFileId_, _psuPayload = pPsuPayload_}
-
-
--- | User profile ID associated with this request.
-psuProFileId :: Lens' PlacementStrategiesUpdate Int64
-psuProFileId
-  = lens _psuProFileId (\ s a -> s{_psuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-psuPayload :: Lens' PlacementStrategiesUpdate PlacementStrategy
-psuPayload
-  = lens _psuPayload (\ s a -> s{_psuPayload = a})
-
-instance GoogleRequest PlacementStrategiesUpdate
-         where
-        type Rs PlacementStrategiesUpdate = PlacementStrategy
-        type Scopes PlacementStrategiesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementStrategiesUpdate'{..}
-          = go _psuProFileId (Just AltJSON) _psuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementStrategiesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/Generatetags.hs b/gen/Network/Google/Resource/DFAReporting/Placements/Generatetags.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/Generatetags.hs
+++ /dev/null
@@ -1,143 +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.DFAReporting.Placements.Generatetags
--- 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)
---
--- Generates tags for a placement.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.generatetags@.
-module Network.Google.Resource.DFAReporting.Placements.Generatetags
-    (
-    -- * REST Resource
-      PlacementsGeneratetagsResource
-
-    -- * Creating a Request
-    , placementsGeneratetags
-    , PlacementsGeneratetags
-
-    -- * Request Lenses
-    , pgsTagFormats
-    , pgsCampaignId
-    , pgsProFileId
-    , pgsPlacementIds
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.generatetags@ method which the
--- 'PlacementsGeneratetags' request conforms to.
-type PlacementsGeneratetagsResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               "generatetags" :>
-                 QueryParams "tagFormats"
-                   PlacementsGeneratetagsTagFormats
-                   :>
-                   QueryParam "campaignId" (Textual Int64) :>
-                     QueryParams "placementIds" (Textual Int64) :>
-                       QueryParam "alt" AltJSON :>
-                         Post '[JSON] PlacementsGenerateTagsResponse
-
--- | Generates tags for a placement.
---
--- /See:/ 'placementsGeneratetags' smart constructor.
-data PlacementsGeneratetags =
-  PlacementsGeneratetags'
-    { _pgsTagFormats   :: !(Maybe [PlacementsGeneratetagsTagFormats])
-    , _pgsCampaignId   :: !(Maybe (Textual Int64))
-    , _pgsProFileId    :: !(Textual Int64)
-    , _pgsPlacementIds :: !(Maybe [Textual Int64])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsGeneratetags' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgsTagFormats'
---
--- * 'pgsCampaignId'
---
--- * 'pgsProFileId'
---
--- * 'pgsPlacementIds'
-placementsGeneratetags
-    :: Int64 -- ^ 'pgsProFileId'
-    -> PlacementsGeneratetags
-placementsGeneratetags pPgsProFileId_ =
-  PlacementsGeneratetags'
-    { _pgsTagFormats = Nothing
-    , _pgsCampaignId = Nothing
-    , _pgsProFileId = _Coerce # pPgsProFileId_
-    , _pgsPlacementIds = Nothing
-    }
-
-
--- | Tag formats to generate for these placements. Note:
--- PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.
-pgsTagFormats :: Lens' PlacementsGeneratetags [PlacementsGeneratetagsTagFormats]
-pgsTagFormats
-  = lens _pgsTagFormats
-      (\ s a -> s{_pgsTagFormats = a})
-      . _Default
-      . _Coerce
-
--- | Generate placements belonging to this campaign. This is a required
--- field.
-pgsCampaignId :: Lens' PlacementsGeneratetags (Maybe Int64)
-pgsCampaignId
-  = lens _pgsCampaignId
-      (\ s a -> s{_pgsCampaignId = a})
-      . mapping _Coerce
-
--- | User profile ID associated with this request.
-pgsProFileId :: Lens' PlacementsGeneratetags Int64
-pgsProFileId
-  = lens _pgsProFileId (\ s a -> s{_pgsProFileId = a})
-      . _Coerce
-
--- | Generate tags for these placements.
-pgsPlacementIds :: Lens' PlacementsGeneratetags [Int64]
-pgsPlacementIds
-  = lens _pgsPlacementIds
-      (\ s a -> s{_pgsPlacementIds = a})
-      . _Default
-      . _Coerce
-
-instance GoogleRequest PlacementsGeneratetags where
-        type Rs PlacementsGeneratetags =
-             PlacementsGenerateTagsResponse
-        type Scopes PlacementsGeneratetags =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsGeneratetags'{..}
-          = go _pgsProFileId (_pgsTagFormats ^. _Default)
-              _pgsCampaignId
-              (_pgsPlacementIds ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementsGeneratetagsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/Get.hs b/gen/Network/Google/Resource/DFAReporting/Placements/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/Get.hs
+++ /dev/null
@@ -1,100 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Placements.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one placement by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.get@.
-module Network.Google.Resource.DFAReporting.Placements.Get
-    (
-    -- * REST Resource
-      PlacementsGetResource
-
-    -- * Creating a Request
-    , placementsGet
-    , PlacementsGet
-
-    -- * Request Lenses
-    , pgProFileId
-    , pgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.get@ method which the
--- 'PlacementsGet' request conforms to.
-type PlacementsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Placement
-
--- | Gets one placement by ID.
---
--- /See:/ 'placementsGet' smart constructor.
-data PlacementsGet =
-  PlacementsGet'
-    { _pgProFileId :: !(Textual Int64)
-    , _pgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgProFileId'
---
--- * 'pgId'
-placementsGet
-    :: Int64 -- ^ 'pgProFileId'
-    -> Int64 -- ^ 'pgId'
-    -> PlacementsGet
-placementsGet pPgProFileId_ pPgId_ =
-  PlacementsGet'
-    {_pgProFileId = _Coerce # pPgProFileId_, _pgId = _Coerce # pPgId_}
-
-
--- | User profile ID associated with this request.
-pgProFileId :: Lens' PlacementsGet Int64
-pgProFileId
-  = lens _pgProFileId (\ s a -> s{_pgProFileId = a}) .
-      _Coerce
-
--- | Placement ID.
-pgId :: Lens' PlacementsGet Int64
-pgId = lens _pgId (\ s a -> s{_pgId = a}) . _Coerce
-
-instance GoogleRequest PlacementsGet where
-        type Rs PlacementsGet = Placement
-        type Scopes PlacementsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsGet'{..}
-          = go _pgProFileId _pgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy PlacementsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Placements/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Placements.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new placement.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.insert@.
-module Network.Google.Resource.DFAReporting.Placements.Insert
-    (
-    -- * REST Resource
-      PlacementsInsertResource
-
-    -- * Creating a Request
-    , placementsInsert
-    , PlacementsInsert
-
-    -- * Request Lenses
-    , piProFileId
-    , piPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.insert@ method which the
--- 'PlacementsInsert' request conforms to.
-type PlacementsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Placement :> Post '[JSON] Placement
-
--- | Inserts a new placement.
---
--- /See:/ 'placementsInsert' smart constructor.
-data PlacementsInsert =
-  PlacementsInsert'
-    { _piProFileId :: !(Textual Int64)
-    , _piPayload   :: !Placement
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'piProFileId'
---
--- * 'piPayload'
-placementsInsert
-    :: Int64 -- ^ 'piProFileId'
-    -> Placement -- ^ 'piPayload'
-    -> PlacementsInsert
-placementsInsert pPiProFileId_ pPiPayload_ =
-  PlacementsInsert'
-    {_piProFileId = _Coerce # pPiProFileId_, _piPayload = pPiPayload_}
-
-
--- | User profile ID associated with this request.
-piProFileId :: Lens' PlacementsInsert Int64
-piProFileId
-  = lens _piProFileId (\ s a -> s{_piProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-piPayload :: Lens' PlacementsInsert Placement
-piPayload
-  = lens _piPayload (\ s a -> s{_piPayload = a})
-
-instance GoogleRequest PlacementsInsert where
-        type Rs PlacementsInsert = Placement
-        type Scopes PlacementsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsInsert'{..}
-          = go _piProFileId (Just AltJSON) _piPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/List.hs b/gen/Network/Google/Resource/DFAReporting/Placements/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/List.hs
+++ /dev/null
@@ -1,434 +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.DFAReporting.Placements.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of placements, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.list@.
-module Network.Google.Resource.DFAReporting.Placements.List
-    (
-    -- * REST Resource
-      PlacementsListResource
-
-    -- * Creating a Request
-    , placementsList
-    , PlacementsList
-
-    -- * Request Lenses
-    , pPlacementStrategyIds
-    , pContentCategoryIds
-    , pMaxEndDate
-    , pCampaignIds
-    , pPricingTypes
-    , pSearchString
-    , pSizeIds
-    , pIds
-    , pProFileId
-    , pGroupIds
-    , pDirectorySiteIds
-    , pSortOrder
-    , pPaymentSource
-    , pSiteIds
-    , pPageToken
-    , pSortField
-    , pCompatibilities
-    , pMaxStartDate
-    , pAdvertiserIds
-    , pMinStartDate
-    , pArchived
-    , pMaxResults
-    , pMinEndDate
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.list@ method which the
--- 'PlacementsList' request conforms to.
-type PlacementsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               QueryParams "placementStrategyIds" (Textual Int64) :>
-                 QueryParams "contentCategoryIds" (Textual Int64) :>
-                   QueryParam "maxEndDate" Text :>
-                     QueryParams "campaignIds" (Textual Int64) :>
-                       QueryParams "pricingTypes" PlacementsListPricingTypes
-                         :>
-                         QueryParam "searchString" Text :>
-                           QueryParams "sizeIds" (Textual Int64) :>
-                             QueryParams "ids" (Textual Int64) :>
-                               QueryParams "groupIds" (Textual Int64) :>
-                                 QueryParams "directorySiteIds" (Textual Int64)
-                                   :>
-                                   QueryParam "sortOrder"
-                                     PlacementsListSortOrder
-                                     :>
-                                     QueryParam "paymentSource"
-                                       PlacementsListPaymentSource
-                                       :>
-                                       QueryParams "siteIds" (Textual Int64) :>
-                                         QueryParam "pageToken" Text :>
-                                           QueryParam "sortField"
-                                             PlacementsListSortField
-                                             :>
-                                             QueryParams "compatibilities"
-                                               PlacementsListCompatibilities
-                                               :>
-                                               QueryParam "maxStartDate" Text :>
-                                                 QueryParams "advertiserIds"
-                                                   (Textual Int64)
-                                                   :>
-                                                   QueryParam "minStartDate"
-                                                     Text
-                                                     :>
-                                                     QueryParam "archived" Bool
-                                                       :>
-                                                       QueryParam "maxResults"
-                                                         (Textual Int32)
-                                                         :>
-                                                         QueryParam "minEndDate"
-                                                           Text
-                                                           :>
-                                                           QueryParam "alt"
-                                                             AltJSON
-                                                             :>
-                                                             Get '[JSON]
-                                                               PlacementsListResponse
-
--- | Retrieves a list of placements, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'placementsList' smart constructor.
-data PlacementsList =
-  PlacementsList'
-    { _pPlacementStrategyIds :: !(Maybe [Textual Int64])
-    , _pContentCategoryIds   :: !(Maybe [Textual Int64])
-    , _pMaxEndDate           :: !(Maybe Text)
-    , _pCampaignIds          :: !(Maybe [Textual Int64])
-    , _pPricingTypes         :: !(Maybe [PlacementsListPricingTypes])
-    , _pSearchString         :: !(Maybe Text)
-    , _pSizeIds              :: !(Maybe [Textual Int64])
-    , _pIds                  :: !(Maybe [Textual Int64])
-    , _pProFileId            :: !(Textual Int64)
-    , _pGroupIds             :: !(Maybe [Textual Int64])
-    , _pDirectorySiteIds     :: !(Maybe [Textual Int64])
-    , _pSortOrder            :: !PlacementsListSortOrder
-    , _pPaymentSource        :: !(Maybe PlacementsListPaymentSource)
-    , _pSiteIds              :: !(Maybe [Textual Int64])
-    , _pPageToken            :: !(Maybe Text)
-    , _pSortField            :: !PlacementsListSortField
-    , _pCompatibilities      :: !(Maybe [PlacementsListCompatibilities])
-    , _pMaxStartDate         :: !(Maybe Text)
-    , _pAdvertiserIds        :: !(Maybe [Textual Int64])
-    , _pMinStartDate         :: !(Maybe Text)
-    , _pArchived             :: !(Maybe Bool)
-    , _pMaxResults           :: !(Textual Int32)
-    , _pMinEndDate           :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pPlacementStrategyIds'
---
--- * 'pContentCategoryIds'
---
--- * 'pMaxEndDate'
---
--- * 'pCampaignIds'
---
--- * 'pPricingTypes'
---
--- * 'pSearchString'
---
--- * 'pSizeIds'
---
--- * 'pIds'
---
--- * 'pProFileId'
---
--- * 'pGroupIds'
---
--- * 'pDirectorySiteIds'
---
--- * 'pSortOrder'
---
--- * 'pPaymentSource'
---
--- * 'pSiteIds'
---
--- * 'pPageToken'
---
--- * 'pSortField'
---
--- * 'pCompatibilities'
---
--- * 'pMaxStartDate'
---
--- * 'pAdvertiserIds'
---
--- * 'pMinStartDate'
---
--- * 'pArchived'
---
--- * 'pMaxResults'
---
--- * 'pMinEndDate'
-placementsList
-    :: Int64 -- ^ 'pProFileId'
-    -> PlacementsList
-placementsList pPProFileId_ =
-  PlacementsList'
-    { _pPlacementStrategyIds = Nothing
-    , _pContentCategoryIds = Nothing
-    , _pMaxEndDate = Nothing
-    , _pCampaignIds = Nothing
-    , _pPricingTypes = Nothing
-    , _pSearchString = Nothing
-    , _pSizeIds = Nothing
-    , _pIds = Nothing
-    , _pProFileId = _Coerce # pPProFileId_
-    , _pGroupIds = Nothing
-    , _pDirectorySiteIds = Nothing
-    , _pSortOrder = Ascending
-    , _pPaymentSource = Nothing
-    , _pSiteIds = Nothing
-    , _pPageToken = Nothing
-    , _pSortField = PLSFID
-    , _pCompatibilities = Nothing
-    , _pMaxStartDate = Nothing
-    , _pAdvertiserIds = Nothing
-    , _pMinStartDate = Nothing
-    , _pArchived = Nothing
-    , _pMaxResults = 1000
-    , _pMinEndDate = Nothing
-    }
-
-
--- | Select only placements that are associated with these placement
--- strategies.
-pPlacementStrategyIds :: Lens' PlacementsList [Int64]
-pPlacementStrategyIds
-  = lens _pPlacementStrategyIds
-      (\ s a -> s{_pPlacementStrategyIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements that are associated with these content
--- categories.
-pContentCategoryIds :: Lens' PlacementsList [Int64]
-pContentCategoryIds
-  = lens _pContentCategoryIds
-      (\ s a -> s{_pContentCategoryIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements or placement groups whose end date is on or
--- before the specified maxEndDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pMaxEndDate :: Lens' PlacementsList (Maybe Text)
-pMaxEndDate
-  = lens _pMaxEndDate (\ s a -> s{_pMaxEndDate = a})
-
--- | Select only placements that belong to these campaigns.
-pCampaignIds :: Lens' PlacementsList [Int64]
-pCampaignIds
-  = lens _pCampaignIds (\ s a -> s{_pCampaignIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements with these pricing types.
-pPricingTypes :: Lens' PlacementsList [PlacementsListPricingTypes]
-pPricingTypes
-  = lens _pPricingTypes
-      (\ s a -> s{_pPricingTypes = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for placements by name or ID. Wildcards (*) are
--- allowed. For example, \"placement*2015\" will return placements with
--- names like \"placement June 2015\", \"placement May 2015\", or simply
--- \"placements 2015\". Most of the searches also add wildcards implicitly
--- at the start and the end of the search string. For example, a search
--- string of \"placement\" will match placements with name \"my
--- placement\", \"placement 2015\", or simply \"placement\".
-pSearchString :: Lens' PlacementsList (Maybe Text)
-pSearchString
-  = lens _pSearchString
-      (\ s a -> s{_pSearchString = a})
-
--- | Select only placements that are associated with these sizes.
-pSizeIds :: Lens' PlacementsList [Int64]
-pSizeIds
-  = lens _pSizeIds (\ s a -> s{_pSizeIds = a}) .
-      _Default
-      . _Coerce
-
--- | Select only placements with these IDs.
-pIds :: Lens' PlacementsList [Int64]
-pIds
-  = lens _pIds (\ s a -> s{_pIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-pProFileId :: Lens' PlacementsList Int64
-pProFileId
-  = lens _pProFileId (\ s a -> s{_pProFileId = a}) .
-      _Coerce
-
--- | Select only placements that belong to these placement groups.
-pGroupIds :: Lens' PlacementsList [Int64]
-pGroupIds
-  = lens _pGroupIds (\ s a -> s{_pGroupIds = a}) .
-      _Default
-      . _Coerce
-
--- | Select only placements that are associated with these directory sites.
-pDirectorySiteIds :: Lens' PlacementsList [Int64]
-pDirectorySiteIds
-  = lens _pDirectorySiteIds
-      (\ s a -> s{_pDirectorySiteIds = a})
-      . _Default
-      . _Coerce
-
--- | Order of sorted results.
-pSortOrder :: Lens' PlacementsList PlacementsListSortOrder
-pSortOrder
-  = lens _pSortOrder (\ s a -> s{_pSortOrder = a})
-
--- | Select only placements with this payment source.
-pPaymentSource :: Lens' PlacementsList (Maybe PlacementsListPaymentSource)
-pPaymentSource
-  = lens _pPaymentSource
-      (\ s a -> s{_pPaymentSource = a})
-
--- | Select only placements that are associated with these sites.
-pSiteIds :: Lens' PlacementsList [Int64]
-pSiteIds
-  = lens _pSiteIds (\ s a -> s{_pSiteIds = a}) .
-      _Default
-      . _Coerce
-
--- | Value of the nextPageToken from the previous result page.
-pPageToken :: Lens' PlacementsList (Maybe Text)
-pPageToken
-  = lens _pPageToken (\ s a -> s{_pPageToken = a})
-
--- | Field by which to sort the list.
-pSortField :: Lens' PlacementsList PlacementsListSortField
-pSortField
-  = lens _pSortField (\ s a -> s{_pSortField = a})
-
--- | Select only placements that are associated with these compatibilities.
--- DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or
--- on mobile devices for regular or interstitial ads respectively. APP and
--- APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO
--- refers to rendering in in-stream video ads developed with the VAST
--- standard.
-pCompatibilities :: Lens' PlacementsList [PlacementsListCompatibilities]
-pCompatibilities
-  = lens _pCompatibilities
-      (\ s a -> s{_pCompatibilities = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements or placement groups whose start date is on or
--- before the specified maxStartDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pMaxStartDate :: Lens' PlacementsList (Maybe Text)
-pMaxStartDate
-  = lens _pMaxStartDate
-      (\ s a -> s{_pMaxStartDate = a})
-
--- | Select only placements that belong to these advertisers.
-pAdvertiserIds :: Lens' PlacementsList [Int64]
-pAdvertiserIds
-  = lens _pAdvertiserIds
-      (\ s a -> s{_pAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Select only placements or placement groups whose start date is on or
--- after the specified minStartDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pMinStartDate :: Lens' PlacementsList (Maybe Text)
-pMinStartDate
-  = lens _pMinStartDate
-      (\ s a -> s{_pMinStartDate = a})
-
--- | Select only archived placements. Don\'t set this field to select both
--- archived and non-archived placements.
-pArchived :: Lens' PlacementsList (Maybe Bool)
-pArchived
-  = lens _pArchived (\ s a -> s{_pArchived = a})
-
--- | Maximum number of results to return.
-pMaxResults :: Lens' PlacementsList Int32
-pMaxResults
-  = lens _pMaxResults (\ s a -> s{_pMaxResults = a}) .
-      _Coerce
-
--- | Select only placements or placement groups whose end date is on or after
--- the specified minEndDate. The date should be formatted as
--- \"yyyy-MM-dd\".
-pMinEndDate :: Lens' PlacementsList (Maybe Text)
-pMinEndDate
-  = lens _pMinEndDate (\ s a -> s{_pMinEndDate = a})
-
-instance GoogleRequest PlacementsList where
-        type Rs PlacementsList = PlacementsListResponse
-        type Scopes PlacementsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsList'{..}
-          = go _pProFileId (_pPlacementStrategyIds ^. _Default)
-              (_pContentCategoryIds ^. _Default)
-              _pMaxEndDate
-              (_pCampaignIds ^. _Default)
-              (_pPricingTypes ^. _Default)
-              _pSearchString
-              (_pSizeIds ^. _Default)
-              (_pIds ^. _Default)
-              (_pGroupIds ^. _Default)
-              (_pDirectorySiteIds ^. _Default)
-              (Just _pSortOrder)
-              _pPaymentSource
-              (_pSiteIds ^. _Default)
-              _pPageToken
-              (Just _pSortField)
-              (_pCompatibilities ^. _Default)
-              _pMaxStartDate
-              (_pAdvertiserIds ^. _Default)
-              _pMinStartDate
-              _pArchived
-              (Just _pMaxResults)
-              _pMinEndDate
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy PlacementsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Placements/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/Patch.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.Placements.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.patch@.
-module Network.Google.Resource.DFAReporting.Placements.Patch
-    (
-    -- * REST Resource
-      PlacementsPatchResource
-
-    -- * Creating a Request
-    , placementsPatch
-    , PlacementsPatch
-
-    -- * Request Lenses
-    , ppProFileId
-    , ppPayload
-    , ppId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.patch@ method which the
--- 'PlacementsPatch' request conforms to.
-type PlacementsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Placement :> Patch '[JSON] Placement
-
--- | Updates an existing placement. This method supports patch semantics.
---
--- /See:/ 'placementsPatch' smart constructor.
-data PlacementsPatch =
-  PlacementsPatch'
-    { _ppProFileId :: !(Textual Int64)
-    , _ppPayload   :: !Placement
-    , _ppId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ppProFileId'
---
--- * 'ppPayload'
---
--- * 'ppId'
-placementsPatch
-    :: Int64 -- ^ 'ppProFileId'
-    -> Placement -- ^ 'ppPayload'
-    -> Int64 -- ^ 'ppId'
-    -> PlacementsPatch
-placementsPatch pPpProFileId_ pPpPayload_ pPpId_ =
-  PlacementsPatch'
-    { _ppProFileId = _Coerce # pPpProFileId_
-    , _ppPayload = pPpPayload_
-    , _ppId = _Coerce # pPpId_
-    }
-
-
--- | User profile ID associated with this request.
-ppProFileId :: Lens' PlacementsPatch Int64
-ppProFileId
-  = lens _ppProFileId (\ s a -> s{_ppProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-ppPayload :: Lens' PlacementsPatch Placement
-ppPayload
-  = lens _ppPayload (\ s a -> s{_ppPayload = a})
-
--- | Placement ID.
-ppId :: Lens' PlacementsPatch Int64
-ppId = lens _ppId (\ s a -> s{_ppId = a}) . _Coerce
-
-instance GoogleRequest PlacementsPatch where
-        type Rs PlacementsPatch = Placement
-        type Scopes PlacementsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsPatch'{..}
-          = go _ppProFileId (Just _ppId) (Just AltJSON)
-              _ppPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Placements/Update.hs b/gen/Network/Google/Resource/DFAReporting/Placements/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Placements/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Placements.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing placement.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.placements.update@.
-module Network.Google.Resource.DFAReporting.Placements.Update
-    (
-    -- * REST Resource
-      PlacementsUpdateResource
-
-    -- * Creating a Request
-    , placementsUpdate
-    , PlacementsUpdate
-
-    -- * Request Lenses
-    , puProFileId
-    , puPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.placements.update@ method which the
--- 'PlacementsUpdate' request conforms to.
-type PlacementsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "placements" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Placement :> Put '[JSON] Placement
-
--- | Updates an existing placement.
---
--- /See:/ 'placementsUpdate' smart constructor.
-data PlacementsUpdate =
-  PlacementsUpdate'
-    { _puProFileId :: !(Textual Int64)
-    , _puPayload   :: !Placement
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlacementsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'puProFileId'
---
--- * 'puPayload'
-placementsUpdate
-    :: Int64 -- ^ 'puProFileId'
-    -> Placement -- ^ 'puPayload'
-    -> PlacementsUpdate
-placementsUpdate pPuProFileId_ pPuPayload_ =
-  PlacementsUpdate'
-    {_puProFileId = _Coerce # pPuProFileId_, _puPayload = pPuPayload_}
-
-
--- | User profile ID associated with this request.
-puProFileId :: Lens' PlacementsUpdate Int64
-puProFileId
-  = lens _puProFileId (\ s a -> s{_puProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-puPayload :: Lens' PlacementsUpdate Placement
-puPayload
-  = lens _puPayload (\ s a -> s{_puPayload = a})
-
-instance GoogleRequest PlacementsUpdate where
-        type Rs PlacementsUpdate = Placement
-        type Scopes PlacementsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlacementsUpdate'{..}
-          = go _puProFileId (Just AltJSON) _puPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlacementsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlatformTypes/Get.hs b/gen/Network/Google/Resource/DFAReporting/PlatformTypes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlatformTypes/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.PlatformTypes.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one platform type by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.platformTypes.get@.
-module Network.Google.Resource.DFAReporting.PlatformTypes.Get
-    (
-    -- * REST Resource
-      PlatformTypesGetResource
-
-    -- * Creating a Request
-    , platformTypesGet
-    , PlatformTypesGet
-
-    -- * Request Lenses
-    , ptgProFileId
-    , ptgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.platformTypes.get@ method which the
--- 'PlatformTypesGet' request conforms to.
-type PlatformTypesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "platformTypes" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] PlatformType
-
--- | Gets one platform type by ID.
---
--- /See:/ 'platformTypesGet' smart constructor.
-data PlatformTypesGet =
-  PlatformTypesGet'
-    { _ptgProFileId :: !(Textual Int64)
-    , _ptgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlatformTypesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptgProFileId'
---
--- * 'ptgId'
-platformTypesGet
-    :: Int64 -- ^ 'ptgProFileId'
-    -> Int64 -- ^ 'ptgId'
-    -> PlatformTypesGet
-platformTypesGet pPtgProFileId_ pPtgId_ =
-  PlatformTypesGet'
-    {_ptgProFileId = _Coerce # pPtgProFileId_, _ptgId = _Coerce # pPtgId_}
-
-
--- | User profile ID associated with this request.
-ptgProFileId :: Lens' PlatformTypesGet Int64
-ptgProFileId
-  = lens _ptgProFileId (\ s a -> s{_ptgProFileId = a})
-      . _Coerce
-
--- | Platform type ID.
-ptgId :: Lens' PlatformTypesGet Int64
-ptgId
-  = lens _ptgId (\ s a -> s{_ptgId = a}) . _Coerce
-
-instance GoogleRequest PlatformTypesGet where
-        type Rs PlatformTypesGet = PlatformType
-        type Scopes PlatformTypesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlatformTypesGet'{..}
-          = go _ptgProFileId _ptgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlatformTypesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PlatformTypes/List.hs b/gen/Network/Google/Resource/DFAReporting/PlatformTypes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PlatformTypes/List.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.DFAReporting.PlatformTypes.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of platform types.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.platformTypes.list@.
-module Network.Google.Resource.DFAReporting.PlatformTypes.List
-    (
-    -- * REST Resource
-      PlatformTypesListResource
-
-    -- * Creating a Request
-    , platformTypesList
-    , PlatformTypesList
-
-    -- * Request Lenses
-    , ptlProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.platformTypes.list@ method which the
--- 'PlatformTypesList' request conforms to.
-type PlatformTypesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "platformTypes" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] PlatformTypesListResponse
-
--- | Retrieves a list of platform types.
---
--- /See:/ 'platformTypesList' smart constructor.
-newtype PlatformTypesList =
-  PlatformTypesList'
-    { _ptlProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PlatformTypesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ptlProFileId'
-platformTypesList
-    :: Int64 -- ^ 'ptlProFileId'
-    -> PlatformTypesList
-platformTypesList pPtlProFileId_ =
-  PlatformTypesList' {_ptlProFileId = _Coerce # pPtlProFileId_}
-
-
--- | User profile ID associated with this request.
-ptlProFileId :: Lens' PlatformTypesList Int64
-ptlProFileId
-  = lens _ptlProFileId (\ s a -> s{_ptlProFileId = a})
-      . _Coerce
-
-instance GoogleRequest PlatformTypesList where
-        type Rs PlatformTypesList = PlatformTypesListResponse
-        type Scopes PlatformTypesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PlatformTypesList'{..}
-          = go _ptlProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PlatformTypesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PostalCodes/Get.hs b/gen/Network/Google/Resource/DFAReporting/PostalCodes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PostalCodes/Get.hs
+++ /dev/null
@@ -1,100 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.PostalCodes.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one postal code by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.postalCodes.get@.
-module Network.Google.Resource.DFAReporting.PostalCodes.Get
-    (
-    -- * REST Resource
-      PostalCodesGetResource
-
-    -- * Creating a Request
-    , postalCodesGet
-    , PostalCodesGet
-
-    -- * Request Lenses
-    , pcgProFileId
-    , pcgCode
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.postalCodes.get@ method which the
--- 'PostalCodesGet' request conforms to.
-type PostalCodesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "postalCodes" :>
-               Capture "code" Text :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] PostalCode
-
--- | Gets one postal code by ID.
---
--- /See:/ 'postalCodesGet' smart constructor.
-data PostalCodesGet =
-  PostalCodesGet'
-    { _pcgProFileId :: !(Textual Int64)
-    , _pcgCode      :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PostalCodesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pcgProFileId'
---
--- * 'pcgCode'
-postalCodesGet
-    :: Int64 -- ^ 'pcgProFileId'
-    -> Text -- ^ 'pcgCode'
-    -> PostalCodesGet
-postalCodesGet pPcgProFileId_ pPcgCode_ =
-  PostalCodesGet'
-    {_pcgProFileId = _Coerce # pPcgProFileId_, _pcgCode = pPcgCode_}
-
-
--- | User profile ID associated with this request.
-pcgProFileId :: Lens' PostalCodesGet Int64
-pcgProFileId
-  = lens _pcgProFileId (\ s a -> s{_pcgProFileId = a})
-      . _Coerce
-
--- | Postal code ID.
-pcgCode :: Lens' PostalCodesGet Text
-pcgCode = lens _pcgCode (\ s a -> s{_pcgCode = a})
-
-instance GoogleRequest PostalCodesGet where
-        type Rs PostalCodesGet = PostalCode
-        type Scopes PostalCodesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PostalCodesGet'{..}
-          = go _pcgProFileId _pcgCode (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy PostalCodesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/PostalCodes/List.hs b/gen/Network/Google/Resource/DFAReporting/PostalCodes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/PostalCodes/List.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.DFAReporting.PostalCodes.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of postal codes.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.postalCodes.list@.
-module Network.Google.Resource.DFAReporting.PostalCodes.List
-    (
-    -- * REST Resource
-      PostalCodesListResource
-
-    -- * Creating a Request
-    , postalCodesList
-    , PostalCodesList
-
-    -- * Request Lenses
-    , pclProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.postalCodes.list@ method which the
--- 'PostalCodesList' request conforms to.
-type PostalCodesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "postalCodes" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] PostalCodesListResponse
-
--- | Retrieves a list of postal codes.
---
--- /See:/ 'postalCodesList' smart constructor.
-newtype PostalCodesList =
-  PostalCodesList'
-    { _pclProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PostalCodesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pclProFileId'
-postalCodesList
-    :: Int64 -- ^ 'pclProFileId'
-    -> PostalCodesList
-postalCodesList pPclProFileId_ =
-  PostalCodesList' {_pclProFileId = _Coerce # pPclProFileId_}
-
-
--- | User profile ID associated with this request.
-pclProFileId :: Lens' PostalCodesList Int64
-pclProFileId
-  = lens _pclProFileId (\ s a -> s{_pclProFileId = a})
-      . _Coerce
-
-instance GoogleRequest PostalCodesList where
-        type Rs PostalCodesList = PostalCodesListResponse
-        type Scopes PostalCodesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient PostalCodesList'{..}
-          = go _pclProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy PostalCodesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Projects/Get.hs b/gen/Network/Google/Resource/DFAReporting/Projects/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Projects/Get.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.DFAReporting.Projects.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one project by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.projects.get@.
-module Network.Google.Resource.DFAReporting.Projects.Get
-    (
-    -- * REST Resource
-      ProjectsGetResource
-
-    -- * Creating a Request
-    , projectsGet
-    , ProjectsGet
-
-    -- * Request Lenses
-    , proProFileId
-    , proId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.projects.get@ method which the
--- 'ProjectsGet' request conforms to.
-type ProjectsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Project
-
--- | Gets one project by ID.
---
--- /See:/ 'projectsGet' smart constructor.
-data ProjectsGet =
-  ProjectsGet'
-    { _proProFileId :: !(Textual Int64)
-    , _proId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'proProFileId'
---
--- * 'proId'
-projectsGet
-    :: Int64 -- ^ 'proProFileId'
-    -> Int64 -- ^ 'proId'
-    -> ProjectsGet
-projectsGet pProProFileId_ pProId_ =
-  ProjectsGet'
-    {_proProFileId = _Coerce # pProProFileId_, _proId = _Coerce # pProId_}
-
-
--- | User profile ID associated with this request.
-proProFileId :: Lens' ProjectsGet Int64
-proProFileId
-  = lens _proProFileId (\ s a -> s{_proProFileId = a})
-      . _Coerce
-
--- | Project ID.
-proId :: Lens' ProjectsGet Int64
-proId
-  = lens _proId (\ s a -> s{_proId = a}) . _Coerce
-
-instance GoogleRequest ProjectsGet where
-        type Rs ProjectsGet = Project
-        type Scopes ProjectsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ProjectsGet'{..}
-          = go _proProFileId _proId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ProjectsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Projects/List.hs b/gen/Network/Google/Resource/DFAReporting/Projects/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Projects/List.hs
+++ /dev/null
@@ -1,190 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Projects.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of projects, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.projects.list@.
-module Network.Google.Resource.DFAReporting.Projects.List
-    (
-    -- * REST Resource
-      ProjectsListResource
-
-    -- * Creating a Request
-    , projectsList
-    , ProjectsList
-
-    -- * Request Lenses
-    , plSearchString
-    , plIds
-    , plProFileId
-    , plSortOrder
-    , plPageToken
-    , plSortField
-    , plAdvertiserIds
-    , plMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.projects.list@ method which the
--- 'ProjectsList' request conforms to.
-type ProjectsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "projects" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" ProjectsListSortOrder :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" ProjectsListSortField :>
-                         QueryParams "advertiserIds" (Textual Int64) :>
-                           QueryParam "maxResults" (Textual Int32) :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON] ProjectsListResponse
-
--- | Retrieves a list of projects, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'projectsList' smart constructor.
-data ProjectsList =
-  ProjectsList'
-    { _plSearchString  :: !(Maybe Text)
-    , _plIds           :: !(Maybe [Textual Int64])
-    , _plProFileId     :: !(Textual Int64)
-    , _plSortOrder     :: !ProjectsListSortOrder
-    , _plPageToken     :: !(Maybe Text)
-    , _plSortField     :: !ProjectsListSortField
-    , _plAdvertiserIds :: !(Maybe [Textual Int64])
-    , _plMaxResults    :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'plSearchString'
---
--- * 'plIds'
---
--- * 'plProFileId'
---
--- * 'plSortOrder'
---
--- * 'plPageToken'
---
--- * 'plSortField'
---
--- * 'plAdvertiserIds'
---
--- * 'plMaxResults'
-projectsList
-    :: Int64 -- ^ 'plProFileId'
-    -> ProjectsList
-projectsList pPlProFileId_ =
-  ProjectsList'
-    { _plSearchString = Nothing
-    , _plIds = Nothing
-    , _plProFileId = _Coerce # pPlProFileId_
-    , _plSortOrder = PLSOAscending
-    , _plPageToken = Nothing
-    , _plSortField = PID
-    , _plAdvertiserIds = Nothing
-    , _plMaxResults = 1000
-    }
-
-
--- | Allows searching for projects by name or ID. Wildcards (*) are allowed.
--- For example, \"project*2015\" will return projects with names like
--- \"project June 2015\", \"project April 2015\", or simply \"project
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"project\" will match projects with name \"my project\", \"project
--- 2015\", or simply \"project\".
-plSearchString :: Lens' ProjectsList (Maybe Text)
-plSearchString
-  = lens _plSearchString
-      (\ s a -> s{_plSearchString = a})
-
--- | Select only projects with these IDs.
-plIds :: Lens' ProjectsList [Int64]
-plIds
-  = lens _plIds (\ s a -> s{_plIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-plProFileId :: Lens' ProjectsList Int64
-plProFileId
-  = lens _plProFileId (\ s a -> s{_plProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-plSortOrder :: Lens' ProjectsList ProjectsListSortOrder
-plSortOrder
-  = lens _plSortOrder (\ s a -> s{_plSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-plPageToken :: Lens' ProjectsList (Maybe Text)
-plPageToken
-  = lens _plPageToken (\ s a -> s{_plPageToken = a})
-
--- | Field by which to sort the list.
-plSortField :: Lens' ProjectsList ProjectsListSortField
-plSortField
-  = lens _plSortField (\ s a -> s{_plSortField = a})
-
--- | Select only projects with these advertiser IDs.
-plAdvertiserIds :: Lens' ProjectsList [Int64]
-plAdvertiserIds
-  = lens _plAdvertiserIds
-      (\ s a -> s{_plAdvertiserIds = a})
-      . _Default
-      . _Coerce
-
--- | Maximum number of results to return.
-plMaxResults :: Lens' ProjectsList Int32
-plMaxResults
-  = lens _plMaxResults (\ s a -> s{_plMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest ProjectsList where
-        type Rs ProjectsList = ProjectsListResponse
-        type Scopes ProjectsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient ProjectsList'{..}
-          = go _plProFileId _plSearchString
-              (_plIds ^. _Default)
-              (Just _plSortOrder)
-              _plPageToken
-              (Just _plSortField)
-              (_plAdvertiserIds ^. _Default)
-              (Just _plMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ProjectsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Regions/List.hs b/gen/Network/Google/Resource/DFAReporting/Regions/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Regions/List.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.DFAReporting.Regions.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of regions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.regions.list@.
-module Network.Google.Resource.DFAReporting.Regions.List
-    (
-    -- * REST Resource
-      RegionsListResource
-
-    -- * Creating a Request
-    , regionsList
-    , RegionsList
-
-    -- * Request Lenses
-    , rProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.regions.list@ method which the
--- 'RegionsList' request conforms to.
-type RegionsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "regions" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] RegionsListResponse
-
--- | Retrieves a list of regions.
---
--- /See:/ 'regionsList' smart constructor.
-newtype RegionsList =
-  RegionsList'
-    { _rProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RegionsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rProFileId'
-regionsList
-    :: Int64 -- ^ 'rProFileId'
-    -> RegionsList
-regionsList pRProFileId_ = RegionsList' {_rProFileId = _Coerce # pRProFileId_}
-
-
--- | User profile ID associated with this request.
-rProFileId :: Lens' RegionsList Int64
-rProFileId
-  = lens _rProFileId (\ s a -> s{_rProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest RegionsList where
-        type Rs RegionsList = RegionsListResponse
-        type Scopes RegionsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RegionsList'{..}
-          = go _rProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy RegionsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Get.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Get.hs
+++ /dev/null
@@ -1,110 +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.DFAReporting.RemarketingListShares.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one remarketing list share by remarketing list ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingListShares.get@.
-module Network.Google.Resource.DFAReporting.RemarketingListShares.Get
-    (
-    -- * REST Resource
-      RemarketingListSharesGetResource
-
-    -- * Creating a Request
-    , remarketingListSharesGet
-    , RemarketingListSharesGet
-
-    -- * Request Lenses
-    , rlsgProFileId
-    , rlsgRemarketingListId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingListShares.get@ method which the
--- 'RemarketingListSharesGet' request conforms to.
-type RemarketingListSharesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingListShares" :>
-               Capture "remarketingListId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] RemarketingListShare
-
--- | Gets one remarketing list share by remarketing list ID.
---
--- /See:/ 'remarketingListSharesGet' smart constructor.
-data RemarketingListSharesGet =
-  RemarketingListSharesGet'
-    { _rlsgProFileId         :: !(Textual Int64)
-    , _rlsgRemarketingListId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListSharesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlsgProFileId'
---
--- * 'rlsgRemarketingListId'
-remarketingListSharesGet
-    :: Int64 -- ^ 'rlsgProFileId'
-    -> Int64 -- ^ 'rlsgRemarketingListId'
-    -> RemarketingListSharesGet
-remarketingListSharesGet pRlsgProFileId_ pRlsgRemarketingListId_ =
-  RemarketingListSharesGet'
-    { _rlsgProFileId = _Coerce # pRlsgProFileId_
-    , _rlsgRemarketingListId = _Coerce # pRlsgRemarketingListId_
-    }
-
-
--- | User profile ID associated with this request.
-rlsgProFileId :: Lens' RemarketingListSharesGet Int64
-rlsgProFileId
-  = lens _rlsgProFileId
-      (\ s a -> s{_rlsgProFileId = a})
-      . _Coerce
-
--- | Remarketing list ID.
-rlsgRemarketingListId :: Lens' RemarketingListSharesGet Int64
-rlsgRemarketingListId
-  = lens _rlsgRemarketingListId
-      (\ s a -> s{_rlsgRemarketingListId = a})
-      . _Coerce
-
-instance GoogleRequest RemarketingListSharesGet where
-        type Rs RemarketingListSharesGet =
-             RemarketingListShare
-        type Scopes RemarketingListSharesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListSharesGet'{..}
-          = go _rlsgProFileId _rlsgRemarketingListId
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListSharesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Patch.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Patch.hs
+++ /dev/null
@@ -1,126 +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.DFAReporting.RemarketingListShares.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing remarketing list share. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingListShares.patch@.
-module Network.Google.Resource.DFAReporting.RemarketingListShares.Patch
-    (
-    -- * REST Resource
-      RemarketingListSharesPatchResource
-
-    -- * Creating a Request
-    , remarketingListSharesPatch
-    , RemarketingListSharesPatch
-
-    -- * Request Lenses
-    , rlspProFileId
-    , rlspPayload
-    , rlspRemarketingListId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingListShares.patch@ method which the
--- 'RemarketingListSharesPatch' request conforms to.
-type RemarketingListSharesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingListShares" :>
-               QueryParam "remarketingListId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] RemarketingListShare :>
-                     Patch '[JSON] RemarketingListShare
-
--- | Updates an existing remarketing list share. This method supports patch
--- semantics.
---
--- /See:/ 'remarketingListSharesPatch' smart constructor.
-data RemarketingListSharesPatch =
-  RemarketingListSharesPatch'
-    { _rlspProFileId         :: !(Textual Int64)
-    , _rlspPayload           :: !RemarketingListShare
-    , _rlspRemarketingListId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListSharesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlspProFileId'
---
--- * 'rlspPayload'
---
--- * 'rlspRemarketingListId'
-remarketingListSharesPatch
-    :: Int64 -- ^ 'rlspProFileId'
-    -> RemarketingListShare -- ^ 'rlspPayload'
-    -> Int64 -- ^ 'rlspRemarketingListId'
-    -> RemarketingListSharesPatch
-remarketingListSharesPatch pRlspProFileId_ pRlspPayload_ pRlspRemarketingListId_ =
-  RemarketingListSharesPatch'
-    { _rlspProFileId = _Coerce # pRlspProFileId_
-    , _rlspPayload = pRlspPayload_
-    , _rlspRemarketingListId = _Coerce # pRlspRemarketingListId_
-    }
-
-
--- | User profile ID associated with this request.
-rlspProFileId :: Lens' RemarketingListSharesPatch Int64
-rlspProFileId
-  = lens _rlspProFileId
-      (\ s a -> s{_rlspProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rlspPayload :: Lens' RemarketingListSharesPatch RemarketingListShare
-rlspPayload
-  = lens _rlspPayload (\ s a -> s{_rlspPayload = a})
-
--- | Remarketing list ID.
-rlspRemarketingListId :: Lens' RemarketingListSharesPatch Int64
-rlspRemarketingListId
-  = lens _rlspRemarketingListId
-      (\ s a -> s{_rlspRemarketingListId = a})
-      . _Coerce
-
-instance GoogleRequest RemarketingListSharesPatch
-         where
-        type Rs RemarketingListSharesPatch =
-             RemarketingListShare
-        type Scopes RemarketingListSharesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListSharesPatch'{..}
-          = go _rlspProFileId (Just _rlspRemarketingListId)
-              (Just AltJSON)
-              _rlspPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListSharesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Update.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingListShares/Update.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.RemarketingListShares.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing remarketing list share.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingListShares.update@.
-module Network.Google.Resource.DFAReporting.RemarketingListShares.Update
-    (
-    -- * REST Resource
-      RemarketingListSharesUpdateResource
-
-    -- * Creating a Request
-    , remarketingListSharesUpdate
-    , RemarketingListSharesUpdate
-
-    -- * Request Lenses
-    , rlsuProFileId
-    , rlsuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingListShares.update@ method which the
--- 'RemarketingListSharesUpdate' request conforms to.
-type RemarketingListSharesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingListShares" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] RemarketingListShare :>
-                   Put '[JSON] RemarketingListShare
-
--- | Updates an existing remarketing list share.
---
--- /See:/ 'remarketingListSharesUpdate' smart constructor.
-data RemarketingListSharesUpdate =
-  RemarketingListSharesUpdate'
-    { _rlsuProFileId :: !(Textual Int64)
-    , _rlsuPayload   :: !RemarketingListShare
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListSharesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlsuProFileId'
---
--- * 'rlsuPayload'
-remarketingListSharesUpdate
-    :: Int64 -- ^ 'rlsuProFileId'
-    -> RemarketingListShare -- ^ 'rlsuPayload'
-    -> RemarketingListSharesUpdate
-remarketingListSharesUpdate pRlsuProFileId_ pRlsuPayload_ =
-  RemarketingListSharesUpdate'
-    {_rlsuProFileId = _Coerce # pRlsuProFileId_, _rlsuPayload = pRlsuPayload_}
-
-
--- | User profile ID associated with this request.
-rlsuProFileId :: Lens' RemarketingListSharesUpdate Int64
-rlsuProFileId
-  = lens _rlsuProFileId
-      (\ s a -> s{_rlsuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rlsuPayload :: Lens' RemarketingListSharesUpdate RemarketingListShare
-rlsuPayload
-  = lens _rlsuPayload (\ s a -> s{_rlsuPayload = a})
-
-instance GoogleRequest RemarketingListSharesUpdate
-         where
-        type Rs RemarketingListSharesUpdate =
-             RemarketingListShare
-        type Scopes RemarketingListSharesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListSharesUpdate'{..}
-          = go _rlsuProFileId (Just AltJSON) _rlsuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListSharesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Get.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.RemarketingLists.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one remarketing list by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingLists.get@.
-module Network.Google.Resource.DFAReporting.RemarketingLists.Get
-    (
-    -- * REST Resource
-      RemarketingListsGetResource
-
-    -- * Creating a Request
-    , remarketingListsGet
-    , RemarketingListsGet
-
-    -- * Request Lenses
-    , rlgProFileId
-    , rlgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingLists.get@ method which the
--- 'RemarketingListsGet' request conforms to.
-type RemarketingListsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingLists" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] RemarketingList
-
--- | Gets one remarketing list by ID.
---
--- /See:/ 'remarketingListsGet' smart constructor.
-data RemarketingListsGet =
-  RemarketingListsGet'
-    { _rlgProFileId :: !(Textual Int64)
-    , _rlgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlgProFileId'
---
--- * 'rlgId'
-remarketingListsGet
-    :: Int64 -- ^ 'rlgProFileId'
-    -> Int64 -- ^ 'rlgId'
-    -> RemarketingListsGet
-remarketingListsGet pRlgProFileId_ pRlgId_ =
-  RemarketingListsGet'
-    {_rlgProFileId = _Coerce # pRlgProFileId_, _rlgId = _Coerce # pRlgId_}
-
-
--- | User profile ID associated with this request.
-rlgProFileId :: Lens' RemarketingListsGet Int64
-rlgProFileId
-  = lens _rlgProFileId (\ s a -> s{_rlgProFileId = a})
-      . _Coerce
-
--- | Remarketing list ID.
-rlgId :: Lens' RemarketingListsGet Int64
-rlgId
-  = lens _rlgId (\ s a -> s{_rlgId = a}) . _Coerce
-
-instance GoogleRequest RemarketingListsGet where
-        type Rs RemarketingListsGet = RemarketingList
-        type Scopes RemarketingListsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListsGet'{..}
-          = go _rlgProFileId _rlgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Insert.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.RemarketingLists.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new remarketing list.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingLists.insert@.
-module Network.Google.Resource.DFAReporting.RemarketingLists.Insert
-    (
-    -- * REST Resource
-      RemarketingListsInsertResource
-
-    -- * Creating a Request
-    , remarketingListsInsert
-    , RemarketingListsInsert
-
-    -- * Request Lenses
-    , rliProFileId
-    , rliPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingLists.insert@ method which the
--- 'RemarketingListsInsert' request conforms to.
-type RemarketingListsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingLists" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] RemarketingList :>
-                   Post '[JSON] RemarketingList
-
--- | Inserts a new remarketing list.
---
--- /See:/ 'remarketingListsInsert' smart constructor.
-data RemarketingListsInsert =
-  RemarketingListsInsert'
-    { _rliProFileId :: !(Textual Int64)
-    , _rliPayload   :: !RemarketingList
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rliProFileId'
---
--- * 'rliPayload'
-remarketingListsInsert
-    :: Int64 -- ^ 'rliProFileId'
-    -> RemarketingList -- ^ 'rliPayload'
-    -> RemarketingListsInsert
-remarketingListsInsert pRliProFileId_ pRliPayload_ =
-  RemarketingListsInsert'
-    {_rliProFileId = _Coerce # pRliProFileId_, _rliPayload = pRliPayload_}
-
-
--- | User profile ID associated with this request.
-rliProFileId :: Lens' RemarketingListsInsert Int64
-rliProFileId
-  = lens _rliProFileId (\ s a -> s{_rliProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rliPayload :: Lens' RemarketingListsInsert RemarketingList
-rliPayload
-  = lens _rliPayload (\ s a -> s{_rliPayload = a})
-
-instance GoogleRequest RemarketingListsInsert where
-        type Rs RemarketingListsInsert = RemarketingList
-        type Scopes RemarketingListsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListsInsert'{..}
-          = go _rliProFileId (Just AltJSON) _rliPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/List.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingLists/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/List.hs
+++ /dev/null
@@ -1,207 +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.DFAReporting.RemarketingLists.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of remarketing lists, possibly filtered. This method
--- supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingLists.list@.
-module Network.Google.Resource.DFAReporting.RemarketingLists.List
-    (
-    -- * REST Resource
-      RemarketingListsListResource
-
-    -- * Creating a Request
-    , remarketingListsList
-    , RemarketingListsList
-
-    -- * Request Lenses
-    , rllFloodlightActivityId
-    , rllAdvertiserId
-    , rllProFileId
-    , rllSortOrder
-    , rllActive
-    , rllName
-    , rllPageToken
-    , rllSortField
-    , rllMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingLists.list@ method which the
--- 'RemarketingListsList' request conforms to.
-type RemarketingListsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingLists" :>
-               QueryParam "advertiserId" (Textual Int64) :>
-                 QueryParam "floodlightActivityId" (Textual Int64) :>
-                   QueryParam "sortOrder" RemarketingListsListSortOrder
-                     :>
-                     QueryParam "active" Bool :>
-                       QueryParam "name" Text :>
-                         QueryParam "pageToken" Text :>
-                           QueryParam "sortField" RemarketingListsListSortField
-                             :>
-                             QueryParam "maxResults" (Textual Int32) :>
-                               QueryParam "alt" AltJSON :>
-                                 Get '[JSON] RemarketingListsListResponse
-
--- | Retrieves a list of remarketing lists, possibly filtered. This method
--- supports paging.
---
--- /See:/ 'remarketingListsList' smart constructor.
-data RemarketingListsList =
-  RemarketingListsList'
-    { _rllFloodlightActivityId :: !(Maybe (Textual Int64))
-    , _rllAdvertiserId         :: !(Textual Int64)
-    , _rllProFileId            :: !(Textual Int64)
-    , _rllSortOrder            :: !RemarketingListsListSortOrder
-    , _rllActive               :: !(Maybe Bool)
-    , _rllName                 :: !(Maybe Text)
-    , _rllPageToken            :: !(Maybe Text)
-    , _rllSortField            :: !RemarketingListsListSortField
-    , _rllMaxResults           :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rllFloodlightActivityId'
---
--- * 'rllAdvertiserId'
---
--- * 'rllProFileId'
---
--- * 'rllSortOrder'
---
--- * 'rllActive'
---
--- * 'rllName'
---
--- * 'rllPageToken'
---
--- * 'rllSortField'
---
--- * 'rllMaxResults'
-remarketingListsList
-    :: Int64 -- ^ 'rllAdvertiserId'
-    -> Int64 -- ^ 'rllProFileId'
-    -> RemarketingListsList
-remarketingListsList pRllAdvertiserId_ pRllProFileId_ =
-  RemarketingListsList'
-    { _rllFloodlightActivityId = Nothing
-    , _rllAdvertiserId = _Coerce # pRllAdvertiserId_
-    , _rllProFileId = _Coerce # pRllProFileId_
-    , _rllSortOrder = RLLSOAscending
-    , _rllActive = Nothing
-    , _rllName = Nothing
-    , _rllPageToken = Nothing
-    , _rllSortField = RLLSFID
-    , _rllMaxResults = 1000
-    }
-
-
--- | Select only remarketing lists that have this floodlight activity ID.
-rllFloodlightActivityId :: Lens' RemarketingListsList (Maybe Int64)
-rllFloodlightActivityId
-  = lens _rllFloodlightActivityId
-      (\ s a -> s{_rllFloodlightActivityId = a})
-      . mapping _Coerce
-
--- | Select only remarketing lists owned by this advertiser.
-rllAdvertiserId :: Lens' RemarketingListsList Int64
-rllAdvertiserId
-  = lens _rllAdvertiserId
-      (\ s a -> s{_rllAdvertiserId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-rllProFileId :: Lens' RemarketingListsList Int64
-rllProFileId
-  = lens _rllProFileId (\ s a -> s{_rllProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-rllSortOrder :: Lens' RemarketingListsList RemarketingListsListSortOrder
-rllSortOrder
-  = lens _rllSortOrder (\ s a -> s{_rllSortOrder = a})
-
--- | Select only active or only inactive remarketing lists.
-rllActive :: Lens' RemarketingListsList (Maybe Bool)
-rllActive
-  = lens _rllActive (\ s a -> s{_rllActive = a})
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"remarketing list*2015\" will return objects with names
--- like \"remarketing list June 2015\", \"remarketing list April 2015\", or
--- simply \"remarketing list 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"remarketing list\" will match objects with
--- name \"my remarketing list\", \"remarketing list 2015\", or simply
--- \"remarketing list\".
-rllName :: Lens' RemarketingListsList (Maybe Text)
-rllName = lens _rllName (\ s a -> s{_rllName = a})
-
--- | Value of the nextPageToken from the previous result page.
-rllPageToken :: Lens' RemarketingListsList (Maybe Text)
-rllPageToken
-  = lens _rllPageToken (\ s a -> s{_rllPageToken = a})
-
--- | Field by which to sort the list.
-rllSortField :: Lens' RemarketingListsList RemarketingListsListSortField
-rllSortField
-  = lens _rllSortField (\ s a -> s{_rllSortField = a})
-
--- | Maximum number of results to return.
-rllMaxResults :: Lens' RemarketingListsList Int32
-rllMaxResults
-  = lens _rllMaxResults
-      (\ s a -> s{_rllMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest RemarketingListsList where
-        type Rs RemarketingListsList =
-             RemarketingListsListResponse
-        type Scopes RemarketingListsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListsList'{..}
-          = go _rllProFileId (Just _rllAdvertiserId)
-              _rllFloodlightActivityId
-              (Just _rllSortOrder)
-              _rllActive
-              _rllName
-              _rllPageToken
-              (Just _rllSortField)
-              (Just _rllMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Patch.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.RemarketingLists.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing remarketing list. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingLists.patch@.
-module Network.Google.Resource.DFAReporting.RemarketingLists.Patch
-    (
-    -- * REST Resource
-      RemarketingListsPatchResource
-
-    -- * Creating a Request
-    , remarketingListsPatch
-    , RemarketingListsPatch
-
-    -- * Request Lenses
-    , rlpProFileId
-    , rlpPayload
-    , rlpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingLists.patch@ method which the
--- 'RemarketingListsPatch' request conforms to.
-type RemarketingListsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingLists" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] RemarketingList :>
-                     Patch '[JSON] RemarketingList
-
--- | Updates an existing remarketing list. This method supports patch
--- semantics.
---
--- /See:/ 'remarketingListsPatch' smart constructor.
-data RemarketingListsPatch =
-  RemarketingListsPatch'
-    { _rlpProFileId :: !(Textual Int64)
-    , _rlpPayload   :: !RemarketingList
-    , _rlpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlpProFileId'
---
--- * 'rlpPayload'
---
--- * 'rlpId'
-remarketingListsPatch
-    :: Int64 -- ^ 'rlpProFileId'
-    -> RemarketingList -- ^ 'rlpPayload'
-    -> Int64 -- ^ 'rlpId'
-    -> RemarketingListsPatch
-remarketingListsPatch pRlpProFileId_ pRlpPayload_ pRlpId_ =
-  RemarketingListsPatch'
-    { _rlpProFileId = _Coerce # pRlpProFileId_
-    , _rlpPayload = pRlpPayload_
-    , _rlpId = _Coerce # pRlpId_
-    }
-
-
--- | User profile ID associated with this request.
-rlpProFileId :: Lens' RemarketingListsPatch Int64
-rlpProFileId
-  = lens _rlpProFileId (\ s a -> s{_rlpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rlpPayload :: Lens' RemarketingListsPatch RemarketingList
-rlpPayload
-  = lens _rlpPayload (\ s a -> s{_rlpPayload = a})
-
--- | Remarketing list ID.
-rlpId :: Lens' RemarketingListsPatch Int64
-rlpId
-  = lens _rlpId (\ s a -> s{_rlpId = a}) . _Coerce
-
-instance GoogleRequest RemarketingListsPatch where
-        type Rs RemarketingListsPatch = RemarketingList
-        type Scopes RemarketingListsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListsPatch'{..}
-          = go _rlpProFileId (Just _rlpId) (Just AltJSON)
-              _rlpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Update.hs b/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/RemarketingLists/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.RemarketingLists.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing remarketing list.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.remarketingLists.update@.
-module Network.Google.Resource.DFAReporting.RemarketingLists.Update
-    (
-    -- * REST Resource
-      RemarketingListsUpdateResource
-
-    -- * Creating a Request
-    , remarketingListsUpdate
-    , RemarketingListsUpdate
-
-    -- * Request Lenses
-    , rluProFileId
-    , rluPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.remarketingLists.update@ method which the
--- 'RemarketingListsUpdate' request conforms to.
-type RemarketingListsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "remarketingLists" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] RemarketingList :>
-                   Put '[JSON] RemarketingList
-
--- | Updates an existing remarketing list.
---
--- /See:/ 'remarketingListsUpdate' smart constructor.
-data RemarketingListsUpdate =
-  RemarketingListsUpdate'
-    { _rluProFileId :: !(Textual Int64)
-    , _rluPayload   :: !RemarketingList
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'RemarketingListsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rluProFileId'
---
--- * 'rluPayload'
-remarketingListsUpdate
-    :: Int64 -- ^ 'rluProFileId'
-    -> RemarketingList -- ^ 'rluPayload'
-    -> RemarketingListsUpdate
-remarketingListsUpdate pRluProFileId_ pRluPayload_ =
-  RemarketingListsUpdate'
-    {_rluProFileId = _Coerce # pRluProFileId_, _rluPayload = pRluPayload_}
-
-
--- | User profile ID associated with this request.
-rluProFileId :: Lens' RemarketingListsUpdate Int64
-rluProFileId
-  = lens _rluProFileId (\ s a -> s{_rluProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rluPayload :: Lens' RemarketingListsUpdate RemarketingList
-rluPayload
-  = lens _rluPayload (\ s a -> s{_rluPayload = a})
-
-instance GoogleRequest RemarketingListsUpdate where
-        type Rs RemarketingListsUpdate = RemarketingList
-        type Scopes RemarketingListsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient RemarketingListsUpdate'{..}
-          = go _rluProFileId (Just AltJSON) _rluPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy RemarketingListsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/CompatibleFields/Query.hs b/gen/Network/Google/Resource/DFAReporting/Reports/CompatibleFields/Query.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/CompatibleFields/Query.hs
+++ /dev/null
@@ -1,112 +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.DFAReporting.Reports.CompatibleFields.Query
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Returns the fields that are compatible to be selected in the respective
--- sections of a report criteria, given the fields already selected in the
--- input report and user permissions.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.compatibleFields.query@.
-module Network.Google.Resource.DFAReporting.Reports.CompatibleFields.Query
-    (
-    -- * REST Resource
-      ReportsCompatibleFieldsQueryResource
-
-    -- * Creating a Request
-    , reportsCompatibleFieldsQuery
-    , ReportsCompatibleFieldsQuery
-
-    -- * Request Lenses
-    , rcfqProFileId
-    , rcfqPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.compatibleFields.query@ method which the
--- 'ReportsCompatibleFieldsQuery' request conforms to.
-type ReportsCompatibleFieldsQueryResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               "compatiblefields" :>
-                 "query" :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] Report :>
-                       Post '[JSON] CompatibleFields
-
--- | Returns the fields that are compatible to be selected in the respective
--- sections of a report criteria, given the fields already selected in the
--- input report and user permissions.
---
--- /See:/ 'reportsCompatibleFieldsQuery' smart constructor.
-data ReportsCompatibleFieldsQuery =
-  ReportsCompatibleFieldsQuery'
-    { _rcfqProFileId :: !(Textual Int64)
-    , _rcfqPayload   :: !Report
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsCompatibleFieldsQuery' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rcfqProFileId'
---
--- * 'rcfqPayload'
-reportsCompatibleFieldsQuery
-    :: Int64 -- ^ 'rcfqProFileId'
-    -> Report -- ^ 'rcfqPayload'
-    -> ReportsCompatibleFieldsQuery
-reportsCompatibleFieldsQuery pRcfqProFileId_ pRcfqPayload_ =
-  ReportsCompatibleFieldsQuery'
-    {_rcfqProFileId = _Coerce # pRcfqProFileId_, _rcfqPayload = pRcfqPayload_}
-
-
--- | The DFA user profile ID.
-rcfqProFileId :: Lens' ReportsCompatibleFieldsQuery Int64
-rcfqProFileId
-  = lens _rcfqProFileId
-      (\ s a -> s{_rcfqProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-rcfqPayload :: Lens' ReportsCompatibleFieldsQuery Report
-rcfqPayload
-  = lens _rcfqPayload (\ s a -> s{_rcfqPayload = a})
-
-instance GoogleRequest ReportsCompatibleFieldsQuery
-         where
-        type Rs ReportsCompatibleFieldsQuery =
-             CompatibleFields
-        type Scopes ReportsCompatibleFieldsQuery =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsCompatibleFieldsQuery'{..}
-          = go _rcfqProFileId (Just AltJSON) _rcfqPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ReportsCompatibleFieldsQueryResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Delete.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Delete.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Reports.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes a report by its ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.delete@.
-module Network.Google.Resource.DFAReporting.Reports.Delete
-    (
-    -- * REST Resource
-      ReportsDeleteResource
-
-    -- * Creating a Request
-    , reportsDelete
-    , ReportsDelete
-
-    -- * Request Lenses
-    , rdReportId
-    , rdProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.delete@ method which the
--- 'ReportsDelete' request conforms to.
-type ReportsDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes a report by its ID.
---
--- /See:/ 'reportsDelete' smart constructor.
-data ReportsDelete =
-  ReportsDelete'
-    { _rdReportId  :: !(Textual Int64)
-    , _rdProFileId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rdReportId'
---
--- * 'rdProFileId'
-reportsDelete
-    :: Int64 -- ^ 'rdReportId'
-    -> Int64 -- ^ 'rdProFileId'
-    -> ReportsDelete
-reportsDelete pRdReportId_ pRdProFileId_ =
-  ReportsDelete'
-    { _rdReportId = _Coerce # pRdReportId_
-    , _rdProFileId = _Coerce # pRdProFileId_
-    }
-
-
--- | The ID of the report.
-rdReportId :: Lens' ReportsDelete Int64
-rdReportId
-  = lens _rdReportId (\ s a -> s{_rdReportId = a}) .
-      _Coerce
-
--- | The DFA user profile ID.
-rdProFileId :: Lens' ReportsDelete Int64
-rdProFileId
-  = lens _rdProFileId (\ s a -> s{_rdProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest ReportsDelete where
-        type Rs ReportsDelete = ()
-        type Scopes ReportsDelete =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsDelete'{..}
-          = go _rdProFileId _rdReportId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Files/Get.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Files/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Files/Get.hs
+++ /dev/null
@@ -1,146 +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.DFAReporting.Reports.Files.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a report file. This method supports media download.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.files.get@.
-module Network.Google.Resource.DFAReporting.Reports.Files.Get
-    (
-    -- * REST Resource
-      ReportsFilesGetResource
-
-    -- * Creating a Request
-    , reportsFilesGet
-    , ReportsFilesGet
-
-    -- * Request Lenses
-    , rfgReportId
-    , rfgProFileId
-    , rfgFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.files.get@ method which the
--- 'ReportsFilesGet' request conforms to.
-type ReportsFilesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 "files" :>
-                   Capture "fileId" (Textual Int64) :>
-                     QueryParam "alt" AltJSON :> Get '[JSON] File
-       :<|>
-       "dfareporting" :>
-         "v3.3" :>
-           "userprofiles" :>
-             Capture "profileId" (Textual Int64) :>
-               "reports" :>
-                 Capture "reportId" (Textual Int64) :>
-                   "files" :>
-                     Capture "fileId" (Textual Int64) :>
-                       QueryParam "alt" AltMedia :>
-                         Get '[OctetStream] Stream
-
--- | Retrieves a report file. This method supports media download.
---
--- /See:/ 'reportsFilesGet' smart constructor.
-data ReportsFilesGet =
-  ReportsFilesGet'
-    { _rfgReportId  :: !(Textual Int64)
-    , _rfgProFileId :: !(Textual Int64)
-    , _rfgFileId    :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsFilesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rfgReportId'
---
--- * 'rfgProFileId'
---
--- * 'rfgFileId'
-reportsFilesGet
-    :: Int64 -- ^ 'rfgReportId'
-    -> Int64 -- ^ 'rfgProFileId'
-    -> Int64 -- ^ 'rfgFileId'
-    -> ReportsFilesGet
-reportsFilesGet pRfgReportId_ pRfgProFileId_ pRfgFileId_ =
-  ReportsFilesGet'
-    { _rfgReportId = _Coerce # pRfgReportId_
-    , _rfgProFileId = _Coerce # pRfgProFileId_
-    , _rfgFileId = _Coerce # pRfgFileId_
-    }
-
-
--- | The ID of the report.
-rfgReportId :: Lens' ReportsFilesGet Int64
-rfgReportId
-  = lens _rfgReportId (\ s a -> s{_rfgReportId = a}) .
-      _Coerce
-
--- | The DFA profile ID.
-rfgProFileId :: Lens' ReportsFilesGet Int64
-rfgProFileId
-  = lens _rfgProFileId (\ s a -> s{_rfgProFileId = a})
-      . _Coerce
-
--- | The ID of the report file.
-rfgFileId :: Lens' ReportsFilesGet Int64
-rfgFileId
-  = lens _rfgFileId (\ s a -> s{_rfgFileId = a}) .
-      _Coerce
-
-instance GoogleRequest ReportsFilesGet where
-        type Rs ReportsFilesGet = File
-        type Scopes ReportsFilesGet =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsFilesGet'{..}
-          = go _rfgProFileId _rfgReportId _rfgFileId
-              (Just AltJSON)
-              dFAReportingService
-          where go :<|> _
-                  = buildClient
-                      (Proxy :: Proxy ReportsFilesGetResource)
-                      mempty
-
-instance GoogleRequest
-           (MediaDownload ReportsFilesGet)
-         where
-        type Rs (MediaDownload ReportsFilesGet) = Stream
-        type Scopes (MediaDownload ReportsFilesGet) =
-             Scopes ReportsFilesGet
-        requestClient (MediaDownload ReportsFilesGet'{..})
-          = go _rfgProFileId _rfgReportId _rfgFileId
-              (Just AltMedia)
-              dFAReportingService
-          where _ :<|> go
-                  = buildClient
-                      (Proxy :: Proxy ReportsFilesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Files/List.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Files/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Files/List.hs
+++ /dev/null
@@ -1,156 +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.DFAReporting.Reports.Files.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists files for a report.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.files.list@.
-module Network.Google.Resource.DFAReporting.Reports.Files.List
-    (
-    -- * REST Resource
-      ReportsFilesListResource
-
-    -- * Creating a Request
-    , reportsFilesList
-    , ReportsFilesList
-
-    -- * Request Lenses
-    , rflReportId
-    , rflProFileId
-    , rflSortOrder
-    , rflPageToken
-    , rflSortField
-    , rflMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.files.list@ method which the
--- 'ReportsFilesList' request conforms to.
-type ReportsFilesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 "files" :>
-                   QueryParam "sortOrder" ReportsFilesListSortOrder :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" ReportsFilesListSortField :>
-                         QueryParam "maxResults" (Textual Int32) :>
-                           QueryParam "alt" AltJSON :> Get '[JSON] FileList
-
--- | Lists files for a report.
---
--- /See:/ 'reportsFilesList' smart constructor.
-data ReportsFilesList =
-  ReportsFilesList'
-    { _rflReportId   :: !(Textual Int64)
-    , _rflProFileId  :: !(Textual Int64)
-    , _rflSortOrder  :: !ReportsFilesListSortOrder
-    , _rflPageToken  :: !(Maybe Text)
-    , _rflSortField  :: !ReportsFilesListSortField
-    , _rflMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsFilesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rflReportId'
---
--- * 'rflProFileId'
---
--- * 'rflSortOrder'
---
--- * 'rflPageToken'
---
--- * 'rflSortField'
---
--- * 'rflMaxResults'
-reportsFilesList
-    :: Int64 -- ^ 'rflReportId'
-    -> Int64 -- ^ 'rflProFileId'
-    -> ReportsFilesList
-reportsFilesList pRflReportId_ pRflProFileId_ =
-  ReportsFilesList'
-    { _rflReportId = _Coerce # pRflReportId_
-    , _rflProFileId = _Coerce # pRflProFileId_
-    , _rflSortOrder = RFLSODescending
-    , _rflPageToken = Nothing
-    , _rflSortField = RFLSFLastModifiedTime
-    , _rflMaxResults = 10
-    }
-
-
--- | The ID of the parent report.
-rflReportId :: Lens' ReportsFilesList Int64
-rflReportId
-  = lens _rflReportId (\ s a -> s{_rflReportId = a}) .
-      _Coerce
-
--- | The DFA profile ID.
-rflProFileId :: Lens' ReportsFilesList Int64
-rflProFileId
-  = lens _rflProFileId (\ s a -> s{_rflProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-rflSortOrder :: Lens' ReportsFilesList ReportsFilesListSortOrder
-rflSortOrder
-  = lens _rflSortOrder (\ s a -> s{_rflSortOrder = a})
-
--- | The value of the nextToken from the previous result page.
-rflPageToken :: Lens' ReportsFilesList (Maybe Text)
-rflPageToken
-  = lens _rflPageToken (\ s a -> s{_rflPageToken = a})
-
--- | The field by which to sort the list.
-rflSortField :: Lens' ReportsFilesList ReportsFilesListSortField
-rflSortField
-  = lens _rflSortField (\ s a -> s{_rflSortField = a})
-
--- | Maximum number of results to return.
-rflMaxResults :: Lens' ReportsFilesList Int32
-rflMaxResults
-  = lens _rflMaxResults
-      (\ s a -> s{_rflMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest ReportsFilesList where
-        type Rs ReportsFilesList = FileList
-        type Scopes ReportsFilesList =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsFilesList'{..}
-          = go _rflProFileId _rflReportId (Just _rflSortOrder)
-              _rflPageToken
-              (Just _rflSortField)
-              (Just _rflMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ReportsFilesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Get.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Get.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.Reports.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a report by its ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.get@.
-module Network.Google.Resource.DFAReporting.Reports.Get
-    (
-    -- * REST Resource
-      ReportsGetResource
-
-    -- * Creating a Request
-    , reportsGet
-    , ReportsGet
-
-    -- * Request Lenses
-    , rgReportId
-    , rgProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.get@ method which the
--- 'ReportsGet' request conforms to.
-type ReportsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Report
-
--- | Retrieves a report by its ID.
---
--- /See:/ 'reportsGet' smart constructor.
-data ReportsGet =
-  ReportsGet'
-    { _rgReportId  :: !(Textual Int64)
-    , _rgProFileId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rgReportId'
---
--- * 'rgProFileId'
-reportsGet
-    :: Int64 -- ^ 'rgReportId'
-    -> Int64 -- ^ 'rgProFileId'
-    -> ReportsGet
-reportsGet pRgReportId_ pRgProFileId_ =
-  ReportsGet'
-    { _rgReportId = _Coerce # pRgReportId_
-    , _rgProFileId = _Coerce # pRgProFileId_
-    }
-
-
--- | The ID of the report.
-rgReportId :: Lens' ReportsGet Int64
-rgReportId
-  = lens _rgReportId (\ s a -> s{_rgReportId = a}) .
-      _Coerce
-
--- | The DFA user profile ID.
-rgProFileId :: Lens' ReportsGet Int64
-rgProFileId
-  = lens _rgProFileId (\ s a -> s{_rgProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest ReportsGet where
-        type Rs ReportsGet = Report
-        type Scopes ReportsGet =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsGet'{..}
-          = go _rgProFileId _rgReportId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Insert.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.DFAReporting.Reports.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Creates a report.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.insert@.
-module Network.Google.Resource.DFAReporting.Reports.Insert
-    (
-    -- * REST Resource
-      ReportsInsertResource
-
-    -- * Creating a Request
-    , reportsInsert
-    , ReportsInsert
-
-    -- * Request Lenses
-    , riProFileId
-    , riPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.insert@ method which the
--- 'ReportsInsert' request conforms to.
-type ReportsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Report :> Post '[JSON] Report
-
--- | Creates a report.
---
--- /See:/ 'reportsInsert' smart constructor.
-data ReportsInsert =
-  ReportsInsert'
-    { _riProFileId :: !(Textual Int64)
-    , _riPayload   :: !Report
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'riProFileId'
---
--- * 'riPayload'
-reportsInsert
-    :: Int64 -- ^ 'riProFileId'
-    -> Report -- ^ 'riPayload'
-    -> ReportsInsert
-reportsInsert pRiProFileId_ pRiPayload_ =
-  ReportsInsert'
-    {_riProFileId = _Coerce # pRiProFileId_, _riPayload = pRiPayload_}
-
-
--- | The DFA user profile ID.
-riProFileId :: Lens' ReportsInsert Int64
-riProFileId
-  = lens _riProFileId (\ s a -> s{_riProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-riPayload :: Lens' ReportsInsert Report
-riPayload
-  = lens _riPayload (\ s a -> s{_riPayload = a})
-
-instance GoogleRequest ReportsInsert where
-        type Rs ReportsInsert = Report
-        type Scopes ReportsInsert =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsInsert'{..}
-          = go _riProFileId (Just AltJSON) _riPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/List.hs b/gen/Network/Google/Resource/DFAReporting/Reports/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/List.hs
+++ /dev/null
@@ -1,150 +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.DFAReporting.Reports.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves list of reports.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.list@.
-module Network.Google.Resource.DFAReporting.Reports.List
-    (
-    -- * REST Resource
-      ReportsListResource
-
-    -- * Creating a Request
-    , reportsList
-    , ReportsList
-
-    -- * Request Lenses
-    , rlProFileId
-    , rlSortOrder
-    , rlScope
-    , rlPageToken
-    , rlSortField
-    , rlMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.list@ method which the
--- 'ReportsList' request conforms to.
-type ReportsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               QueryParam "sortOrder" ReportsListSortOrder :>
-                 QueryParam "scope" ReportsListScope :>
-                   QueryParam "pageToken" Text :>
-                     QueryParam "sortField" ReportsListSortField :>
-                       QueryParam "maxResults" (Textual Int32) :>
-                         QueryParam "alt" AltJSON :> Get '[JSON] ReportList
-
--- | Retrieves list of reports.
---
--- /See:/ 'reportsList' smart constructor.
-data ReportsList =
-  ReportsList'
-    { _rlProFileId  :: !(Textual Int64)
-    , _rlSortOrder  :: !ReportsListSortOrder
-    , _rlScope      :: !ReportsListScope
-    , _rlPageToken  :: !(Maybe Text)
-    , _rlSortField  :: !ReportsListSortField
-    , _rlMaxResults :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rlProFileId'
---
--- * 'rlSortOrder'
---
--- * 'rlScope'
---
--- * 'rlPageToken'
---
--- * 'rlSortField'
---
--- * 'rlMaxResults'
-reportsList
-    :: Int64 -- ^ 'rlProFileId'
-    -> ReportsList
-reportsList pRlProFileId_ =
-  ReportsList'
-    { _rlProFileId = _Coerce # pRlProFileId_
-    , _rlSortOrder = RLSODescending
-    , _rlScope = Mine
-    , _rlPageToken = Nothing
-    , _rlSortField = RLSFLastModifiedTime
-    , _rlMaxResults = 10
-    }
-
-
--- | The DFA user profile ID.
-rlProFileId :: Lens' ReportsList Int64
-rlProFileId
-  = lens _rlProFileId (\ s a -> s{_rlProFileId = a}) .
-      _Coerce
-
--- | Order of sorted results.
-rlSortOrder :: Lens' ReportsList ReportsListSortOrder
-rlSortOrder
-  = lens _rlSortOrder (\ s a -> s{_rlSortOrder = a})
-
--- | The scope that defines which results are returned.
-rlScope :: Lens' ReportsList ReportsListScope
-rlScope = lens _rlScope (\ s a -> s{_rlScope = a})
-
--- | The value of the nextToken from the previous result page.
-rlPageToken :: Lens' ReportsList (Maybe Text)
-rlPageToken
-  = lens _rlPageToken (\ s a -> s{_rlPageToken = a})
-
--- | The field by which to sort the list.
-rlSortField :: Lens' ReportsList ReportsListSortField
-rlSortField
-  = lens _rlSortField (\ s a -> s{_rlSortField = a})
-
--- | Maximum number of results to return.
-rlMaxResults :: Lens' ReportsList Int32
-rlMaxResults
-  = lens _rlMaxResults (\ s a -> s{_rlMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest ReportsList where
-        type Rs ReportsList = ReportList
-        type Scopes ReportsList =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsList'{..}
-          = go _rlProFileId (Just _rlSortOrder) (Just _rlScope)
-              _rlPageToken
-              (Just _rlSortField)
-              (Just _rlMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Patch.hs
+++ /dev/null
@@ -1,117 +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.DFAReporting.Reports.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates a report. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.patch@.
-module Network.Google.Resource.DFAReporting.Reports.Patch
-    (
-    -- * REST Resource
-      ReportsPatchResource
-
-    -- * Creating a Request
-    , reportsPatch
-    , ReportsPatch
-
-    -- * Request Lenses
-    , rpReportId
-    , rpProFileId
-    , rpPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.patch@ method which the
--- 'ReportsPatch' request conforms to.
-type ReportsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Report :> Patch '[JSON] Report
-
--- | Updates a report. This method supports patch semantics.
---
--- /See:/ 'reportsPatch' smart constructor.
-data ReportsPatch =
-  ReportsPatch'
-    { _rpReportId  :: !(Textual Int64)
-    , _rpProFileId :: !(Textual Int64)
-    , _rpPayload   :: !Report
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rpReportId'
---
--- * 'rpProFileId'
---
--- * 'rpPayload'
-reportsPatch
-    :: Int64 -- ^ 'rpReportId'
-    -> Int64 -- ^ 'rpProFileId'
-    -> Report -- ^ 'rpPayload'
-    -> ReportsPatch
-reportsPatch pRpReportId_ pRpProFileId_ pRpPayload_ =
-  ReportsPatch'
-    { _rpReportId = _Coerce # pRpReportId_
-    , _rpProFileId = _Coerce # pRpProFileId_
-    , _rpPayload = pRpPayload_
-    }
-
-
--- | The ID of the report.
-rpReportId :: Lens' ReportsPatch Int64
-rpReportId
-  = lens _rpReportId (\ s a -> s{_rpReportId = a}) .
-      _Coerce
-
--- | The DFA user profile ID.
-rpProFileId :: Lens' ReportsPatch Int64
-rpProFileId
-  = lens _rpProFileId (\ s a -> s{_rpProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-rpPayload :: Lens' ReportsPatch Report
-rpPayload
-  = lens _rpPayload (\ s a -> s{_rpPayload = a})
-
-instance GoogleRequest ReportsPatch where
-        type Rs ReportsPatch = Report
-        type Scopes ReportsPatch =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsPatch'{..}
-          = go _rpProFileId _rpReportId (Just AltJSON)
-              _rpPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Run.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Run.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Run.hs
+++ /dev/null
@@ -1,118 +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.DFAReporting.Reports.Run
--- 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 report.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.run@.
-module Network.Google.Resource.DFAReporting.Reports.Run
-    (
-    -- * REST Resource
-      ReportsRunResource
-
-    -- * Creating a Request
-    , reportsRun
-    , ReportsRun
-
-    -- * Request Lenses
-    , rrSynchronous
-    , rrReportId
-    , rrProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.run@ method which the
--- 'ReportsRun' request conforms to.
-type ReportsRunResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 "run" :>
-                   QueryParam "synchronous" Bool :>
-                     QueryParam "alt" AltJSON :> Post '[JSON] File
-
--- | Runs a report.
---
--- /See:/ 'reportsRun' smart constructor.
-data ReportsRun =
-  ReportsRun'
-    { _rrSynchronous :: !Bool
-    , _rrReportId    :: !(Textual Int64)
-    , _rrProFileId   :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsRun' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rrSynchronous'
---
--- * 'rrReportId'
---
--- * 'rrProFileId'
-reportsRun
-    :: Int64 -- ^ 'rrReportId'
-    -> Int64 -- ^ 'rrProFileId'
-    -> ReportsRun
-reportsRun pRrReportId_ pRrProFileId_ =
-  ReportsRun'
-    { _rrSynchronous = False
-    , _rrReportId = _Coerce # pRrReportId_
-    , _rrProFileId = _Coerce # pRrProFileId_
-    }
-
-
--- | If set and true, tries to run the report synchronously.
-rrSynchronous :: Lens' ReportsRun Bool
-rrSynchronous
-  = lens _rrSynchronous
-      (\ s a -> s{_rrSynchronous = a})
-
--- | The ID of the report.
-rrReportId :: Lens' ReportsRun Int64
-rrReportId
-  = lens _rrReportId (\ s a -> s{_rrReportId = a}) .
-      _Coerce
-
--- | The DFA profile ID.
-rrProFileId :: Lens' ReportsRun Int64
-rrProFileId
-  = lens _rrProFileId (\ s a -> s{_rrProFileId = a}) .
-      _Coerce
-
-instance GoogleRequest ReportsRun where
-        type Rs ReportsRun = File
-        type Scopes ReportsRun =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsRun'{..}
-          = go _rrProFileId _rrReportId (Just _rrSynchronous)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsRunResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Reports/Update.hs b/gen/Network/Google/Resource/DFAReporting/Reports/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Reports/Update.hs
+++ /dev/null
@@ -1,117 +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.DFAReporting.Reports.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates a report.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.reports.update@.
-module Network.Google.Resource.DFAReporting.Reports.Update
-    (
-    -- * REST Resource
-      ReportsUpdateResource
-
-    -- * Creating a Request
-    , reportsUpdate
-    , ReportsUpdate
-
-    -- * Request Lenses
-    , ruReportId
-    , ruProFileId
-    , ruPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.reports.update@ method which the
--- 'ReportsUpdate' request conforms to.
-type ReportsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "reports" :>
-               Capture "reportId" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Report :> Put '[JSON] Report
-
--- | Updates a report.
---
--- /See:/ 'reportsUpdate' smart constructor.
-data ReportsUpdate =
-  ReportsUpdate'
-    { _ruReportId  :: !(Textual Int64)
-    , _ruProFileId :: !(Textual Int64)
-    , _ruPayload   :: !Report
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ruReportId'
---
--- * 'ruProFileId'
---
--- * 'ruPayload'
-reportsUpdate
-    :: Int64 -- ^ 'ruReportId'
-    -> Int64 -- ^ 'ruProFileId'
-    -> Report -- ^ 'ruPayload'
-    -> ReportsUpdate
-reportsUpdate pRuReportId_ pRuProFileId_ pRuPayload_ =
-  ReportsUpdate'
-    { _ruReportId = _Coerce # pRuReportId_
-    , _ruProFileId = _Coerce # pRuProFileId_
-    , _ruPayload = pRuPayload_
-    }
-
-
--- | The ID of the report.
-ruReportId :: Lens' ReportsUpdate Int64
-ruReportId
-  = lens _ruReportId (\ s a -> s{_ruReportId = a}) .
-      _Coerce
-
--- | The DFA user profile ID.
-ruProFileId :: Lens' ReportsUpdate Int64
-ruProFileId
-  = lens _ruProFileId (\ s a -> s{_ruProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-ruPayload :: Lens' ReportsUpdate Report
-ruPayload
-  = lens _ruPayload (\ s a -> s{_ruPayload = a})
-
-instance GoogleRequest ReportsUpdate where
-        type Rs ReportsUpdate = Report
-        type Scopes ReportsUpdate =
-             '["https://www.googleapis.com/auth/dfareporting"]
-        requestClient ReportsUpdate'{..}
-          = go _ruProFileId _ruReportId (Just AltJSON)
-              _ruPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy ReportsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sites/Get.hs b/gen/Network/Google/Resource/DFAReporting/Sites/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sites/Get.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.DFAReporting.Sites.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one site by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sites.get@.
-module Network.Google.Resource.DFAReporting.Sites.Get
-    (
-    -- * REST Resource
-      SitesGetResource
-
-    -- * Creating a Request
-    , sitesGet
-    , SitesGet
-
-    -- * Request Lenses
-    , sggProFileId
-    , sggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sites.get@ method which the
--- 'SitesGet' request conforms to.
-type SitesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sites" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Site
-
--- | Gets one site by ID.
---
--- /See:/ 'sitesGet' smart constructor.
-data SitesGet =
-  SitesGet'
-    { _sggProFileId :: !(Textual Int64)
-    , _sggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sggProFileId'
---
--- * 'sggId'
-sitesGet
-    :: Int64 -- ^ 'sggProFileId'
-    -> Int64 -- ^ 'sggId'
-    -> SitesGet
-sitesGet pSggProFileId_ pSggId_ =
-  SitesGet'
-    {_sggProFileId = _Coerce # pSggProFileId_, _sggId = _Coerce # pSggId_}
-
-
--- | User profile ID associated with this request.
-sggProFileId :: Lens' SitesGet Int64
-sggProFileId
-  = lens _sggProFileId (\ s a -> s{_sggProFileId = a})
-      . _Coerce
-
--- | Site ID.
-sggId :: Lens' SitesGet Int64
-sggId
-  = lens _sggId (\ s a -> s{_sggId = a}) . _Coerce
-
-instance GoogleRequest SitesGet where
-        type Rs SitesGet = Site
-        type Scopes SitesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SitesGet'{..}
-          = go _sggProFileId _sggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SitesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sites/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Sites/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sites/Insert.hs
+++ /dev/null
@@ -1,99 +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.DFAReporting.Sites.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new site.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sites.insert@.
-module Network.Google.Resource.DFAReporting.Sites.Insert
-    (
-    -- * REST Resource
-      SitesInsertResource
-
-    -- * Creating a Request
-    , sitesInsert
-    , SitesInsert
-
-    -- * Request Lenses
-    , sProFileId
-    , sPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sites.insert@ method which the
--- 'SitesInsert' request conforms to.
-type SitesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sites" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Site :> Post '[JSON] Site
-
--- | Inserts a new site.
---
--- /See:/ 'sitesInsert' smart constructor.
-data SitesInsert =
-  SitesInsert'
-    { _sProFileId :: !(Textual Int64)
-    , _sPayload   :: !Site
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sProFileId'
---
--- * 'sPayload'
-sitesInsert
-    :: Int64 -- ^ 'sProFileId'
-    -> Site -- ^ 'sPayload'
-    -> SitesInsert
-sitesInsert pSProFileId_ pSPayload_ =
-  SitesInsert' {_sProFileId = _Coerce # pSProFileId_, _sPayload = pSPayload_}
-
-
--- | User profile ID associated with this request.
-sProFileId :: Lens' SitesInsert Int64
-sProFileId
-  = lens _sProFileId (\ s a -> s{_sProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-sPayload :: Lens' SitesInsert Site
-sPayload = lens _sPayload (\ s a -> s{_sPayload = a})
-
-instance GoogleRequest SitesInsert where
-        type Rs SitesInsert = Site
-        type Scopes SitesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SitesInsert'{..}
-          = go _sProFileId (Just AltJSON) _sPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SitesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sites/List.hs b/gen/Network/Google/Resource/DFAReporting/Sites/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sites/List.hs
+++ /dev/null
@@ -1,302 +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.DFAReporting.Sites.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of sites, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sites.list@.
-module Network.Google.Resource.DFAReporting.Sites.List
-    (
-    -- * REST Resource
-      SitesListResource
-
-    -- * Creating a Request
-    , sitesList
-    , SitesList
-
-    -- * Request Lenses
-    , sitUnmAppedSite
-    , sitCampaignIds
-    , sitSearchString
-    , sitAcceptsInterstitialPlacements
-    , sitAcceptsPublisherPaidPlacements
-    , sitIds
-    , sitProFileId
-    , sitDirectorySiteIds
-    , sitSortOrder
-    , sitPageToken
-    , sitSortField
-    , sitSubAccountId
-    , sitAcceptsInStreamVideoPlacements
-    , sitApproved
-    , sitAdWordsSite
-    , sitMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sites.list@ method which the
--- 'SitesList' request conforms to.
-type SitesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sites" :>
-               QueryParam "unmappedSite" Bool :>
-                 QueryParams "campaignIds" (Textual Int64) :>
-                   QueryParam "searchString" Text :>
-                     QueryParam "acceptsInterstitialPlacements" Bool :>
-                       QueryParam "acceptsPublisherPaidPlacements" Bool :>
-                         QueryParams "ids" (Textual Int64) :>
-                           QueryParams "directorySiteIds" (Textual Int64) :>
-                             QueryParam "sortOrder" SitesListSortOrder :>
-                               QueryParam "pageToken" Text :>
-                                 QueryParam "sortField" SitesListSortField :>
-                                   QueryParam "subaccountId" (Textual Int64) :>
-                                     QueryParam "acceptsInStreamVideoPlacements"
-                                       Bool
-                                       :>
-                                       QueryParam "approved" Bool :>
-                                         QueryParam "adWordsSite" Bool :>
-                                           QueryParam "maxResults"
-                                             (Textual Int32)
-                                             :>
-                                             QueryParam "alt" AltJSON :>
-                                               Get '[JSON] SitesListResponse
-
--- | Retrieves a list of sites, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'sitesList' smart constructor.
-data SitesList =
-  SitesList'
-    { _sitUnmAppedSite                   :: !(Maybe Bool)
-    , _sitCampaignIds                    :: !(Maybe [Textual Int64])
-    , _sitSearchString                   :: !(Maybe Text)
-    , _sitAcceptsInterstitialPlacements  :: !(Maybe Bool)
-    , _sitAcceptsPublisherPaidPlacements :: !(Maybe Bool)
-    , _sitIds                            :: !(Maybe [Textual Int64])
-    , _sitProFileId                      :: !(Textual Int64)
-    , _sitDirectorySiteIds               :: !(Maybe [Textual Int64])
-    , _sitSortOrder                      :: !SitesListSortOrder
-    , _sitPageToken                      :: !(Maybe Text)
-    , _sitSortField                      :: !SitesListSortField
-    , _sitSubAccountId                   :: !(Maybe (Textual Int64))
-    , _sitAcceptsInStreamVideoPlacements :: !(Maybe Bool)
-    , _sitApproved                       :: !(Maybe Bool)
-    , _sitAdWordsSite                    :: !(Maybe Bool)
-    , _sitMaxResults                     :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sitUnmAppedSite'
---
--- * 'sitCampaignIds'
---
--- * 'sitSearchString'
---
--- * 'sitAcceptsInterstitialPlacements'
---
--- * 'sitAcceptsPublisherPaidPlacements'
---
--- * 'sitIds'
---
--- * 'sitProFileId'
---
--- * 'sitDirectorySiteIds'
---
--- * 'sitSortOrder'
---
--- * 'sitPageToken'
---
--- * 'sitSortField'
---
--- * 'sitSubAccountId'
---
--- * 'sitAcceptsInStreamVideoPlacements'
---
--- * 'sitApproved'
---
--- * 'sitAdWordsSite'
---
--- * 'sitMaxResults'
-sitesList
-    :: Int64 -- ^ 'sitProFileId'
-    -> SitesList
-sitesList pSitProFileId_ =
-  SitesList'
-    { _sitUnmAppedSite = Nothing
-    , _sitCampaignIds = Nothing
-    , _sitSearchString = Nothing
-    , _sitAcceptsInterstitialPlacements = Nothing
-    , _sitAcceptsPublisherPaidPlacements = Nothing
-    , _sitIds = Nothing
-    , _sitProFileId = _Coerce # pSitProFileId_
-    , _sitDirectorySiteIds = Nothing
-    , _sitSortOrder = SLSOAscending
-    , _sitPageToken = Nothing
-    , _sitSortField = SLSFID
-    , _sitSubAccountId = Nothing
-    , _sitAcceptsInStreamVideoPlacements = Nothing
-    , _sitApproved = Nothing
-    , _sitAdWordsSite = Nothing
-    , _sitMaxResults = 1000
-    }
-
-
--- | Select only sites that have not been mapped to a directory site.
-sitUnmAppedSite :: Lens' SitesList (Maybe Bool)
-sitUnmAppedSite
-  = lens _sitUnmAppedSite
-      (\ s a -> s{_sitUnmAppedSite = a})
-
--- | Select only sites with these campaign IDs.
-sitCampaignIds :: Lens' SitesList [Int64]
-sitCampaignIds
-  = lens _sitCampaignIds
-      (\ s a -> s{_sitCampaignIds = a})
-      . _Default
-      . _Coerce
-
--- | Allows searching for objects by name, ID or keyName. Wildcards (*) are
--- allowed. For example, \"site*2015\" will return objects with names like
--- \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most
--- of the searches also add wildcards implicitly at the start and the end
--- of the search string. For example, a search string of \"site\" will
--- match objects with name \"my site\", \"site 2015\", or simply \"site\".
-sitSearchString :: Lens' SitesList (Maybe Text)
-sitSearchString
-  = lens _sitSearchString
-      (\ s a -> s{_sitSearchString = a})
-
--- | This search filter is no longer supported and will have no effect on the
--- results returned.
-sitAcceptsInterstitialPlacements :: Lens' SitesList (Maybe Bool)
-sitAcceptsInterstitialPlacements
-  = lens _sitAcceptsInterstitialPlacements
-      (\ s a -> s{_sitAcceptsInterstitialPlacements = a})
-
--- | Select only sites that accept publisher paid placements.
-sitAcceptsPublisherPaidPlacements :: Lens' SitesList (Maybe Bool)
-sitAcceptsPublisherPaidPlacements
-  = lens _sitAcceptsPublisherPaidPlacements
-      (\ s a -> s{_sitAcceptsPublisherPaidPlacements = a})
-
--- | Select only sites with these IDs.
-sitIds :: Lens' SitesList [Int64]
-sitIds
-  = lens _sitIds (\ s a -> s{_sitIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-sitProFileId :: Lens' SitesList Int64
-sitProFileId
-  = lens _sitProFileId (\ s a -> s{_sitProFileId = a})
-      . _Coerce
-
--- | Select only sites with these directory site IDs.
-sitDirectorySiteIds :: Lens' SitesList [Int64]
-sitDirectorySiteIds
-  = lens _sitDirectorySiteIds
-      (\ s a -> s{_sitDirectorySiteIds = a})
-      . _Default
-      . _Coerce
-
--- | Order of sorted results.
-sitSortOrder :: Lens' SitesList SitesListSortOrder
-sitSortOrder
-  = lens _sitSortOrder (\ s a -> s{_sitSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-sitPageToken :: Lens' SitesList (Maybe Text)
-sitPageToken
-  = lens _sitPageToken (\ s a -> s{_sitPageToken = a})
-
--- | Field by which to sort the list.
-sitSortField :: Lens' SitesList SitesListSortField
-sitSortField
-  = lens _sitSortField (\ s a -> s{_sitSortField = a})
-
--- | Select only sites with this subaccount ID.
-sitSubAccountId :: Lens' SitesList (Maybe Int64)
-sitSubAccountId
-  = lens _sitSubAccountId
-      (\ s a -> s{_sitSubAccountId = a})
-      . mapping _Coerce
-
--- | This search filter is no longer supported and will have no effect on the
--- results returned.
-sitAcceptsInStreamVideoPlacements :: Lens' SitesList (Maybe Bool)
-sitAcceptsInStreamVideoPlacements
-  = lens _sitAcceptsInStreamVideoPlacements
-      (\ s a -> s{_sitAcceptsInStreamVideoPlacements = a})
-
--- | Select only approved sites.
-sitApproved :: Lens' SitesList (Maybe Bool)
-sitApproved
-  = lens _sitApproved (\ s a -> s{_sitApproved = a})
-
--- | Select only AdWords sites.
-sitAdWordsSite :: Lens' SitesList (Maybe Bool)
-sitAdWordsSite
-  = lens _sitAdWordsSite
-      (\ s a -> s{_sitAdWordsSite = a})
-
--- | Maximum number of results to return.
-sitMaxResults :: Lens' SitesList Int32
-sitMaxResults
-  = lens _sitMaxResults
-      (\ s a -> s{_sitMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest SitesList where
-        type Rs SitesList = SitesListResponse
-        type Scopes SitesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SitesList'{..}
-          = go _sitProFileId _sitUnmAppedSite
-              (_sitCampaignIds ^. _Default)
-              _sitSearchString
-              _sitAcceptsInterstitialPlacements
-              _sitAcceptsPublisherPaidPlacements
-              (_sitIds ^. _Default)
-              (_sitDirectorySiteIds ^. _Default)
-              (Just _sitSortOrder)
-              _sitPageToken
-              (Just _sitSortField)
-              _sitSubAccountId
-              _sitAcceptsInStreamVideoPlacements
-              _sitApproved
-              _sitAdWordsSite
-              (Just _sitMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SitesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sites/Patch.hs b/gen/Network/Google/Resource/DFAReporting/Sites/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sites/Patch.hs
+++ /dev/null
@@ -1,115 +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.DFAReporting.Sites.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing site. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sites.patch@.
-module Network.Google.Resource.DFAReporting.Sites.Patch
-    (
-    -- * REST Resource
-      SitesPatchResource
-
-    -- * Creating a Request
-    , sitesPatch
-    , SitesPatch
-
-    -- * Request Lenses
-    , spProFileId
-    , spPayload
-    , spId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sites.patch@ method which the
--- 'SitesPatch' request conforms to.
-type SitesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sites" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] Site :> Patch '[JSON] Site
-
--- | Updates an existing site. This method supports patch semantics.
---
--- /See:/ 'sitesPatch' smart constructor.
-data SitesPatch =
-  SitesPatch'
-    { _spProFileId :: !(Textual Int64)
-    , _spPayload   :: !Site
-    , _spId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'spProFileId'
---
--- * 'spPayload'
---
--- * 'spId'
-sitesPatch
-    :: Int64 -- ^ 'spProFileId'
-    -> Site -- ^ 'spPayload'
-    -> Int64 -- ^ 'spId'
-    -> SitesPatch
-sitesPatch pSpProFileId_ pSpPayload_ pSpId_ =
-  SitesPatch'
-    { _spProFileId = _Coerce # pSpProFileId_
-    , _spPayload = pSpPayload_
-    , _spId = _Coerce # pSpId_
-    }
-
-
--- | User profile ID associated with this request.
-spProFileId :: Lens' SitesPatch Int64
-spProFileId
-  = lens _spProFileId (\ s a -> s{_spProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-spPayload :: Lens' SitesPatch Site
-spPayload
-  = lens _spPayload (\ s a -> s{_spPayload = a})
-
--- | Site ID.
-spId :: Lens' SitesPatch Int64
-spId = lens _spId (\ s a -> s{_spId = a}) . _Coerce
-
-instance GoogleRequest SitesPatch where
-        type Rs SitesPatch = Site
-        type Scopes SitesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SitesPatch'{..}
-          = go _spProFileId (Just _spId) (Just AltJSON)
-              _spPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SitesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sites/Update.hs b/gen/Network/Google/Resource/DFAReporting/Sites/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sites/Update.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.DFAReporting.Sites.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing site.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sites.update@.
-module Network.Google.Resource.DFAReporting.Sites.Update
-    (
-    -- * REST Resource
-      SitesUpdateResource
-
-    -- * Creating a Request
-    , sitesUpdate
-    , SitesUpdate
-
-    -- * Request Lenses
-    , suProFileId
-    , suPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sites.update@ method which the
--- 'SitesUpdate' request conforms to.
-type SitesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sites" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Site :> Put '[JSON] Site
-
--- | Updates an existing site.
---
--- /See:/ 'sitesUpdate' smart constructor.
-data SitesUpdate =
-  SitesUpdate'
-    { _suProFileId :: !(Textual Int64)
-    , _suPayload   :: !Site
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SitesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'suProFileId'
---
--- * 'suPayload'
-sitesUpdate
-    :: Int64 -- ^ 'suProFileId'
-    -> Site -- ^ 'suPayload'
-    -> SitesUpdate
-sitesUpdate pSuProFileId_ pSuPayload_ =
-  SitesUpdate'
-    {_suProFileId = _Coerce # pSuProFileId_, _suPayload = pSuPayload_}
-
-
--- | User profile ID associated with this request.
-suProFileId :: Lens' SitesUpdate Int64
-suProFileId
-  = lens _suProFileId (\ s a -> s{_suProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-suPayload :: Lens' SitesUpdate Site
-suPayload
-  = lens _suPayload (\ s a -> s{_suPayload = a})
-
-instance GoogleRequest SitesUpdate where
-        type Rs SitesUpdate = Site
-        type Scopes SitesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SitesUpdate'{..}
-          = go _suProFileId (Just AltJSON) _suPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SitesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sizes/Get.hs b/gen/Network/Google/Resource/DFAReporting/Sizes/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sizes/Get.hs
+++ /dev/null
@@ -1,99 +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.DFAReporting.Sizes.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one size by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sizes.get@.
-module Network.Google.Resource.DFAReporting.Sizes.Get
-    (
-    -- * REST Resource
-      SizesGetResource
-
-    -- * Creating a Request
-    , sizesGet
-    , SizesGet
-
-    -- * Request Lenses
-    , sgProFileId
-    , sgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sizes.get@ method which the
--- 'SizesGet' request conforms to.
-type SizesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sizes" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] Size
-
--- | Gets one size by ID.
---
--- /See:/ 'sizesGet' smart constructor.
-data SizesGet =
-  SizesGet'
-    { _sgProFileId :: !(Textual Int64)
-    , _sgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SizesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sgProFileId'
---
--- * 'sgId'
-sizesGet
-    :: Int64 -- ^ 'sgProFileId'
-    -> Int64 -- ^ 'sgId'
-    -> SizesGet
-sizesGet pSgProFileId_ pSgId_ =
-  SizesGet' {_sgProFileId = _Coerce # pSgProFileId_, _sgId = _Coerce # pSgId_}
-
-
--- | User profile ID associated with this request.
-sgProFileId :: Lens' SizesGet Int64
-sgProFileId
-  = lens _sgProFileId (\ s a -> s{_sgProFileId = a}) .
-      _Coerce
-
--- | Size ID.
-sgId :: Lens' SizesGet Int64
-sgId = lens _sgId (\ s a -> s{_sgId = a}) . _Coerce
-
-instance GoogleRequest SizesGet where
-        type Rs SizesGet = Size
-        type Scopes SizesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SizesGet'{..}
-          = go _sgProFileId _sgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SizesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sizes/Insert.hs b/gen/Network/Google/Resource/DFAReporting/Sizes/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sizes/Insert.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.DFAReporting.Sizes.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new size.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sizes.insert@.
-module Network.Google.Resource.DFAReporting.Sizes.Insert
-    (
-    -- * REST Resource
-      SizesInsertResource
-
-    -- * Creating a Request
-    , sizesInsert
-    , SizesInsert
-
-    -- * Request Lenses
-    , siProFileId
-    , siPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sizes.insert@ method which the
--- 'SizesInsert' request conforms to.
-type SizesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sizes" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] Size :> Post '[JSON] Size
-
--- | Inserts a new size.
---
--- /See:/ 'sizesInsert' smart constructor.
-data SizesInsert =
-  SizesInsert'
-    { _siProFileId :: !(Textual Int64)
-    , _siPayload   :: !Size
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SizesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'siProFileId'
---
--- * 'siPayload'
-sizesInsert
-    :: Int64 -- ^ 'siProFileId'
-    -> Size -- ^ 'siPayload'
-    -> SizesInsert
-sizesInsert pSiProFileId_ pSiPayload_ =
-  SizesInsert'
-    {_siProFileId = _Coerce # pSiProFileId_, _siPayload = pSiPayload_}
-
-
--- | User profile ID associated with this request.
-siProFileId :: Lens' SizesInsert Int64
-siProFileId
-  = lens _siProFileId (\ s a -> s{_siProFileId = a}) .
-      _Coerce
-
--- | Multipart request metadata.
-siPayload :: Lens' SizesInsert Size
-siPayload
-  = lens _siPayload (\ s a -> s{_siPayload = a})
-
-instance GoogleRequest SizesInsert where
-        type Rs SizesInsert = Size
-        type Scopes SizesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SizesInsert'{..}
-          = go _siProFileId (Just AltJSON) _siPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SizesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/Sizes/List.hs b/gen/Network/Google/Resource/DFAReporting/Sizes/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/Sizes/List.hs
+++ /dev/null
@@ -1,149 +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.DFAReporting.Sizes.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of sizes, possibly filtered. Retrieved sizes are
--- globally unique and may include values not currently in use by your
--- account. Due to this, the list of sizes returned by this method may
--- differ from the list seen in the Trafficking UI.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.sizes.list@.
-module Network.Google.Resource.DFAReporting.Sizes.List
-    (
-    -- * REST Resource
-      SizesListResource
-
-    -- * Creating a Request
-    , sizesList
-    , SizesList
-
-    -- * Request Lenses
-    , slHeight
-    , slIds
-    , slWidth
-    , slProFileId
-    , slIabStandard
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.sizes.list@ method which the
--- 'SizesList' request conforms to.
-type SizesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "sizes" :>
-               QueryParam "height" (Textual Int32) :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "width" (Textual Int32) :>
-                     QueryParam "iabStandard" Bool :>
-                       QueryParam "alt" AltJSON :>
-                         Get '[JSON] SizesListResponse
-
--- | Retrieves a list of sizes, possibly filtered. Retrieved sizes are
--- globally unique and may include values not currently in use by your
--- account. Due to this, the list of sizes returned by this method may
--- differ from the list seen in the Trafficking UI.
---
--- /See:/ 'sizesList' smart constructor.
-data SizesList =
-  SizesList'
-    { _slHeight      :: !(Maybe (Textual Int32))
-    , _slIds         :: !(Maybe [Textual Int64])
-    , _slWidth       :: !(Maybe (Textual Int32))
-    , _slProFileId   :: !(Textual Int64)
-    , _slIabStandard :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SizesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'slHeight'
---
--- * 'slIds'
---
--- * 'slWidth'
---
--- * 'slProFileId'
---
--- * 'slIabStandard'
-sizesList
-    :: Int64 -- ^ 'slProFileId'
-    -> SizesList
-sizesList pSlProFileId_ =
-  SizesList'
-    { _slHeight = Nothing
-    , _slIds = Nothing
-    , _slWidth = Nothing
-    , _slProFileId = _Coerce # pSlProFileId_
-    , _slIabStandard = Nothing
-    }
-
-
--- | Select only sizes with this height.
-slHeight :: Lens' SizesList (Maybe Int32)
-slHeight
-  = lens _slHeight (\ s a -> s{_slHeight = a}) .
-      mapping _Coerce
-
--- | Select only sizes with these IDs.
-slIds :: Lens' SizesList [Int64]
-slIds
-  = lens _slIds (\ s a -> s{_slIds = a}) . _Default .
-      _Coerce
-
--- | Select only sizes with this width.
-slWidth :: Lens' SizesList (Maybe Int32)
-slWidth
-  = lens _slWidth (\ s a -> s{_slWidth = a}) .
-      mapping _Coerce
-
--- | User profile ID associated with this request.
-slProFileId :: Lens' SizesList Int64
-slProFileId
-  = lens _slProFileId (\ s a -> s{_slProFileId = a}) .
-      _Coerce
-
--- | Select only IAB standard sizes.
-slIabStandard :: Lens' SizesList (Maybe Bool)
-slIabStandard
-  = lens _slIabStandard
-      (\ s a -> s{_slIabStandard = a})
-
-instance GoogleRequest SizesList where
-        type Rs SizesList = SizesListResponse
-        type Scopes SizesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SizesList'{..}
-          = go _slProFileId _slHeight (_slIds ^. _Default)
-              _slWidth
-              _slIabStandard
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SizesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Get.hs b/gen/Network/Google/Resource/DFAReporting/SubAccounts/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Get.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.DFAReporting.SubAccounts.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one subaccount by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.subaccounts.get@.
-module Network.Google.Resource.DFAReporting.SubAccounts.Get
-    (
-    -- * REST Resource
-      SubAccountsGetResource
-
-    -- * Creating a Request
-    , subAccountsGet
-    , SubAccountsGet
-
-    -- * Request Lenses
-    , sagProFileId
-    , sagId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.subaccounts.get@ method which the
--- 'SubAccountsGet' request conforms to.
-type SubAccountsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "subaccounts" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] SubAccount
-
--- | Gets one subaccount by ID.
---
--- /See:/ 'subAccountsGet' smart constructor.
-data SubAccountsGet =
-  SubAccountsGet'
-    { _sagProFileId :: !(Textual Int64)
-    , _sagId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sagProFileId'
---
--- * 'sagId'
-subAccountsGet
-    :: Int64 -- ^ 'sagProFileId'
-    -> Int64 -- ^ 'sagId'
-    -> SubAccountsGet
-subAccountsGet pSagProFileId_ pSagId_ =
-  SubAccountsGet'
-    {_sagProFileId = _Coerce # pSagProFileId_, _sagId = _Coerce # pSagId_}
-
-
--- | User profile ID associated with this request.
-sagProFileId :: Lens' SubAccountsGet Int64
-sagProFileId
-  = lens _sagProFileId (\ s a -> s{_sagProFileId = a})
-      . _Coerce
-
--- | Subaccount ID.
-sagId :: Lens' SubAccountsGet Int64
-sagId
-  = lens _sagId (\ s a -> s{_sagId = a}) . _Coerce
-
-instance GoogleRequest SubAccountsGet where
-        type Rs SubAccountsGet = SubAccount
-        type Scopes SubAccountsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SubAccountsGet'{..}
-          = go _sagProFileId _sagId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy SubAccountsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Insert.hs b/gen/Network/Google/Resource/DFAReporting/SubAccounts/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.SubAccounts.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new subaccount.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.subaccounts.insert@.
-module Network.Google.Resource.DFAReporting.SubAccounts.Insert
-    (
-    -- * REST Resource
-      SubAccountsInsertResource
-
-    -- * Creating a Request
-    , subAccountsInsert
-    , SubAccountsInsert
-
-    -- * Request Lenses
-    , saiProFileId
-    , saiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.subaccounts.insert@ method which the
--- 'SubAccountsInsert' request conforms to.
-type SubAccountsInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "subaccounts" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] SubAccount :> Post '[JSON] SubAccount
-
--- | Inserts a new subaccount.
---
--- /See:/ 'subAccountsInsert' smart constructor.
-data SubAccountsInsert =
-  SubAccountsInsert'
-    { _saiProFileId :: !(Textual Int64)
-    , _saiPayload   :: !SubAccount
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'saiProFileId'
---
--- * 'saiPayload'
-subAccountsInsert
-    :: Int64 -- ^ 'saiProFileId'
-    -> SubAccount -- ^ 'saiPayload'
-    -> SubAccountsInsert
-subAccountsInsert pSaiProFileId_ pSaiPayload_ =
-  SubAccountsInsert'
-    {_saiProFileId = _Coerce # pSaiProFileId_, _saiPayload = pSaiPayload_}
-
-
--- | User profile ID associated with this request.
-saiProFileId :: Lens' SubAccountsInsert Int64
-saiProFileId
-  = lens _saiProFileId (\ s a -> s{_saiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-saiPayload :: Lens' SubAccountsInsert SubAccount
-saiPayload
-  = lens _saiPayload (\ s a -> s{_saiPayload = a})
-
-instance GoogleRequest SubAccountsInsert where
-        type Rs SubAccountsInsert = SubAccount
-        type Scopes SubAccountsInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SubAccountsInsert'{..}
-          = go _saiProFileId (Just AltJSON) _saiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy SubAccountsInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/SubAccounts/List.hs b/gen/Network/Google/Resource/DFAReporting/SubAccounts/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/SubAccounts/List.hs
+++ /dev/null
@@ -1,177 +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.DFAReporting.SubAccounts.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets a list of subaccounts, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.subaccounts.list@.
-module Network.Google.Resource.DFAReporting.SubAccounts.List
-    (
-    -- * REST Resource
-      SubAccountsListResource
-
-    -- * Creating a Request
-    , subAccountsList
-    , SubAccountsList
-
-    -- * Request Lenses
-    , salSearchString
-    , salIds
-    , salProFileId
-    , salSortOrder
-    , salPageToken
-    , salSortField
-    , salMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.subaccounts.list@ method which the
--- 'SubAccountsList' request conforms to.
-type SubAccountsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "subaccounts" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" SubAccountsListSortOrder :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "sortField" SubAccountsListSortField :>
-                         QueryParam "maxResults" (Textual Int32) :>
-                           QueryParam "alt" AltJSON :>
-                             Get '[JSON] SubAccountsListResponse
-
--- | Gets a list of subaccounts, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'subAccountsList' smart constructor.
-data SubAccountsList =
-  SubAccountsList'
-    { _salSearchString :: !(Maybe Text)
-    , _salIds          :: !(Maybe [Textual Int64])
-    , _salProFileId    :: !(Textual Int64)
-    , _salSortOrder    :: !SubAccountsListSortOrder
-    , _salPageToken    :: !(Maybe Text)
-    , _salSortField    :: !SubAccountsListSortField
-    , _salMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'salSearchString'
---
--- * 'salIds'
---
--- * 'salProFileId'
---
--- * 'salSortOrder'
---
--- * 'salPageToken'
---
--- * 'salSortField'
---
--- * 'salMaxResults'
-subAccountsList
-    :: Int64 -- ^ 'salProFileId'
-    -> SubAccountsList
-subAccountsList pSalProFileId_ =
-  SubAccountsList'
-    { _salSearchString = Nothing
-    , _salIds = Nothing
-    , _salProFileId = _Coerce # pSalProFileId_
-    , _salSortOrder = SALSOAscending
-    , _salPageToken = Nothing
-    , _salSortField = SALSFID
-    , _salMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"subaccount*2015\" will return objects with names like
--- \"subaccount June 2015\", \"subaccount April 2015\", or simply
--- \"subaccount 2015\". Most of the searches also add wildcards implicitly
--- at the start and the end of the search string. For example, a search
--- string of \"subaccount\" will match objects with name \"my subaccount\",
--- \"subaccount 2015\", or simply \"subaccount\".
-salSearchString :: Lens' SubAccountsList (Maybe Text)
-salSearchString
-  = lens _salSearchString
-      (\ s a -> s{_salSearchString = a})
-
--- | Select only subaccounts with these IDs.
-salIds :: Lens' SubAccountsList [Int64]
-salIds
-  = lens _salIds (\ s a -> s{_salIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-salProFileId :: Lens' SubAccountsList Int64
-salProFileId
-  = lens _salProFileId (\ s a -> s{_salProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-salSortOrder :: Lens' SubAccountsList SubAccountsListSortOrder
-salSortOrder
-  = lens _salSortOrder (\ s a -> s{_salSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-salPageToken :: Lens' SubAccountsList (Maybe Text)
-salPageToken
-  = lens _salPageToken (\ s a -> s{_salPageToken = a})
-
--- | Field by which to sort the list.
-salSortField :: Lens' SubAccountsList SubAccountsListSortField
-salSortField
-  = lens _salSortField (\ s a -> s{_salSortField = a})
-
--- | Maximum number of results to return.
-salMaxResults :: Lens' SubAccountsList Int32
-salMaxResults
-  = lens _salMaxResults
-      (\ s a -> s{_salMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest SubAccountsList where
-        type Rs SubAccountsList = SubAccountsListResponse
-        type Scopes SubAccountsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SubAccountsList'{..}
-          = go _salProFileId _salSearchString
-              (_salIds ^. _Default)
-              (Just _salSortOrder)
-              _salPageToken
-              (Just _salSortField)
-              (Just _salMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy SubAccountsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Patch.hs b/gen/Network/Google/Resource/DFAReporting/SubAccounts/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Patch.hs
+++ /dev/null
@@ -1,118 +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.DFAReporting.SubAccounts.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing subaccount. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.subaccounts.patch@.
-module Network.Google.Resource.DFAReporting.SubAccounts.Patch
-    (
-    -- * REST Resource
-      SubAccountsPatchResource
-
-    -- * Creating a Request
-    , subAccountsPatch
-    , SubAccountsPatch
-
-    -- * Request Lenses
-    , sapProFileId
-    , sapPayload
-    , sapId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.subaccounts.patch@ method which the
--- 'SubAccountsPatch' request conforms to.
-type SubAccountsPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "subaccounts" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] SubAccount :>
-                     Patch '[JSON] SubAccount
-
--- | Updates an existing subaccount. This method supports patch semantics.
---
--- /See:/ 'subAccountsPatch' smart constructor.
-data SubAccountsPatch =
-  SubAccountsPatch'
-    { _sapProFileId :: !(Textual Int64)
-    , _sapPayload   :: !SubAccount
-    , _sapId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sapProFileId'
---
--- * 'sapPayload'
---
--- * 'sapId'
-subAccountsPatch
-    :: Int64 -- ^ 'sapProFileId'
-    -> SubAccount -- ^ 'sapPayload'
-    -> Int64 -- ^ 'sapId'
-    -> SubAccountsPatch
-subAccountsPatch pSapProFileId_ pSapPayload_ pSapId_ =
-  SubAccountsPatch'
-    { _sapProFileId = _Coerce # pSapProFileId_
-    , _sapPayload = pSapPayload_
-    , _sapId = _Coerce # pSapId_
-    }
-
-
--- | User profile ID associated with this request.
-sapProFileId :: Lens' SubAccountsPatch Int64
-sapProFileId
-  = lens _sapProFileId (\ s a -> s{_sapProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-sapPayload :: Lens' SubAccountsPatch SubAccount
-sapPayload
-  = lens _sapPayload (\ s a -> s{_sapPayload = a})
-
--- | Subaccount ID.
-sapId :: Lens' SubAccountsPatch Int64
-sapId
-  = lens _sapId (\ s a -> s{_sapId = a}) . _Coerce
-
-instance GoogleRequest SubAccountsPatch where
-        type Rs SubAccountsPatch = SubAccount
-        type Scopes SubAccountsPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SubAccountsPatch'{..}
-          = go _sapProFileId (Just _sapId) (Just AltJSON)
-              _sapPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy SubAccountsPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Update.hs b/gen/Network/Google/Resource/DFAReporting/SubAccounts/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/SubAccounts/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.SubAccounts.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing subaccount.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.subaccounts.update@.
-module Network.Google.Resource.DFAReporting.SubAccounts.Update
-    (
-    -- * REST Resource
-      SubAccountsUpdateResource
-
-    -- * Creating a Request
-    , subAccountsUpdate
-    , SubAccountsUpdate
-
-    -- * Request Lenses
-    , sauProFileId
-    , sauPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.subaccounts.update@ method which the
--- 'SubAccountsUpdate' request conforms to.
-type SubAccountsUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "subaccounts" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] SubAccount :> Put '[JSON] SubAccount
-
--- | Updates an existing subaccount.
---
--- /See:/ 'subAccountsUpdate' smart constructor.
-data SubAccountsUpdate =
-  SubAccountsUpdate'
-    { _sauProFileId :: !(Textual Int64)
-    , _sauPayload   :: !SubAccount
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SubAccountsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sauProFileId'
---
--- * 'sauPayload'
-subAccountsUpdate
-    :: Int64 -- ^ 'sauProFileId'
-    -> SubAccount -- ^ 'sauPayload'
-    -> SubAccountsUpdate
-subAccountsUpdate pSauProFileId_ pSauPayload_ =
-  SubAccountsUpdate'
-    {_sauProFileId = _Coerce # pSauProFileId_, _sauPayload = pSauPayload_}
-
-
--- | User profile ID associated with this request.
-sauProFileId :: Lens' SubAccountsUpdate Int64
-sauProFileId
-  = lens _sauProFileId (\ s a -> s{_sauProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-sauPayload :: Lens' SubAccountsUpdate SubAccount
-sauPayload
-  = lens _sauPayload (\ s a -> s{_sauPayload = a})
-
-instance GoogleRequest SubAccountsUpdate where
-        type Rs SubAccountsUpdate = SubAccount
-        type Scopes SubAccountsUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient SubAccountsUpdate'{..}
-          = go _sauProFileId (Just AltJSON) _sauPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy SubAccountsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/Get.hs b/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/Get.hs
+++ /dev/null
@@ -1,107 +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.DFAReporting.TargetableRemarketingLists.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one remarketing list by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetableRemarketingLists.get@.
-module Network.Google.Resource.DFAReporting.TargetableRemarketingLists.Get
-    (
-    -- * REST Resource
-      TargetableRemarketingListsGetResource
-
-    -- * Creating a Request
-    , targetableRemarketingListsGet
-    , TargetableRemarketingListsGet
-
-    -- * Request Lenses
-    , trlgProFileId
-    , trlgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetableRemarketingLists.get@ method which the
--- 'TargetableRemarketingListsGet' request conforms to.
-type TargetableRemarketingListsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetableRemarketingLists" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] TargetableRemarketingList
-
--- | Gets one remarketing list by ID.
---
--- /See:/ 'targetableRemarketingListsGet' smart constructor.
-data TargetableRemarketingListsGet =
-  TargetableRemarketingListsGet'
-    { _trlgProFileId :: !(Textual Int64)
-    , _trlgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetableRemarketingListsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'trlgProFileId'
---
--- * 'trlgId'
-targetableRemarketingListsGet
-    :: Int64 -- ^ 'trlgProFileId'
-    -> Int64 -- ^ 'trlgId'
-    -> TargetableRemarketingListsGet
-targetableRemarketingListsGet pTrlgProFileId_ pTrlgId_ =
-  TargetableRemarketingListsGet'
-    {_trlgProFileId = _Coerce # pTrlgProFileId_, _trlgId = _Coerce # pTrlgId_}
-
-
--- | User profile ID associated with this request.
-trlgProFileId :: Lens' TargetableRemarketingListsGet Int64
-trlgProFileId
-  = lens _trlgProFileId
-      (\ s a -> s{_trlgProFileId = a})
-      . _Coerce
-
--- | Remarketing list ID.
-trlgId :: Lens' TargetableRemarketingListsGet Int64
-trlgId
-  = lens _trlgId (\ s a -> s{_trlgId = a}) . _Coerce
-
-instance GoogleRequest TargetableRemarketingListsGet
-         where
-        type Rs TargetableRemarketingListsGet =
-             TargetableRemarketingList
-        type Scopes TargetableRemarketingListsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetableRemarketingListsGet'{..}
-          = go _trlgProFileId _trlgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy TargetableRemarketingListsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/List.hs b/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetableRemarketingLists/List.hs
+++ /dev/null
@@ -1,203 +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.DFAReporting.TargetableRemarketingLists.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of targetable remarketing lists, possibly filtered.
--- This method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetableRemarketingLists.list@.
-module Network.Google.Resource.DFAReporting.TargetableRemarketingLists.List
-    (
-    -- * REST Resource
-      TargetableRemarketingListsListResource
-
-    -- * Creating a Request
-    , targetableRemarketingListsList
-    , TargetableRemarketingListsList
-
-    -- * Request Lenses
-    , trllAdvertiserId
-    , trllProFileId
-    , trllSortOrder
-    , trllActive
-    , trllName
-    , trllPageToken
-    , trllSortField
-    , trllMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetableRemarketingLists.list@ method which the
--- 'TargetableRemarketingListsList' request conforms to.
-type TargetableRemarketingListsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetableRemarketingLists" :>
-               QueryParam "advertiserId" (Textual Int64) :>
-                 QueryParam "sortOrder"
-                   TargetableRemarketingListsListSortOrder
-                   :>
-                   QueryParam "active" Bool :>
-                     QueryParam "name" Text :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField"
-                           TargetableRemarketingListsListSortField
-                           :>
-                           QueryParam "maxResults" (Textual Int32) :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON]
-                                 TargetableRemarketingListsListResponse
-
--- | Retrieves a list of targetable remarketing lists, possibly filtered.
--- This method supports paging.
---
--- /See:/ 'targetableRemarketingListsList' smart constructor.
-data TargetableRemarketingListsList =
-  TargetableRemarketingListsList'
-    { _trllAdvertiserId :: !(Textual Int64)
-    , _trllProFileId    :: !(Textual Int64)
-    , _trllSortOrder    :: !TargetableRemarketingListsListSortOrder
-    , _trllActive       :: !(Maybe Bool)
-    , _trllName         :: !(Maybe Text)
-    , _trllPageToken    :: !(Maybe Text)
-    , _trllSortField    :: !TargetableRemarketingListsListSortField
-    , _trllMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetableRemarketingListsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'trllAdvertiserId'
---
--- * 'trllProFileId'
---
--- * 'trllSortOrder'
---
--- * 'trllActive'
---
--- * 'trllName'
---
--- * 'trllPageToken'
---
--- * 'trllSortField'
---
--- * 'trllMaxResults'
-targetableRemarketingListsList
-    :: Int64 -- ^ 'trllAdvertiserId'
-    -> Int64 -- ^ 'trllProFileId'
-    -> TargetableRemarketingListsList
-targetableRemarketingListsList pTrllAdvertiserId_ pTrllProFileId_ =
-  TargetableRemarketingListsList'
-    { _trllAdvertiserId = _Coerce # pTrllAdvertiserId_
-    , _trllProFileId = _Coerce # pTrllProFileId_
-    , _trllSortOrder = TRLLSOAscending
-    , _trllActive = Nothing
-    , _trllName = Nothing
-    , _trllPageToken = Nothing
-    , _trllSortField = TRLLSFID
-    , _trllMaxResults = 1000
-    }
-
-
--- | Select only targetable remarketing lists targetable by these
--- advertisers.
-trllAdvertiserId :: Lens' TargetableRemarketingListsList Int64
-trllAdvertiserId
-  = lens _trllAdvertiserId
-      (\ s a -> s{_trllAdvertiserId = a})
-      . _Coerce
-
--- | User profile ID associated with this request.
-trllProFileId :: Lens' TargetableRemarketingListsList Int64
-trllProFileId
-  = lens _trllProFileId
-      (\ s a -> s{_trllProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-trllSortOrder :: Lens' TargetableRemarketingListsList TargetableRemarketingListsListSortOrder
-trllSortOrder
-  = lens _trllSortOrder
-      (\ s a -> s{_trllSortOrder = a})
-
--- | Select only active or only inactive targetable remarketing lists.
-trllActive :: Lens' TargetableRemarketingListsList (Maybe Bool)
-trllActive
-  = lens _trllActive (\ s a -> s{_trllActive = a})
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"remarketing list*2015\" will return objects with names
--- like \"remarketing list June 2015\", \"remarketing list April 2015\", or
--- simply \"remarketing list 2015\". Most of the searches also add
--- wildcards implicitly at the start and the end of the search string. For
--- example, a search string of \"remarketing list\" will match objects with
--- name \"my remarketing list\", \"remarketing list 2015\", or simply
--- \"remarketing list\".
-trllName :: Lens' TargetableRemarketingListsList (Maybe Text)
-trllName = lens _trllName (\ s a -> s{_trllName = a})
-
--- | Value of the nextPageToken from the previous result page.
-trllPageToken :: Lens' TargetableRemarketingListsList (Maybe Text)
-trllPageToken
-  = lens _trllPageToken
-      (\ s a -> s{_trllPageToken = a})
-
--- | Field by which to sort the list.
-trllSortField :: Lens' TargetableRemarketingListsList TargetableRemarketingListsListSortField
-trllSortField
-  = lens _trllSortField
-      (\ s a -> s{_trllSortField = a})
-
--- | Maximum number of results to return.
-trllMaxResults :: Lens' TargetableRemarketingListsList Int32
-trllMaxResults
-  = lens _trllMaxResults
-      (\ s a -> s{_trllMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest TargetableRemarketingListsList
-         where
-        type Rs TargetableRemarketingListsList =
-             TargetableRemarketingListsListResponse
-        type Scopes TargetableRemarketingListsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetableRemarketingListsList'{..}
-          = go _trllProFileId (Just _trllAdvertiserId)
-              (Just _trllSortOrder)
-              _trllActive
-              _trllName
-              _trllPageToken
-              (Just _trllSortField)
-              (Just _trllMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy ::
-                         Proxy TargetableRemarketingListsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Get.hs b/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Get.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.TargetingTemplates.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one targeting template by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetingTemplates.get@.
-module Network.Google.Resource.DFAReporting.TargetingTemplates.Get
-    (
-    -- * REST Resource
-      TargetingTemplatesGetResource
-
-    -- * Creating a Request
-    , targetingTemplatesGet
-    , TargetingTemplatesGet
-
-    -- * Request Lenses
-    , ttgProFileId
-    , ttgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetingTemplates.get@ method which the
--- 'TargetingTemplatesGet' request conforms to.
-type TargetingTemplatesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetingTemplates" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] TargetingTemplate
-
--- | Gets one targeting template by ID.
---
--- /See:/ 'targetingTemplatesGet' smart constructor.
-data TargetingTemplatesGet =
-  TargetingTemplatesGet'
-    { _ttgProFileId :: !(Textual Int64)
-    , _ttgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttgProFileId'
---
--- * 'ttgId'
-targetingTemplatesGet
-    :: Int64 -- ^ 'ttgProFileId'
-    -> Int64 -- ^ 'ttgId'
-    -> TargetingTemplatesGet
-targetingTemplatesGet pTtgProFileId_ pTtgId_ =
-  TargetingTemplatesGet'
-    {_ttgProFileId = _Coerce # pTtgProFileId_, _ttgId = _Coerce # pTtgId_}
-
-
--- | User profile ID associated with this request.
-ttgProFileId :: Lens' TargetingTemplatesGet Int64
-ttgProFileId
-  = lens _ttgProFileId (\ s a -> s{_ttgProFileId = a})
-      . _Coerce
-
--- | Targeting template ID.
-ttgId :: Lens' TargetingTemplatesGet Int64
-ttgId
-  = lens _ttgId (\ s a -> s{_ttgId = a}) . _Coerce
-
-instance GoogleRequest TargetingTemplatesGet where
-        type Rs TargetingTemplatesGet = TargetingTemplate
-        type Scopes TargetingTemplatesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetingTemplatesGet'{..}
-          = go _ttgProFileId _ttgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy TargetingTemplatesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Insert.hs b/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Insert.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.TargetingTemplates.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new targeting template.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetingTemplates.insert@.
-module Network.Google.Resource.DFAReporting.TargetingTemplates.Insert
-    (
-    -- * REST Resource
-      TargetingTemplatesInsertResource
-
-    -- * Creating a Request
-    , targetingTemplatesInsert
-    , TargetingTemplatesInsert
-
-    -- * Request Lenses
-    , ttiProFileId
-    , ttiPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetingTemplates.insert@ method which the
--- 'TargetingTemplatesInsert' request conforms to.
-type TargetingTemplatesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetingTemplates" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] TargetingTemplate :>
-                   Post '[JSON] TargetingTemplate
-
--- | Inserts a new targeting template.
---
--- /See:/ 'targetingTemplatesInsert' smart constructor.
-data TargetingTemplatesInsert =
-  TargetingTemplatesInsert'
-    { _ttiProFileId :: !(Textual Int64)
-    , _ttiPayload   :: !TargetingTemplate
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttiProFileId'
---
--- * 'ttiPayload'
-targetingTemplatesInsert
-    :: Int64 -- ^ 'ttiProFileId'
-    -> TargetingTemplate -- ^ 'ttiPayload'
-    -> TargetingTemplatesInsert
-targetingTemplatesInsert pTtiProFileId_ pTtiPayload_ =
-  TargetingTemplatesInsert'
-    {_ttiProFileId = _Coerce # pTtiProFileId_, _ttiPayload = pTtiPayload_}
-
-
--- | User profile ID associated with this request.
-ttiProFileId :: Lens' TargetingTemplatesInsert Int64
-ttiProFileId
-  = lens _ttiProFileId (\ s a -> s{_ttiProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ttiPayload :: Lens' TargetingTemplatesInsert TargetingTemplate
-ttiPayload
-  = lens _ttiPayload (\ s a -> s{_ttiPayload = a})
-
-instance GoogleRequest TargetingTemplatesInsert where
-        type Rs TargetingTemplatesInsert = TargetingTemplate
-        type Scopes TargetingTemplatesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetingTemplatesInsert'{..}
-          = go _ttiProFileId (Just AltJSON) _ttiPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy TargetingTemplatesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/List.hs b/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/List.hs
+++ /dev/null
@@ -1,195 +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.DFAReporting.TargetingTemplates.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of targeting templates, optionally filtered. This
--- method supports paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetingTemplates.list@.
-module Network.Google.Resource.DFAReporting.TargetingTemplates.List
-    (
-    -- * REST Resource
-      TargetingTemplatesListResource
-
-    -- * Creating a Request
-    , targetingTemplatesList
-    , TargetingTemplatesList
-
-    -- * Request Lenses
-    , ttlAdvertiserId
-    , ttlSearchString
-    , ttlIds
-    , ttlProFileId
-    , ttlSortOrder
-    , ttlPageToken
-    , ttlSortField
-    , ttlMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetingTemplates.list@ method which the
--- 'TargetingTemplatesList' request conforms to.
-type TargetingTemplatesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetingTemplates" :>
-               QueryParam "advertiserId" (Textual Int64) :>
-                 QueryParam "searchString" Text :>
-                   QueryParams "ids" (Textual Int64) :>
-                     QueryParam "sortOrder"
-                       TargetingTemplatesListSortOrder
-                       :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField"
-                           TargetingTemplatesListSortField
-                           :>
-                           QueryParam "maxResults" (Textual Int32) :>
-                             QueryParam "alt" AltJSON :>
-                               Get '[JSON] TargetingTemplatesListResponse
-
--- | Retrieves a list of targeting templates, optionally filtered. This
--- method supports paging.
---
--- /See:/ 'targetingTemplatesList' smart constructor.
-data TargetingTemplatesList =
-  TargetingTemplatesList'
-    { _ttlAdvertiserId :: !(Maybe (Textual Int64))
-    , _ttlSearchString :: !(Maybe Text)
-    , _ttlIds          :: !(Maybe [Textual Int64])
-    , _ttlProFileId    :: !(Textual Int64)
-    , _ttlSortOrder    :: !TargetingTemplatesListSortOrder
-    , _ttlPageToken    :: !(Maybe Text)
-    , _ttlSortField    :: !TargetingTemplatesListSortField
-    , _ttlMaxResults   :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttlAdvertiserId'
---
--- * 'ttlSearchString'
---
--- * 'ttlIds'
---
--- * 'ttlProFileId'
---
--- * 'ttlSortOrder'
---
--- * 'ttlPageToken'
---
--- * 'ttlSortField'
---
--- * 'ttlMaxResults'
-targetingTemplatesList
-    :: Int64 -- ^ 'ttlProFileId'
-    -> TargetingTemplatesList
-targetingTemplatesList pTtlProFileId_ =
-  TargetingTemplatesList'
-    { _ttlAdvertiserId = Nothing
-    , _ttlSearchString = Nothing
-    , _ttlIds = Nothing
-    , _ttlProFileId = _Coerce # pTtlProFileId_
-    , _ttlSortOrder = TTLSOAscending
-    , _ttlPageToken = Nothing
-    , _ttlSortField = TTLSFID
-    , _ttlMaxResults = 1000
-    }
-
-
--- | Select only targeting templates with this advertiser ID.
-ttlAdvertiserId :: Lens' TargetingTemplatesList (Maybe Int64)
-ttlAdvertiserId
-  = lens _ttlAdvertiserId
-      (\ s a -> s{_ttlAdvertiserId = a})
-      . mapping _Coerce
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"template*2015\" will return objects with names like
--- \"template June 2015\", \"template April 2015\", or simply \"template
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"template\" will match objects with name \"my template\", \"template
--- 2015\", or simply \"template\".
-ttlSearchString :: Lens' TargetingTemplatesList (Maybe Text)
-ttlSearchString
-  = lens _ttlSearchString
-      (\ s a -> s{_ttlSearchString = a})
-
--- | Select only targeting templates with these IDs.
-ttlIds :: Lens' TargetingTemplatesList [Int64]
-ttlIds
-  = lens _ttlIds (\ s a -> s{_ttlIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-ttlProFileId :: Lens' TargetingTemplatesList Int64
-ttlProFileId
-  = lens _ttlProFileId (\ s a -> s{_ttlProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-ttlSortOrder :: Lens' TargetingTemplatesList TargetingTemplatesListSortOrder
-ttlSortOrder
-  = lens _ttlSortOrder (\ s a -> s{_ttlSortOrder = a})
-
--- | Value of the nextPageToken from the previous result page.
-ttlPageToken :: Lens' TargetingTemplatesList (Maybe Text)
-ttlPageToken
-  = lens _ttlPageToken (\ s a -> s{_ttlPageToken = a})
-
--- | Field by which to sort the list.
-ttlSortField :: Lens' TargetingTemplatesList TargetingTemplatesListSortField
-ttlSortField
-  = lens _ttlSortField (\ s a -> s{_ttlSortField = a})
-
--- | Maximum number of results to return.
-ttlMaxResults :: Lens' TargetingTemplatesList Int32
-ttlMaxResults
-  = lens _ttlMaxResults
-      (\ s a -> s{_ttlMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest TargetingTemplatesList where
-        type Rs TargetingTemplatesList =
-             TargetingTemplatesListResponse
-        type Scopes TargetingTemplatesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetingTemplatesList'{..}
-          = go _ttlProFileId _ttlAdvertiserId _ttlSearchString
-              (_ttlIds ^. _Default)
-              (Just _ttlSortOrder)
-              _ttlPageToken
-              (Just _ttlSortField)
-              (Just _ttlMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy TargetingTemplatesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Patch.hs b/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Patch.hs
+++ /dev/null
@@ -1,120 +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.DFAReporting.TargetingTemplates.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing targeting template. This method supports patch
--- semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetingTemplates.patch@.
-module Network.Google.Resource.DFAReporting.TargetingTemplates.Patch
-    (
-    -- * REST Resource
-      TargetingTemplatesPatchResource
-
-    -- * Creating a Request
-    , targetingTemplatesPatch
-    , TargetingTemplatesPatch
-
-    -- * Request Lenses
-    , ttpProFileId
-    , ttpPayload
-    , ttpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetingTemplates.patch@ method which the
--- 'TargetingTemplatesPatch' request conforms to.
-type TargetingTemplatesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetingTemplates" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] TargetingTemplate :>
-                     Patch '[JSON] TargetingTemplate
-
--- | Updates an existing targeting template. This method supports patch
--- semantics.
---
--- /See:/ 'targetingTemplatesPatch' smart constructor.
-data TargetingTemplatesPatch =
-  TargetingTemplatesPatch'
-    { _ttpProFileId :: !(Textual Int64)
-    , _ttpPayload   :: !TargetingTemplate
-    , _ttpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttpProFileId'
---
--- * 'ttpPayload'
---
--- * 'ttpId'
-targetingTemplatesPatch
-    :: Int64 -- ^ 'ttpProFileId'
-    -> TargetingTemplate -- ^ 'ttpPayload'
-    -> Int64 -- ^ 'ttpId'
-    -> TargetingTemplatesPatch
-targetingTemplatesPatch pTtpProFileId_ pTtpPayload_ pTtpId_ =
-  TargetingTemplatesPatch'
-    { _ttpProFileId = _Coerce # pTtpProFileId_
-    , _ttpPayload = pTtpPayload_
-    , _ttpId = _Coerce # pTtpId_
-    }
-
-
--- | User profile ID associated with this request.
-ttpProFileId :: Lens' TargetingTemplatesPatch Int64
-ttpProFileId
-  = lens _ttpProFileId (\ s a -> s{_ttpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ttpPayload :: Lens' TargetingTemplatesPatch TargetingTemplate
-ttpPayload
-  = lens _ttpPayload (\ s a -> s{_ttpPayload = a})
-
--- | Targeting template ID.
-ttpId :: Lens' TargetingTemplatesPatch Int64
-ttpId
-  = lens _ttpId (\ s a -> s{_ttpId = a}) . _Coerce
-
-instance GoogleRequest TargetingTemplatesPatch where
-        type Rs TargetingTemplatesPatch = TargetingTemplate
-        type Scopes TargetingTemplatesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetingTemplatesPatch'{..}
-          = go _ttpProFileId (Just _ttpId) (Just AltJSON)
-              _ttpPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy TargetingTemplatesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Update.hs b/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/TargetingTemplates/Update.hs
+++ /dev/null
@@ -1,103 +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.DFAReporting.TargetingTemplates.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing targeting template.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.targetingTemplates.update@.
-module Network.Google.Resource.DFAReporting.TargetingTemplates.Update
-    (
-    -- * REST Resource
-      TargetingTemplatesUpdateResource
-
-    -- * Creating a Request
-    , targetingTemplatesUpdate
-    , TargetingTemplatesUpdate
-
-    -- * Request Lenses
-    , ttuProFileId
-    , ttuPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.targetingTemplates.update@ method which the
--- 'TargetingTemplatesUpdate' request conforms to.
-type TargetingTemplatesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "targetingTemplates" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] TargetingTemplate :>
-                   Put '[JSON] TargetingTemplate
-
--- | Updates an existing targeting template.
---
--- /See:/ 'targetingTemplatesUpdate' smart constructor.
-data TargetingTemplatesUpdate =
-  TargetingTemplatesUpdate'
-    { _ttuProFileId :: !(Textual Int64)
-    , _ttuPayload   :: !TargetingTemplate
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TargetingTemplatesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ttuProFileId'
---
--- * 'ttuPayload'
-targetingTemplatesUpdate
-    :: Int64 -- ^ 'ttuProFileId'
-    -> TargetingTemplate -- ^ 'ttuPayload'
-    -> TargetingTemplatesUpdate
-targetingTemplatesUpdate pTtuProFileId_ pTtuPayload_ =
-  TargetingTemplatesUpdate'
-    {_ttuProFileId = _Coerce # pTtuProFileId_, _ttuPayload = pTtuPayload_}
-
-
--- | User profile ID associated with this request.
-ttuProFileId :: Lens' TargetingTemplatesUpdate Int64
-ttuProFileId
-  = lens _ttuProFileId (\ s a -> s{_ttuProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-ttuPayload :: Lens' TargetingTemplatesUpdate TargetingTemplate
-ttuPayload
-  = lens _ttuPayload (\ s a -> s{_ttuPayload = a})
-
-instance GoogleRequest TargetingTemplatesUpdate where
-        type Rs TargetingTemplatesUpdate = TargetingTemplate
-        type Scopes TargetingTemplatesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient TargetingTemplatesUpdate'{..}
-          = go _ttuProFileId (Just AltJSON) _ttuPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy TargetingTemplatesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserProFiles/Get.hs b/gen/Network/Google/Resource/DFAReporting/UserProFiles/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserProFiles/Get.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserProFiles.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one user profile by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userProfiles.get@.
-module Network.Google.Resource.DFAReporting.UserProFiles.Get
-    (
-    -- * REST Resource
-      UserProFilesGetResource
-
-    -- * Creating a Request
-    , userProFilesGet
-    , UserProFilesGet
-
-    -- * Request Lenses
-    , upfgProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userProfiles.get@ method which the
--- 'UserProFilesGet' request conforms to.
-type UserProFilesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             QueryParam "alt" AltJSON :> Get '[JSON] UserProFile
-
--- | Gets one user profile by ID.
---
--- /See:/ 'userProFilesGet' smart constructor.
-newtype UserProFilesGet =
-  UserProFilesGet'
-    { _upfgProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserProFilesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'upfgProFileId'
-userProFilesGet
-    :: Int64 -- ^ 'upfgProFileId'
-    -> UserProFilesGet
-userProFilesGet pUpfgProFileId_ =
-  UserProFilesGet' {_upfgProFileId = _Coerce # pUpfgProFileId_}
-
-
--- | The user profile ID.
-upfgProFileId :: Lens' UserProFilesGet Int64
-upfgProFileId
-  = lens _upfgProFileId
-      (\ s a -> s{_upfgProFileId = a})
-      . _Coerce
-
-instance GoogleRequest UserProFilesGet where
-        type Rs UserProFilesGet = UserProFile
-        type Scopes UserProFilesGet =
-             '["https://www.googleapis.com/auth/dfareporting",
-               "https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserProFilesGet'{..}
-          = go _upfgProFileId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserProFilesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserProFiles/List.hs b/gen/Network/Google/Resource/DFAReporting/UserProFiles/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserProFiles/List.hs
+++ /dev/null
@@ -1,74 +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.DFAReporting.UserProFiles.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves list of user profiles for a user.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userProfiles.list@.
-module Network.Google.Resource.DFAReporting.UserProFiles.List
-    (
-    -- * REST Resource
-      UserProFilesListResource
-
-    -- * Creating a Request
-    , userProFilesList
-    , UserProFilesList
-
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userProfiles.list@ method which the
--- 'UserProFilesList' request conforms to.
-type UserProFilesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           QueryParam "alt" AltJSON :>
-             Get '[JSON] UserProFileList
-
--- | Retrieves list of user profiles for a user.
---
--- /See:/ 'userProFilesList' smart constructor.
-data UserProFilesList =
-  UserProFilesList'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserProFilesList' with the minimum fields required to make a request.
---
-userProFilesList
-    :: UserProFilesList
-userProFilesList = UserProFilesList'
-
-
-instance GoogleRequest UserProFilesList where
-        type Rs UserProFilesList = UserProFileList
-        type Scopes UserProFilesList =
-             '["https://www.googleapis.com/auth/dfareporting",
-               "https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserProFilesList'{}
-          = go (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserProFilesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/Get.hs b/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/Get.hs
+++ /dev/null
@@ -1,108 +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.DFAReporting.UserRolePermissionGroups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one user role permission group by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRolePermissionGroups.get@.
-module Network.Google.Resource.DFAReporting.UserRolePermissionGroups.Get
-    (
-    -- * REST Resource
-      UserRolePermissionGroupsGetResource
-
-    -- * Creating a Request
-    , userRolePermissionGroupsGet
-    , UserRolePermissionGroupsGet
-
-    -- * Request Lenses
-    , urpggProFileId
-    , urpggId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRolePermissionGroups.get@ method which the
--- 'UserRolePermissionGroupsGet' request conforms to.
-type UserRolePermissionGroupsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRolePermissionGroups" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] UserRolePermissionGroup
-
--- | Gets one user role permission group by ID.
---
--- /See:/ 'userRolePermissionGroupsGet' smart constructor.
-data UserRolePermissionGroupsGet =
-  UserRolePermissionGroupsGet'
-    { _urpggProFileId :: !(Textual Int64)
-    , _urpggId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urpggProFileId'
---
--- * 'urpggId'
-userRolePermissionGroupsGet
-    :: Int64 -- ^ 'urpggProFileId'
-    -> Int64 -- ^ 'urpggId'
-    -> UserRolePermissionGroupsGet
-userRolePermissionGroupsGet pUrpggProFileId_ pUrpggId_ =
-  UserRolePermissionGroupsGet'
-    { _urpggProFileId = _Coerce # pUrpggProFileId_
-    , _urpggId = _Coerce # pUrpggId_
-    }
-
-
--- | User profile ID associated with this request.
-urpggProFileId :: Lens' UserRolePermissionGroupsGet Int64
-urpggProFileId
-  = lens _urpggProFileId
-      (\ s a -> s{_urpggProFileId = a})
-      . _Coerce
-
--- | User role permission group ID.
-urpggId :: Lens' UserRolePermissionGroupsGet Int64
-urpggId
-  = lens _urpggId (\ s a -> s{_urpggId = a}) . _Coerce
-
-instance GoogleRequest UserRolePermissionGroupsGet
-         where
-        type Rs UserRolePermissionGroupsGet =
-             UserRolePermissionGroup
-        type Scopes UserRolePermissionGroupsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolePermissionGroupsGet'{..}
-          = go _urpggProFileId _urpggId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolePermissionGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/List.hs b/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRolePermissionGroups/List.hs
+++ /dev/null
@@ -1,94 +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.DFAReporting.UserRolePermissionGroups.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets a list of all supported user role permission groups.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRolePermissionGroups.list@.
-module Network.Google.Resource.DFAReporting.UserRolePermissionGroups.List
-    (
-    -- * REST Resource
-      UserRolePermissionGroupsListResource
-
-    -- * Creating a Request
-    , userRolePermissionGroupsList
-    , UserRolePermissionGroupsList
-
-    -- * Request Lenses
-    , urpglProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRolePermissionGroups.list@ method which the
--- 'UserRolePermissionGroupsList' request conforms to.
-type UserRolePermissionGroupsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRolePermissionGroups" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] UserRolePermissionGroupsListResponse
-
--- | Gets a list of all supported user role permission groups.
---
--- /See:/ 'userRolePermissionGroupsList' smart constructor.
-newtype UserRolePermissionGroupsList =
-  UserRolePermissionGroupsList'
-    { _urpglProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionGroupsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urpglProFileId'
-userRolePermissionGroupsList
-    :: Int64 -- ^ 'urpglProFileId'
-    -> UserRolePermissionGroupsList
-userRolePermissionGroupsList pUrpglProFileId_ =
-  UserRolePermissionGroupsList' {_urpglProFileId = _Coerce # pUrpglProFileId_}
-
-
--- | User profile ID associated with this request.
-urpglProFileId :: Lens' UserRolePermissionGroupsList Int64
-urpglProFileId
-  = lens _urpglProFileId
-      (\ s a -> s{_urpglProFileId = a})
-      . _Coerce
-
-instance GoogleRequest UserRolePermissionGroupsList
-         where
-        type Rs UserRolePermissionGroupsList =
-             UserRolePermissionGroupsListResponse
-        type Scopes UserRolePermissionGroupsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolePermissionGroupsList'{..}
-          = go _urpglProFileId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolePermissionGroupsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/Get.hs b/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserRolePermissions.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one user role permission by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRolePermissions.get@.
-module Network.Google.Resource.DFAReporting.UserRolePermissions.Get
-    (
-    -- * REST Resource
-      UserRolePermissionsGetResource
-
-    -- * Creating a Request
-    , userRolePermissionsGet
-    , UserRolePermissionsGet
-
-    -- * Request Lenses
-    , uProFileId
-    , uId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRolePermissions.get@ method which the
--- 'UserRolePermissionsGet' request conforms to.
-type UserRolePermissionsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRolePermissions" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] UserRolePermission
-
--- | Gets one user role permission by ID.
---
--- /See:/ 'userRolePermissionsGet' smart constructor.
-data UserRolePermissionsGet =
-  UserRolePermissionsGet'
-    { _uProFileId :: !(Textual Int64)
-    , _uId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'uProFileId'
---
--- * 'uId'
-userRolePermissionsGet
-    :: Int64 -- ^ 'uProFileId'
-    -> Int64 -- ^ 'uId'
-    -> UserRolePermissionsGet
-userRolePermissionsGet pUProFileId_ pUId_ =
-  UserRolePermissionsGet'
-    {_uProFileId = _Coerce # pUProFileId_, _uId = _Coerce # pUId_}
-
-
--- | User profile ID associated with this request.
-uProFileId :: Lens' UserRolePermissionsGet Int64
-uProFileId
-  = lens _uProFileId (\ s a -> s{_uProFileId = a}) .
-      _Coerce
-
--- | User role permission ID.
-uId :: Lens' UserRolePermissionsGet Int64
-uId = lens _uId (\ s a -> s{_uId = a}) . _Coerce
-
-instance GoogleRequest UserRolePermissionsGet where
-        type Rs UserRolePermissionsGet = UserRolePermission
-        type Scopes UserRolePermissionsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolePermissionsGet'{..}
-          = go _uProFileId _uId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolePermissionsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/List.hs b/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRolePermissions/List.hs
+++ /dev/null
@@ -1,106 +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.DFAReporting.UserRolePermissions.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets a list of user role permissions, possibly filtered.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRolePermissions.list@.
-module Network.Google.Resource.DFAReporting.UserRolePermissions.List
-    (
-    -- * REST Resource
-      UserRolePermissionsListResource
-
-    -- * Creating a Request
-    , userRolePermissionsList
-    , UserRolePermissionsList
-
-    -- * Request Lenses
-    , urplIds
-    , urplProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRolePermissions.list@ method which the
--- 'UserRolePermissionsList' request conforms to.
-type UserRolePermissionsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRolePermissions" :>
-               QueryParams "ids" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] UserRolePermissionsListResponse
-
--- | Gets a list of user role permissions, possibly filtered.
---
--- /See:/ 'userRolePermissionsList' smart constructor.
-data UserRolePermissionsList =
-  UserRolePermissionsList'
-    { _urplIds       :: !(Maybe [Textual Int64])
-    , _urplProFileId :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolePermissionsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urplIds'
---
--- * 'urplProFileId'
-userRolePermissionsList
-    :: Int64 -- ^ 'urplProFileId'
-    -> UserRolePermissionsList
-userRolePermissionsList pUrplProFileId_ =
-  UserRolePermissionsList'
-    {_urplIds = Nothing, _urplProFileId = _Coerce # pUrplProFileId_}
-
-
--- | Select only user role permissions with these IDs.
-urplIds :: Lens' UserRolePermissionsList [Int64]
-urplIds
-  = lens _urplIds (\ s a -> s{_urplIds = a}) . _Default
-      . _Coerce
-
--- | User profile ID associated with this request.
-urplProFileId :: Lens' UserRolePermissionsList Int64
-urplProFileId
-  = lens _urplProFileId
-      (\ s a -> s{_urplProFileId = a})
-      . _Coerce
-
-instance GoogleRequest UserRolePermissionsList where
-        type Rs UserRolePermissionsList =
-             UserRolePermissionsListResponse
-        type Scopes UserRolePermissionsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolePermissionsList'{..}
-          = go _urplProFileId (_urplIds ^. _Default)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolePermissionsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/Delete.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/Delete.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserRoles.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes an existing user role.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.delete@.
-module Network.Google.Resource.DFAReporting.UserRoles.Delete
-    (
-    -- * REST Resource
-      UserRolesDeleteResource
-
-    -- * Creating a Request
-    , userRolesDelete
-    , UserRolesDelete
-
-    -- * Request Lenses
-    , urdProFileId
-    , urdId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.delete@ method which the
--- 'UserRolesDelete' request conforms to.
-type UserRolesDeleteResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Delete '[JSON] ()
-
--- | Deletes an existing user role.
---
--- /See:/ 'userRolesDelete' smart constructor.
-data UserRolesDelete =
-  UserRolesDelete'
-    { _urdProFileId :: !(Textual Int64)
-    , _urdId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urdProFileId'
---
--- * 'urdId'
-userRolesDelete
-    :: Int64 -- ^ 'urdProFileId'
-    -> Int64 -- ^ 'urdId'
-    -> UserRolesDelete
-userRolesDelete pUrdProFileId_ pUrdId_ =
-  UserRolesDelete'
-    {_urdProFileId = _Coerce # pUrdProFileId_, _urdId = _Coerce # pUrdId_}
-
-
--- | User profile ID associated with this request.
-urdProFileId :: Lens' UserRolesDelete Int64
-urdProFileId
-  = lens _urdProFileId (\ s a -> s{_urdProFileId = a})
-      . _Coerce
-
--- | User role ID.
-urdId :: Lens' UserRolesDelete Int64
-urdId
-  = lens _urdId (\ s a -> s{_urdId = a}) . _Coerce
-
-instance GoogleRequest UserRolesDelete where
-        type Rs UserRolesDelete = ()
-        type Scopes UserRolesDelete =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesDelete'{..}
-          = go _urdProFileId _urdId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolesDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/Get.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/Get.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.DFAReporting.UserRoles.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one user role by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.get@.
-module Network.Google.Resource.DFAReporting.UserRoles.Get
-    (
-    -- * REST Resource
-      UserRolesGetResource
-
-    -- * Creating a Request
-    , userRolesGet
-    , UserRolesGet
-
-    -- * Request Lenses
-    , urgProFileId
-    , urgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.get@ method which the
--- 'UserRolesGet' request conforms to.
-type UserRolesGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               Capture "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] UserRole
-
--- | Gets one user role by ID.
---
--- /See:/ 'userRolesGet' smart constructor.
-data UserRolesGet =
-  UserRolesGet'
-    { _urgProFileId :: !(Textual Int64)
-    , _urgId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urgProFileId'
---
--- * 'urgId'
-userRolesGet
-    :: Int64 -- ^ 'urgProFileId'
-    -> Int64 -- ^ 'urgId'
-    -> UserRolesGet
-userRolesGet pUrgProFileId_ pUrgId_ =
-  UserRolesGet'
-    {_urgProFileId = _Coerce # pUrgProFileId_, _urgId = _Coerce # pUrgId_}
-
-
--- | User profile ID associated with this request.
-urgProFileId :: Lens' UserRolesGet Int64
-urgProFileId
-  = lens _urgProFileId (\ s a -> s{_urgProFileId = a})
-      . _Coerce
-
--- | User role ID.
-urgId :: Lens' UserRolesGet Int64
-urgId
-  = lens _urgId (\ s a -> s{_urgId = a}) . _Coerce
-
-instance GoogleRequest UserRolesGet where
-        type Rs UserRolesGet = UserRole
-        type Scopes UserRolesGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesGet'{..}
-          = go _urgProFileId _urgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy UserRolesGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/Insert.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/Insert.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserRoles.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Inserts a new user role.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.insert@.
-module Network.Google.Resource.DFAReporting.UserRoles.Insert
-    (
-    -- * REST Resource
-      UserRolesInsertResource
-
-    -- * Creating a Request
-    , userRolesInsert
-    , UserRolesInsert
-
-    -- * Request Lenses
-    , uriProFileId
-    , uriPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.insert@ method which the
--- 'UserRolesInsert' request conforms to.
-type UserRolesInsertResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] UserRole :> Post '[JSON] UserRole
-
--- | Inserts a new user role.
---
--- /See:/ 'userRolesInsert' smart constructor.
-data UserRolesInsert =
-  UserRolesInsert'
-    { _uriProFileId :: !(Textual Int64)
-    , _uriPayload   :: !UserRole
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'uriProFileId'
---
--- * 'uriPayload'
-userRolesInsert
-    :: Int64 -- ^ 'uriProFileId'
-    -> UserRole -- ^ 'uriPayload'
-    -> UserRolesInsert
-userRolesInsert pUriProFileId_ pUriPayload_ =
-  UserRolesInsert'
-    {_uriProFileId = _Coerce # pUriProFileId_, _uriPayload = pUriPayload_}
-
-
--- | User profile ID associated with this request.
-uriProFileId :: Lens' UserRolesInsert Int64
-uriProFileId
-  = lens _uriProFileId (\ s a -> s{_uriProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-uriPayload :: Lens' UserRolesInsert UserRole
-uriPayload
-  = lens _uriPayload (\ s a -> s{_uriPayload = a})
-
-instance GoogleRequest UserRolesInsert where
-        type Rs UserRolesInsert = UserRole
-        type Scopes UserRolesInsert =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesInsert'{..}
-          = go _uriProFileId (Just AltJSON) _uriPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolesInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/List.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/List.hs
+++ /dev/null
@@ -1,204 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserRoles.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a list of user roles, possibly filtered. This method supports
--- paging.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.list@.
-module Network.Google.Resource.DFAReporting.UserRoles.List
-    (
-    -- * REST Resource
-      UserRolesListResource
-
-    -- * Creating a Request
-    , userRolesList
-    , UserRolesList
-
-    -- * Request Lenses
-    , urlSearchString
-    , urlIds
-    , urlProFileId
-    , urlSortOrder
-    , urlAccountUserRoleOnly
-    , urlPageToken
-    , urlSortField
-    , urlSubAccountId
-    , urlMaxResults
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.list@ method which the
--- 'UserRolesList' request conforms to.
-type UserRolesListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               QueryParam "searchString" Text :>
-                 QueryParams "ids" (Textual Int64) :>
-                   QueryParam "sortOrder" UserRolesListSortOrder :>
-                     QueryParam "accountUserRoleOnly" Bool :>
-                       QueryParam "pageToken" Text :>
-                         QueryParam "sortField" UserRolesListSortField :>
-                           QueryParam "subaccountId" (Textual Int64) :>
-                             QueryParam "maxResults" (Textual Int32) :>
-                               QueryParam "alt" AltJSON :>
-                                 Get '[JSON] UserRolesListResponse
-
--- | Retrieves a list of user roles, possibly filtered. This method supports
--- paging.
---
--- /See:/ 'userRolesList' smart constructor.
-data UserRolesList =
-  UserRolesList'
-    { _urlSearchString        :: !(Maybe Text)
-    , _urlIds                 :: !(Maybe [Textual Int64])
-    , _urlProFileId           :: !(Textual Int64)
-    , _urlSortOrder           :: !UserRolesListSortOrder
-    , _urlAccountUserRoleOnly :: !(Maybe Bool)
-    , _urlPageToken           :: !(Maybe Text)
-    , _urlSortField           :: !UserRolesListSortField
-    , _urlSubAccountId        :: !(Maybe (Textual Int64))
-    , _urlMaxResults          :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urlSearchString'
---
--- * 'urlIds'
---
--- * 'urlProFileId'
---
--- * 'urlSortOrder'
---
--- * 'urlAccountUserRoleOnly'
---
--- * 'urlPageToken'
---
--- * 'urlSortField'
---
--- * 'urlSubAccountId'
---
--- * 'urlMaxResults'
-userRolesList
-    :: Int64 -- ^ 'urlProFileId'
-    -> UserRolesList
-userRolesList pUrlProFileId_ =
-  UserRolesList'
-    { _urlSearchString = Nothing
-    , _urlIds = Nothing
-    , _urlProFileId = _Coerce # pUrlProFileId_
-    , _urlSortOrder = URLSOAscending
-    , _urlAccountUserRoleOnly = Nothing
-    , _urlPageToken = Nothing
-    , _urlSortField = URLSFID
-    , _urlSubAccountId = Nothing
-    , _urlMaxResults = 1000
-    }
-
-
--- | Allows searching for objects by name or ID. Wildcards (*) are allowed.
--- For example, \"userrole*2015\" will return objects with names like
--- \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole
--- 2015\". Most of the searches also add wildcards implicitly at the start
--- and the end of the search string. For example, a search string of
--- \"userrole\" will match objects with name \"my userrole\", \"userrole
--- 2015\", or simply \"userrole\".
-urlSearchString :: Lens' UserRolesList (Maybe Text)
-urlSearchString
-  = lens _urlSearchString
-      (\ s a -> s{_urlSearchString = a})
-
--- | Select only user roles with the specified IDs.
-urlIds :: Lens' UserRolesList [Int64]
-urlIds
-  = lens _urlIds (\ s a -> s{_urlIds = a}) . _Default .
-      _Coerce
-
--- | User profile ID associated with this request.
-urlProFileId :: Lens' UserRolesList Int64
-urlProFileId
-  = lens _urlProFileId (\ s a -> s{_urlProFileId = a})
-      . _Coerce
-
--- | Order of sorted results.
-urlSortOrder :: Lens' UserRolesList UserRolesListSortOrder
-urlSortOrder
-  = lens _urlSortOrder (\ s a -> s{_urlSortOrder = a})
-
--- | Select only account level user roles not associated with any specific
--- subaccount.
-urlAccountUserRoleOnly :: Lens' UserRolesList (Maybe Bool)
-urlAccountUserRoleOnly
-  = lens _urlAccountUserRoleOnly
-      (\ s a -> s{_urlAccountUserRoleOnly = a})
-
--- | Value of the nextPageToken from the previous result page.
-urlPageToken :: Lens' UserRolesList (Maybe Text)
-urlPageToken
-  = lens _urlPageToken (\ s a -> s{_urlPageToken = a})
-
--- | Field by which to sort the list.
-urlSortField :: Lens' UserRolesList UserRolesListSortField
-urlSortField
-  = lens _urlSortField (\ s a -> s{_urlSortField = a})
-
--- | Select only user roles that belong to this subaccount.
-urlSubAccountId :: Lens' UserRolesList (Maybe Int64)
-urlSubAccountId
-  = lens _urlSubAccountId
-      (\ s a -> s{_urlSubAccountId = a})
-      . mapping _Coerce
-
--- | Maximum number of results to return.
-urlMaxResults :: Lens' UserRolesList Int32
-urlMaxResults
-  = lens _urlMaxResults
-      (\ s a -> s{_urlMaxResults = a})
-      . _Coerce
-
-instance GoogleRequest UserRolesList where
-        type Rs UserRolesList = UserRolesListResponse
-        type Scopes UserRolesList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesList'{..}
-          = go _urlProFileId _urlSearchString
-              (_urlIds ^. _Default)
-              (Just _urlSortOrder)
-              _urlAccountUserRoleOnly
-              _urlPageToken
-              (Just _urlSortField)
-              _urlSubAccountId
-              (Just _urlMaxResults)
-              (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy UserRolesListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/Patch.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/Patch.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/Patch.hs
+++ /dev/null
@@ -1,116 +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.DFAReporting.UserRoles.Patch
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing user role. This method supports patch semantics.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.patch@.
-module Network.Google.Resource.DFAReporting.UserRoles.Patch
-    (
-    -- * REST Resource
-      UserRolesPatchResource
-
-    -- * Creating a Request
-    , userRolesPatch
-    , UserRolesPatch
-
-    -- * Request Lenses
-    , urpProFileId
-    , urpPayload
-    , urpId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.patch@ method which the
--- 'UserRolesPatch' request conforms to.
-type UserRolesPatchResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               QueryParam "id" (Textual Int64) :>
-                 QueryParam "alt" AltJSON :>
-                   ReqBody '[JSON] UserRole :> Patch '[JSON] UserRole
-
--- | Updates an existing user role. This method supports patch semantics.
---
--- /See:/ 'userRolesPatch' smart constructor.
-data UserRolesPatch =
-  UserRolesPatch'
-    { _urpProFileId :: !(Textual Int64)
-    , _urpPayload   :: !UserRole
-    , _urpId        :: !(Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesPatch' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'urpProFileId'
---
--- * 'urpPayload'
---
--- * 'urpId'
-userRolesPatch
-    :: Int64 -- ^ 'urpProFileId'
-    -> UserRole -- ^ 'urpPayload'
-    -> Int64 -- ^ 'urpId'
-    -> UserRolesPatch
-userRolesPatch pUrpProFileId_ pUrpPayload_ pUrpId_ =
-  UserRolesPatch'
-    { _urpProFileId = _Coerce # pUrpProFileId_
-    , _urpPayload = pUrpPayload_
-    , _urpId = _Coerce # pUrpId_
-    }
-
-
--- | User profile ID associated with this request.
-urpProFileId :: Lens' UserRolesPatch Int64
-urpProFileId
-  = lens _urpProFileId (\ s a -> s{_urpProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-urpPayload :: Lens' UserRolesPatch UserRole
-urpPayload
-  = lens _urpPayload (\ s a -> s{_urpPayload = a})
-
--- | User role ID.
-urpId :: Lens' UserRolesPatch Int64
-urpId
-  = lens _urpId (\ s a -> s{_urpId = a}) . _Coerce
-
-instance GoogleRequest UserRolesPatch where
-        type Rs UserRolesPatch = UserRole
-        type Scopes UserRolesPatch =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesPatch'{..}
-          = go _urpProFileId (Just _urpId) (Just AltJSON)
-              _urpPayload
-              dFAReportingService
-          where go
-                  = buildClient (Proxy :: Proxy UserRolesPatchResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/UserRoles/Update.hs b/gen/Network/Google/Resource/DFAReporting/UserRoles/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/UserRoles/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.UserRoles.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates an existing user role.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.userRoles.update@.
-module Network.Google.Resource.DFAReporting.UserRoles.Update
-    (
-    -- * REST Resource
-      UserRolesUpdateResource
-
-    -- * Creating a Request
-    , userRolesUpdate
-    , UserRolesUpdate
-
-    -- * Request Lenses
-    , uruProFileId
-    , uruPayload
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.userRoles.update@ method which the
--- 'UserRolesUpdate' request conforms to.
-type UserRolesUpdateResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "userRoles" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] UserRole :> Put '[JSON] UserRole
-
--- | Updates an existing user role.
---
--- /See:/ 'userRolesUpdate' smart constructor.
-data UserRolesUpdate =
-  UserRolesUpdate'
-    { _uruProFileId :: !(Textual Int64)
-    , _uruPayload   :: !UserRole
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'UserRolesUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'uruProFileId'
---
--- * 'uruPayload'
-userRolesUpdate
-    :: Int64 -- ^ 'uruProFileId'
-    -> UserRole -- ^ 'uruPayload'
-    -> UserRolesUpdate
-userRolesUpdate pUruProFileId_ pUruPayload_ =
-  UserRolesUpdate'
-    {_uruProFileId = _Coerce # pUruProFileId_, _uruPayload = pUruPayload_}
-
-
--- | User profile ID associated with this request.
-uruProFileId :: Lens' UserRolesUpdate Int64
-uruProFileId
-  = lens _uruProFileId (\ s a -> s{_uruProFileId = a})
-      . _Coerce
-
--- | Multipart request metadata.
-uruPayload :: Lens' UserRolesUpdate UserRole
-uruPayload
-  = lens _uruPayload (\ s a -> s{_uruPayload = a})
-
-instance GoogleRequest UserRolesUpdate where
-        type Rs UserRolesUpdate = UserRole
-        type Scopes UserRolesUpdate =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient UserRolesUpdate'{..}
-          = go _uruProFileId (Just AltJSON) _uruPayload
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy UserRolesUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/VideoFormats/Get.hs b/gen/Network/Google/Resource/DFAReporting/VideoFormats/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/VideoFormats/Get.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.DFAReporting.VideoFormats.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Gets one video format by ID.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.videoFormats.get@.
-module Network.Google.Resource.DFAReporting.VideoFormats.Get
-    (
-    -- * REST Resource
-      VideoFormatsGetResource
-
-    -- * Creating a Request
-    , videoFormatsGet
-    , VideoFormatsGet
-
-    -- * Request Lenses
-    , vfgProFileId
-    , vfgId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.videoFormats.get@ method which the
--- 'VideoFormatsGet' request conforms to.
-type VideoFormatsGetResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "videoFormats" :>
-               Capture "id" (Textual Int32) :>
-                 QueryParam "alt" AltJSON :> Get '[JSON] VideoFormat
-
--- | Gets one video format by ID.
---
--- /See:/ 'videoFormatsGet' smart constructor.
-data VideoFormatsGet =
-  VideoFormatsGet'
-    { _vfgProFileId :: !(Textual Int64)
-    , _vfgId        :: !(Textual Int32)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoFormatsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vfgProFileId'
---
--- * 'vfgId'
-videoFormatsGet
-    :: Int64 -- ^ 'vfgProFileId'
-    -> Int32 -- ^ 'vfgId'
-    -> VideoFormatsGet
-videoFormatsGet pVfgProFileId_ pVfgId_ =
-  VideoFormatsGet'
-    {_vfgProFileId = _Coerce # pVfgProFileId_, _vfgId = _Coerce # pVfgId_}
-
-
--- | User profile ID associated with this request.
-vfgProFileId :: Lens' VideoFormatsGet Int64
-vfgProFileId
-  = lens _vfgProFileId (\ s a -> s{_vfgProFileId = a})
-      . _Coerce
-
--- | Video format ID.
-vfgId :: Lens' VideoFormatsGet Int32
-vfgId
-  = lens _vfgId (\ s a -> s{_vfgId = a}) . _Coerce
-
-instance GoogleRequest VideoFormatsGet where
-        type Rs VideoFormatsGet = VideoFormat
-        type Scopes VideoFormatsGet =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient VideoFormatsGet'{..}
-          = go _vfgProFileId _vfgId (Just AltJSON)
-              dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy VideoFormatsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/DFAReporting/VideoFormats/List.hs b/gen/Network/Google/Resource/DFAReporting/VideoFormats/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/DFAReporting/VideoFormats/List.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.DFAReporting.VideoFormats.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists available video formats.
---
--- /See:/ <https://developers.google.com/doubleclick-advertisers/ DCM/DFA Reporting And Trafficking API Reference> for @dfareporting.videoFormats.list@.
-module Network.Google.Resource.DFAReporting.VideoFormats.List
-    (
-    -- * REST Resource
-      VideoFormatsListResource
-
-    -- * Creating a Request
-    , videoFormatsList
-    , VideoFormatsList
-
-    -- * Request Lenses
-    , vflProFileId
-    ) where
-
-import           Network.Google.DFAReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @dfareporting.videoFormats.list@ method which the
--- 'VideoFormatsList' request conforms to.
-type VideoFormatsListResource =
-     "dfareporting" :>
-       "v3.3" :>
-         "userprofiles" :>
-           Capture "profileId" (Textual Int64) :>
-             "videoFormats" :>
-               QueryParam "alt" AltJSON :>
-                 Get '[JSON] VideoFormatsListResponse
-
--- | Lists available video formats.
---
--- /See:/ 'videoFormatsList' smart constructor.
-newtype VideoFormatsList =
-  VideoFormatsList'
-    { _vflProFileId :: Textual Int64
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'VideoFormatsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'vflProFileId'
-videoFormatsList
-    :: Int64 -- ^ 'vflProFileId'
-    -> VideoFormatsList
-videoFormatsList pVflProFileId_ =
-  VideoFormatsList' {_vflProFileId = _Coerce # pVflProFileId_}
-
-
--- | User profile ID associated with this request.
-vflProFileId :: Lens' VideoFormatsList Int64
-vflProFileId
-  = lens _vflProFileId (\ s a -> s{_vflProFileId = a})
-      . _Coerce
-
-instance GoogleRequest VideoFormatsList where
-        type Rs VideoFormatsList = VideoFormatsListResponse
-        type Scopes VideoFormatsList =
-             '["https://www.googleapis.com/auth/dfatrafficking"]
-        requestClient VideoFormatsList'{..}
-          = go _vflProFileId (Just AltJSON) dFAReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy VideoFormatsListResource)
-                      mempty
diff --git a/gogol-dfareporting.cabal b/gogol-dfareporting.cabal
--- a/gogol-dfareporting.cabal
+++ b/gogol-dfareporting.cabal
@@ -1,249 +1,271 @@
-name:                  gogol-dfareporting
-version:               0.5.0
-synopsis:              Google DCM/DFA Reporting And Trafficking 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-dfareporting
+version:            1.0.0
+synopsis:           Google Campaign Manager 360 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:
-    Manages your DoubleClick Campaign Manager ad 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 @v3.3@
-    of the API.
+  Build applications to efficiently manage large or complex trafficking, reporting, and attribution workflows for Campaign Manager 360.
+  .
+  /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 @v4@
+  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-dfareporting
 
+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.DFAReporting
-        , Network.Google.DFAReporting.Types
-        , Network.Google.Resource.DFAReporting.AccountActiveAdSummaries.Get
-        , Network.Google.Resource.DFAReporting.AccountPermissionGroups.Get
-        , Network.Google.Resource.DFAReporting.AccountPermissionGroups.List
-        , Network.Google.Resource.DFAReporting.AccountPermissions.Get
-        , Network.Google.Resource.DFAReporting.AccountPermissions.List
-        , Network.Google.Resource.DFAReporting.AccountUserProFiles.Get
-        , Network.Google.Resource.DFAReporting.AccountUserProFiles.Insert
-        , Network.Google.Resource.DFAReporting.AccountUserProFiles.List
-        , Network.Google.Resource.DFAReporting.AccountUserProFiles.Patch
-        , Network.Google.Resource.DFAReporting.AccountUserProFiles.Update
-        , Network.Google.Resource.DFAReporting.Accounts.Get
-        , Network.Google.Resource.DFAReporting.Accounts.List
-        , Network.Google.Resource.DFAReporting.Accounts.Patch
-        , Network.Google.Resource.DFAReporting.Accounts.Update
-        , Network.Google.Resource.DFAReporting.Ads.Get
-        , Network.Google.Resource.DFAReporting.Ads.Insert
-        , Network.Google.Resource.DFAReporting.Ads.List
-        , Network.Google.Resource.DFAReporting.Ads.Patch
-        , Network.Google.Resource.DFAReporting.Ads.Update
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.Delete
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.Get
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.Insert
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.List
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.Patch
-        , Network.Google.Resource.DFAReporting.AdvertiserGroups.Update
-        , Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Get
-        , Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Insert
-        , Network.Google.Resource.DFAReporting.AdvertiserLandingPages.List
-        , Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Patch
-        , Network.Google.Resource.DFAReporting.AdvertiserLandingPages.Update
-        , Network.Google.Resource.DFAReporting.Advertisers.Get
-        , Network.Google.Resource.DFAReporting.Advertisers.Insert
-        , Network.Google.Resource.DFAReporting.Advertisers.List
-        , Network.Google.Resource.DFAReporting.Advertisers.Patch
-        , Network.Google.Resource.DFAReporting.Advertisers.Update
-        , Network.Google.Resource.DFAReporting.Browsers.List
-        , Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.Insert
-        , Network.Google.Resource.DFAReporting.CampaignCreativeAssociations.List
-        , Network.Google.Resource.DFAReporting.Campaigns.Get
-        , Network.Google.Resource.DFAReporting.Campaigns.Insert
-        , Network.Google.Resource.DFAReporting.Campaigns.List
-        , Network.Google.Resource.DFAReporting.Campaigns.Patch
-        , Network.Google.Resource.DFAReporting.Campaigns.Update
-        , Network.Google.Resource.DFAReporting.ChangeLogs.Get
-        , Network.Google.Resource.DFAReporting.ChangeLogs.List
-        , Network.Google.Resource.DFAReporting.Cities.List
-        , Network.Google.Resource.DFAReporting.ConnectionTypes.Get
-        , Network.Google.Resource.DFAReporting.ConnectionTypes.List
-        , Network.Google.Resource.DFAReporting.ContentCategories.Delete
-        , Network.Google.Resource.DFAReporting.ContentCategories.Get
-        , Network.Google.Resource.DFAReporting.ContentCategories.Insert
-        , Network.Google.Resource.DFAReporting.ContentCategories.List
-        , Network.Google.Resource.DFAReporting.ContentCategories.Patch
-        , Network.Google.Resource.DFAReporting.ContentCategories.Update
-        , Network.Google.Resource.DFAReporting.Conversions.Batchinsert
-        , Network.Google.Resource.DFAReporting.Conversions.Batchupdate
-        , Network.Google.Resource.DFAReporting.Countries.Get
-        , Network.Google.Resource.DFAReporting.Countries.List
-        , Network.Google.Resource.DFAReporting.CreativeAssets.Insert
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.Delete
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.Get
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.Insert
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.List
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.Patch
-        , Network.Google.Resource.DFAReporting.CreativeFieldValues.Update
-        , Network.Google.Resource.DFAReporting.CreativeFields.Delete
-        , Network.Google.Resource.DFAReporting.CreativeFields.Get
-        , Network.Google.Resource.DFAReporting.CreativeFields.Insert
-        , Network.Google.Resource.DFAReporting.CreativeFields.List
-        , Network.Google.Resource.DFAReporting.CreativeFields.Patch
-        , Network.Google.Resource.DFAReporting.CreativeFields.Update
-        , Network.Google.Resource.DFAReporting.CreativeGroups.Get
-        , Network.Google.Resource.DFAReporting.CreativeGroups.Insert
-        , Network.Google.Resource.DFAReporting.CreativeGroups.List
-        , Network.Google.Resource.DFAReporting.CreativeGroups.Patch
-        , Network.Google.Resource.DFAReporting.CreativeGroups.Update
-        , Network.Google.Resource.DFAReporting.Creatives.Get
-        , Network.Google.Resource.DFAReporting.Creatives.Insert
-        , Network.Google.Resource.DFAReporting.Creatives.List
-        , Network.Google.Resource.DFAReporting.Creatives.Patch
-        , Network.Google.Resource.DFAReporting.Creatives.Update
-        , Network.Google.Resource.DFAReporting.DimensionValues.Query
-        , Network.Google.Resource.DFAReporting.DirectorySites.Get
-        , Network.Google.Resource.DFAReporting.DirectorySites.Insert
-        , Network.Google.Resource.DFAReporting.DirectorySites.List
-        , Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Delete
-        , Network.Google.Resource.DFAReporting.DynamicTargetingKeys.Insert
-        , Network.Google.Resource.DFAReporting.DynamicTargetingKeys.List
-        , Network.Google.Resource.DFAReporting.EventTags.Delete
-        , Network.Google.Resource.DFAReporting.EventTags.Get
-        , Network.Google.Resource.DFAReporting.EventTags.Insert
-        , Network.Google.Resource.DFAReporting.EventTags.List
-        , Network.Google.Resource.DFAReporting.EventTags.Patch
-        , Network.Google.Resource.DFAReporting.EventTags.Update
-        , Network.Google.Resource.DFAReporting.Files.Get
-        , Network.Google.Resource.DFAReporting.Files.List
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Delete
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Generatetag
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Get
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Insert
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.List
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Patch
-        , Network.Google.Resource.DFAReporting.FloodlightActivities.Update
-        , Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Get
-        , Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Insert
-        , Network.Google.Resource.DFAReporting.FloodlightActivityGroups.List
-        , Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Patch
-        , Network.Google.Resource.DFAReporting.FloodlightActivityGroups.Update
-        , Network.Google.Resource.DFAReporting.FloodlightConfigurations.Get
-        , Network.Google.Resource.DFAReporting.FloodlightConfigurations.List
-        , Network.Google.Resource.DFAReporting.FloodlightConfigurations.Patch
-        , Network.Google.Resource.DFAReporting.FloodlightConfigurations.Update
-        , Network.Google.Resource.DFAReporting.InventoryItems.Get
-        , Network.Google.Resource.DFAReporting.InventoryItems.List
-        , Network.Google.Resource.DFAReporting.Languages.List
-        , Network.Google.Resource.DFAReporting.Metros.List
-        , Network.Google.Resource.DFAReporting.MobileApps.Get
-        , Network.Google.Resource.DFAReporting.MobileApps.List
-        , Network.Google.Resource.DFAReporting.MobileCarriers.Get
-        , Network.Google.Resource.DFAReporting.MobileCarriers.List
-        , Network.Google.Resource.DFAReporting.OperatingSystemVersions.Get
-        , Network.Google.Resource.DFAReporting.OperatingSystemVersions.List
-        , Network.Google.Resource.DFAReporting.OperatingSystems.Get
-        , Network.Google.Resource.DFAReporting.OperatingSystems.List
-        , Network.Google.Resource.DFAReporting.OrderDocuments.Get
-        , Network.Google.Resource.DFAReporting.OrderDocuments.List
-        , Network.Google.Resource.DFAReporting.Orders.Get
-        , Network.Google.Resource.DFAReporting.Orders.List
-        , Network.Google.Resource.DFAReporting.PlacementGroups.Get
-        , Network.Google.Resource.DFAReporting.PlacementGroups.Insert
-        , Network.Google.Resource.DFAReporting.PlacementGroups.List
-        , Network.Google.Resource.DFAReporting.PlacementGroups.Patch
-        , Network.Google.Resource.DFAReporting.PlacementGroups.Update
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.Delete
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.Get
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.Insert
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.List
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.Patch
-        , Network.Google.Resource.DFAReporting.PlacementStrategies.Update
-        , Network.Google.Resource.DFAReporting.Placements.Generatetags
-        , Network.Google.Resource.DFAReporting.Placements.Get
-        , Network.Google.Resource.DFAReporting.Placements.Insert
-        , Network.Google.Resource.DFAReporting.Placements.List
-        , Network.Google.Resource.DFAReporting.Placements.Patch
-        , Network.Google.Resource.DFAReporting.Placements.Update
-        , Network.Google.Resource.DFAReporting.PlatformTypes.Get
-        , Network.Google.Resource.DFAReporting.PlatformTypes.List
-        , Network.Google.Resource.DFAReporting.PostalCodes.Get
-        , Network.Google.Resource.DFAReporting.PostalCodes.List
-        , Network.Google.Resource.DFAReporting.Projects.Get
-        , Network.Google.Resource.DFAReporting.Projects.List
-        , Network.Google.Resource.DFAReporting.Regions.List
-        , Network.Google.Resource.DFAReporting.RemarketingListShares.Get
-        , Network.Google.Resource.DFAReporting.RemarketingListShares.Patch
-        , Network.Google.Resource.DFAReporting.RemarketingListShares.Update
-        , Network.Google.Resource.DFAReporting.RemarketingLists.Get
-        , Network.Google.Resource.DFAReporting.RemarketingLists.Insert
-        , Network.Google.Resource.DFAReporting.RemarketingLists.List
-        , Network.Google.Resource.DFAReporting.RemarketingLists.Patch
-        , Network.Google.Resource.DFAReporting.RemarketingLists.Update
-        , Network.Google.Resource.DFAReporting.Reports.CompatibleFields.Query
-        , Network.Google.Resource.DFAReporting.Reports.Delete
-        , Network.Google.Resource.DFAReporting.Reports.Files.Get
-        , Network.Google.Resource.DFAReporting.Reports.Files.List
-        , Network.Google.Resource.DFAReporting.Reports.Get
-        , Network.Google.Resource.DFAReporting.Reports.Insert
-        , Network.Google.Resource.DFAReporting.Reports.List
-        , Network.Google.Resource.DFAReporting.Reports.Patch
-        , Network.Google.Resource.DFAReporting.Reports.Run
-        , Network.Google.Resource.DFAReporting.Reports.Update
-        , Network.Google.Resource.DFAReporting.Sites.Get
-        , Network.Google.Resource.DFAReporting.Sites.Insert
-        , Network.Google.Resource.DFAReporting.Sites.List
-        , Network.Google.Resource.DFAReporting.Sites.Patch
-        , Network.Google.Resource.DFAReporting.Sites.Update
-        , Network.Google.Resource.DFAReporting.Sizes.Get
-        , Network.Google.Resource.DFAReporting.Sizes.Insert
-        , Network.Google.Resource.DFAReporting.Sizes.List
-        , Network.Google.Resource.DFAReporting.SubAccounts.Get
-        , Network.Google.Resource.DFAReporting.SubAccounts.Insert
-        , Network.Google.Resource.DFAReporting.SubAccounts.List
-        , Network.Google.Resource.DFAReporting.SubAccounts.Patch
-        , Network.Google.Resource.DFAReporting.SubAccounts.Update
-        , Network.Google.Resource.DFAReporting.TargetableRemarketingLists.Get
-        , Network.Google.Resource.DFAReporting.TargetableRemarketingLists.List
-        , Network.Google.Resource.DFAReporting.TargetingTemplates.Get
-        , Network.Google.Resource.DFAReporting.TargetingTemplates.Insert
-        , Network.Google.Resource.DFAReporting.TargetingTemplates.List
-        , Network.Google.Resource.DFAReporting.TargetingTemplates.Patch
-        , Network.Google.Resource.DFAReporting.TargetingTemplates.Update
-        , Network.Google.Resource.DFAReporting.UserProFiles.Get
-        , Network.Google.Resource.DFAReporting.UserProFiles.List
-        , Network.Google.Resource.DFAReporting.UserRolePermissionGroups.Get
-        , Network.Google.Resource.DFAReporting.UserRolePermissionGroups.List
-        , Network.Google.Resource.DFAReporting.UserRolePermissions.Get
-        , Network.Google.Resource.DFAReporting.UserRolePermissions.List
-        , Network.Google.Resource.DFAReporting.UserRoles.Delete
-        , Network.Google.Resource.DFAReporting.UserRoles.Get
-        , Network.Google.Resource.DFAReporting.UserRoles.Insert
-        , Network.Google.Resource.DFAReporting.UserRoles.List
-        , Network.Google.Resource.DFAReporting.UserRoles.Patch
-        , Network.Google.Resource.DFAReporting.UserRoles.Update
-        , Network.Google.Resource.DFAReporting.VideoFormats.Get
-        , Network.Google.Resource.DFAReporting.VideoFormats.List
+  exposed-modules:
+    Gogol.DFAReporting
+    Gogol.DFAReporting.AccountActiveAdSummaries.Get
+    Gogol.DFAReporting.AccountPermissionGroups.Get
+    Gogol.DFAReporting.AccountPermissionGroups.List
+    Gogol.DFAReporting.AccountPermissions.Get
+    Gogol.DFAReporting.AccountPermissions.List
+    Gogol.DFAReporting.Accounts.Get
+    Gogol.DFAReporting.Accounts.List
+    Gogol.DFAReporting.Accounts.Patch
+    Gogol.DFAReporting.Accounts.Update
+    Gogol.DFAReporting.AccountUserProfiles.Get
+    Gogol.DFAReporting.AccountUserProfiles.Insert
+    Gogol.DFAReporting.AccountUserProfiles.List
+    Gogol.DFAReporting.AccountUserProfiles.Patch
+    Gogol.DFAReporting.AccountUserProfiles.Update
+    Gogol.DFAReporting.Ads.Get
+    Gogol.DFAReporting.Ads.Insert
+    Gogol.DFAReporting.Ads.List
+    Gogol.DFAReporting.Ads.Patch
+    Gogol.DFAReporting.Ads.Update
+    Gogol.DFAReporting.AdvertiserGroups.Delete
+    Gogol.DFAReporting.AdvertiserGroups.Get
+    Gogol.DFAReporting.AdvertiserGroups.Insert
+    Gogol.DFAReporting.AdvertiserGroups.List
+    Gogol.DFAReporting.AdvertiserGroups.Patch
+    Gogol.DFAReporting.AdvertiserGroups.Update
+    Gogol.DFAReporting.AdvertiserInvoices.List
+    Gogol.DFAReporting.AdvertiserLandingPages.Get
+    Gogol.DFAReporting.AdvertiserLandingPages.Insert
+    Gogol.DFAReporting.AdvertiserLandingPages.List
+    Gogol.DFAReporting.AdvertiserLandingPages.Patch
+    Gogol.DFAReporting.AdvertiserLandingPages.Update
+    Gogol.DFAReporting.Advertisers.Get
+    Gogol.DFAReporting.Advertisers.Insert
+    Gogol.DFAReporting.Advertisers.List
+    Gogol.DFAReporting.Advertisers.Patch
+    Gogol.DFAReporting.Advertisers.Update
+    Gogol.DFAReporting.BillingAssignments.Insert
+    Gogol.DFAReporting.BillingAssignments.List
+    Gogol.DFAReporting.BillingProfiles.Get
+    Gogol.DFAReporting.BillingProfiles.List
+    Gogol.DFAReporting.BillingProfiles.Update
+    Gogol.DFAReporting.BillingRates.List
+    Gogol.DFAReporting.Browsers.List
+    Gogol.DFAReporting.CampaignCreativeAssociations.Insert
+    Gogol.DFAReporting.CampaignCreativeAssociations.List
+    Gogol.DFAReporting.Campaigns.Get
+    Gogol.DFAReporting.Campaigns.Insert
+    Gogol.DFAReporting.Campaigns.List
+    Gogol.DFAReporting.Campaigns.Patch
+    Gogol.DFAReporting.Campaigns.Update
+    Gogol.DFAReporting.ChangeLogs.Get
+    Gogol.DFAReporting.ChangeLogs.List
+    Gogol.DFAReporting.Cities.List
+    Gogol.DFAReporting.ConnectionTypes.Get
+    Gogol.DFAReporting.ConnectionTypes.List
+    Gogol.DFAReporting.ContentCategories.Delete
+    Gogol.DFAReporting.ContentCategories.Get
+    Gogol.DFAReporting.ContentCategories.Insert
+    Gogol.DFAReporting.ContentCategories.List
+    Gogol.DFAReporting.ContentCategories.Patch
+    Gogol.DFAReporting.ContentCategories.Update
+    Gogol.DFAReporting.Conversions.Batchinsert
+    Gogol.DFAReporting.Conversions.Batchupdate
+    Gogol.DFAReporting.Countries.Get
+    Gogol.DFAReporting.Countries.List
+    Gogol.DFAReporting.CreativeAssets.Insert
+    Gogol.DFAReporting.CreativeFields.Delete
+    Gogol.DFAReporting.CreativeFields.Get
+    Gogol.DFAReporting.CreativeFields.Insert
+    Gogol.DFAReporting.CreativeFields.List
+    Gogol.DFAReporting.CreativeFields.Patch
+    Gogol.DFAReporting.CreativeFields.Update
+    Gogol.DFAReporting.CreativeFieldValues.Delete
+    Gogol.DFAReporting.CreativeFieldValues.Get
+    Gogol.DFAReporting.CreativeFieldValues.Insert
+    Gogol.DFAReporting.CreativeFieldValues.List
+    Gogol.DFAReporting.CreativeFieldValues.Patch
+    Gogol.DFAReporting.CreativeFieldValues.Update
+    Gogol.DFAReporting.CreativeGroups.Get
+    Gogol.DFAReporting.CreativeGroups.Insert
+    Gogol.DFAReporting.CreativeGroups.List
+    Gogol.DFAReporting.CreativeGroups.Patch
+    Gogol.DFAReporting.CreativeGroups.Update
+    Gogol.DFAReporting.Creatives.Get
+    Gogol.DFAReporting.Creatives.Insert
+    Gogol.DFAReporting.Creatives.List
+    Gogol.DFAReporting.Creatives.Patch
+    Gogol.DFAReporting.Creatives.Update
+    Gogol.DFAReporting.DimensionValues.Query
+    Gogol.DFAReporting.DirectorySites.Get
+    Gogol.DFAReporting.DirectorySites.Insert
+    Gogol.DFAReporting.DirectorySites.List
+    Gogol.DFAReporting.DynamicTargetingKeys.Delete
+    Gogol.DFAReporting.DynamicTargetingKeys.Insert
+    Gogol.DFAReporting.DynamicTargetingKeys.List
+    Gogol.DFAReporting.EventTags.Delete
+    Gogol.DFAReporting.EventTags.Get
+    Gogol.DFAReporting.EventTags.Insert
+    Gogol.DFAReporting.EventTags.List
+    Gogol.DFAReporting.EventTags.Patch
+    Gogol.DFAReporting.EventTags.Update
+    Gogol.DFAReporting.Files.Get
+    Gogol.DFAReporting.Files.List
+    Gogol.DFAReporting.FloodlightActivities.Delete
+    Gogol.DFAReporting.FloodlightActivities.Generatetag
+    Gogol.DFAReporting.FloodlightActivities.Get
+    Gogol.DFAReporting.FloodlightActivities.Insert
+    Gogol.DFAReporting.FloodlightActivities.List
+    Gogol.DFAReporting.FloodlightActivities.Patch
+    Gogol.DFAReporting.FloodlightActivities.Update
+    Gogol.DFAReporting.FloodlightActivityGroups.Get
+    Gogol.DFAReporting.FloodlightActivityGroups.Insert
+    Gogol.DFAReporting.FloodlightActivityGroups.List
+    Gogol.DFAReporting.FloodlightActivityGroups.Patch
+    Gogol.DFAReporting.FloodlightActivityGroups.Update
+    Gogol.DFAReporting.FloodlightConfigurations.Get
+    Gogol.DFAReporting.FloodlightConfigurations.List
+    Gogol.DFAReporting.FloodlightConfigurations.Patch
+    Gogol.DFAReporting.FloodlightConfigurations.Update
+    Gogol.DFAReporting.InventoryItems.Get
+    Gogol.DFAReporting.InventoryItems.List
+    Gogol.DFAReporting.Languages.List
+    Gogol.DFAReporting.Metros.List
+    Gogol.DFAReporting.MobileApps.Get
+    Gogol.DFAReporting.MobileApps.List
+    Gogol.DFAReporting.MobileCarriers.Get
+    Gogol.DFAReporting.MobileCarriers.List
+    Gogol.DFAReporting.OperatingSystems.Get
+    Gogol.DFAReporting.OperatingSystems.List
+    Gogol.DFAReporting.OperatingSystemVersions.Get
+    Gogol.DFAReporting.OperatingSystemVersions.List
+    Gogol.DFAReporting.Orders.Get
+    Gogol.DFAReporting.Orders.List
+    Gogol.DFAReporting.PlacementGroups.Get
+    Gogol.DFAReporting.PlacementGroups.Insert
+    Gogol.DFAReporting.PlacementGroups.List
+    Gogol.DFAReporting.PlacementGroups.Patch
+    Gogol.DFAReporting.PlacementGroups.Update
+    Gogol.DFAReporting.Placements.Generatetags
+    Gogol.DFAReporting.Placements.Get
+    Gogol.DFAReporting.Placements.Insert
+    Gogol.DFAReporting.Placements.List
+    Gogol.DFAReporting.Placements.Patch
+    Gogol.DFAReporting.Placements.Update
+    Gogol.DFAReporting.PlacementStrategies.Delete
+    Gogol.DFAReporting.PlacementStrategies.Get
+    Gogol.DFAReporting.PlacementStrategies.Insert
+    Gogol.DFAReporting.PlacementStrategies.List
+    Gogol.DFAReporting.PlacementStrategies.Patch
+    Gogol.DFAReporting.PlacementStrategies.Update
+    Gogol.DFAReporting.PlatformTypes.Get
+    Gogol.DFAReporting.PlatformTypes.List
+    Gogol.DFAReporting.PostalCodes.Get
+    Gogol.DFAReporting.PostalCodes.List
+    Gogol.DFAReporting.Projects.Get
+    Gogol.DFAReporting.Projects.List
+    Gogol.DFAReporting.Regions.List
+    Gogol.DFAReporting.RemarketingLists.Get
+    Gogol.DFAReporting.RemarketingLists.Insert
+    Gogol.DFAReporting.RemarketingLists.List
+    Gogol.DFAReporting.RemarketingLists.Patch
+    Gogol.DFAReporting.RemarketingLists.Update
+    Gogol.DFAReporting.RemarketingListShares.Get
+    Gogol.DFAReporting.RemarketingListShares.Patch
+    Gogol.DFAReporting.RemarketingListShares.Update
+    Gogol.DFAReporting.Reports.CompatibleFields.Query
+    Gogol.DFAReporting.Reports.Delete
+    Gogol.DFAReporting.Reports.Files.Get
+    Gogol.DFAReporting.Reports.Files.List
+    Gogol.DFAReporting.Reports.Get
+    Gogol.DFAReporting.Reports.Insert
+    Gogol.DFAReporting.Reports.List
+    Gogol.DFAReporting.Reports.Patch
+    Gogol.DFAReporting.Reports.Run
+    Gogol.DFAReporting.Reports.Update
+    Gogol.DFAReporting.Sites.Get
+    Gogol.DFAReporting.Sites.Insert
+    Gogol.DFAReporting.Sites.List
+    Gogol.DFAReporting.Sites.Patch
+    Gogol.DFAReporting.Sites.Update
+    Gogol.DFAReporting.Sizes.Get
+    Gogol.DFAReporting.Sizes.Insert
+    Gogol.DFAReporting.Sizes.List
+    Gogol.DFAReporting.Subaccounts.Get
+    Gogol.DFAReporting.Subaccounts.Insert
+    Gogol.DFAReporting.Subaccounts.List
+    Gogol.DFAReporting.Subaccounts.Patch
+    Gogol.DFAReporting.Subaccounts.Update
+    Gogol.DFAReporting.TargetableRemarketingLists.Get
+    Gogol.DFAReporting.TargetableRemarketingLists.List
+    Gogol.DFAReporting.TargetingTemplates.Get
+    Gogol.DFAReporting.TargetingTemplates.Insert
+    Gogol.DFAReporting.TargetingTemplates.List
+    Gogol.DFAReporting.TargetingTemplates.Patch
+    Gogol.DFAReporting.TargetingTemplates.Update
+    Gogol.DFAReporting.TvCampaignDetails.Get
+    Gogol.DFAReporting.TvCampaignSummaries.List
+    Gogol.DFAReporting.Types
+    Gogol.DFAReporting.UserProfiles.Get
+    Gogol.DFAReporting.UserProfiles.List
+    Gogol.DFAReporting.UserRolePermissionGroups.Get
+    Gogol.DFAReporting.UserRolePermissionGroups.List
+    Gogol.DFAReporting.UserRolePermissions.Get
+    Gogol.DFAReporting.UserRolePermissions.List
+    Gogol.DFAReporting.UserRoles.Delete
+    Gogol.DFAReporting.UserRoles.Get
+    Gogol.DFAReporting.UserRoles.Insert
+    Gogol.DFAReporting.UserRoles.List
+    Gogol.DFAReporting.UserRoles.Patch
+    Gogol.DFAReporting.UserRoles.Update
+    Gogol.DFAReporting.VideoFormats.Get
+    Gogol.DFAReporting.VideoFormats.List
 
-    other-modules:
-          Network.Google.DFAReporting.Types.Product
-        , Network.Google.DFAReporting.Types.Sum
+  other-modules:
+    Gogol.DFAReporting.Internal.Product
+    Gogol.DFAReporting.Internal.Sum
 
-    build-depends:
-          gogol-core == 0.5.0.*
-        , base       >= 4.7 && < 5
+  build-depends:    gogol-core ^>=1.0.0
