packages feed

gogol-adsense-host (empty) → 0.0.1

raw patch · 34 files changed

+5560/−0 lines, 34 filesdep +basedep +gogol-coresetup-changed

Dependencies added: base, gogol-core

Files

+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+    means each individual or legal entity that creates, contributes to+    the creation of, or owns Covered Software.++1.2. "Contributor Version"+    means the combination of the Contributions of others (if any) used+    by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+    means Covered Software of a particular Contributor.++1.4. "Covered Software"+    means Source Code Form to which the initial Contributor has attached+    the notice in Exhibit A, the Executable Form of such Source Code+    Form, and Modifications of such Source Code Form, in each case+    including portions thereof.++1.5. "Incompatible With Secondary Licenses"+    means++    (a) that the initial Contributor has attached the notice described+        in Exhibit B to the Covered Software; or++    (b) that the Covered Software was made available under the terms of+        version 1.1 or earlier of the License, but not also under the+        terms of a Secondary License.++1.6. "Executable Form"+    means any form of the work other than Source Code Form.++1.7. "Larger Work"+    means a work that combines Covered Software with other material, in+    a separate file or files, that is not Covered Software.++1.8. "License"+    means this document.++1.9. "Licensable"+    means having the right to grant, to the maximum extent possible,+    whether at the time of the initial grant or subsequently, any and+    all of the rights conveyed by this License.++1.10. "Modifications"+    means any of the following:++    (a) any file in Source Code Form that results from an addition to,+        deletion from, or modification of the contents of Covered+        Software; or++    (b) any new file in Source Code Form that contains any Covered+        Software.++1.11. "Patent Claims" of a Contributor+    means any patent claim(s), including without limitation, method,+    process, and apparatus claims, in any patent Licensable by such+    Contributor that would be infringed, but for the grant of the+    License, by the making, using, selling, offering for sale, having+    made, import, or transfer of either its Contributions or its+    Contributor Version.++1.12. "Secondary License"+    means either the GNU General Public License, Version 2.0, the GNU+    Lesser General Public License, Version 2.1, the GNU Affero General+    Public License, Version 3.0, or any later versions of those+    licenses.++1.13. "Source Code Form"+    means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+    means an individual or a legal entity exercising rights under this+    License. For legal entities, "You" includes any entity that+    controls, is controlled by, or is under common control with You. For+    purposes of this definition, "control" means (a) the power, direct+    or indirect, to cause the direction or management of such entity,+    whether by contract or otherwise, or (b) ownership of more than+    fifty percent (50%) of the outstanding shares or beneficial+    ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+    Licensable by such Contributor to use, reproduce, make available,+    modify, display, perform, distribute, and otherwise exploit its+    Contributions, either on an unmodified basis, with Modifications, or+    as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+    for sale, have made, import, and otherwise transfer either its+    Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+    or++(b) for infringements caused by: (i) Your and any other third party's+    modifications of Covered Software, or (ii) the combination of its+    Contributions with other software (except as part of its Contributor+    Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+    its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+    Form, as described in Section 3.1, and You must inform recipients of+    the Executable Form how they can obtain a copy of such Source Code+    Form by reasonable means in a timely manner, at a charge no more+    than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+    License, or sublicense it under different terms, provided that the+    license for the Executable Form does not attempt to limit or alter+    the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+*                                                                      *+*  6. Disclaimer of Warranty                                           *+*  -------------------------                                           *+*                                                                      *+*  Covered Software is provided under this License on an "as is"       *+*  basis, without warranty of any kind, either expressed, implied, or  *+*  statutory, including, without limitation, warranties that the       *+*  Covered Software is free of defects, merchantable, fit for a        *+*  particular purpose or non-infringing. The entire risk as to the     *+*  quality and performance of the Covered Software is with You.        *+*  Should any Covered Software prove defective in any respect, You     *+*  (not any Contributor) assume the cost of any necessary servicing,   *+*  repair, or correction. This disclaimer of warranty constitutes an   *+*  essential part of this License. No use of any Covered Software is   *+*  authorized under this License except under this disclaimer.         *+*                                                                      *+************************************************************************++************************************************************************+*                                                                      *+*  7. Limitation of Liability                                          *+*  --------------------------                                          *+*                                                                      *+*  Under no circumstances and under no legal theory, whether tort      *+*  (including negligence), contract, or otherwise, shall any           *+*  Contributor, or anyone who distributes Covered Software as          *+*  permitted above, be liable to You for any direct, indirect,         *+*  special, incidental, or consequential damages of any character      *+*  including, without limitation, damages for lost profits, loss of    *+*  goodwill, work stoppage, computer failure or malfunction, or any    *+*  and all other commercial damages or losses, even if such party      *+*  shall have been informed of the possibility of such damages. This   *+*  limitation of liability shall not apply to liability for death or   *+*  personal injury resulting from such party's negligence to the       *+*  extent applicable law prohibits such limitation. Some               *+*  jurisdictions do not allow the exclusion or limitation of           *+*  incidental or consequential damages, so this exclusion and          *+*  limitation may not apply to You.                                    *+*                                                                      *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++  This Source Code Form is subject to the terms of the Mozilla Public+  License, v. 2.0. If a copy of the MPL was not distributed with this+  file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,28 @@+# gogol-adsense-host++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.0.1`+++## Description++A client library for the Google AdSense Host.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`gogol-adsense-host` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
+ Setup.hs view
@@ -0,0 +1,2 @@+import           Distribution.Simple+main = defaultMain
+ gen/Network/Google/AdSenseHost.hs view
@@ -0,0 +1,339 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators     #-}++{-# OPTIONS_GHC -fno-warn-unused-imports    #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module      : Network.Google.AdSenseHost+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gives AdSense Hosts access to report generation, ad code generation, and+-- publisher management capabilities.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference>+module Network.Google.AdSenseHost+    (+    -- * Service Configuration+      adSenseHostService++    -- * API Declaration+    , AdSenseHostAPI++    -- * Resources++    -- ** adsensehost.accounts.adclients.get+    , module Network.Google.Resource.AdSenseHost.Accounts.AdClients.Get++    -- ** adsensehost.accounts.adclients.list+    , module Network.Google.Resource.AdSenseHost.Accounts.AdClients.List++    -- ** adsensehost.accounts.adunits.delete+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Delete++    -- ** adsensehost.accounts.adunits.get+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Get++    -- ** adsensehost.accounts.adunits.getAdCode+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.GetAdCode++    -- ** adsensehost.accounts.adunits.insert+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Insert++    -- ** adsensehost.accounts.adunits.list+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.List++    -- ** adsensehost.accounts.adunits.patch+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Patch++    -- ** adsensehost.accounts.adunits.update+    , module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Update++    -- ** adsensehost.accounts.get+    , module Network.Google.Resource.AdSenseHost.Accounts.Get++    -- ** adsensehost.accounts.list+    , module Network.Google.Resource.AdSenseHost.Accounts.List++    -- ** adsensehost.accounts.reports.generate+    , module Network.Google.Resource.AdSenseHost.Accounts.Reports.Generate++    -- ** adsensehost.adclients.get+    , module Network.Google.Resource.AdSenseHost.AdClients.Get++    -- ** adsensehost.adclients.list+    , module Network.Google.Resource.AdSenseHost.AdClients.List++    -- ** adsensehost.associationsessions.start+    , module Network.Google.Resource.AdSenseHost.AssociationSessions.Start++    -- ** adsensehost.associationsessions.verify+    , module Network.Google.Resource.AdSenseHost.AssociationSessions.Verify++    -- ** adsensehost.customchannels.delete+    , module Network.Google.Resource.AdSenseHost.CustomChannels.Delete++    -- ** adsensehost.customchannels.get+    , module Network.Google.Resource.AdSenseHost.CustomChannels.Get++    -- ** adsensehost.customchannels.insert+    , module Network.Google.Resource.AdSenseHost.CustomChannels.Insert++    -- ** adsensehost.customchannels.list+    , module Network.Google.Resource.AdSenseHost.CustomChannels.List++    -- ** adsensehost.customchannels.patch+    , module Network.Google.Resource.AdSenseHost.CustomChannels.Patch++    -- ** adsensehost.customchannels.update+    , module Network.Google.Resource.AdSenseHost.CustomChannels.Update++    -- ** adsensehost.reports.generate+    , module Network.Google.Resource.AdSenseHost.Reports.Generate++    -- ** adsensehost.urlchannels.delete+    , module Network.Google.Resource.AdSenseHost.URLChannels.Delete++    -- ** adsensehost.urlchannels.insert+    , module Network.Google.Resource.AdSenseHost.URLChannels.Insert++    -- ** adsensehost.urlchannels.list+    , module Network.Google.Resource.AdSenseHost.URLChannels.List++    -- * Types++    -- ** AdClients+    , AdClients+    , adClients+    , acEtag+    , acNextPageToken+    , acKind+    , acItems++    -- ** AssociationSession+    , AssociationSession+    , associationSession+    , asStatus+    , asKind+    , asWebsiteLocale+    , asUserLocale+    , asAccountId+    , asProductCodes+    , asId+    , asWebsiteURL+    , asRedirectURL++    -- ** AssociationSessionsStartProductCode+    , AssociationSessionsStartProductCode (..)++    -- ** Accounts+    , Accounts+    , accounts+    , aEtag+    , aKind+    , aItems++    -- ** AdUnits+    , AdUnits+    , adUnits+    , auEtag+    , auNextPageToken+    , auKind+    , auItems++    -- ** URLChannels+    , URLChannels+    , urlChannels+    , ucEtag+    , ucNextPageToken+    , ucKind+    , ucItems++    -- ** CustomChannels+    , CustomChannels+    , customChannels+    , ccEtag+    , ccNextPageToken+    , ccKind+    , ccItems++    -- ** AdUnit+    , AdUnit+    , adUnit+    , auuStatus+    , auuMobileContentAdsSettings+    , auuKind+    , auuCustomStyle+    , auuName+    , auuContentAdsSettings+    , auuCode+    , auuId++    -- ** Report+    , Report+    , report+    , rKind+    , rAverages+    , rWarnings+    , rRows+    , rTotals+    , rHeaders+    , rTotalMatchedRows++    -- ** AdStyleFont+    , AdStyleFont+    , adStyleFont+    , asfSize+    , asfFamily++    -- ** Account+    , Account+    , account+    , accStatus+    , accKind+    , accName+    , accId++    -- ** AdUnitMobileContentAdsSettings+    , AdUnitMobileContentAdsSettings+    , adUnitMobileContentAdsSettings+    , aumcasSize+    , aumcasScriptingLanguage+    , aumcasMarkupLanguage+    , aumcasType++    -- ** AdStyleColors+    , AdStyleColors+    , adStyleColors+    , ascText+    , ascURL+    , ascBOrder+    , ascTitle+    , ascBackgRound++    -- ** AdUnitContentAdsSettingsBackupOption+    , AdUnitContentAdsSettingsBackupOption+    , adUnitContentAdsSettingsBackupOption+    , aucasboColor+    , aucasboURL+    , aucasboType++    -- ** AdClient+    , AdClient+    , adClient+    , adKind+    , adArcOptIn+    , adSupportsReporting+    , adId+    , adProductCode++    -- ** ReportHeadersItem+    , ReportHeadersItem+    , reportHeadersItem+    , rhiName+    , rhiCurrency+    , rhiType++    -- ** AdStyle+    , AdStyle+    , adStyle+    , assCorners+    , assKind+    , assFont+    , assColors++    -- ** CustomChannel+    , CustomChannel+    , customChannel+    , cKind+    , cName+    , cCode+    , cId++    -- ** URLChannel+    , URLChannel+    , urlChannel+    , urlcKind+    , urlcId+    , urlcURLPattern++    -- ** AdCode+    , AdCode+    , adCode+    , aaKind+    , aaAdCode++    -- ** AdUnitContentAdsSettings+    , AdUnitContentAdsSettings+    , adUnitContentAdsSettings+    , aucasBackupOption+    , aucasSize+    , aucasType+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude+import           Network.Google.Resource.AdSenseHost.Accounts.AdClients.Get+import           Network.Google.Resource.AdSenseHost.Accounts.AdClients.List+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Delete+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Get+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.GetAdCode+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Insert+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.List+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Patch+import           Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Update+import           Network.Google.Resource.AdSenseHost.Accounts.Get+import           Network.Google.Resource.AdSenseHost.Accounts.List+import           Network.Google.Resource.AdSenseHost.Accounts.Reports.Generate+import           Network.Google.Resource.AdSenseHost.AdClients.Get+import           Network.Google.Resource.AdSenseHost.AdClients.List+import           Network.Google.Resource.AdSenseHost.AssociationSessions.Start+import           Network.Google.Resource.AdSenseHost.AssociationSessions.Verify+import           Network.Google.Resource.AdSenseHost.CustomChannels.Delete+import           Network.Google.Resource.AdSenseHost.CustomChannels.Get+import           Network.Google.Resource.AdSenseHost.CustomChannels.Insert+import           Network.Google.Resource.AdSenseHost.CustomChannels.List+import           Network.Google.Resource.AdSenseHost.CustomChannels.Patch+import           Network.Google.Resource.AdSenseHost.CustomChannels.Update+import           Network.Google.Resource.AdSenseHost.Reports.Generate+import           Network.Google.Resource.AdSenseHost.URLChannels.Delete+import           Network.Google.Resource.AdSenseHost.URLChannels.Insert+import           Network.Google.Resource.AdSenseHost.URLChannels.List++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the AdSense Host API service.+type AdSenseHostAPI =+     AssociationSessionsVerifyResource :<|>+       AssociationSessionsStartResource+       :<|> AdClientsListResource+       :<|> AdClientsGetResource+       :<|> AccountsAdClientsListResource+       :<|> AccountsAdClientsGetResource+       :<|> AccountsReportsGenerateResource+       :<|> AccountsAdUnitsInsertResource+       :<|> AccountsAdUnitsListResource+       :<|> AccountsAdUnitsPatchResource+       :<|> AccountsAdUnitsGetResource+       :<|> AccountsAdUnitsGetAdCodeResource+       :<|> AccountsAdUnitsDeleteResource+       :<|> AccountsAdUnitsUpdateResource+       :<|> AccountsListResource+       :<|> AccountsGetResource+       :<|> ReportsGenerateResource+       :<|> URLChannelsInsertResource+       :<|> URLChannelsListResource+       :<|> URLChannelsDeleteResource+       :<|> CustomChannelsInsertResource+       :<|> CustomChannelsListResource+       :<|> CustomChannelsPatchResource+       :<|> CustomChannelsGetResource+       :<|> CustomChannelsDeleteResource+       :<|> CustomChannelsUpdateResource
+ gen/Network/Google/AdSenseHost/Types.hs view
@@ -0,0 +1,205 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Network.Google.AdSenseHost.Types+-- Copyright   : (c) 2015 Brendan 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.AdSenseHost.Types+    (+    -- * Service Configuration+      adSenseHostService++    -- * OAuth Scopes+    , adsensehostScope++    -- * AdClients+    , AdClients+    , adClients+    , acEtag+    , acNextPageToken+    , acKind+    , acItems++    -- * AssociationSession+    , AssociationSession+    , associationSession+    , asStatus+    , asKind+    , asWebsiteLocale+    , asUserLocale+    , asAccountId+    , asProductCodes+    , asId+    , asWebsiteURL+    , asRedirectURL++    -- * AssociationSessionsStartProductCode+    , AssociationSessionsStartProductCode (..)++    -- * Accounts+    , Accounts+    , accounts+    , aEtag+    , aKind+    , aItems++    -- * AdUnits+    , AdUnits+    , adUnits+    , auEtag+    , auNextPageToken+    , auKind+    , auItems++    -- * URLChannels+    , URLChannels+    , urlChannels+    , ucEtag+    , ucNextPageToken+    , ucKind+    , ucItems++    -- * CustomChannels+    , CustomChannels+    , customChannels+    , ccEtag+    , ccNextPageToken+    , ccKind+    , ccItems++    -- * AdUnit+    , AdUnit+    , adUnit+    , auuStatus+    , auuMobileContentAdsSettings+    , auuKind+    , auuCustomStyle+    , auuName+    , auuContentAdsSettings+    , auuCode+    , auuId++    -- * Report+    , Report+    , report+    , rKind+    , rAverages+    , rWarnings+    , rRows+    , rTotals+    , rHeaders+    , rTotalMatchedRows++    -- * AdStyleFont+    , AdStyleFont+    , adStyleFont+    , asfSize+    , asfFamily++    -- * Account+    , Account+    , account+    , accStatus+    , accKind+    , accName+    , accId++    -- * AdUnitMobileContentAdsSettings+    , AdUnitMobileContentAdsSettings+    , adUnitMobileContentAdsSettings+    , aumcasSize+    , aumcasScriptingLanguage+    , aumcasMarkupLanguage+    , aumcasType++    -- * AdStyleColors+    , AdStyleColors+    , adStyleColors+    , ascText+    , ascURL+    , ascBOrder+    , ascTitle+    , ascBackgRound++    -- * AdUnitContentAdsSettingsBackupOption+    , AdUnitContentAdsSettingsBackupOption+    , adUnitContentAdsSettingsBackupOption+    , aucasboColor+    , aucasboURL+    , aucasboType++    -- * AdClient+    , AdClient+    , adClient+    , adKind+    , adArcOptIn+    , adSupportsReporting+    , adId+    , adProductCode++    -- * ReportHeadersItem+    , ReportHeadersItem+    , reportHeadersItem+    , rhiName+    , rhiCurrency+    , rhiType++    -- * AdStyle+    , AdStyle+    , adStyle+    , assCorners+    , assKind+    , assFont+    , assColors++    -- * CustomChannel+    , CustomChannel+    , customChannel+    , cKind+    , cName+    , cCode+    , cId++    -- * URLChannel+    , URLChannel+    , urlChannel+    , urlcKind+    , urlcId+    , urlcURLPattern++    -- * AdCode+    , AdCode+    , adCode+    , aaKind+    , aaAdCode++    -- * AdUnitContentAdsSettings+    , AdUnitContentAdsSettings+    , adUnitContentAdsSettings+    , aucasBackupOption+    , aucasSize+    , aucasType+    ) where++import           Network.Google.AdSenseHost.Types.Product+import           Network.Google.AdSenseHost.Types.Sum+import           Network.Google.Prelude++-- | Default request referring to version 'v4.1' of the AdSense Host API. This contains the host and root path used as a starting point for constructing service requests.+adSenseHostService :: Service+adSenseHostService+  = defaultService (ServiceId "adsensehost:v4.1")+      "www.googleapis.com"++-- | View and manage your AdSense host data and associated accounts+adsensehostScope :: OAuthScope+adsensehostScope = "https://www.googleapis.com/auth/adsensehost";
+ gen/Network/Google/AdSenseHost/Types/Product.hs view
@@ -0,0 +1,1479 @@+{-# 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.AdSenseHost.Types.Product+-- Copyright   : (c) 2015 Brendan 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.AdSenseHost.Types.Product where++import           Network.Google.AdSenseHost.Types.Sum+import           Network.Google.Prelude++--+-- /See:/ 'adClients' smart constructor.+data AdClients = AdClients+    { _acEtag          :: !(Maybe Text)+    , _acNextPageToken :: !(Maybe Text)+    , _acKind          :: !Text+    , _acItems         :: !(Maybe [AdClient])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdClients' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acEtag'+--+-- * 'acNextPageToken'+--+-- * 'acKind'+--+-- * 'acItems'+adClients+    :: AdClients+adClients =+    AdClients+    { _acEtag = Nothing+    , _acNextPageToken = Nothing+    , _acKind = "adsensehost#adClients"+    , _acItems = Nothing+    }++-- | ETag of this response for caching purposes.+acEtag :: Lens' AdClients (Maybe Text)+acEtag = lens _acEtag (\ s a -> s{_acEtag = a})++-- | Continuation token used to page through ad clients. To retrieve the next+-- page of results, set the next request\'s \"pageToken\" value to this.+acNextPageToken :: Lens' AdClients (Maybe Text)+acNextPageToken+  = lens _acNextPageToken+      (\ s a -> s{_acNextPageToken = a})++-- | Kind of list this is, in this case adsensehost#adClients.+acKind :: Lens' AdClients Text+acKind = lens _acKind (\ s a -> s{_acKind = a})++-- | The ad clients returned in this list response.+acItems :: Lens' AdClients [AdClient]+acItems+  = lens _acItems (\ s a -> s{_acItems = a}) . _Default+      . _Coerce++instance FromJSON AdClients where+        parseJSON+          = withObject "AdClients"+              (\ o ->+                 AdClients <$>+                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "adsensehost#adClients")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON AdClients where+        toJSON AdClients{..}+          = object+              (catMaybes+                 [("etag" .=) <$> _acEtag,+                  ("nextPageToken" .=) <$> _acNextPageToken,+                  Just ("kind" .= _acKind), ("items" .=) <$> _acItems])++--+-- /See:/ 'associationSession' smart constructor.+data AssociationSession = AssociationSession+    { _asStatus        :: !(Maybe Text)+    , _asKind          :: !Text+    , _asWebsiteLocale :: !(Maybe Text)+    , _asUserLocale    :: !(Maybe Text)+    , _asAccountId     :: !(Maybe Text)+    , _asProductCodes  :: !(Maybe [Text])+    , _asId            :: !(Maybe Text)+    , _asWebsiteURL    :: !(Maybe Text)+    , _asRedirectURL   :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationSession' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asStatus'+--+-- * 'asKind'+--+-- * 'asWebsiteLocale'+--+-- * 'asUserLocale'+--+-- * 'asAccountId'+--+-- * 'asProductCodes'+--+-- * 'asId'+--+-- * 'asWebsiteURL'+--+-- * 'asRedirectURL'+associationSession+    :: AssociationSession+associationSession =+    AssociationSession+    { _asStatus = Nothing+    , _asKind = "adsensehost#associationSession"+    , _asWebsiteLocale = Nothing+    , _asUserLocale = Nothing+    , _asAccountId = Nothing+    , _asProductCodes = Nothing+    , _asId = Nothing+    , _asWebsiteURL = Nothing+    , _asRedirectURL = Nothing+    }++-- | Status of the completed association, available once the association+-- callback token has been verified. One of ACCEPTED, REJECTED, or ERROR.+asStatus :: Lens' AssociationSession (Maybe Text)+asStatus = lens _asStatus (\ s a -> s{_asStatus = a})++-- | Kind of resource this is, in this case adsensehost#associationSession.+asKind :: Lens' AssociationSession Text+asKind = lens _asKind (\ s a -> s{_asKind = a})++-- | The locale of the user\'s hosted website.+asWebsiteLocale :: Lens' AssociationSession (Maybe Text)+asWebsiteLocale+  = lens _asWebsiteLocale+      (\ s a -> s{_asWebsiteLocale = a})++-- | The preferred locale of the user themselves when going through the+-- AdSense association flow.+asUserLocale :: Lens' AssociationSession (Maybe Text)+asUserLocale+  = lens _asUserLocale (\ s a -> s{_asUserLocale = a})++-- | Hosted account id of the associated publisher after association. Present+-- if status is ACCEPTED.+asAccountId :: Lens' AssociationSession (Maybe Text)+asAccountId+  = lens _asAccountId (\ s a -> s{_asAccountId = a})++-- | The products to associate with the user. Options: AFC, AFF, AFS, AFMC+asProductCodes :: Lens' AssociationSession [Text]+asProductCodes+  = lens _asProductCodes+      (\ s a -> s{_asProductCodes = a})+      . _Default+      . _Coerce++-- | Unique identifier of this association session.+asId :: Lens' AssociationSession (Maybe Text)+asId = lens _asId (\ s a -> s{_asId = a})++-- | The URL of the user\'s hosted website.+asWebsiteURL :: Lens' AssociationSession (Maybe Text)+asWebsiteURL+  = lens _asWebsiteURL (\ s a -> s{_asWebsiteURL = a})++-- | Redirect URL of this association session. Used to redirect users into+-- the AdSense association flow.+asRedirectURL :: Lens' AssociationSession (Maybe Text)+asRedirectURL+  = lens _asRedirectURL+      (\ s a -> s{_asRedirectURL = a})++instance FromJSON AssociationSession where+        parseJSON+          = withObject "AssociationSession"+              (\ o ->+                 AssociationSession <$>+                   (o .:? "status") <*>+                     (o .:? "kind" .!= "adsensehost#associationSession")+                     <*> (o .:? "websiteLocale")+                     <*> (o .:? "userLocale")+                     <*> (o .:? "accountId")+                     <*> (o .:? "productCodes" .!= mempty)+                     <*> (o .:? "id")+                     <*> (o .:? "websiteUrl")+                     <*> (o .:? "redirectUrl"))++instance ToJSON AssociationSession where+        toJSON AssociationSession{..}+          = object+              (catMaybes+                 [("status" .=) <$> _asStatus,+                  Just ("kind" .= _asKind),+                  ("websiteLocale" .=) <$> _asWebsiteLocale,+                  ("userLocale" .=) <$> _asUserLocale,+                  ("accountId" .=) <$> _asAccountId,+                  ("productCodes" .=) <$> _asProductCodes,+                  ("id" .=) <$> _asId,+                  ("websiteUrl" .=) <$> _asWebsiteURL,+                  ("redirectUrl" .=) <$> _asRedirectURL])++--+-- /See:/ 'accounts' smart constructor.+data Accounts = Accounts+    { _aEtag  :: !(Maybe Text)+    , _aKind  :: !Text+    , _aItems :: !(Maybe [Account])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Accounts' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aEtag'+--+-- * 'aKind'+--+-- * 'aItems'+accounts+    :: Accounts+accounts =+    Accounts+    { _aEtag = Nothing+    , _aKind = "adsensehost#accounts"+    , _aItems = Nothing+    }++-- | ETag of this response for caching purposes.+aEtag :: Lens' Accounts (Maybe Text)+aEtag = lens _aEtag (\ s a -> s{_aEtag = a})++-- | Kind of list this is, in this case adsensehost#accounts.+aKind :: Lens' Accounts Text+aKind = lens _aKind (\ s a -> s{_aKind = a})++-- | The accounts returned in this list response.+aItems :: Lens' Accounts [Account]+aItems+  = lens _aItems (\ s a -> s{_aItems = a}) . _Default .+      _Coerce++instance FromJSON Accounts where+        parseJSON+          = withObject "Accounts"+              (\ o ->+                 Accounts <$>+                   (o .:? "etag") <*>+                     (o .:? "kind" .!= "adsensehost#accounts")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON Accounts where+        toJSON Accounts{..}+          = object+              (catMaybes+                 [("etag" .=) <$> _aEtag, Just ("kind" .= _aKind),+                  ("items" .=) <$> _aItems])++--+-- /See:/ 'adUnits' smart constructor.+data AdUnits = AdUnits+    { _auEtag          :: !(Maybe Text)+    , _auNextPageToken :: !(Maybe Text)+    , _auKind          :: !Text+    , _auItems         :: !(Maybe [AdUnit])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdUnits' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'auEtag'+--+-- * 'auNextPageToken'+--+-- * 'auKind'+--+-- * 'auItems'+adUnits+    :: AdUnits+adUnits =+    AdUnits+    { _auEtag = Nothing+    , _auNextPageToken = Nothing+    , _auKind = "adsensehost#adUnits"+    , _auItems = Nothing+    }++-- | ETag of this response for caching purposes.+auEtag :: Lens' AdUnits (Maybe Text)+auEtag = lens _auEtag (\ s a -> s{_auEtag = a})++-- | Continuation token used to page through ad units. To retrieve the next+-- page of results, set the next request\'s \"pageToken\" value to this.+auNextPageToken :: Lens' AdUnits (Maybe Text)+auNextPageToken+  = lens _auNextPageToken+      (\ s a -> s{_auNextPageToken = a})++-- | Kind of list this is, in this case adsensehost#adUnits.+auKind :: Lens' AdUnits Text+auKind = lens _auKind (\ s a -> s{_auKind = a})++-- | The ad units returned in this list response.+auItems :: Lens' AdUnits [AdUnit]+auItems+  = lens _auItems (\ s a -> s{_auItems = a}) . _Default+      . _Coerce++instance FromJSON AdUnits where+        parseJSON+          = withObject "AdUnits"+              (\ o ->+                 AdUnits <$>+                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "adsensehost#adUnits")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON AdUnits where+        toJSON AdUnits{..}+          = object+              (catMaybes+                 [("etag" .=) <$> _auEtag,+                  ("nextPageToken" .=) <$> _auNextPageToken,+                  Just ("kind" .= _auKind), ("items" .=) <$> _auItems])++--+-- /See:/ 'urlChannels' smart constructor.+data URLChannels = URLChannels+    { _ucEtag          :: !(Maybe Text)+    , _ucNextPageToken :: !(Maybe Text)+    , _ucKind          :: !Text+    , _ucItems         :: !(Maybe [URLChannel])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLChannels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ucEtag'+--+-- * 'ucNextPageToken'+--+-- * 'ucKind'+--+-- * 'ucItems'+urlChannels+    :: URLChannels+urlChannels =+    URLChannels+    { _ucEtag = Nothing+    , _ucNextPageToken = Nothing+    , _ucKind = "adsensehost#urlChannels"+    , _ucItems = Nothing+    }++-- | ETag of this response for caching purposes.+ucEtag :: Lens' URLChannels (Maybe Text)+ucEtag = lens _ucEtag (\ s a -> s{_ucEtag = a})++-- | Continuation token used to page through URL channels. To retrieve the+-- next page of results, set the next request\'s \"pageToken\" value to+-- this.+ucNextPageToken :: Lens' URLChannels (Maybe Text)+ucNextPageToken+  = lens _ucNextPageToken+      (\ s a -> s{_ucNextPageToken = a})++-- | Kind of list this is, in this case adsensehost#urlChannels.+ucKind :: Lens' URLChannels Text+ucKind = lens _ucKind (\ s a -> s{_ucKind = a})++-- | The URL channels returned in this list response.+ucItems :: Lens' URLChannels [URLChannel]+ucItems+  = lens _ucItems (\ s a -> s{_ucItems = a}) . _Default+      . _Coerce++instance FromJSON URLChannels where+        parseJSON+          = withObject "URLChannels"+              (\ o ->+                 URLChannels <$>+                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "adsensehost#urlChannels")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON URLChannels where+        toJSON URLChannels{..}+          = object+              (catMaybes+                 [("etag" .=) <$> _ucEtag,+                  ("nextPageToken" .=) <$> _ucNextPageToken,+                  Just ("kind" .= _ucKind), ("items" .=) <$> _ucItems])++--+-- /See:/ 'customChannels' smart constructor.+data CustomChannels = CustomChannels+    { _ccEtag          :: !(Maybe Text)+    , _ccNextPageToken :: !(Maybe Text)+    , _ccKind          :: !Text+    , _ccItems         :: !(Maybe [CustomChannel])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccEtag'+--+-- * 'ccNextPageToken'+--+-- * 'ccKind'+--+-- * 'ccItems'+customChannels+    :: CustomChannels+customChannels =+    CustomChannels+    { _ccEtag = Nothing+    , _ccNextPageToken = Nothing+    , _ccKind = "adsensehost#customChannels"+    , _ccItems = Nothing+    }++-- | ETag of this response for caching purposes.+ccEtag :: Lens' CustomChannels (Maybe Text)+ccEtag = lens _ccEtag (\ s a -> s{_ccEtag = a})++-- | Continuation token used to page through custom channels. To retrieve the+-- next page of results, set the next request\'s \"pageToken\" value to+-- this.+ccNextPageToken :: Lens' CustomChannels (Maybe Text)+ccNextPageToken+  = lens _ccNextPageToken+      (\ s a -> s{_ccNextPageToken = a})++-- | Kind of list this is, in this case adsensehost#customChannels.+ccKind :: Lens' CustomChannels Text+ccKind = lens _ccKind (\ s a -> s{_ccKind = a})++-- | The custom channels returned in this list response.+ccItems :: Lens' CustomChannels [CustomChannel]+ccItems+  = lens _ccItems (\ s a -> s{_ccItems = a}) . _Default+      . _Coerce++instance FromJSON CustomChannels where+        parseJSON+          = withObject "CustomChannels"+              (\ o ->+                 CustomChannels <$>+                   (o .:? "etag") <*> (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "adsensehost#customChannels")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON CustomChannels where+        toJSON CustomChannels{..}+          = object+              (catMaybes+                 [("etag" .=) <$> _ccEtag,+                  ("nextPageToken" .=) <$> _ccNextPageToken,+                  Just ("kind" .= _ccKind), ("items" .=) <$> _ccItems])++--+-- /See:/ 'adUnit' smart constructor.+data AdUnit = AdUnit+    { _auuStatus                   :: !(Maybe Text)+    , _auuMobileContentAdsSettings :: !(Maybe AdUnitMobileContentAdsSettings)+    , _auuKind                     :: !Text+    , _auuCustomStyle              :: !(Maybe AdStyle)+    , _auuName                     :: !(Maybe Text)+    , _auuContentAdsSettings       :: !(Maybe AdUnitContentAdsSettings)+    , _auuCode                     :: !(Maybe Text)+    , _auuId                       :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdUnit' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'auuStatus'+--+-- * 'auuMobileContentAdsSettings'+--+-- * 'auuKind'+--+-- * 'auuCustomStyle'+--+-- * 'auuName'+--+-- * 'auuContentAdsSettings'+--+-- * 'auuCode'+--+-- * 'auuId'+adUnit+    :: AdUnit+adUnit =+    AdUnit+    { _auuStatus = Nothing+    , _auuMobileContentAdsSettings = Nothing+    , _auuKind = "adsensehost#adUnit"+    , _auuCustomStyle = Nothing+    , _auuName = Nothing+    , _auuContentAdsSettings = Nothing+    , _auuCode = Nothing+    , _auuId = Nothing+    }++-- | Status of this ad unit. Possible values are: NEW: Indicates that the ad+-- unit was created within the last seven days and does not yet have any+-- activity associated with it. ACTIVE: Indicates that there has been+-- activity on this ad unit in the last seven days. INACTIVE: Indicates+-- that there has been no activity on this ad unit in the last seven days.+auuStatus :: Lens' AdUnit (Maybe Text)+auuStatus+  = lens _auuStatus (\ s a -> s{_auuStatus = a})++-- | Settings specific to WAP mobile content ads (AFMC).+auuMobileContentAdsSettings :: Lens' AdUnit (Maybe AdUnitMobileContentAdsSettings)+auuMobileContentAdsSettings+  = lens _auuMobileContentAdsSettings+      (\ s a -> s{_auuMobileContentAdsSettings = a})++-- | Kind of resource this is, in this case adsensehost#adUnit.+auuKind :: Lens' AdUnit Text+auuKind = lens _auuKind (\ s a -> s{_auuKind = a})++-- | Custom style information specific to this ad unit.+auuCustomStyle :: Lens' AdUnit (Maybe AdStyle)+auuCustomStyle+  = lens _auuCustomStyle+      (\ s a -> s{_auuCustomStyle = a})++-- | Name of this ad unit.+auuName :: Lens' AdUnit (Maybe Text)+auuName = lens _auuName (\ s a -> s{_auuName = a})++-- | Settings specific to content ads (AFC) and highend mobile content ads+-- (AFMC).+auuContentAdsSettings :: Lens' AdUnit (Maybe AdUnitContentAdsSettings)+auuContentAdsSettings+  = lens _auuContentAdsSettings+      (\ s a -> s{_auuContentAdsSettings = a})++-- | Identity code of this ad unit, not necessarily unique across ad clients.+auuCode :: Lens' AdUnit (Maybe Text)+auuCode = lens _auuCode (\ s a -> s{_auuCode = a})++-- | Unique identifier of this ad unit. This should be considered an opaque+-- identifier; it is not safe to rely on it being in any particular format.+auuId :: Lens' AdUnit (Maybe Text)+auuId = lens _auuId (\ s a -> s{_auuId = a})++instance FromJSON AdUnit where+        parseJSON+          = withObject "AdUnit"+              (\ o ->+                 AdUnit <$>+                   (o .:? "status") <*>+                     (o .:? "mobileContentAdsSettings")+                     <*> (o .:? "kind" .!= "adsensehost#adUnit")+                     <*> (o .:? "customStyle")+                     <*> (o .:? "name")+                     <*> (o .:? "contentAdsSettings")+                     <*> (o .:? "code")+                     <*> (o .:? "id"))++instance ToJSON AdUnit where+        toJSON AdUnit{..}+          = object+              (catMaybes+                 [("status" .=) <$> _auuStatus,+                  ("mobileContentAdsSettings" .=) <$>+                    _auuMobileContentAdsSettings,+                  Just ("kind" .= _auuKind),+                  ("customStyle" .=) <$> _auuCustomStyle,+                  ("name" .=) <$> _auuName,+                  ("contentAdsSettings" .=) <$> _auuContentAdsSettings,+                  ("code" .=) <$> _auuCode, ("id" .=) <$> _auuId])++--+-- /See:/ 'report' smart constructor.+data Report = Report+    { _rKind             :: !Text+    , _rAverages         :: !(Maybe [Text])+    , _rWarnings         :: !(Maybe [Text])+    , _rRows             :: !(Maybe [[Text]])+    , _rTotals           :: !(Maybe [Text])+    , _rHeaders          :: !(Maybe [ReportHeadersItem])+    , _rTotalMatchedRows :: !(Maybe (Textual Int64))+    } 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:+--+-- * 'rKind'+--+-- * 'rAverages'+--+-- * 'rWarnings'+--+-- * 'rRows'+--+-- * 'rTotals'+--+-- * 'rHeaders'+--+-- * 'rTotalMatchedRows'+report+    :: Report+report =+    Report+    { _rKind = "adsensehost#report"+    , _rAverages = Nothing+    , _rWarnings = Nothing+    , _rRows = Nothing+    , _rTotals = Nothing+    , _rHeaders = Nothing+    , _rTotalMatchedRows = Nothing+    }++-- | Kind this is, in this case adsensehost#report.+rKind :: Lens' Report Text+rKind = lens _rKind (\ s a -> s{_rKind = a})++-- | The averages of the report. This is the same length as any other row in+-- the report; cells corresponding to dimension columns are empty.+rAverages :: Lens' Report [Text]+rAverages+  = lens _rAverages (\ s a -> s{_rAverages = a}) .+      _Default+      . _Coerce++-- | Any warnings associated with generation of the report.+rWarnings :: Lens' Report [Text]+rWarnings+  = lens _rWarnings (\ s a -> s{_rWarnings = a}) .+      _Default+      . _Coerce++-- | The output rows of the report. Each row is a list of cells; one for each+-- dimension in the request, followed by one for each metric in the+-- request. The dimension cells contain strings, and the metric cells+-- contain numbers.+rRows :: Lens' Report [[Text]]+rRows+  = lens _rRows (\ s a -> s{_rRows = a}) . _Default .+      _Coerce++-- | The totals of the report. This is the same length as any other row in+-- the report; cells corresponding to dimension columns are empty.+rTotals :: Lens' Report [Text]+rTotals+  = lens _rTotals (\ s a -> s{_rTotals = a}) . _Default+      . _Coerce++-- | The header information of the columns requested in the report. This is a+-- list of headers; one for each dimension in the request, followed by one+-- for each metric in the request.+rHeaders :: Lens' Report [ReportHeadersItem]+rHeaders+  = lens _rHeaders (\ s a -> s{_rHeaders = a}) .+      _Default+      . _Coerce++-- | The total number of rows matched by the report request. Fewer rows may+-- be returned in the response due to being limited by the row count+-- requested or the report row limit.+rTotalMatchedRows :: Lens' Report (Maybe Int64)+rTotalMatchedRows+  = lens _rTotalMatchedRows+      (\ s a -> s{_rTotalMatchedRows = a})+      . mapping _Coerce++instance FromJSON Report where+        parseJSON+          = withObject "Report"+              (\ o ->+                 Report <$>+                   (o .:? "kind" .!= "adsensehost#report") <*>+                     (o .:? "averages" .!= mempty)+                     <*> (o .:? "warnings" .!= mempty)+                     <*> (o .:? "rows" .!= mempty)+                     <*> (o .:? "totals" .!= mempty)+                     <*> (o .:? "headers" .!= mempty)+                     <*> (o .:? "totalMatchedRows"))++instance ToJSON Report where+        toJSON Report{..}+          = object+              (catMaybes+                 [Just ("kind" .= _rKind),+                  ("averages" .=) <$> _rAverages,+                  ("warnings" .=) <$> _rWarnings,+                  ("rows" .=) <$> _rRows, ("totals" .=) <$> _rTotals,+                  ("headers" .=) <$> _rHeaders,+                  ("totalMatchedRows" .=) <$> _rTotalMatchedRows])++-- | The font which is included in the style.+--+-- /See:/ 'adStyleFont' smart constructor.+data AdStyleFont = AdStyleFont+    { _asfSize   :: !(Maybe Text)+    , _asfFamily :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdStyleFont' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asfSize'+--+-- * 'asfFamily'+adStyleFont+    :: AdStyleFont+adStyleFont =+    AdStyleFont+    { _asfSize = Nothing+    , _asfFamily = Nothing+    }++-- | The size of the font. Possible values are: ACCOUNT_DEFAULT_SIZE,+-- ADSENSE_DEFAULT_SIZE, SMALL, MEDIUM and LARGE.+asfSize :: Lens' AdStyleFont (Maybe Text)+asfSize = lens _asfSize (\ s a -> s{_asfSize = a})++-- | The family of the font. Possible values are: ACCOUNT_DEFAULT_FAMILY,+-- ADSENSE_DEFAULT_FAMILY, ARIAL, TIMES and VERDANA.+asfFamily :: Lens' AdStyleFont (Maybe Text)+asfFamily+  = lens _asfFamily (\ s a -> s{_asfFamily = a})++instance FromJSON AdStyleFont where+        parseJSON+          = withObject "AdStyleFont"+              (\ o ->+                 AdStyleFont <$> (o .:? "size") <*> (o .:? "family"))++instance ToJSON AdStyleFont where+        toJSON AdStyleFont{..}+          = object+              (catMaybes+                 [("size" .=) <$> _asfSize,+                  ("family" .=) <$> _asfFamily])++--+-- /See:/ 'account' smart constructor.+data Account = Account+    { _accStatus :: !(Maybe Text)+    , _accKind   :: !Text+    , _accName   :: !(Maybe Text)+    , _accId     :: !(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:+--+-- * 'accStatus'+--+-- * 'accKind'+--+-- * 'accName'+--+-- * 'accId'+account+    :: Account+account =+    Account+    { _accStatus = Nothing+    , _accKind = "adsensehost#account"+    , _accName = Nothing+    , _accId = Nothing+    }++-- | Approval status of this account. One of: PENDING, APPROVED, DISABLED.+accStatus :: Lens' Account (Maybe Text)+accStatus+  = lens _accStatus (\ s a -> s{_accStatus = a})++-- | Kind of resource this is, in this case adsensehost#account.+accKind :: Lens' Account Text+accKind = lens _accKind (\ s a -> s{_accKind = a})++-- | Name of this account.+accName :: Lens' Account (Maybe Text)+accName = lens _accName (\ s a -> s{_accName = a})++-- | Unique identifier of this account.+accId :: Lens' Account (Maybe Text)+accId = lens _accId (\ s a -> s{_accId = a})++instance FromJSON Account where+        parseJSON+          = withObject "Account"+              (\ o ->+                 Account <$>+                   (o .:? "status") <*>+                     (o .:? "kind" .!= "adsensehost#account")+                     <*> (o .:? "name")+                     <*> (o .:? "id"))++instance ToJSON Account where+        toJSON Account{..}+          = object+              (catMaybes+                 [("status" .=) <$> _accStatus,+                  Just ("kind" .= _accKind), ("name" .=) <$> _accName,+                  ("id" .=) <$> _accId])++-- | Settings specific to WAP mobile content ads (AFMC).+--+-- /See:/ 'adUnitMobileContentAdsSettings' smart constructor.+data AdUnitMobileContentAdsSettings = AdUnitMobileContentAdsSettings+    { _aumcasSize              :: !(Maybe Text)+    , _aumcasScriptingLanguage :: !(Maybe Text)+    , _aumcasMarkupLanguage    :: !(Maybe Text)+    , _aumcasType              :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdUnitMobileContentAdsSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aumcasSize'+--+-- * 'aumcasScriptingLanguage'+--+-- * 'aumcasMarkupLanguage'+--+-- * 'aumcasType'+adUnitMobileContentAdsSettings+    :: AdUnitMobileContentAdsSettings+adUnitMobileContentAdsSettings =+    AdUnitMobileContentAdsSettings+    { _aumcasSize = Nothing+    , _aumcasScriptingLanguage = Nothing+    , _aumcasMarkupLanguage = Nothing+    , _aumcasType = Nothing+    }++-- | Size of this ad unit.+aumcasSize :: Lens' AdUnitMobileContentAdsSettings (Maybe Text)+aumcasSize+  = lens _aumcasSize (\ s a -> s{_aumcasSize = a})++-- | The scripting language to use for this ad unit.+aumcasScriptingLanguage :: Lens' AdUnitMobileContentAdsSettings (Maybe Text)+aumcasScriptingLanguage+  = lens _aumcasScriptingLanguage+      (\ s a -> s{_aumcasScriptingLanguage = a})++-- | The markup language to use for this ad unit.+aumcasMarkupLanguage :: Lens' AdUnitMobileContentAdsSettings (Maybe Text)+aumcasMarkupLanguage+  = lens _aumcasMarkupLanguage+      (\ s a -> s{_aumcasMarkupLanguage = a})++-- | Type of this ad unit.+aumcasType :: Lens' AdUnitMobileContentAdsSettings (Maybe Text)+aumcasType+  = lens _aumcasType (\ s a -> s{_aumcasType = a})++instance FromJSON AdUnitMobileContentAdsSettings+         where+        parseJSON+          = withObject "AdUnitMobileContentAdsSettings"+              (\ o ->+                 AdUnitMobileContentAdsSettings <$>+                   (o .:? "size") <*> (o .:? "scriptingLanguage") <*>+                     (o .:? "markupLanguage")+                     <*> (o .:? "type"))++instance ToJSON AdUnitMobileContentAdsSettings where+        toJSON AdUnitMobileContentAdsSettings{..}+          = object+              (catMaybes+                 [("size" .=) <$> _aumcasSize,+                  ("scriptingLanguage" .=) <$>+                    _aumcasScriptingLanguage,+                  ("markupLanguage" .=) <$> _aumcasMarkupLanguage,+                  ("type" .=) <$> _aumcasType])++-- | The colors included in the style. These are represented as six+-- hexadecimal characters, similar to HTML color codes, but without the+-- leading hash.+--+-- /See:/ 'adStyleColors' smart constructor.+data AdStyleColors = AdStyleColors+    { _ascText       :: !(Maybe Text)+    , _ascURL        :: !(Maybe Text)+    , _ascBOrder     :: !(Maybe Text)+    , _ascTitle      :: !(Maybe Text)+    , _ascBackgRound :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdStyleColors' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ascText'+--+-- * 'ascURL'+--+-- * 'ascBOrder'+--+-- * 'ascTitle'+--+-- * 'ascBackgRound'+adStyleColors+    :: AdStyleColors+adStyleColors =+    AdStyleColors+    { _ascText = Nothing+    , _ascURL = Nothing+    , _ascBOrder = Nothing+    , _ascTitle = Nothing+    , _ascBackgRound = Nothing+    }++-- | The color of the ad text.+ascText :: Lens' AdStyleColors (Maybe Text)+ascText = lens _ascText (\ s a -> s{_ascText = a})++-- | The color of the ad url.+ascURL :: Lens' AdStyleColors (Maybe Text)+ascURL = lens _ascURL (\ s a -> s{_ascURL = a})++-- | The color of the ad border.+ascBOrder :: Lens' AdStyleColors (Maybe Text)+ascBOrder+  = lens _ascBOrder (\ s a -> s{_ascBOrder = a})++-- | The color of the ad title.+ascTitle :: Lens' AdStyleColors (Maybe Text)+ascTitle = lens _ascTitle (\ s a -> s{_ascTitle = a})++-- | The color of the ad background.+ascBackgRound :: Lens' AdStyleColors (Maybe Text)+ascBackgRound+  = lens _ascBackgRound+      (\ s a -> s{_ascBackgRound = a})++instance FromJSON AdStyleColors where+        parseJSON+          = withObject "AdStyleColors"+              (\ o ->+                 AdStyleColors <$>+                   (o .:? "text") <*> (o .:? "url") <*> (o .:? "border")+                     <*> (o .:? "title")+                     <*> (o .:? "background"))++instance ToJSON AdStyleColors where+        toJSON AdStyleColors{..}+          = object+              (catMaybes+                 [("text" .=) <$> _ascText, ("url" .=) <$> _ascURL,+                  ("border" .=) <$> _ascBOrder,+                  ("title" .=) <$> _ascTitle,+                  ("background" .=) <$> _ascBackgRound])++-- | The backup option to be used in instances where no ad is available.+--+-- /See:/ 'adUnitContentAdsSettingsBackupOption' smart constructor.+data AdUnitContentAdsSettingsBackupOption = AdUnitContentAdsSettingsBackupOption+    { _aucasboColor :: !(Maybe Text)+    , _aucasboURL   :: !(Maybe Text)+    , _aucasboType  :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdUnitContentAdsSettingsBackupOption' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aucasboColor'+--+-- * 'aucasboURL'+--+-- * 'aucasboType'+adUnitContentAdsSettingsBackupOption+    :: AdUnitContentAdsSettingsBackupOption+adUnitContentAdsSettingsBackupOption =+    AdUnitContentAdsSettingsBackupOption+    { _aucasboColor = Nothing+    , _aucasboURL = Nothing+    , _aucasboType = Nothing+    }++-- | Color to use when type is set to COLOR. These are represented as six+-- hexadecimal characters, similar to HTML color codes, but without the+-- leading hash.+aucasboColor :: Lens' AdUnitContentAdsSettingsBackupOption (Maybe Text)+aucasboColor+  = lens _aucasboColor (\ s a -> s{_aucasboColor = a})++-- | URL to use when type is set to URL.+aucasboURL :: Lens' AdUnitContentAdsSettingsBackupOption (Maybe Text)+aucasboURL+  = lens _aucasboURL (\ s a -> s{_aucasboURL = a})++-- | Type of the backup option. Possible values are BLANK, COLOR and URL.+aucasboType :: Lens' AdUnitContentAdsSettingsBackupOption (Maybe Text)+aucasboType+  = lens _aucasboType (\ s a -> s{_aucasboType = a})++instance FromJSON+         AdUnitContentAdsSettingsBackupOption where+        parseJSON+          = withObject "AdUnitContentAdsSettingsBackupOption"+              (\ o ->+                 AdUnitContentAdsSettingsBackupOption <$>+                   (o .:? "color") <*> (o .:? "url") <*> (o .:? "type"))++instance ToJSON AdUnitContentAdsSettingsBackupOption+         where+        toJSON AdUnitContentAdsSettingsBackupOption{..}+          = object+              (catMaybes+                 [("color" .=) <$> _aucasboColor,+                  ("url" .=) <$> _aucasboURL,+                  ("type" .=) <$> _aucasboType])++--+-- /See:/ 'adClient' smart constructor.+data AdClient = AdClient+    { _adKind              :: !Text+    , _adArcOptIn          :: !(Maybe Bool)+    , _adSupportsReporting :: !(Maybe Bool)+    , _adId                :: !(Maybe Text)+    , _adProductCode       :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdClient' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adKind'+--+-- * 'adArcOptIn'+--+-- * 'adSupportsReporting'+--+-- * 'adId'+--+-- * 'adProductCode'+adClient+    :: AdClient+adClient =+    AdClient+    { _adKind = "adsensehost#adClient"+    , _adArcOptIn = Nothing+    , _adSupportsReporting = Nothing+    , _adId = Nothing+    , _adProductCode = Nothing+    }++-- | Kind of resource this is, in this case adsensehost#adClient.+adKind :: Lens' AdClient Text+adKind = lens _adKind (\ s a -> s{_adKind = a})++-- | Whether this ad client is opted in to ARC.+adArcOptIn :: Lens' AdClient (Maybe Bool)+adArcOptIn+  = lens _adArcOptIn (\ s a -> s{_adArcOptIn = a})++-- | Whether this ad client supports being reported on.+adSupportsReporting :: Lens' AdClient (Maybe Bool)+adSupportsReporting+  = lens _adSupportsReporting+      (\ s a -> s{_adSupportsReporting = a})++-- | Unique identifier of this ad client.+adId :: Lens' AdClient (Maybe Text)+adId = lens _adId (\ s a -> s{_adId = a})++-- | This ad client\'s product code, which corresponds to the PRODUCT_CODE+-- report dimension.+adProductCode :: Lens' AdClient (Maybe Text)+adProductCode+  = lens _adProductCode+      (\ s a -> s{_adProductCode = a})++instance FromJSON AdClient where+        parseJSON+          = withObject "AdClient"+              (\ o ->+                 AdClient <$>+                   (o .:? "kind" .!= "adsensehost#adClient") <*>+                     (o .:? "arcOptIn")+                     <*> (o .:? "supportsReporting")+                     <*> (o .:? "id")+                     <*> (o .:? "productCode"))++instance ToJSON AdClient where+        toJSON AdClient{..}+          = object+              (catMaybes+                 [Just ("kind" .= _adKind),+                  ("arcOptIn" .=) <$> _adArcOptIn,+                  ("supportsReporting" .=) <$> _adSupportsReporting,+                  ("id" .=) <$> _adId,+                  ("productCode" .=) <$> _adProductCode])++--+-- /See:/ 'reportHeadersItem' smart constructor.+data ReportHeadersItem = ReportHeadersItem+    { _rhiName     :: !(Maybe Text)+    , _rhiCurrency :: !(Maybe Text)+    , _rhiType     :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReportHeadersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rhiName'+--+-- * 'rhiCurrency'+--+-- * 'rhiType'+reportHeadersItem+    :: ReportHeadersItem+reportHeadersItem =+    ReportHeadersItem+    { _rhiName = Nothing+    , _rhiCurrency = Nothing+    , _rhiType = Nothing+    }++-- | The name of the header.+rhiName :: Lens' ReportHeadersItem (Maybe Text)+rhiName = lens _rhiName (\ s a -> s{_rhiName = a})++-- | The currency of this column. Only present if the header type is+-- METRIC_CURRENCY.+rhiCurrency :: Lens' ReportHeadersItem (Maybe Text)+rhiCurrency+  = lens _rhiCurrency (\ s a -> s{_rhiCurrency = a})++-- | The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or+-- METRIC_CURRENCY.+rhiType :: Lens' ReportHeadersItem (Maybe Text)+rhiType = lens _rhiType (\ s a -> s{_rhiType = a})++instance FromJSON ReportHeadersItem where+        parseJSON+          = withObject "ReportHeadersItem"+              (\ o ->+                 ReportHeadersItem <$>+                   (o .:? "name") <*> (o .:? "currency") <*>+                     (o .:? "type"))++instance ToJSON ReportHeadersItem where+        toJSON ReportHeadersItem{..}+          = object+              (catMaybes+                 [("name" .=) <$> _rhiName,+                  ("currency" .=) <$> _rhiCurrency,+                  ("type" .=) <$> _rhiType])++--+-- /See:/ 'adStyle' smart constructor.+data AdStyle = AdStyle+    { _assCorners :: !(Maybe Text)+    , _assKind    :: !Text+    , _assFont    :: !(Maybe AdStyleFont)+    , _assColors  :: !(Maybe AdStyleColors)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdStyle' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'assCorners'+--+-- * 'assKind'+--+-- * 'assFont'+--+-- * 'assColors'+adStyle+    :: AdStyle+adStyle =+    AdStyle+    { _assCorners = Nothing+    , _assKind = "adsensehost#adStyle"+    , _assFont = Nothing+    , _assColors = Nothing+    }++-- | The style of the corners in the ad. Possible values are SQUARE,+-- SLIGHTLY_ROUNDED and VERY_ROUNDED.+assCorners :: Lens' AdStyle (Maybe Text)+assCorners+  = lens _assCorners (\ s a -> s{_assCorners = a})++-- | Kind this is, in this case adsensehost#adStyle.+assKind :: Lens' AdStyle Text+assKind = lens _assKind (\ s a -> s{_assKind = a})++-- | The font which is included in the style.+assFont :: Lens' AdStyle (Maybe AdStyleFont)+assFont = lens _assFont (\ s a -> s{_assFont = a})++-- | The colors included in the style. These are represented as six+-- hexadecimal characters, similar to HTML color codes, but without the+-- leading hash.+assColors :: Lens' AdStyle (Maybe AdStyleColors)+assColors+  = lens _assColors (\ s a -> s{_assColors = a})++instance FromJSON AdStyle where+        parseJSON+          = withObject "AdStyle"+              (\ o ->+                 AdStyle <$>+                   (o .:? "corners") <*>+                     (o .:? "kind" .!= "adsensehost#adStyle")+                     <*> (o .:? "font")+                     <*> (o .:? "colors"))++instance ToJSON AdStyle where+        toJSON AdStyle{..}+          = object+              (catMaybes+                 [("corners" .=) <$> _assCorners,+                  Just ("kind" .= _assKind), ("font" .=) <$> _assFont,+                  ("colors" .=) <$> _assColors])++--+-- /See:/ 'customChannel' smart constructor.+data CustomChannel = CustomChannel+    { _cKind :: !Text+    , _cName :: !(Maybe Text)+    , _cCode :: !(Maybe Text)+    , _cId   :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cKind'+--+-- * 'cName'+--+-- * 'cCode'+--+-- * 'cId'+customChannel+    :: CustomChannel+customChannel =+    CustomChannel+    { _cKind = "adsensehost#customChannel"+    , _cName = Nothing+    , _cCode = Nothing+    , _cId = Nothing+    }++-- | Kind of resource this is, in this case adsensehost#customChannel.+cKind :: Lens' CustomChannel Text+cKind = lens _cKind (\ s a -> s{_cKind = a})++-- | Name of this custom channel.+cName :: Lens' CustomChannel (Maybe Text)+cName = lens _cName (\ s a -> s{_cName = a})++-- | Code of this custom channel, not necessarily unique across ad clients.+cCode :: Lens' CustomChannel (Maybe Text)+cCode = lens _cCode (\ s a -> s{_cCode = a})++-- | Unique identifier of this custom channel. This should be considered an+-- opaque identifier; it is not safe to rely on it being in any particular+-- format.+cId :: Lens' CustomChannel (Maybe Text)+cId = lens _cId (\ s a -> s{_cId = a})++instance FromJSON CustomChannel where+        parseJSON+          = withObject "CustomChannel"+              (\ o ->+                 CustomChannel <$>+                   (o .:? "kind" .!= "adsensehost#customChannel") <*>+                     (o .:? "name")+                     <*> (o .:? "code")+                     <*> (o .:? "id"))++instance ToJSON CustomChannel where+        toJSON CustomChannel{..}+          = object+              (catMaybes+                 [Just ("kind" .= _cKind), ("name" .=) <$> _cName,+                  ("code" .=) <$> _cCode, ("id" .=) <$> _cId])++--+-- /See:/ 'urlChannel' smart constructor.+data URLChannel = URLChannel+    { _urlcKind       :: !Text+    , _urlcId         :: !(Maybe Text)+    , _urlcURLPattern :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLChannel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'urlcKind'+--+-- * 'urlcId'+--+-- * 'urlcURLPattern'+urlChannel+    :: URLChannel+urlChannel =+    URLChannel+    { _urlcKind = "adsensehost#urlChannel"+    , _urlcId = Nothing+    , _urlcURLPattern = Nothing+    }++-- | Kind of resource this is, in this case adsensehost#urlChannel.+urlcKind :: Lens' URLChannel Text+urlcKind = lens _urlcKind (\ s a -> s{_urlcKind = a})++-- | Unique identifier of this URL channel. This should be considered an+-- opaque identifier; it is not safe to rely on it being in any particular+-- format.+urlcId :: Lens' URLChannel (Maybe Text)+urlcId = lens _urlcId (\ s a -> s{_urlcId = a})++-- | URL Pattern of this URL channel. Does not include \"http:\/\/\" or+-- \"https:\/\/\". Example: www.example.com\/home+urlcURLPattern :: Lens' URLChannel (Maybe Text)+urlcURLPattern+  = lens _urlcURLPattern+      (\ s a -> s{_urlcURLPattern = a})++instance FromJSON URLChannel where+        parseJSON+          = withObject "URLChannel"+              (\ o ->+                 URLChannel <$>+                   (o .:? "kind" .!= "adsensehost#urlChannel") <*>+                     (o .:? "id")+                     <*> (o .:? "urlPattern"))++instance ToJSON URLChannel where+        toJSON URLChannel{..}+          = object+              (catMaybes+                 [Just ("kind" .= _urlcKind), ("id" .=) <$> _urlcId,+                  ("urlPattern" .=) <$> _urlcURLPattern])++--+-- /See:/ 'adCode' smart constructor.+data AdCode = AdCode+    { _aaKind   :: !Text+    , _aaAdCode :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdCode' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaKind'+--+-- * 'aaAdCode'+adCode+    :: AdCode+adCode =+    AdCode+    { _aaKind = "adsensehost#adCode"+    , _aaAdCode = Nothing+    }++-- | Kind this is, in this case adsensehost#adCode.+aaKind :: Lens' AdCode Text+aaKind = lens _aaKind (\ s a -> s{_aaKind = a})++-- | The ad code snippet.+aaAdCode :: Lens' AdCode (Maybe Text)+aaAdCode = lens _aaAdCode (\ s a -> s{_aaAdCode = a})++instance FromJSON AdCode where+        parseJSON+          = withObject "AdCode"+              (\ o ->+                 AdCode <$>+                   (o .:? "kind" .!= "adsensehost#adCode") <*>+                     (o .:? "adCode"))++instance ToJSON AdCode where+        toJSON AdCode{..}+          = object+              (catMaybes+                 [Just ("kind" .= _aaKind),+                  ("adCode" .=) <$> _aaAdCode])++-- | Settings specific to content ads (AFC) and highend mobile content ads+-- (AFMC).+--+-- /See:/ 'adUnitContentAdsSettings' smart constructor.+data AdUnitContentAdsSettings = AdUnitContentAdsSettings+    { _aucasBackupOption :: !(Maybe AdUnitContentAdsSettingsBackupOption)+    , _aucasSize         :: !(Maybe Text)+    , _aucasType         :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdUnitContentAdsSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aucasBackupOption'+--+-- * 'aucasSize'+--+-- * 'aucasType'+adUnitContentAdsSettings+    :: AdUnitContentAdsSettings+adUnitContentAdsSettings =+    AdUnitContentAdsSettings+    { _aucasBackupOption = Nothing+    , _aucasSize = Nothing+    , _aucasType = Nothing+    }++-- | The backup option to be used in instances where no ad is available.+aucasBackupOption :: Lens' AdUnitContentAdsSettings (Maybe AdUnitContentAdsSettingsBackupOption)+aucasBackupOption+  = lens _aucasBackupOption+      (\ s a -> s{_aucasBackupOption = a})++-- | Size of this ad unit. Size values are in the form SIZE_{width}_{height}.+aucasSize :: Lens' AdUnitContentAdsSettings (Maybe Text)+aucasSize+  = lens _aucasSize (\ s a -> s{_aucasSize = a})++-- | Type of this ad unit. Possible values are TEXT, TEXT_IMAGE, IMAGE and+-- LINK.+aucasType :: Lens' AdUnitContentAdsSettings (Maybe Text)+aucasType+  = lens _aucasType (\ s a -> s{_aucasType = a})++instance FromJSON AdUnitContentAdsSettings where+        parseJSON+          = withObject "AdUnitContentAdsSettings"+              (\ o ->+                 AdUnitContentAdsSettings <$>+                   (o .:? "backupOption") <*> (o .:? "size") <*>+                     (o .:? "type"))++instance ToJSON AdUnitContentAdsSettings where+        toJSON AdUnitContentAdsSettings{..}+          = object+              (catMaybes+                 [("backupOption" .=) <$> _aucasBackupOption,+                  ("size" .=) <$> _aucasSize,+                  ("type" .=) <$> _aucasType])
+ gen/Network/Google/AdSenseHost/Types/Sum.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE LambdaCase         #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Network.Google.AdSenseHost.Types.Sum+-- Copyright   : (c) 2015 Brendan 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.AdSenseHost.Types.Sum where++import           Network.Google.Prelude++-- | Products to associate with the user.+data AssociationSessionsStartProductCode+    = Afc+      -- ^ @AFC@+      -- AdSense For Content+    | Afg+      -- ^ @AFG@+      -- AdSense For Games+    | Afmc+      -- ^ @AFMC@+      -- AdSense For Mobile Content+    | Afs+      -- ^ @AFS@+      -- AdSense For Search+    | Afv+      -- ^ @AFV@+      -- AdSense For Video+      deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)++instance Hashable AssociationSessionsStartProductCode++instance FromText AssociationSessionsStartProductCode where+    fromText = \case+        "AFC" -> Just Afc+        "AFG" -> Just Afg+        "AFMC" -> Just Afmc+        "AFS" -> Just Afs+        "AFV" -> Just Afv+        _ -> Nothing++instance ToText AssociationSessionsStartProductCode where+    toText = \case+        Afc -> "AFC"+        Afg -> "AFG"+        Afmc -> "AFMC"+        Afs -> "AFS"+        Afv -> "AFV"++instance FromJSON AssociationSessionsStartProductCode where+    parseJSON = parseJSONText "AssociationSessionsStartProductCode"++instance ToJSON AssociationSessionsStartProductCode where+    toJSON = toJSONText
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdClients/Get.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdClients.Get+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about one of the ad clients in the specified+-- publisher\'s AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adclients.get@.+module Network.Google.Resource.AdSenseHost.Accounts.AdClients.Get+    (+    -- * REST Resource+      AccountsAdClientsGetResource++    -- * Creating a Request+    , accountsAdClientsGet+    , AccountsAdClientsGet++    -- * Request Lenses+    , aacgAdClientId+    , aacgAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adclients.get@ method which the+-- 'AccountsAdClientsGet' request conforms to.+type AccountsAdClientsGetResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 QueryParam "alt" AltJSON :> Get '[JSON] AdClient++-- | Get information about one of the ad clients in the specified+-- publisher\'s AdSense account.+--+-- /See:/ 'accountsAdClientsGet' smart constructor.+data AccountsAdClientsGet = AccountsAdClientsGet+    { _aacgAdClientId :: !Text+    , _aacgAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdClientsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aacgAdClientId'+--+-- * 'aacgAccountId'+accountsAdClientsGet+    :: Text -- ^ 'aacgAdClientId'+    -> Text -- ^ 'aacgAccountId'+    -> AccountsAdClientsGet+accountsAdClientsGet pAacgAdClientId_ pAacgAccountId_ =+    AccountsAdClientsGet+    { _aacgAdClientId = pAacgAdClientId_+    , _aacgAccountId = pAacgAccountId_+    }++-- | Ad client to get.+aacgAdClientId :: Lens' AccountsAdClientsGet Text+aacgAdClientId+  = lens _aacgAdClientId+      (\ s a -> s{_aacgAdClientId = a})++-- | Account which contains the ad client.+aacgAccountId :: Lens' AccountsAdClientsGet Text+aacgAccountId+  = lens _aacgAccountId+      (\ s a -> s{_aacgAccountId = a})++instance GoogleRequest AccountsAdClientsGet where+        type Rs AccountsAdClientsGet = AdClient+        requestClient AccountsAdClientsGet{..}+          = go _aacgAccountId _aacgAdClientId (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdClientsGetResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdClients/List.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdClients.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all hosted ad clients in the specified hosted account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adclients.list@.+module Network.Google.Resource.AdSenseHost.Accounts.AdClients.List+    (+    -- * REST Resource+      AccountsAdClientsListResource++    -- * Creating a Request+    , accountsAdClientsList+    , AccountsAdClientsList++    -- * Request Lenses+    , aaclAccountId+    , aaclPageToken+    , aaclMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adclients.list@ method which the+-- 'AccountsAdClientsList' request conforms to.+type AccountsAdClientsListResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               QueryParam "pageToken" Text :>+                 QueryParam "maxResults" (Textual Word32) :>+                   QueryParam "alt" AltJSON :> Get '[JSON] AdClients++-- | List all hosted ad clients in the specified hosted account.+--+-- /See:/ 'accountsAdClientsList' smart constructor.+data AccountsAdClientsList = AccountsAdClientsList+    { _aaclAccountId  :: !Text+    , _aaclPageToken  :: !(Maybe Text)+    , _aaclMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdClientsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaclAccountId'+--+-- * 'aaclPageToken'+--+-- * 'aaclMaxResults'+accountsAdClientsList+    :: Text -- ^ 'aaclAccountId'+    -> AccountsAdClientsList+accountsAdClientsList pAaclAccountId_ =+    AccountsAdClientsList+    { _aaclAccountId = pAaclAccountId_+    , _aaclPageToken = Nothing+    , _aaclMaxResults = Nothing+    }++-- | Account for which to list ad clients.+aaclAccountId :: Lens' AccountsAdClientsList Text+aaclAccountId+  = lens _aaclAccountId+      (\ s a -> s{_aaclAccountId = a})++-- | A continuation token, used to page through ad clients. To retrieve the+-- next page, set this parameter to the value of \"nextPageToken\" from the+-- previous response.+aaclPageToken :: Lens' AccountsAdClientsList (Maybe Text)+aaclPageToken+  = lens _aaclPageToken+      (\ s a -> s{_aaclPageToken = a})++-- | The maximum number of ad clients to include in the response, used for+-- paging.+aaclMaxResults :: Lens' AccountsAdClientsList (Maybe Word32)+aaclMaxResults+  = lens _aaclMaxResults+      (\ s a -> s{_aaclMaxResults = a})+      . mapping _Coerce++instance GoogleRequest AccountsAdClientsList where+        type Rs AccountsAdClientsList = AdClients+        requestClient AccountsAdClientsList{..}+          = go _aaclAccountId _aaclPageToken _aaclMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdClientsListResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Delete.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Delete+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete the specified ad unit from the specified publisher AdSense+-- account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.delete@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Delete+    (+    -- * REST Resource+      AccountsAdUnitsDeleteResource++    -- * Creating a Request+    , accountsAdUnitsDelete+    , AccountsAdUnitsDelete++    -- * Request Lenses+    , aaudAdUnitId+    , aaudAdClientId+    , aaudAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.delete@ method which the+-- 'AccountsAdUnitsDelete' request conforms to.+type AccountsAdUnitsDeleteResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   Capture "adUnitId" Text :>+                     QueryParam "alt" AltJSON :> Delete '[JSON] AdUnit++-- | Delete the specified ad unit from the specified publisher AdSense+-- account.+--+-- /See:/ 'accountsAdUnitsDelete' smart constructor.+data AccountsAdUnitsDelete = AccountsAdUnitsDelete+    { _aaudAdUnitId   :: !Text+    , _aaudAdClientId :: !Text+    , _aaudAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaudAdUnitId'+--+-- * 'aaudAdClientId'+--+-- * 'aaudAccountId'+accountsAdUnitsDelete+    :: Text -- ^ 'aaudAdUnitId'+    -> Text -- ^ 'aaudAdClientId'+    -> Text -- ^ 'aaudAccountId'+    -> AccountsAdUnitsDelete+accountsAdUnitsDelete pAaudAdUnitId_ pAaudAdClientId_ pAaudAccountId_ =+    AccountsAdUnitsDelete+    { _aaudAdUnitId = pAaudAdUnitId_+    , _aaudAdClientId = pAaudAdClientId_+    , _aaudAccountId = pAaudAccountId_+    }++-- | Ad unit to delete.+aaudAdUnitId :: Lens' AccountsAdUnitsDelete Text+aaudAdUnitId+  = lens _aaudAdUnitId (\ s a -> s{_aaudAdUnitId = a})++-- | Ad client for which to get ad unit.+aaudAdClientId :: Lens' AccountsAdUnitsDelete Text+aaudAdClientId+  = lens _aaudAdClientId+      (\ s a -> s{_aaudAdClientId = a})++-- | Account which contains the ad unit.+aaudAccountId :: Lens' AccountsAdUnitsDelete Text+aaudAccountId+  = lens _aaudAccountId+      (\ s a -> s{_aaudAccountId = a})++instance GoogleRequest AccountsAdUnitsDelete where+        type Rs AccountsAdUnitsDelete = AdUnit+        requestClient AccountsAdUnitsDelete{..}+          = go _aaudAccountId _aaudAdClientId _aaudAdUnitId+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsDeleteResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Get.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Get+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get the specified host ad unit in this AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.get@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Get+    (+    -- * REST Resource+      AccountsAdUnitsGetResource++    -- * Creating a Request+    , accountsAdUnitsGet+    , AccountsAdUnitsGet++    -- * Request Lenses+    , aaugAdUnitId+    , aaugAdClientId+    , aaugAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.get@ method which the+-- 'AccountsAdUnitsGet' request conforms to.+type AccountsAdUnitsGetResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   Capture "adUnitId" Text :>+                     QueryParam "alt" AltJSON :> Get '[JSON] AdUnit++-- | Get the specified host ad unit in this AdSense account.+--+-- /See:/ 'accountsAdUnitsGet' smart constructor.+data AccountsAdUnitsGet = AccountsAdUnitsGet+    { _aaugAdUnitId   :: !Text+    , _aaugAdClientId :: !Text+    , _aaugAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaugAdUnitId'+--+-- * 'aaugAdClientId'+--+-- * 'aaugAccountId'+accountsAdUnitsGet+    :: Text -- ^ 'aaugAdUnitId'+    -> Text -- ^ 'aaugAdClientId'+    -> Text -- ^ 'aaugAccountId'+    -> AccountsAdUnitsGet+accountsAdUnitsGet pAaugAdUnitId_ pAaugAdClientId_ pAaugAccountId_ =+    AccountsAdUnitsGet+    { _aaugAdUnitId = pAaugAdUnitId_+    , _aaugAdClientId = pAaugAdClientId_+    , _aaugAccountId = pAaugAccountId_+    }++-- | Ad unit to get.+aaugAdUnitId :: Lens' AccountsAdUnitsGet Text+aaugAdUnitId+  = lens _aaugAdUnitId (\ s a -> s{_aaugAdUnitId = a})++-- | Ad client for which to get ad unit.+aaugAdClientId :: Lens' AccountsAdUnitsGet Text+aaugAdClientId+  = lens _aaugAdClientId+      (\ s a -> s{_aaugAdClientId = a})++-- | Account which contains the ad unit.+aaugAccountId :: Lens' AccountsAdUnitsGet Text+aaugAccountId+  = lens _aaugAccountId+      (\ s a -> s{_aaugAccountId = a})++instance GoogleRequest AccountsAdUnitsGet where+        type Rs AccountsAdUnitsGet = AdUnit+        requestClient AccountsAdUnitsGet{..}+          = go _aaugAccountId _aaugAdClientId _aaugAdUnitId+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsGetResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/GetAdCode.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.GetAdCode+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get ad code for the specified ad unit, attaching the specified host+-- custom channels.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.getAdCode@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.GetAdCode+    (+    -- * REST Resource+      AccountsAdUnitsGetAdCodeResource++    -- * Creating a Request+    , accountsAdUnitsGetAdCode+    , AccountsAdUnitsGetAdCode++    -- * Request Lenses+    , aaugacAdUnitId+    , aaugacAdClientId+    , aaugacAccountId+    , aaugacHostCustomChannelId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.getAdCode@ method which the+-- 'AccountsAdUnitsGetAdCode' request conforms to.+type AccountsAdUnitsGetAdCodeResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   Capture "adUnitId" Text :>+                     "adcode" :>+                       QueryParams "hostCustomChannelId" Text :>+                         QueryParam "alt" AltJSON :> Get '[JSON] AdCode++-- | Get ad code for the specified ad unit, attaching the specified host+-- custom channels.+--+-- /See:/ 'accountsAdUnitsGetAdCode' smart constructor.+data AccountsAdUnitsGetAdCode = AccountsAdUnitsGetAdCode+    { _aaugacAdUnitId            :: !Text+    , _aaugacAdClientId          :: !Text+    , _aaugacAccountId           :: !Text+    , _aaugacHostCustomChannelId :: !(Maybe [Text])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsGetAdCode' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaugacAdUnitId'+--+-- * 'aaugacAdClientId'+--+-- * 'aaugacAccountId'+--+-- * 'aaugacHostCustomChannelId'+accountsAdUnitsGetAdCode+    :: Text -- ^ 'aaugacAdUnitId'+    -> Text -- ^ 'aaugacAdClientId'+    -> Text -- ^ 'aaugacAccountId'+    -> AccountsAdUnitsGetAdCode+accountsAdUnitsGetAdCode pAaugacAdUnitId_ pAaugacAdClientId_ pAaugacAccountId_ =+    AccountsAdUnitsGetAdCode+    { _aaugacAdUnitId = pAaugacAdUnitId_+    , _aaugacAdClientId = pAaugacAdClientId_+    , _aaugacAccountId = pAaugacAccountId_+    , _aaugacHostCustomChannelId = Nothing+    }++-- | Ad unit to get the code for.+aaugacAdUnitId :: Lens' AccountsAdUnitsGetAdCode Text+aaugacAdUnitId+  = lens _aaugacAdUnitId+      (\ s a -> s{_aaugacAdUnitId = a})++-- | Ad client with contains the ad unit.+aaugacAdClientId :: Lens' AccountsAdUnitsGetAdCode Text+aaugacAdClientId+  = lens _aaugacAdClientId+      (\ s a -> s{_aaugacAdClientId = a})++-- | Account which contains the ad client.+aaugacAccountId :: Lens' AccountsAdUnitsGetAdCode Text+aaugacAccountId+  = lens _aaugacAccountId+      (\ s a -> s{_aaugacAccountId = a})++-- | Host custom channel to attach to the ad code.+aaugacHostCustomChannelId :: Lens' AccountsAdUnitsGetAdCode [Text]+aaugacHostCustomChannelId+  = lens _aaugacHostCustomChannelId+      (\ s a -> s{_aaugacHostCustomChannelId = a})+      . _Default+      . _Coerce++instance GoogleRequest AccountsAdUnitsGetAdCode where+        type Rs AccountsAdUnitsGetAdCode = AdCode+        requestClient AccountsAdUnitsGetAdCode{..}+          = go _aaugacAccountId _aaugacAdClientId+              _aaugacAdUnitId+              (_aaugacHostCustomChannelId ^. _Default)+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsGetAdCodeResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Insert.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Insert+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Insert the supplied ad unit into the specified publisher AdSense+-- account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.insert@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Insert+    (+    -- * REST Resource+      AccountsAdUnitsInsertResource++    -- * Creating a Request+    , accountsAdUnitsInsert+    , AccountsAdUnitsInsert++    -- * Request Lenses+    , aauiPayload+    , aauiAdClientId+    , aauiAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.insert@ method which the+-- 'AccountsAdUnitsInsert' request conforms to.+type AccountsAdUnitsInsertResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   QueryParam "alt" AltJSON :>+                     ReqBody '[JSON] AdUnit :> Post '[JSON] AdUnit++-- | Insert the supplied ad unit into the specified publisher AdSense+-- account.+--+-- /See:/ 'accountsAdUnitsInsert' smart constructor.+data AccountsAdUnitsInsert = AccountsAdUnitsInsert+    { _aauiPayload    :: !AdUnit+    , _aauiAdClientId :: !Text+    , _aauiAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aauiPayload'+--+-- * 'aauiAdClientId'+--+-- * 'aauiAccountId'+accountsAdUnitsInsert+    :: AdUnit -- ^ 'aauiPayload'+    -> Text -- ^ 'aauiAdClientId'+    -> Text -- ^ 'aauiAccountId'+    -> AccountsAdUnitsInsert+accountsAdUnitsInsert pAauiPayload_ pAauiAdClientId_ pAauiAccountId_ =+    AccountsAdUnitsInsert+    { _aauiPayload = pAauiPayload_+    , _aauiAdClientId = pAauiAdClientId_+    , _aauiAccountId = pAauiAccountId_+    }++-- | Multipart request metadata.+aauiPayload :: Lens' AccountsAdUnitsInsert AdUnit+aauiPayload+  = lens _aauiPayload (\ s a -> s{_aauiPayload = a})++-- | Ad client into which to insert the ad unit.+aauiAdClientId :: Lens' AccountsAdUnitsInsert Text+aauiAdClientId+  = lens _aauiAdClientId+      (\ s a -> s{_aauiAdClientId = a})++-- | Account which will contain the ad unit.+aauiAccountId :: Lens' AccountsAdUnitsInsert Text+aauiAccountId+  = lens _aauiAccountId+      (\ s a -> s{_aauiAccountId = a})++instance GoogleRequest AccountsAdUnitsInsert where+        type Rs AccountsAdUnitsInsert = AdUnit+        requestClient AccountsAdUnitsInsert{..}+          = go _aauiAccountId _aauiAdClientId (Just AltJSON)+              _aauiPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsInsertResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/List.hs view
@@ -0,0 +1,144 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all ad units in the specified publisher\'s AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.list@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.List+    (+    -- * REST Resource+      AccountsAdUnitsListResource++    -- * Creating a Request+    , accountsAdUnitsList+    , AccountsAdUnitsList++    -- * Request Lenses+    , aaulIncludeInactive+    , aaulAdClientId+    , aaulAccountId+    , aaulPageToken+    , aaulMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.list@ method which the+-- 'AccountsAdUnitsList' request conforms to.+type AccountsAdUnitsListResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   QueryParam "includeInactive" Bool :>+                     QueryParam "pageToken" Text :>+                       QueryParam "maxResults" (Textual Word32) :>+                         QueryParam "alt" AltJSON :> Get '[JSON] AdUnits++-- | List all ad units in the specified publisher\'s AdSense account.+--+-- /See:/ 'accountsAdUnitsList' smart constructor.+data AccountsAdUnitsList = AccountsAdUnitsList+    { _aaulIncludeInactive :: !(Maybe Bool)+    , _aaulAdClientId      :: !Text+    , _aaulAccountId       :: !Text+    , _aaulPageToken       :: !(Maybe Text)+    , _aaulMaxResults      :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaulIncludeInactive'+--+-- * 'aaulAdClientId'+--+-- * 'aaulAccountId'+--+-- * 'aaulPageToken'+--+-- * 'aaulMaxResults'+accountsAdUnitsList+    :: Text -- ^ 'aaulAdClientId'+    -> Text -- ^ 'aaulAccountId'+    -> AccountsAdUnitsList+accountsAdUnitsList pAaulAdClientId_ pAaulAccountId_ =+    AccountsAdUnitsList+    { _aaulIncludeInactive = Nothing+    , _aaulAdClientId = pAaulAdClientId_+    , _aaulAccountId = pAaulAccountId_+    , _aaulPageToken = Nothing+    , _aaulMaxResults = Nothing+    }++-- | Whether to include inactive ad units. Default: true.+aaulIncludeInactive :: Lens' AccountsAdUnitsList (Maybe Bool)+aaulIncludeInactive+  = lens _aaulIncludeInactive+      (\ s a -> s{_aaulIncludeInactive = a})++-- | Ad client for which to list ad units.+aaulAdClientId :: Lens' AccountsAdUnitsList Text+aaulAdClientId+  = lens _aaulAdClientId+      (\ s a -> s{_aaulAdClientId = a})++-- | Account which contains the ad client.+aaulAccountId :: Lens' AccountsAdUnitsList Text+aaulAccountId+  = lens _aaulAccountId+      (\ s a -> s{_aaulAccountId = a})++-- | A continuation token, used to page through ad units. To retrieve the+-- next page, set this parameter to the value of \"nextPageToken\" from the+-- previous response.+aaulPageToken :: Lens' AccountsAdUnitsList (Maybe Text)+aaulPageToken+  = lens _aaulPageToken+      (\ s a -> s{_aaulPageToken = a})++-- | The maximum number of ad units to include in the response, used for+-- paging.+aaulMaxResults :: Lens' AccountsAdUnitsList (Maybe Word32)+aaulMaxResults+  = lens _aaulMaxResults+      (\ s a -> s{_aaulMaxResults = a})+      . mapping _Coerce++instance GoogleRequest AccountsAdUnitsList where+        type Rs AccountsAdUnitsList = AdUnits+        requestClient AccountsAdUnitsList{..}+          = go _aaulAccountId _aaulAdClientId+              _aaulIncludeInactive+              _aaulPageToken+              _aaulMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsListResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Patch.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Patch+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update the supplied ad unit in the specified publisher AdSense account.+-- This method supports patch semantics.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.patch@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Patch+    (+    -- * REST Resource+      AccountsAdUnitsPatchResource++    -- * Creating a Request+    , accountsAdUnitsPatch+    , AccountsAdUnitsPatch++    -- * Request Lenses+    , aaupAdUnitId+    , aaupPayload+    , aaupAdClientId+    , aaupAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.patch@ method which the+-- 'AccountsAdUnitsPatch' request conforms to.+type AccountsAdUnitsPatchResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   QueryParam "adUnitId" Text :>+                     QueryParam "alt" AltJSON :>+                       ReqBody '[JSON] AdUnit :> Patch '[JSON] AdUnit++-- | Update the supplied ad unit in the specified publisher AdSense account.+-- This method supports patch semantics.+--+-- /See:/ 'accountsAdUnitsPatch' smart constructor.+data AccountsAdUnitsPatch = AccountsAdUnitsPatch+    { _aaupAdUnitId   :: !Text+    , _aaupPayload    :: !AdUnit+    , _aaupAdClientId :: !Text+    , _aaupAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaupAdUnitId'+--+-- * 'aaupPayload'+--+-- * 'aaupAdClientId'+--+-- * 'aaupAccountId'+accountsAdUnitsPatch+    :: Text -- ^ 'aaupAdUnitId'+    -> AdUnit -- ^ 'aaupPayload'+    -> Text -- ^ 'aaupAdClientId'+    -> Text -- ^ 'aaupAccountId'+    -> AccountsAdUnitsPatch+accountsAdUnitsPatch pAaupAdUnitId_ pAaupPayload_ pAaupAdClientId_ pAaupAccountId_ =+    AccountsAdUnitsPatch+    { _aaupAdUnitId = pAaupAdUnitId_+    , _aaupPayload = pAaupPayload_+    , _aaupAdClientId = pAaupAdClientId_+    , _aaupAccountId = pAaupAccountId_+    }++-- | Ad unit to get.+aaupAdUnitId :: Lens' AccountsAdUnitsPatch Text+aaupAdUnitId+  = lens _aaupAdUnitId (\ s a -> s{_aaupAdUnitId = a})++-- | Multipart request metadata.+aaupPayload :: Lens' AccountsAdUnitsPatch AdUnit+aaupPayload+  = lens _aaupPayload (\ s a -> s{_aaupPayload = a})++-- | Ad client which contains the ad unit.+aaupAdClientId :: Lens' AccountsAdUnitsPatch Text+aaupAdClientId+  = lens _aaupAdClientId+      (\ s a -> s{_aaupAdClientId = a})++-- | Account which contains the ad client.+aaupAccountId :: Lens' AccountsAdUnitsPatch Text+aaupAccountId+  = lens _aaupAccountId+      (\ s a -> s{_aaupAccountId = a})++instance GoogleRequest AccountsAdUnitsPatch where+        type Rs AccountsAdUnitsPatch = AdUnit+        requestClient AccountsAdUnitsPatch{..}+          = go _aaupAccountId _aaupAdClientId+              (Just _aaupAdUnitId)+              (Just AltJSON)+              _aaupPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsPatchResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/AdUnits/Update.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Update+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update the supplied ad unit in the specified publisher AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.adunits.update@.+module Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Update+    (+    -- * REST Resource+      AccountsAdUnitsUpdateResource++    -- * Creating a Request+    , accountsAdUnitsUpdate+    , AccountsAdUnitsUpdate++    -- * Request Lenses+    , aauuPayload+    , aauuAdClientId+    , aauuAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.adunits.update@ method which the+-- 'AccountsAdUnitsUpdate' request conforms to.+type AccountsAdUnitsUpdateResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "adclients" :>+               Capture "adClientId" Text :>+                 "adunits" :>+                   QueryParam "alt" AltJSON :>+                     ReqBody '[JSON] AdUnit :> Put '[JSON] AdUnit++-- | Update the supplied ad unit in the specified publisher AdSense account.+--+-- /See:/ 'accountsAdUnitsUpdate' smart constructor.+data AccountsAdUnitsUpdate = AccountsAdUnitsUpdate+    { _aauuPayload    :: !AdUnit+    , _aauuAdClientId :: !Text+    , _aauuAccountId  :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsAdUnitsUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aauuPayload'+--+-- * 'aauuAdClientId'+--+-- * 'aauuAccountId'+accountsAdUnitsUpdate+    :: AdUnit -- ^ 'aauuPayload'+    -> Text -- ^ 'aauuAdClientId'+    -> Text -- ^ 'aauuAccountId'+    -> AccountsAdUnitsUpdate+accountsAdUnitsUpdate pAauuPayload_ pAauuAdClientId_ pAauuAccountId_ =+    AccountsAdUnitsUpdate+    { _aauuPayload = pAauuPayload_+    , _aauuAdClientId = pAauuAdClientId_+    , _aauuAccountId = pAauuAccountId_+    }++-- | Multipart request metadata.+aauuPayload :: Lens' AccountsAdUnitsUpdate AdUnit+aauuPayload+  = lens _aauuPayload (\ s a -> s{_aauuPayload = a})++-- | Ad client which contains the ad unit.+aauuAdClientId :: Lens' AccountsAdUnitsUpdate Text+aauuAdClientId+  = lens _aauuAdClientId+      (\ s a -> s{_aauuAdClientId = a})++-- | Account which contains the ad client.+aauuAccountId :: Lens' AccountsAdUnitsUpdate Text+aauuAccountId+  = lens _aauuAccountId+      (\ s a -> s{_aauuAccountId = a})++instance GoogleRequest AccountsAdUnitsUpdate where+        type Rs AccountsAdUnitsUpdate = AdUnit+        requestClient AccountsAdUnitsUpdate{..}+          = go _aauuAccountId _aauuAdClientId (Just AltJSON)+              _aauuPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsAdUnitsUpdateResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/Get.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.Get+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about the selected associated AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.get@.+module Network.Google.Resource.AdSenseHost.Accounts.Get+    (+    -- * REST Resource+      AccountsGetResource++    -- * Creating a Request+    , accountsGet+    , AccountsGet++    -- * Request Lenses+    , agAccountId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.get@ method which the+-- 'AccountsGet' request conforms to.+type AccountsGetResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             QueryParam "alt" AltJSON :> Get '[JSON] Account++-- | Get information about the selected associated AdSense account.+--+-- /See:/ 'accountsGet' smart constructor.+newtype AccountsGet = AccountsGet+    { _agAccountId :: Text+    } 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:+--+-- * 'agAccountId'+accountsGet+    :: Text -- ^ 'agAccountId'+    -> AccountsGet+accountsGet pAgAccountId_ =+    AccountsGet+    { _agAccountId = pAgAccountId_+    }++-- | Account to get information about.+agAccountId :: Lens' AccountsGet Text+agAccountId+  = lens _agAccountId (\ s a -> s{_agAccountId = a})++instance GoogleRequest AccountsGet where+        type Rs AccountsGet = Account+        requestClient AccountsGet{..}+          = go _agAccountId (Just AltJSON) adSenseHostService+          where go+                  = buildClient (Proxy :: Proxy AccountsGetResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/List.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List hosted accounts associated with this AdSense account by ad client+-- id.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.list@.+module Network.Google.Resource.AdSenseHost.Accounts.List+    (+    -- * REST Resource+      AccountsListResource++    -- * Creating a Request+    , accountsList+    , AccountsList++    -- * Request Lenses+    , alFilterAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.list@ method which the+-- 'AccountsList' request conforms to.+type AccountsListResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           QueryParams "filterAdClientId" Text :>+             QueryParam "alt" AltJSON :> Get '[JSON] Accounts++-- | List hosted accounts associated with this AdSense account by ad client+-- id.+--+-- /See:/ 'accountsList' smart constructor.+newtype AccountsList = AccountsList+    { _alFilterAdClientId :: [Text]+    } 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:+--+-- * 'alFilterAdClientId'+accountsList+    :: [Text] -- ^ 'alFilterAdClientId'+    -> AccountsList+accountsList pAlFilterAdClientId_ =+    AccountsList+    { _alFilterAdClientId = _Coerce # pAlFilterAdClientId_+    }++-- | Ad clients to list accounts for.+alFilterAdClientId :: Lens' AccountsList [Text]+alFilterAdClientId+  = lens _alFilterAdClientId+      (\ s a -> s{_alFilterAdClientId = a})+      . _Coerce++instance GoogleRequest AccountsList where+        type Rs AccountsList = Accounts+        requestClient AccountsList{..}+          = go _alFilterAdClientId (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient (Proxy :: Proxy AccountsListResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Accounts/Reports/Generate.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Accounts.Reports.Generate+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generate an AdSense report based on the report request sent in the query+-- parameters. Returns the result as JSON; to retrieve output in CSV format+-- specify \"alt=csv\" as a query parameter.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.accounts.reports.generate@.+module Network.Google.Resource.AdSenseHost.Accounts.Reports.Generate+    (+    -- * REST Resource+      AccountsReportsGenerateResource++    -- * Creating a Request+    , accountsReportsGenerate+    , AccountsReportsGenerate++    -- * Request Lenses+    , argDimension+    , argLocale+    , argEndDate+    , argStartDate+    , argAccountId+    , argMetric+    , argSort+    , argFilter+    , argStartIndex+    , argMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.accounts.reports.generate@ method which the+-- 'AccountsReportsGenerate' request conforms to.+type AccountsReportsGenerateResource =+     "adsensehost" :>+       "v4.1" :>+         "accounts" :>+           Capture "accountId" Text :>+             "reports" :>+               QueryParam "startDate" Text :>+                 QueryParam "endDate" Text :>+                   QueryParams "dimension" Text :>+                     QueryParam "locale" Text :>+                       QueryParams "metric" Text :>+                         QueryParams "sort" Text :>+                           QueryParams "filter" Text :>+                             QueryParam "startIndex" (Textual Word32) :>+                               QueryParam "maxResults" (Textual Word32) :>+                                 QueryParam "alt" AltJSON :> Get '[JSON] Report++-- | Generate an AdSense report based on the report request sent in the query+-- parameters. Returns the result as JSON; to retrieve output in CSV format+-- specify \"alt=csv\" as a query parameter.+--+-- /See:/ 'accountsReportsGenerate' smart constructor.+data AccountsReportsGenerate = AccountsReportsGenerate+    { _argDimension  :: !(Maybe [Text])+    , _argLocale     :: !(Maybe Text)+    , _argEndDate    :: !Text+    , _argStartDate  :: !Text+    , _argAccountId  :: !Text+    , _argMetric     :: !(Maybe [Text])+    , _argSort       :: !(Maybe [Text])+    , _argFilter     :: !(Maybe [Text])+    , _argStartIndex :: !(Maybe (Textual Word32))+    , _argMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountsReportsGenerate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'argDimension'+--+-- * 'argLocale'+--+-- * 'argEndDate'+--+-- * 'argStartDate'+--+-- * 'argAccountId'+--+-- * 'argMetric'+--+-- * 'argSort'+--+-- * 'argFilter'+--+-- * 'argStartIndex'+--+-- * 'argMaxResults'+accountsReportsGenerate+    :: Text -- ^ 'argEndDate'+    -> Text -- ^ 'argStartDate'+    -> Text -- ^ 'argAccountId'+    -> AccountsReportsGenerate+accountsReportsGenerate pArgEndDate_ pArgStartDate_ pArgAccountId_ =+    AccountsReportsGenerate+    { _argDimension = Nothing+    , _argLocale = Nothing+    , _argEndDate = pArgEndDate_+    , _argStartDate = pArgStartDate_+    , _argAccountId = pArgAccountId_+    , _argMetric = Nothing+    , _argSort = Nothing+    , _argFilter = Nothing+    , _argStartIndex = Nothing+    , _argMaxResults = Nothing+    }++-- | Dimensions to base the report on.+argDimension :: Lens' AccountsReportsGenerate [Text]+argDimension+  = lens _argDimension (\ s a -> s{_argDimension = a})+      . _Default+      . _Coerce++-- | Optional locale to use for translating report output to a local+-- language. Defaults to \"en_US\" if not specified.+argLocale :: Lens' AccountsReportsGenerate (Maybe Text)+argLocale+  = lens _argLocale (\ s a -> s{_argLocale = a})++-- | End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.+argEndDate :: Lens' AccountsReportsGenerate Text+argEndDate+  = lens _argEndDate (\ s a -> s{_argEndDate = a})++-- | Start of the date range to report on in \"YYYY-MM-DD\" format,+-- inclusive.+argStartDate :: Lens' AccountsReportsGenerate Text+argStartDate+  = lens _argStartDate (\ s a -> s{_argStartDate = a})++-- | Hosted account upon which to report.+argAccountId :: Lens' AccountsReportsGenerate Text+argAccountId+  = lens _argAccountId (\ s a -> s{_argAccountId = a})++-- | Numeric columns to include in the report.+argMetric :: Lens' AccountsReportsGenerate [Text]+argMetric+  = lens _argMetric (\ s a -> s{_argMetric = a}) .+      _Default+      . _Coerce++-- | The name of a dimension or metric to sort the resulting report on,+-- optionally prefixed with \"+\" to sort ascending or \"-\" to sort+-- descending. If no prefix is specified, the column is sorted ascending.+argSort :: Lens' AccountsReportsGenerate [Text]+argSort+  = lens _argSort (\ s a -> s{_argSort = a}) . _Default+      . _Coerce++-- | Filters to be run on the report.+argFilter :: Lens' AccountsReportsGenerate [Text]+argFilter+  = lens _argFilter (\ s a -> s{_argFilter = a}) .+      _Default+      . _Coerce++-- | Index of the first row of report data to return.+argStartIndex :: Lens' AccountsReportsGenerate (Maybe Word32)+argStartIndex+  = lens _argStartIndex+      (\ s a -> s{_argStartIndex = a})+      . mapping _Coerce++-- | The maximum number of rows of report data to return.+argMaxResults :: Lens' AccountsReportsGenerate (Maybe Word32)+argMaxResults+  = lens _argMaxResults+      (\ s a -> s{_argMaxResults = a})+      . mapping _Coerce++instance GoogleRequest AccountsReportsGenerate where+        type Rs AccountsReportsGenerate = Report+        requestClient AccountsReportsGenerate{..}+          = go _argAccountId (Just _argStartDate)+              (Just _argEndDate)+              (_argDimension ^. _Default)+              _argLocale+              (_argMetric ^. _Default)+              (_argSort ^. _Default)+              (_argFilter ^. _Default)+              _argStartIndex+              _argMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AccountsReportsGenerateResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/AdClients/Get.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.AdClients.Get+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get information about one of the ad clients in the Host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.adclients.get@.+module Network.Google.Resource.AdSenseHost.AdClients.Get+    (+    -- * REST Resource+      AdClientsGetResource++    -- * Creating a Request+    , adClientsGet+    , AdClientsGet++    -- * Request Lenses+    , acgAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.adclients.get@ method which the+-- 'AdClientsGet' request conforms to.+type AdClientsGetResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             QueryParam "alt" AltJSON :> Get '[JSON] AdClient++-- | Get information about one of the ad clients in the Host AdSense account.+--+-- /See:/ 'adClientsGet' smart constructor.+newtype AdClientsGet = AdClientsGet+    { _acgAdClientId :: Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdClientsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acgAdClientId'+adClientsGet+    :: Text -- ^ 'acgAdClientId'+    -> AdClientsGet+adClientsGet pAcgAdClientId_ =+    AdClientsGet+    { _acgAdClientId = pAcgAdClientId_+    }++-- | Ad client to get.+acgAdClientId :: Lens' AdClientsGet Text+acgAdClientId+  = lens _acgAdClientId+      (\ s a -> s{_acgAdClientId = a})++instance GoogleRequest AdClientsGet where+        type Rs AdClientsGet = AdClient+        requestClient AdClientsGet{..}+          = go _acgAdClientId (Just AltJSON) adSenseHostService+          where go+                  = buildClient (Proxy :: Proxy AdClientsGetResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/AdClients/List.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.AdClients.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all host ad clients in this AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.adclients.list@.+module Network.Google.Resource.AdSenseHost.AdClients.List+    (+    -- * REST Resource+      AdClientsListResource++    -- * Creating a Request+    , adClientsList+    , AdClientsList++    -- * Request Lenses+    , aclPageToken+    , aclMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.adclients.list@ method which the+-- 'AdClientsList' request conforms to.+type AdClientsListResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           QueryParam "pageToken" Text :>+             QueryParam "maxResults" (Textual Word32) :>+               QueryParam "alt" AltJSON :> Get '[JSON] AdClients++-- | List all host ad clients in this AdSense account.+--+-- /See:/ 'adClientsList' smart constructor.+data AdClientsList = AdClientsList+    { _aclPageToken  :: !(Maybe Text)+    , _aclMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AdClientsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aclPageToken'+--+-- * 'aclMaxResults'+adClientsList+    :: AdClientsList+adClientsList =+    AdClientsList+    { _aclPageToken = Nothing+    , _aclMaxResults = Nothing+    }++-- | A continuation token, used to page through ad clients. To retrieve the+-- next page, set this parameter to the value of \"nextPageToken\" from the+-- previous response.+aclPageToken :: Lens' AdClientsList (Maybe Text)+aclPageToken+  = lens _aclPageToken (\ s a -> s{_aclPageToken = a})++-- | The maximum number of ad clients to include in the response, used for+-- paging.+aclMaxResults :: Lens' AdClientsList (Maybe Word32)+aclMaxResults+  = lens _aclMaxResults+      (\ s a -> s{_aclMaxResults = a})+      . mapping _Coerce++instance GoogleRequest AdClientsList where+        type Rs AdClientsList = AdClients+        requestClient AdClientsList{..}+          = go _aclPageToken _aclMaxResults (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient (Proxy :: Proxy AdClientsListResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/AssociationSessions/Start.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.AssociationSessions.Start+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create an association session for initiating an association with an+-- AdSense user.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.associationsessions.start@.+module Network.Google.Resource.AdSenseHost.AssociationSessions.Start+    (+    -- * REST Resource+      AssociationSessionsStartResource++    -- * Creating a Request+    , associationSessionsStart+    , AssociationSessionsStart++    -- * Request Lenses+    , assWebsiteLocale+    , assUserLocale+    , assWebsiteURL+    , assProductCode+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.associationsessions.start@ method which the+-- 'AssociationSessionsStart' request conforms to.+type AssociationSessionsStartResource =+     "adsensehost" :>+       "v4.1" :>+         "associationsessions" :>+           "start" :>+             QueryParams "productCode"+               AssociationSessionsStartProductCode+               :>+               QueryParam "websiteUrl" Text :>+                 QueryParam "websiteLocale" Text :>+                   QueryParam "userLocale" Text :>+                     QueryParam "alt" AltJSON :>+                       Get '[JSON] AssociationSession++-- | Create an association session for initiating an association with an+-- AdSense user.+--+-- /See:/ 'associationSessionsStart' smart constructor.+data AssociationSessionsStart = AssociationSessionsStart+    { _assWebsiteLocale :: !(Maybe Text)+    , _assUserLocale    :: !(Maybe Text)+    , _assWebsiteURL    :: !Text+    , _assProductCode   :: ![AssociationSessionsStartProductCode]+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationSessionsStart' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'assWebsiteLocale'+--+-- * 'assUserLocale'+--+-- * 'assWebsiteURL'+--+-- * 'assProductCode'+associationSessionsStart+    :: Text -- ^ 'assWebsiteURL'+    -> [AssociationSessionsStartProductCode] -- ^ 'assProductCode'+    -> AssociationSessionsStart+associationSessionsStart pAssWebsiteURL_ pAssProductCode_ =+    AssociationSessionsStart+    { _assWebsiteLocale = Nothing+    , _assUserLocale = Nothing+    , _assWebsiteURL = pAssWebsiteURL_+    , _assProductCode = _Coerce # pAssProductCode_+    }++-- | The locale of the user\'s hosted website.+assWebsiteLocale :: Lens' AssociationSessionsStart (Maybe Text)+assWebsiteLocale+  = lens _assWebsiteLocale+      (\ s a -> s{_assWebsiteLocale = a})++-- | The preferred locale of the user.+assUserLocale :: Lens' AssociationSessionsStart (Maybe Text)+assUserLocale+  = lens _assUserLocale+      (\ s a -> s{_assUserLocale = a})++-- | The URL of the user\'s hosted website.+assWebsiteURL :: Lens' AssociationSessionsStart Text+assWebsiteURL+  = lens _assWebsiteURL+      (\ s a -> s{_assWebsiteURL = a})++-- | Products to associate with the user.+assProductCode :: Lens' AssociationSessionsStart [AssociationSessionsStartProductCode]+assProductCode+  = lens _assProductCode+      (\ s a -> s{_assProductCode = a})+      . _Coerce++instance GoogleRequest AssociationSessionsStart where+        type Rs AssociationSessionsStart = AssociationSession+        requestClient AssociationSessionsStart{..}+          = go _assProductCode (Just _assWebsiteURL)+              _assWebsiteLocale+              _assUserLocale+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AssociationSessionsStartResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/AssociationSessions/Verify.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.AssociationSessions.Verify+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Verify an association session after the association callback returns+-- from AdSense signup.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.associationsessions.verify@.+module Network.Google.Resource.AdSenseHost.AssociationSessions.Verify+    (+    -- * REST Resource+      AssociationSessionsVerifyResource++    -- * Creating a Request+    , associationSessionsVerify+    , AssociationSessionsVerify++    -- * Request Lenses+    , asvToken+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.associationsessions.verify@ method which the+-- 'AssociationSessionsVerify' request conforms to.+type AssociationSessionsVerifyResource =+     "adsensehost" :>+       "v4.1" :>+         "associationsessions" :>+           "verify" :>+             QueryParam "token" Text :>+               QueryParam "alt" AltJSON :>+                 Get '[JSON] AssociationSession++-- | Verify an association session after the association callback returns+-- from AdSense signup.+--+-- /See:/ 'associationSessionsVerify' smart constructor.+newtype AssociationSessionsVerify = AssociationSessionsVerify+    { _asvToken :: Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssociationSessionsVerify' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asvToken'+associationSessionsVerify+    :: Text -- ^ 'asvToken'+    -> AssociationSessionsVerify+associationSessionsVerify pAsvToken_ =+    AssociationSessionsVerify+    { _asvToken = pAsvToken_+    }++-- | The token returned to the association callback URL.+asvToken :: Lens' AssociationSessionsVerify Text+asvToken = lens _asvToken (\ s a -> s{_asvToken = a})++instance GoogleRequest AssociationSessionsVerify+         where+        type Rs AssociationSessionsVerify =+             AssociationSession+        requestClient AssociationSessionsVerify{..}+          = go (Just _asvToken) (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy AssociationSessionsVerifyResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/Delete.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.Delete+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete a specific custom channel from the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.delete@.+module Network.Google.Resource.AdSenseHost.CustomChannels.Delete+    (+    -- * REST Resource+      CustomChannelsDeleteResource++    -- * Creating a Request+    , customChannelsDelete+    , CustomChannelsDelete++    -- * Request Lenses+    , ccdCustomChannelId+    , ccdAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.delete@ method which the+-- 'CustomChannelsDelete' request conforms to.+type CustomChannelsDeleteResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               Capture "customChannelId" Text :>+                 QueryParam "alt" AltJSON :>+                   Delete '[JSON] CustomChannel++-- | Delete a specific custom channel from the host AdSense account.+--+-- /See:/ 'customChannelsDelete' smart constructor.+data CustomChannelsDelete = CustomChannelsDelete+    { _ccdCustomChannelId :: !Text+    , _ccdAdClientId      :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccdCustomChannelId'+--+-- * 'ccdAdClientId'+customChannelsDelete+    :: Text -- ^ 'ccdCustomChannelId'+    -> Text -- ^ 'ccdAdClientId'+    -> CustomChannelsDelete+customChannelsDelete pCcdCustomChannelId_ pCcdAdClientId_ =+    CustomChannelsDelete+    { _ccdCustomChannelId = pCcdCustomChannelId_+    , _ccdAdClientId = pCcdAdClientId_+    }++-- | Custom channel to delete.+ccdCustomChannelId :: Lens' CustomChannelsDelete Text+ccdCustomChannelId+  = lens _ccdCustomChannelId+      (\ s a -> s{_ccdCustomChannelId = a})++-- | Ad client from which to delete the custom channel.+ccdAdClientId :: Lens' CustomChannelsDelete Text+ccdAdClientId+  = lens _ccdAdClientId+      (\ s a -> s{_ccdAdClientId = a})++instance GoogleRequest CustomChannelsDelete where+        type Rs CustomChannelsDelete = CustomChannel+        requestClient CustomChannelsDelete{..}+          = go _ccdAdClientId _ccdCustomChannelId+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsDeleteResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/Get.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.Get+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get a specific custom channel from the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.get@.+module Network.Google.Resource.AdSenseHost.CustomChannels.Get+    (+    -- * REST Resource+      CustomChannelsGetResource++    -- * Creating a Request+    , customChannelsGet+    , CustomChannelsGet++    -- * Request Lenses+    , ccgCustomChannelId+    , ccgAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.get@ method which the+-- 'CustomChannelsGet' request conforms to.+type CustomChannelsGetResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               Capture "customChannelId" Text :>+                 QueryParam "alt" AltJSON :> Get '[JSON] CustomChannel++-- | Get a specific custom channel from the host AdSense account.+--+-- /See:/ 'customChannelsGet' smart constructor.+data CustomChannelsGet = CustomChannelsGet+    { _ccgCustomChannelId :: !Text+    , _ccgAdClientId      :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccgCustomChannelId'+--+-- * 'ccgAdClientId'+customChannelsGet+    :: Text -- ^ 'ccgCustomChannelId'+    -> Text -- ^ 'ccgAdClientId'+    -> CustomChannelsGet+customChannelsGet pCcgCustomChannelId_ pCcgAdClientId_ =+    CustomChannelsGet+    { _ccgCustomChannelId = pCcgCustomChannelId_+    , _ccgAdClientId = pCcgAdClientId_+    }++-- | Custom channel to get.+ccgCustomChannelId :: Lens' CustomChannelsGet Text+ccgCustomChannelId+  = lens _ccgCustomChannelId+      (\ s a -> s{_ccgCustomChannelId = a})++-- | Ad client from which to get the custom channel.+ccgAdClientId :: Lens' CustomChannelsGet Text+ccgAdClientId+  = lens _ccgAdClientId+      (\ s a -> s{_ccgAdClientId = a})++instance GoogleRequest CustomChannelsGet where+        type Rs CustomChannelsGet = CustomChannel+        requestClient CustomChannelsGet{..}+          = go _ccgAdClientId _ccgCustomChannelId+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsGetResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/Insert.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.Insert+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a new custom channel to the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.insert@.+module Network.Google.Resource.AdSenseHost.CustomChannels.Insert+    (+    -- * REST Resource+      CustomChannelsInsertResource++    -- * Creating a Request+    , customChannelsInsert+    , CustomChannelsInsert++    -- * Request Lenses+    , cciPayload+    , cciAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.insert@ method which the+-- 'CustomChannelsInsert' request conforms to.+type CustomChannelsInsertResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               QueryParam "alt" AltJSON :>+                 ReqBody '[JSON] CustomChannel :>+                   Post '[JSON] CustomChannel++-- | Add a new custom channel to the host AdSense account.+--+-- /See:/ 'customChannelsInsert' smart constructor.+data CustomChannelsInsert = CustomChannelsInsert+    { _cciPayload    :: !CustomChannel+    , _cciAdClientId :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cciPayload'+--+-- * 'cciAdClientId'+customChannelsInsert+    :: CustomChannel -- ^ 'cciPayload'+    -> Text -- ^ 'cciAdClientId'+    -> CustomChannelsInsert+customChannelsInsert pCciPayload_ pCciAdClientId_ =+    CustomChannelsInsert+    { _cciPayload = pCciPayload_+    , _cciAdClientId = pCciAdClientId_+    }++-- | Multipart request metadata.+cciPayload :: Lens' CustomChannelsInsert CustomChannel+cciPayload+  = lens _cciPayload (\ s a -> s{_cciPayload = a})++-- | Ad client to which the new custom channel will be added.+cciAdClientId :: Lens' CustomChannelsInsert Text+cciAdClientId+  = lens _cciAdClientId+      (\ s a -> s{_cciAdClientId = a})++instance GoogleRequest CustomChannelsInsert where+        type Rs CustomChannelsInsert = CustomChannel+        requestClient CustomChannelsInsert{..}+          = go _cciAdClientId (Just AltJSON) _cciPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsInsertResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/List.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all host custom channels in this AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.list@.+module Network.Google.Resource.AdSenseHost.CustomChannels.List+    (+    -- * REST Resource+      CustomChannelsListResource++    -- * Creating a Request+    , customChannelsList+    , CustomChannelsList++    -- * Request Lenses+    , cclAdClientId+    , cclPageToken+    , cclMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.list@ method which the+-- 'CustomChannelsList' request conforms to.+type CustomChannelsListResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               QueryParam "pageToken" Text :>+                 QueryParam "maxResults" (Textual Word32) :>+                   QueryParam "alt" AltJSON :>+                     Get '[JSON] CustomChannels++-- | List all host custom channels in this AdSense account.+--+-- /See:/ 'customChannelsList' smart constructor.+data CustomChannelsList = CustomChannelsList+    { _cclAdClientId :: !Text+    , _cclPageToken  :: !(Maybe Text)+    , _cclMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cclAdClientId'+--+-- * 'cclPageToken'+--+-- * 'cclMaxResults'+customChannelsList+    :: Text -- ^ 'cclAdClientId'+    -> CustomChannelsList+customChannelsList pCclAdClientId_ =+    CustomChannelsList+    { _cclAdClientId = pCclAdClientId_+    , _cclPageToken = Nothing+    , _cclMaxResults = Nothing+    }++-- | Ad client for which to list custom channels.+cclAdClientId :: Lens' CustomChannelsList Text+cclAdClientId+  = lens _cclAdClientId+      (\ s a -> s{_cclAdClientId = a})++-- | A continuation token, used to page through custom channels. To retrieve+-- the next page, set this parameter to the value of \"nextPageToken\" from+-- the previous response.+cclPageToken :: Lens' CustomChannelsList (Maybe Text)+cclPageToken+  = lens _cclPageToken (\ s a -> s{_cclPageToken = a})++-- | The maximum number of custom channels to include in the response, used+-- for paging.+cclMaxResults :: Lens' CustomChannelsList (Maybe Word32)+cclMaxResults+  = lens _cclMaxResults+      (\ s a -> s{_cclMaxResults = a})+      . mapping _Coerce++instance GoogleRequest CustomChannelsList where+        type Rs CustomChannelsList = CustomChannels+        requestClient CustomChannelsList{..}+          = go _cclAdClientId _cclPageToken _cclMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsListResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/Patch.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.Patch+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update a custom channel in the host AdSense account. This method+-- supports patch semantics.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.patch@.+module Network.Google.Resource.AdSenseHost.CustomChannels.Patch+    (+    -- * REST Resource+      CustomChannelsPatchResource++    -- * Creating a Request+    , customChannelsPatch+    , CustomChannelsPatch++    -- * Request Lenses+    , ccpCustomChannelId+    , ccpPayload+    , ccpAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.patch@ method which the+-- 'CustomChannelsPatch' request conforms to.+type CustomChannelsPatchResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               QueryParam "customChannelId" Text :>+                 QueryParam "alt" AltJSON :>+                   ReqBody '[JSON] CustomChannel :>+                     Patch '[JSON] CustomChannel++-- | Update a custom channel in the host AdSense account. This method+-- supports patch semantics.+--+-- /See:/ 'customChannelsPatch' smart constructor.+data CustomChannelsPatch = CustomChannelsPatch+    { _ccpCustomChannelId :: !Text+    , _ccpPayload         :: !CustomChannel+    , _ccpAdClientId      :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccpCustomChannelId'+--+-- * 'ccpPayload'+--+-- * 'ccpAdClientId'+customChannelsPatch+    :: Text -- ^ 'ccpCustomChannelId'+    -> CustomChannel -- ^ 'ccpPayload'+    -> Text -- ^ 'ccpAdClientId'+    -> CustomChannelsPatch+customChannelsPatch pCcpCustomChannelId_ pCcpPayload_ pCcpAdClientId_ =+    CustomChannelsPatch+    { _ccpCustomChannelId = pCcpCustomChannelId_+    , _ccpPayload = pCcpPayload_+    , _ccpAdClientId = pCcpAdClientId_+    }++-- | Custom channel to get.+ccpCustomChannelId :: Lens' CustomChannelsPatch Text+ccpCustomChannelId+  = lens _ccpCustomChannelId+      (\ s a -> s{_ccpCustomChannelId = a})++-- | Multipart request metadata.+ccpPayload :: Lens' CustomChannelsPatch CustomChannel+ccpPayload+  = lens _ccpPayload (\ s a -> s{_ccpPayload = a})++-- | Ad client in which the custom channel will be updated.+ccpAdClientId :: Lens' CustomChannelsPatch Text+ccpAdClientId+  = lens _ccpAdClientId+      (\ s a -> s{_ccpAdClientId = a})++instance GoogleRequest CustomChannelsPatch where+        type Rs CustomChannelsPatch = CustomChannel+        requestClient CustomChannelsPatch{..}+          = go _ccpAdClientId (Just _ccpCustomChannelId)+              (Just AltJSON)+              _ccpPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsPatchResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/CustomChannels/Update.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.CustomChannels.Update+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update a custom channel in the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.customchannels.update@.+module Network.Google.Resource.AdSenseHost.CustomChannels.Update+    (+    -- * REST Resource+      CustomChannelsUpdateResource++    -- * Creating a Request+    , customChannelsUpdate+    , CustomChannelsUpdate++    -- * Request Lenses+    , ccuPayload+    , ccuAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.customchannels.update@ method which the+-- 'CustomChannelsUpdate' request conforms to.+type CustomChannelsUpdateResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "customchannels" :>+               QueryParam "alt" AltJSON :>+                 ReqBody '[JSON] CustomChannel :>+                   Put '[JSON] CustomChannel++-- | Update a custom channel in the host AdSense account.+--+-- /See:/ 'customChannelsUpdate' smart constructor.+data CustomChannelsUpdate = CustomChannelsUpdate+    { _ccuPayload    :: !CustomChannel+    , _ccuAdClientId :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CustomChannelsUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccuPayload'+--+-- * 'ccuAdClientId'+customChannelsUpdate+    :: CustomChannel -- ^ 'ccuPayload'+    -> Text -- ^ 'ccuAdClientId'+    -> CustomChannelsUpdate+customChannelsUpdate pCcuPayload_ pCcuAdClientId_ =+    CustomChannelsUpdate+    { _ccuPayload = pCcuPayload_+    , _ccuAdClientId = pCcuAdClientId_+    }++-- | Multipart request metadata.+ccuPayload :: Lens' CustomChannelsUpdate CustomChannel+ccuPayload+  = lens _ccuPayload (\ s a -> s{_ccuPayload = a})++-- | Ad client in which the custom channel will be updated.+ccuAdClientId :: Lens' CustomChannelsUpdate Text+ccuAdClientId+  = lens _ccuAdClientId+      (\ s a -> s{_ccuAdClientId = a})++instance GoogleRequest CustomChannelsUpdate where+        type Rs CustomChannelsUpdate = CustomChannel+        requestClient CustomChannelsUpdate{..}+          = go _ccuAdClientId (Just AltJSON) _ccuPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy CustomChannelsUpdateResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/Reports/Generate.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.Reports.Generate+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generate an AdSense report based on the report request sent in the query+-- parameters. Returns the result as JSON; to retrieve output in CSV format+-- specify \"alt=csv\" as a query parameter.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.reports.generate@.+module Network.Google.Resource.AdSenseHost.Reports.Generate+    (+    -- * REST Resource+      ReportsGenerateResource++    -- * Creating a Request+    , reportsGenerate+    , ReportsGenerate++    -- * Request Lenses+    , rgDimension+    , rgLocale+    , rgEndDate+    , rgStartDate+    , rgMetric+    , rgSort+    , rgFilter+    , rgStartIndex+    , rgMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.reports.generate@ method which the+-- 'ReportsGenerate' request conforms to.+type ReportsGenerateResource =+     "adsensehost" :>+       "v4.1" :>+         "reports" :>+           QueryParam "startDate" Text :>+             QueryParam "endDate" Text :>+               QueryParams "dimension" Text :>+                 QueryParam "locale" Text :>+                   QueryParams "metric" Text :>+                     QueryParams "sort" Text :>+                       QueryParams "filter" Text :>+                         QueryParam "startIndex" (Textual Word32) :>+                           QueryParam "maxResults" (Textual Word32) :>+                             QueryParam "alt" AltJSON :> Get '[JSON] Report++-- | Generate an AdSense report based on the report request sent in the query+-- parameters. Returns the result as JSON; to retrieve output in CSV format+-- specify \"alt=csv\" as a query parameter.+--+-- /See:/ 'reportsGenerate' smart constructor.+data ReportsGenerate = ReportsGenerate+    { _rgDimension  :: !(Maybe [Text])+    , _rgLocale     :: !(Maybe Text)+    , _rgEndDate    :: !Text+    , _rgStartDate  :: !Text+    , _rgMetric     :: !(Maybe [Text])+    , _rgSort       :: !(Maybe [Text])+    , _rgFilter     :: !(Maybe [Text])+    , _rgStartIndex :: !(Maybe (Textual Word32))+    , _rgMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReportsGenerate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rgDimension'+--+-- * 'rgLocale'+--+-- * 'rgEndDate'+--+-- * 'rgStartDate'+--+-- * 'rgMetric'+--+-- * 'rgSort'+--+-- * 'rgFilter'+--+-- * 'rgStartIndex'+--+-- * 'rgMaxResults'+reportsGenerate+    :: Text -- ^ 'rgEndDate'+    -> Text -- ^ 'rgStartDate'+    -> ReportsGenerate+reportsGenerate pRgEndDate_ pRgStartDate_ =+    ReportsGenerate+    { _rgDimension = Nothing+    , _rgLocale = Nothing+    , _rgEndDate = pRgEndDate_+    , _rgStartDate = pRgStartDate_+    , _rgMetric = Nothing+    , _rgSort = Nothing+    , _rgFilter = Nothing+    , _rgStartIndex = Nothing+    , _rgMaxResults = Nothing+    }++-- | Dimensions to base the report on.+rgDimension :: Lens' ReportsGenerate [Text]+rgDimension+  = lens _rgDimension (\ s a -> s{_rgDimension = a}) .+      _Default+      . _Coerce++-- | Optional locale to use for translating report output to a local+-- language. Defaults to \"en_US\" if not specified.+rgLocale :: Lens' ReportsGenerate (Maybe Text)+rgLocale = lens _rgLocale (\ s a -> s{_rgLocale = a})++-- | End of the date range to report on in \"YYYY-MM-DD\" format, inclusive.+rgEndDate :: Lens' ReportsGenerate Text+rgEndDate+  = lens _rgEndDate (\ s a -> s{_rgEndDate = a})++-- | Start of the date range to report on in \"YYYY-MM-DD\" format,+-- inclusive.+rgStartDate :: Lens' ReportsGenerate Text+rgStartDate+  = lens _rgStartDate (\ s a -> s{_rgStartDate = a})++-- | Numeric columns to include in the report.+rgMetric :: Lens' ReportsGenerate [Text]+rgMetric+  = lens _rgMetric (\ s a -> s{_rgMetric = a}) .+      _Default+      . _Coerce++-- | The name of a dimension or metric to sort the resulting report on,+-- optionally prefixed with \"+\" to sort ascending or \"-\" to sort+-- descending. If no prefix is specified, the column is sorted ascending.+rgSort :: Lens' ReportsGenerate [Text]+rgSort+  = lens _rgSort (\ s a -> s{_rgSort = a}) . _Default .+      _Coerce++-- | Filters to be run on the report.+rgFilter :: Lens' ReportsGenerate [Text]+rgFilter+  = lens _rgFilter (\ s a -> s{_rgFilter = a}) .+      _Default+      . _Coerce++-- | Index of the first row of report data to return.+rgStartIndex :: Lens' ReportsGenerate (Maybe Word32)+rgStartIndex+  = lens _rgStartIndex (\ s a -> s{_rgStartIndex = a})+      . mapping _Coerce++-- | The maximum number of rows of report data to return.+rgMaxResults :: Lens' ReportsGenerate (Maybe Word32)+rgMaxResults+  = lens _rgMaxResults (\ s a -> s{_rgMaxResults = a})+      . mapping _Coerce++instance GoogleRequest ReportsGenerate where+        type Rs ReportsGenerate = Report+        requestClient ReportsGenerate{..}+          = go (Just _rgStartDate) (Just _rgEndDate)+              (_rgDimension ^. _Default)+              _rgLocale+              (_rgMetric ^. _Default)+              (_rgSort ^. _Default)+              (_rgFilter ^. _Default)+              _rgStartIndex+              _rgMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy ReportsGenerateResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/URLChannels/Delete.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.URLChannels.Delete+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete a URL channel from the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.urlchannels.delete@.+module Network.Google.Resource.AdSenseHost.URLChannels.Delete+    (+    -- * REST Resource+      URLChannelsDeleteResource++    -- * Creating a Request+    , urlChannelsDelete+    , URLChannelsDelete++    -- * Request Lenses+    , ucdURLChannelId+    , ucdAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.urlchannels.delete@ method which the+-- 'URLChannelsDelete' request conforms to.+type URLChannelsDeleteResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "urlchannels" :>+               Capture "urlChannelId" Text :>+                 QueryParam "alt" AltJSON :> Delete '[JSON] URLChannel++-- | Delete a URL channel from the host AdSense account.+--+-- /See:/ 'urlChannelsDelete' smart constructor.+data URLChannelsDelete = URLChannelsDelete+    { _ucdURLChannelId :: !Text+    , _ucdAdClientId   :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLChannelsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ucdURLChannelId'+--+-- * 'ucdAdClientId'+urlChannelsDelete+    :: Text -- ^ 'ucdURLChannelId'+    -> Text -- ^ 'ucdAdClientId'+    -> URLChannelsDelete+urlChannelsDelete pUcdURLChannelId_ pUcdAdClientId_ =+    URLChannelsDelete+    { _ucdURLChannelId = pUcdURLChannelId_+    , _ucdAdClientId = pUcdAdClientId_+    }++-- | URL channel to delete.+ucdURLChannelId :: Lens' URLChannelsDelete Text+ucdURLChannelId+  = lens _ucdURLChannelId+      (\ s a -> s{_ucdURLChannelId = a})++-- | Ad client from which to delete the URL channel.+ucdAdClientId :: Lens' URLChannelsDelete Text+ucdAdClientId+  = lens _ucdAdClientId+      (\ s a -> s{_ucdAdClientId = a})++instance GoogleRequest URLChannelsDelete where+        type Rs URLChannelsDelete = URLChannel+        requestClient URLChannelsDelete{..}+          = go _ucdAdClientId _ucdURLChannelId (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy URLChannelsDeleteResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/URLChannels/Insert.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.URLChannels.Insert+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Add a new URL channel to the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.urlchannels.insert@.+module Network.Google.Resource.AdSenseHost.URLChannels.Insert+    (+    -- * REST Resource+      URLChannelsInsertResource++    -- * Creating a Request+    , urlChannelsInsert+    , URLChannelsInsert++    -- * Request Lenses+    , uciPayload+    , uciAdClientId+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.urlchannels.insert@ method which the+-- 'URLChannelsInsert' request conforms to.+type URLChannelsInsertResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "urlchannels" :>+               QueryParam "alt" AltJSON :>+                 ReqBody '[JSON] URLChannel :> Post '[JSON] URLChannel++-- | Add a new URL channel to the host AdSense account.+--+-- /See:/ 'urlChannelsInsert' smart constructor.+data URLChannelsInsert = URLChannelsInsert+    { _uciPayload    :: !URLChannel+    , _uciAdClientId :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLChannelsInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uciPayload'+--+-- * 'uciAdClientId'+urlChannelsInsert+    :: URLChannel -- ^ 'uciPayload'+    -> Text -- ^ 'uciAdClientId'+    -> URLChannelsInsert+urlChannelsInsert pUciPayload_ pUciAdClientId_ =+    URLChannelsInsert+    { _uciPayload = pUciPayload_+    , _uciAdClientId = pUciAdClientId_+    }++-- | Multipart request metadata.+uciPayload :: Lens' URLChannelsInsert URLChannel+uciPayload+  = lens _uciPayload (\ s a -> s{_uciPayload = a})++-- | Ad client to which the new URL channel will be added.+uciAdClientId :: Lens' URLChannelsInsert Text+uciAdClientId+  = lens _uciAdClientId+      (\ s a -> s{_uciAdClientId = a})++instance GoogleRequest URLChannelsInsert where+        type Rs URLChannelsInsert = URLChannel+        requestClient URLChannelsInsert{..}+          = go _uciAdClientId (Just AltJSON) _uciPayload+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy URLChannelsInsertResource)+                      mempty
+ gen/Network/Google/Resource/AdSenseHost/URLChannels/List.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.AdSenseHost.URLChannels.List+-- Copyright   : (c) 2015 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all host URL channels in the host AdSense account.+--+-- /See:/ <https://developers.google.com/adsense/host/ AdSense Host API Reference> for @adsensehost.urlchannels.list@.+module Network.Google.Resource.AdSenseHost.URLChannels.List+    (+    -- * REST Resource+      URLChannelsListResource++    -- * Creating a Request+    , urlChannelsList+    , URLChannelsList++    -- * Request Lenses+    , uclAdClientId+    , uclPageToken+    , uclMaxResults+    ) where++import           Network.Google.AdSenseHost.Types+import           Network.Google.Prelude++-- | A resource alias for @adsensehost.urlchannels.list@ method which the+-- 'URLChannelsList' request conforms to.+type URLChannelsListResource =+     "adsensehost" :>+       "v4.1" :>+         "adclients" :>+           Capture "adClientId" Text :>+             "urlchannels" :>+               QueryParam "pageToken" Text :>+                 QueryParam "maxResults" (Textual Word32) :>+                   QueryParam "alt" AltJSON :> Get '[JSON] URLChannels++-- | List all host URL channels in the host AdSense account.+--+-- /See:/ 'urlChannelsList' smart constructor.+data URLChannelsList = URLChannelsList+    { _uclAdClientId :: !Text+    , _uclPageToken  :: !(Maybe Text)+    , _uclMaxResults :: !(Maybe (Textual Word32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLChannelsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uclAdClientId'+--+-- * 'uclPageToken'+--+-- * 'uclMaxResults'+urlChannelsList+    :: Text -- ^ 'uclAdClientId'+    -> URLChannelsList+urlChannelsList pUclAdClientId_ =+    URLChannelsList+    { _uclAdClientId = pUclAdClientId_+    , _uclPageToken = Nothing+    , _uclMaxResults = Nothing+    }++-- | Ad client for which to list URL channels.+uclAdClientId :: Lens' URLChannelsList Text+uclAdClientId+  = lens _uclAdClientId+      (\ s a -> s{_uclAdClientId = a})++-- | A continuation token, used to page through URL channels. To retrieve the+-- next page, set this parameter to the value of \"nextPageToken\" from the+-- previous response.+uclPageToken :: Lens' URLChannelsList (Maybe Text)+uclPageToken+  = lens _uclPageToken (\ s a -> s{_uclPageToken = a})++-- | The maximum number of URL channels to include in the response, used for+-- paging.+uclMaxResults :: Lens' URLChannelsList (Maybe Word32)+uclMaxResults+  = lens _uclMaxResults+      (\ s a -> s{_uclMaxResults = a})+      . mapping _Coerce++instance GoogleRequest URLChannelsList where+        type Rs URLChannelsList = URLChannels+        requestClient URLChannelsList{..}+          = go _uclAdClientId _uclPageToken _uclMaxResults+              (Just AltJSON)+              adSenseHostService+          where go+                  = buildClient+                      (Proxy :: Proxy URLChannelsListResource)+                      mempty
+ gogol-adsense-host.cabal view
@@ -0,0 +1,76 @@+name:                  gogol-adsense-host+version:               0.0.1+synopsis:              Google AdSense Host 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 Brendan Hay+category:              Network, Google, Cloud+build-type:            Simple+cabal-version:         >= 1.10+extra-source-files:    README.md++description:+    Gives AdSense Hosts access to report generation, ad code generation, and+    publisher management capabilities.+    .+    /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.1@+    of the API.+    .+    Labels:+    .+    * Limited Availability++source-repository head+    type:     git+    location: git://github.com/brendanhay/gogol.git++library+    default-language:  Haskell2010+    hs-source-dirs:    src gen++    ghc-options:       -Wall++    exposed-modules:+          Network.Google.AdSenseHost+        , Network.Google.AdSenseHost.Types+        , Network.Google.Resource.AdSenseHost.Accounts.AdClients.Get+        , Network.Google.Resource.AdSenseHost.Accounts.AdClients.List+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Delete+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Get+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.GetAdCode+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Insert+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.List+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Patch+        , Network.Google.Resource.AdSenseHost.Accounts.AdUnits.Update+        , Network.Google.Resource.AdSenseHost.Accounts.Get+        , Network.Google.Resource.AdSenseHost.Accounts.List+        , Network.Google.Resource.AdSenseHost.Accounts.Reports.Generate+        , Network.Google.Resource.AdSenseHost.AdClients.Get+        , Network.Google.Resource.AdSenseHost.AdClients.List+        , Network.Google.Resource.AdSenseHost.AssociationSessions.Start+        , Network.Google.Resource.AdSenseHost.AssociationSessions.Verify+        , Network.Google.Resource.AdSenseHost.CustomChannels.Delete+        , Network.Google.Resource.AdSenseHost.CustomChannels.Get+        , Network.Google.Resource.AdSenseHost.CustomChannels.Insert+        , Network.Google.Resource.AdSenseHost.CustomChannels.List+        , Network.Google.Resource.AdSenseHost.CustomChannels.Patch+        , Network.Google.Resource.AdSenseHost.CustomChannels.Update+        , Network.Google.Resource.AdSenseHost.Reports.Generate+        , Network.Google.Resource.AdSenseHost.URLChannels.Delete+        , Network.Google.Resource.AdSenseHost.URLChannels.Insert+        , Network.Google.Resource.AdSenseHost.URLChannels.List++    other-modules:+          Network.Google.AdSenseHost.Types.Product+        , Network.Google.AdSenseHost.Types.Sum++    build-depends:+          gogol-core == 0.0.1.*+        , base       >= 4.7 && < 5