-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Google Ad Exchange Seller SDK.
--   
--   Accesses the inventory of Ad Exchange seller users and generates
--   reports.
--   
--   <i>Warning:</i> 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 <tt>v2.0</tt> of the API.
@package gogol-adexchange-seller
@version 0.3.0


module Network.Google.AdExchangeSeller.Types

-- | Default request referring to version 'v2.0' of the Ad Exchange Seller
--   API. This contains the host and root path used as a starting point for
--   constructing service requests.
adExchangeSellerService :: ServiceConfig

-- | View your Ad Exchange data
adExchangeSellerReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/adexchange.seller.readonly"]

-- | View and manage your Ad Exchange data
adExchangeSellerScope :: Proxy '["https://www.googleapis.com/auth/adexchange.seller"]
data AdClients

-- | Creates a value of <a>AdClients</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>acEtag</a></li>
--   <li><a>acNextPageToken</a></li>
--   <li><a>acKind</a></li>
--   <li><a>acItems</a></li>
--   </ul>
adClients :: AdClients

-- | ETag of this response for caching purposes.
acEtag :: Lens' AdClients (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#adClients.
acKind :: Lens' AdClients Text

-- | The ad clients returned in this list response.
acItems :: Lens' AdClients [AdClient]
data ReportingMetadataEntry

-- | Creates a value of <a>ReportingMetadataEntry</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rmeKind</a></li>
--   <li><a>rmeRequiredMetrics</a></li>
--   <li><a>rmeCompatibleMetrics</a></li>
--   <li><a>rmeRequiredDimensions</a></li>
--   <li><a>rmeId</a></li>
--   <li><a>rmeCompatibleDimensions</a></li>
--   <li><a>rmeSupportedProducts</a></li>
--   </ul>
reportingMetadataEntry :: ReportingMetadataEntry

-- | Kind of resource this is, in this case
--   adexchangeseller#reportingMetadataEntry.
rmeKind :: Lens' ReportingMetadataEntry Text

-- | The names of the metrics which the dimension or metric this reporting
--   metadata entry describes requires to also be present in order for the
--   report to be valid. Omitting these will not cause an error or warning,
--   but may result in data which cannot be correctly interpreted.
rmeRequiredMetrics :: Lens' ReportingMetadataEntry [Text]

-- | The names of the metrics the dimension or metric this reporting
--   metadata entry describes is compatible with.
rmeCompatibleMetrics :: Lens' ReportingMetadataEntry [Text]

-- | The names of the dimensions which the dimension or metric this
--   reporting metadata entry describes requires to also be present in
--   order for the report to be valid. Omitting these will not cause an
--   error or warning, but may result in data which cannot be correctly
--   interpreted.
rmeRequiredDimensions :: Lens' ReportingMetadataEntry [Text]

-- | Unique identifier of this reporting metadata entry, corresponding to
--   the name of the appropriate dimension or metric.
rmeId :: Lens' ReportingMetadataEntry (Maybe Text)

-- | For metrics this is a list of dimension IDs which the metric is
--   compatible with, for dimensions it is a list of compatibility groups
--   the dimension belongs to.
rmeCompatibleDimensions :: Lens' ReportingMetadataEntry [Text]

-- | The codes of the projects supported by the dimension or metric this
--   reporting metadata entry describes.
rmeSupportedProducts :: Lens' ReportingMetadataEntry [Text]
data Accounts

-- | Creates a value of <a>Accounts</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aEtag</a></li>
--   <li><a>aNextPageToken</a></li>
--   <li><a>aKind</a></li>
--   <li><a>aItems</a></li>
--   </ul>
accounts :: Accounts

-- | ETag of this response for caching purposes.
aEtag :: Lens' Accounts (Maybe Text)

-- | Continuation token used to page through accounts. To retrieve the next
--   page of results, set the next request's "pageToken" value to this.
aNextPageToken :: Lens' Accounts (Maybe Text)

-- | Kind of list this is, in this case adexchangeseller#accounts.
aKind :: Lens' Accounts Text

-- | The accounts returned in this list response.
aItems :: Lens' Accounts [Account]
data Alerts

-- | Creates a value of <a>Alerts</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aleKind</a></li>
--   <li><a>aleItems</a></li>
--   </ul>
alerts :: Alerts

-- | Kind of list this is, in this case adexchangeseller#alerts.
aleKind :: Lens' Alerts Text

-- | The alerts returned in this list response.
aleItems :: Lens' Alerts [Alert]
data SavedReports

-- | Creates a value of <a>SavedReports</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>srEtag</a></li>
--   <li><a>srNextPageToken</a></li>
--   <li><a>srKind</a></li>
--   <li><a>srItems</a></li>
--   </ul>
savedReports :: SavedReports

-- | ETag of this response for caching purposes.
srEtag :: Lens' SavedReports (Maybe Text)

-- | Continuation token used to page through saved reports. To retrieve the
--   next page of results, set the next request's "pageToken" value to
--   this.
srNextPageToken :: Lens' SavedReports (Maybe Text)

-- | Kind of list this is, in this case adexchangeseller#savedReports.
srKind :: Lens' SavedReports Text

-- | The saved reports returned in this list response.
srItems :: Lens' SavedReports [SavedReport]
data SavedReport

-- | Creates a value of <a>SavedReport</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sKind</a></li>
--   <li><a>sName</a></li>
--   <li><a>sId</a></li>
--   </ul>
savedReport :: SavedReport

-- | Kind of resource this is, in this case adexchangeseller#savedReport.
sKind :: Lens' SavedReport Text

-- | This saved report's name.
sName :: Lens' SavedReport (Maybe Text)

-- | Unique identifier of this saved report.
sId :: Lens' SavedReport (Maybe Text)
data URLChannels

-- | Creates a value of <a>URLChannels</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ucEtag</a></li>
--   <li><a>ucNextPageToken</a></li>
--   <li><a>ucKind</a></li>
--   <li><a>ucItems</a></li>
--   </ul>
urlChannels :: URLChannels

-- | ETag of this response for caching purposes.
ucEtag :: Lens' URLChannels (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#urlChannels.
ucKind :: Lens' URLChannels Text

-- | The URL channels returned in this list response.
ucItems :: Lens' URLChannels [URLChannel]
data CustomChannels

-- | Creates a value of <a>CustomChannels</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ccEtag</a></li>
--   <li><a>ccNextPageToken</a></li>
--   <li><a>ccKind</a></li>
--   <li><a>ccItems</a></li>
--   </ul>
customChannels :: CustomChannels

-- | ETag of this response for caching purposes.
ccEtag :: Lens' CustomChannels (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#customChannels.
ccKind :: Lens' CustomChannels Text

-- | The custom channels returned in this list response.
ccItems :: Lens' CustomChannels [CustomChannel]
data Report

-- | Creates a value of <a>Report</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rKind</a></li>
--   <li><a>rAverages</a></li>
--   <li><a>rWarnings</a></li>
--   <li><a>rRows</a></li>
--   <li><a>rTotals</a></li>
--   <li><a>rHeaders</a></li>
--   <li><a>rTotalMatchedRows</a></li>
--   </ul>
report :: Report

-- | Kind this is, in this case adexchangeseller#report.
rKind :: Lens' Report Text

-- | 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]

-- | Any warnings associated with generation of the report.
rWarnings :: Lens' Report [Text]

-- | 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]]

-- | 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]

-- | 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]

-- | 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)
data Alert

-- | Creates a value of <a>Alert</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aaKind</a></li>
--   <li><a>aaSeverity</a></li>
--   <li><a>aaId</a></li>
--   <li><a>aaType</a></li>
--   <li><a>aaMessage</a></li>
--   </ul>
alert :: Alert

-- | Kind of resource this is, in this case adexchangeseller#alert.
aaKind :: Lens' Alert Text

-- | Severity of this alert. Possible values: INFO, WARNING, SEVERE.
aaSeverity :: Lens' Alert (Maybe Text)

-- | Unique identifier of this alert. This should be considered an opaque
--   identifier; it is not safe to rely on it being in any particular
--   format.
aaId :: Lens' Alert (Maybe Text)

-- | Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3,
--   ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY,
--   GRAYLISTED_PUBLISHER, API_HOLD.
aaType :: Lens' Alert (Maybe Text)

-- | The localized alert message.
aaMessage :: Lens' Alert (Maybe Text)
data Account

-- | Creates a value of <a>Account</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>accKind</a></li>
--   <li><a>accName</a></li>
--   <li><a>accId</a></li>
--   </ul>
account :: Account

-- | Kind of resource this is, in this case adexchangeseller#account.
accKind :: Lens' Account Text

-- | Name of this account.
accName :: Lens' Account (Maybe Text)

-- | Unique identifier of this account.
accId :: Lens' Account (Maybe Text)
data AdClient

-- | Creates a value of <a>AdClient</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>adKind</a></li>
--   <li><a>adArcOptIn</a></li>
--   <li><a>adSupportsReporting</a></li>
--   <li><a>adId</a></li>
--   <li><a>adProductCode</a></li>
--   </ul>
adClient :: AdClient

-- | Kind of resource this is, in this case adexchangeseller#adClient.
adKind :: Lens' AdClient Text

-- | Whether this ad client is opted in to ARC.
adArcOptIn :: Lens' AdClient (Maybe Bool)

-- | Whether this ad client supports being reported on.
adSupportsReporting :: Lens' AdClient (Maybe Bool)

-- | Unique identifier of this ad client.
adId :: Lens' AdClient (Maybe Text)

-- | This ad client's product code, which corresponds to the PRODUCT_CODE
--   report dimension.
adProductCode :: Lens' AdClient (Maybe Text)
data ReportHeadersItem

-- | Creates a value of <a>ReportHeadersItem</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rhiName</a></li>
--   <li><a>rhiCurrency</a></li>
--   <li><a>rhiType</a></li>
--   </ul>
reportHeadersItem :: ReportHeadersItem

-- | The name of the header.
rhiName :: Lens' ReportHeadersItem (Maybe Text)

-- | The currency of this column. Only present if the header type is
--   METRIC_CURRENCY.
rhiCurrency :: Lens' ReportHeadersItem (Maybe Text)

-- | The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO,
--   or METRIC_CURRENCY.
rhiType :: Lens' ReportHeadersItem (Maybe Text)

-- | The targeting information of this custom channel, if activated.
--   
--   <i>See:</i> <a>customChannelTargetingInfo</a> smart constructor.
data CustomChannelTargetingInfo

-- | Creates a value of <a>CustomChannelTargetingInfo</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cctiLocation</a></li>
--   <li><a>cctiSiteLanguage</a></li>
--   <li><a>cctiAdsAppearOn</a></li>
--   <li><a>cctiDescription</a></li>
--   </ul>
customChannelTargetingInfo :: CustomChannelTargetingInfo

-- | The locations in which ads appear. (Only valid for content and mobile
--   content ads). Acceptable values for content ads are: TOP_LEFT,
--   TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT,
--   BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS.
--   Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM,
--   MULTIPLE_LOCATIONS.
cctiLocation :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The language of the sites ads will be displayed on.
cctiSiteLanguage :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The name used to describe this channel externally.
cctiAdsAppearOn :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The external description of the channel.
cctiDescription :: Lens' CustomChannelTargetingInfo (Maybe Text)
data PreferredDeals

-- | Creates a value of <a>PreferredDeals</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pdKind</a></li>
--   <li><a>pdItems</a></li>
--   </ul>
preferredDeals :: PreferredDeals

-- | Kind of list this is, in this case adexchangeseller#preferredDeals.
pdKind :: Lens' PreferredDeals Text

-- | The preferred deals returned in this list response.
pdItems :: Lens' PreferredDeals [PreferredDeal]
data Metadata

-- | Creates a value of <a>Metadata</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mKind</a></li>
--   <li><a>mItems</a></li>
--   </ul>
metadata :: Metadata

-- | Kind of list this is, in this case adexchangeseller#metadata.
mKind :: Lens' Metadata Text
mItems :: Lens' Metadata [ReportingMetadataEntry]
data CustomChannel

-- | Creates a value of <a>CustomChannel</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cTargetingInfo</a></li>
--   <li><a>cKind</a></li>
--   <li><a>cName</a></li>
--   <li><a>cCode</a></li>
--   <li><a>cId</a></li>
--   </ul>
customChannel :: CustomChannel

-- | The targeting information of this custom channel, if activated.
cTargetingInfo :: Lens' CustomChannel (Maybe CustomChannelTargetingInfo)

-- | Kind of resource this is, in this case adexchangeseller#customChannel.
cKind :: Lens' CustomChannel Text

-- | Name of this custom channel.
cName :: Lens' CustomChannel (Maybe Text)

-- | Code of this custom channel, not necessarily unique across ad clients.
cCode :: Lens' CustomChannel (Maybe Text)

-- | 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)
data URLChannel

-- | Creates a value of <a>URLChannel</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>urlcKind</a></li>
--   <li><a>urlcId</a></li>
--   <li><a>urlcURLPattern</a></li>
--   </ul>
urlChannel :: URLChannel

-- | Kind of resource this is, in this case adexchangeseller#urlChannel.
urlcKind :: Lens' URLChannel Text

-- | 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)

-- | URL Pattern of this URL channel. Does not include "http://" or
--   "https://". Example: www.example.com/home
urlcURLPattern :: Lens' URLChannel (Maybe Text)
data PreferredDeal

-- | Creates a value of <a>PreferredDeal</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pAdvertiserName</a></li>
--   <li><a>pCurrencyCode</a></li>
--   <li><a>pStartTime</a></li>
--   <li><a>pKind</a></li>
--   <li><a>pBuyerNetworkName</a></li>
--   <li><a>pEndTime</a></li>
--   <li><a>pId</a></li>
--   <li><a>pFixedCpm</a></li>
--   </ul>
preferredDeal :: PreferredDeal

-- | The name of the advertiser this deal is for.
pAdvertiserName :: Lens' PreferredDeal (Maybe Text)

-- | The currency code that applies to the fixed_cpm value. If not set then
--   assumed to be USD.
pCurrencyCode :: Lens' PreferredDeal (Maybe Text)

-- | Time when this deal becomes active in seconds since the epoch (GMT).
--   If not set then this deal is active immediately upon creation.
pStartTime :: Lens' PreferredDeal (Maybe Word64)

-- | Kind of resource this is, in this case adexchangeseller#preferredDeal.
pKind :: Lens' PreferredDeal Text

-- | The name of the buyer network this deal is for.
pBuyerNetworkName :: Lens' PreferredDeal (Maybe Text)

-- | Time when this deal stops being active in seconds since the epoch
--   (GMT). If not set then this deal is valid until manually disabled by
--   the publisher.
pEndTime :: Lens' PreferredDeal (Maybe Word64)

-- | Unique identifier of this preferred deal.
pId :: Lens' PreferredDeal (Maybe Int64)

-- | The fixed price for this preferred deal. In cpm micros of currency
--   according to currencyCode. If set, then this preferred deal is
--   eligible for the fixed price tier of buying (highest priority, pay
--   exactly the configured fixed price).
pFixedCpm :: Lens' PreferredDeal (Maybe Int64)


-- | List all ad clients in this Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.adclients.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List

-- | A resource alias for <tt>adexchangeseller.accounts.adclients.list</tt>
--   method which the <a>AccountsAdClientsList</a> request conforms to.
type AccountsAdClientsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("adclients" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] AdClients)))))))

-- | Creates a value of <a>AccountsAdClientsList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aaclAccountId</a></li>
--   <li><a>aaclPageToken</a></li>
--   <li><a>aaclMaxResults</a></li>
--   </ul>
accountsAdClientsList :: Text -> AccountsAdClientsList

-- | List all ad clients in this Ad Exchange account.
--   
--   <i>See:</i> <a>accountsAdClientsList</a> smart constructor.
data AccountsAdClientsList

-- | Account to which the ad client belongs.
aaclAccountId :: Lens' AccountsAdClientsList Text

-- | 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)

-- | The maximum number of ad clients to include in the response, used for
--   paging.
aaclMaxResults :: Lens' AccountsAdClientsList (Maybe Word32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List.AccountsAdClientsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List.AccountsAdClientsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List.AccountsAdClientsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List.AccountsAdClientsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.AdClients.List.AccountsAdClientsList


-- | List the alerts for this Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.alerts.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List

-- | A resource alias for <tt>adexchangeseller.accounts.alerts.list</tt>
--   method which the <a>AccountsAlertsList</a> request conforms to.
type AccountsAlertsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("alerts" :> (QueryParam "locale" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Alerts))))))

-- | Creates a value of <a>AccountsAlertsList</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aalLocale</a></li>
--   <li><a>aalAccountId</a></li>
--   </ul>
accountsAlertsList :: Text -> AccountsAlertsList

-- | List the alerts for this Ad Exchange account.
--   
--   <i>See:</i> <a>accountsAlertsList</a> smart constructor.
data AccountsAlertsList

-- | The locale to use for translating alert messages. The account locale
--   will be used if this is not supplied. The AdSense default (English)
--   will be used if the supplied locale is invalid or unsupported.
aalLocale :: Lens' AccountsAlertsList (Maybe Text)

-- | Account owning the alerts.
aalAccountId :: Lens' AccountsAlertsList Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List.AccountsAlertsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List.AccountsAlertsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List.AccountsAlertsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List.AccountsAlertsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Alerts.List.AccountsAlertsList


-- | Get the specified custom channel from the specified ad client.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.customchannels.get</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get

-- | A resource alias for
--   <tt>adexchangeseller.accounts.customchannels.get</tt> method which the
--   <a>AccountsCustomChannelsGet</a> request conforms to.
type AccountsCustomChannelsGetResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("adclients" :> (Capture "adClientId" Text :> ("customchannels" :> (Capture "customChannelId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] CustomChannel))))))))

-- | Creates a value of <a>AccountsCustomChannelsGet</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>accgCustomChannelId</a></li>
--   <li><a>accgAdClientId</a></li>
--   <li><a>accgAccountId</a></li>
--   </ul>
accountsCustomChannelsGet :: Text -> Text -> Text -> AccountsCustomChannelsGet

-- | Get the specified custom channel from the specified ad client.
--   
--   <i>See:</i> <a>accountsCustomChannelsGet</a> smart constructor.
data AccountsCustomChannelsGet

-- | Custom channel to retrieve.
accgCustomChannelId :: Lens' AccountsCustomChannelsGet Text

-- | Ad client which contains the custom channel.
accgAdClientId :: Lens' AccountsCustomChannelsGet Text

-- | Account to which the ad client belongs.
accgAccountId :: Lens' AccountsCustomChannelsGet Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get.AccountsCustomChannelsGet
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get.AccountsCustomChannelsGet
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get.AccountsCustomChannelsGet
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get.AccountsCustomChannelsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.Get.AccountsCustomChannelsGet


-- | List all custom channels in the specified ad client for this Ad
--   Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.customchannels.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.customchannels.list</tt> method which
--   the <a>AccountsCustomChannelsList</a> request conforms to.
type AccountsCustomChannelsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("adclients" :> (Capture "adClientId" Text :> ("customchannels" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] CustomChannels)))))))))

-- | Creates a value of <a>AccountsCustomChannelsList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>acclAdClientId</a></li>
--   <li><a>acclAccountId</a></li>
--   <li><a>acclPageToken</a></li>
--   <li><a>acclMaxResults</a></li>
--   </ul>
accountsCustomChannelsList :: Text -> Text -> AccountsCustomChannelsList

-- | List all custom channels in the specified ad client for this Ad
--   Exchange account.
--   
--   <i>See:</i> <a>accountsCustomChannelsList</a> smart constructor.
data AccountsCustomChannelsList

-- | Ad client for which to list custom channels.
acclAdClientId :: Lens' AccountsCustomChannelsList Text

-- | Account to which the ad client belongs.
acclAccountId :: Lens' AccountsCustomChannelsList Text

-- | 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.
acclPageToken :: Lens' AccountsCustomChannelsList (Maybe Text)

-- | The maximum number of custom channels to include in the response, used
--   for paging.
acclMaxResults :: Lens' AccountsCustomChannelsList (Maybe Word32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List.AccountsCustomChannelsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List.AccountsCustomChannelsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List.AccountsCustomChannelsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List.AccountsCustomChannelsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.CustomChannels.List.AccountsCustomChannelsList


-- | Get information about the selected Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.get</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Get

-- | A resource alias for <tt>adexchangeseller.accounts.get</tt> method
--   which the <a>AccountsGet</a> request conforms to.
type AccountsGetResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Account))))

-- | Creates a value of <a>AccountsGet</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>agAccountId</a></li>
--   </ul>
accountsGet :: Text -> AccountsGet

-- | Get information about the selected Ad Exchange account.
--   
--   <i>See:</i> <a>accountsGet</a> smart constructor.
data AccountsGet

-- | Account to get information about. Tip: 'myaccount' is a valid ID.
agAccountId :: Lens' AccountsGet Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Get.AccountsGet
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Get.AccountsGet
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Get.AccountsGet
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Get.AccountsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Get.AccountsGet


-- | List all accounts available to this Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.List

-- | A resource alias for <tt>adexchangeseller.accounts.list</tt> method
--   which the <a>AccountsList</a> request conforms to.
type AccountsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Int32) :> (QueryParam "alt" AltJSON :> Get '[JSON] Accounts)))))

-- | Creates a value of <a>AccountsList</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>alPageToken</a></li>
--   <li><a>alMaxResults</a></li>
--   </ul>
accountsList :: AccountsList

-- | List all accounts available to this Ad Exchange account.
--   
--   <i>See:</i> <a>accountsList</a> smart constructor.
data AccountsList

-- | A continuation token, used to page through accounts. To retrieve the
--   next page, set this parameter to the value of "nextPageToken" from the
--   previous response.
alPageToken :: Lens' AccountsList (Maybe Text)

-- | The maximum number of accounts to include in the response, used for
--   paging.
alMaxResults :: Lens' AccountsList (Maybe Int32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.List.AccountsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.List.AccountsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.List.AccountsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.List.AccountsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.List.AccountsList


-- | List the metadata for the dimensions available to this AdExchange
--   account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.metadata.dimensions.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.metadata.dimensions.list</tt> method
--   which the <a>AccountsMetadataDimensionsList</a> request conforms to.
type AccountsMetadataDimensionsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("metadata" :> ("dimensions" :> (QueryParam "alt" AltJSON :> Get '[JSON] Metadata))))))

-- | Creates a value of <a>AccountsMetadataDimensionsList</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>amdlAccountId</a></li>
--   </ul>
accountsMetadataDimensionsList :: Text -> AccountsMetadataDimensionsList

-- | List the metadata for the dimensions available to this AdExchange
--   account.
--   
--   <i>See:</i> <a>accountsMetadataDimensionsList</a> smart constructor.
data AccountsMetadataDimensionsList

-- | Account with visibility to the dimensions.
amdlAccountId :: Lens' AccountsMetadataDimensionsList Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List.AccountsMetadataDimensionsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List.AccountsMetadataDimensionsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List.AccountsMetadataDimensionsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List.AccountsMetadataDimensionsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Dimensions.List.AccountsMetadataDimensionsList


-- | List the metadata for the metrics available to this AdExchange
--   account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.metadata.metrics.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.metadata.metrics.list</tt> method which
--   the <a>AccountsMetadataMetricsList</a> request conforms to.
type AccountsMetadataMetricsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("metadata" :> ("metrics" :> (QueryParam "alt" AltJSON :> Get '[JSON] Metadata))))))

-- | Creates a value of <a>AccountsMetadataMetricsList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ammlAccountId</a></li>
--   </ul>
accountsMetadataMetricsList :: Text -> AccountsMetadataMetricsList

-- | List the metadata for the metrics available to this AdExchange
--   account.
--   
--   <i>See:</i> <a>accountsMetadataMetricsList</a> smart constructor.
data AccountsMetadataMetricsList

-- | Account with visibility to the metrics.
ammlAccountId :: Lens' AccountsMetadataMetricsList Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List.AccountsMetadataMetricsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List.AccountsMetadataMetricsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List.AccountsMetadataMetricsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List.AccountsMetadataMetricsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Metadata.Metrics.List.AccountsMetadataMetricsList


-- | Get information about the selected Ad Exchange Preferred Deal.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.preferreddeals.get</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get

-- | A resource alias for
--   <tt>adexchangeseller.accounts.preferreddeals.get</tt> method which the
--   <a>AccountsPreferredDealsGet</a> request conforms to.
type AccountsPreferredDealsGetResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("preferreddeals" :> (Capture "dealId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] PreferredDeal))))))

-- | Creates a value of <a>AccountsPreferredDealsGet</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>apdgDealId</a></li>
--   <li><a>apdgAccountId</a></li>
--   </ul>
accountsPreferredDealsGet :: Text -> Text -> AccountsPreferredDealsGet

-- | Get information about the selected Ad Exchange Preferred Deal.
--   
--   <i>See:</i> <a>accountsPreferredDealsGet</a> smart constructor.
data AccountsPreferredDealsGet

-- | Preferred deal to get information about.
apdgDealId :: Lens' AccountsPreferredDealsGet Text

-- | Account owning the deal.
apdgAccountId :: Lens' AccountsPreferredDealsGet Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get.AccountsPreferredDealsGet
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get.AccountsPreferredDealsGet
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get.AccountsPreferredDealsGet
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get.AccountsPreferredDealsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.Get.AccountsPreferredDealsGet


-- | List the preferred deals for this Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.preferreddeals.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.preferreddeals.list</tt> method which
--   the <a>AccountsPreferredDealsList</a> request conforms to.
type AccountsPreferredDealsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("preferreddeals" :> (QueryParam "alt" AltJSON :> Get '[JSON] PreferredDeals)))))

-- | Creates a value of <a>AccountsPreferredDealsList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>apdlAccountId</a></li>
--   </ul>
accountsPreferredDealsList :: Text -> AccountsPreferredDealsList

-- | List the preferred deals for this Ad Exchange account.
--   
--   <i>See:</i> <a>accountsPreferredDealsList</a> smart constructor.
data AccountsPreferredDealsList

-- | Account owning the deals.
apdlAccountId :: Lens' AccountsPreferredDealsList Text
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List.AccountsPreferredDealsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List.AccountsPreferredDealsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List.AccountsPreferredDealsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List.AccountsPreferredDealsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.PreferredDeals.List.AccountsPreferredDealsList


-- | Generate an Ad Exchange 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.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.reports.generate</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate

-- | A resource alias for
--   <tt>adexchangeseller.accounts.reports.generate</tt> method which the
--   <a>AccountsReportsGenerate</a> request conforms to.
type AccountsReportsGenerateResource = ("adexchangeseller" :> ("v2.0" :> ("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))))))))))))))) :<|> ("adexchangeseller" :> ("v2.0" :> ("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" AltMedia :> Get '[OctetStream] Stream)))))))))))))))

-- | Creates a value of <a>AccountsReportsGenerate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>argDimension</a></li>
--   <li><a>argLocale</a></li>
--   <li><a>argEndDate</a></li>
--   <li><a>argStartDate</a></li>
--   <li><a>argAccountId</a></li>
--   <li><a>argMetric</a></li>
--   <li><a>argSort</a></li>
--   <li><a>argFilter</a></li>
--   <li><a>argStartIndex</a></li>
--   <li><a>argMaxResults</a></li>
--   </ul>
accountsReportsGenerate :: Text -> Text -> Text -> AccountsReportsGenerate

-- | Generate an Ad Exchange 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.
--   
--   <i>See:</i> <a>accountsReportsGenerate</a> smart constructor.
data AccountsReportsGenerate

-- | Dimensions to base the report on.
argDimension :: Lens' AccountsReportsGenerate [Text]

-- | Optional locale to use for translating report output to a local
--   language. Defaults to "en_US" if not specified.
argLocale :: Lens' AccountsReportsGenerate (Maybe Text)

-- | End of the date range to report on in "YYYY-MM-DD" format, inclusive.
argEndDate :: Lens' AccountsReportsGenerate Text

-- | Start of the date range to report on in "YYYY-MM-DD" format,
--   inclusive.
argStartDate :: Lens' AccountsReportsGenerate Text

-- | Account which owns the generated report.
argAccountId :: Lens' AccountsReportsGenerate Text

-- | Numeric columns to include in the report.
argMetric :: Lens' AccountsReportsGenerate [Text]

-- | 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]

-- | Filters to be run on the report.
argFilter :: Lens' AccountsReportsGenerate [Text]

-- | Index of the first row of report data to return.
argStartIndex :: Lens' AccountsReportsGenerate (Maybe Word32)

-- | The maximum number of rows of report data to return.
argMaxResults :: Lens' AccountsReportsGenerate (Maybe Word32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate
instance Network.Google.Types.GoogleRequest (Network.Google.Types.MediaDownload Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Generate.AccountsReportsGenerate)


-- | Generate an Ad Exchange report based on the saved report ID sent in
--   the query parameters.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.reports.saved.generate</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate

-- | A resource alias for
--   <tt>adexchangeseller.accounts.reports.saved.generate</tt> method which
--   the <a>AccountsReportsSavedGenerate</a> request conforms to.
type AccountsReportsSavedGenerateResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("reports" :> (Capture "savedReportId" Text :> (QueryParam "locale" Text :> (QueryParam "startIndex" (Textual Int32) :> (QueryParam "maxResults" (Textual Int32) :> (QueryParam "alt" AltJSON :> Get '[JSON] Report)))))))))

-- | Creates a value of <a>AccountsReportsSavedGenerate</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>arsgLocale</a></li>
--   <li><a>arsgSavedReportId</a></li>
--   <li><a>arsgAccountId</a></li>
--   <li><a>arsgStartIndex</a></li>
--   <li><a>arsgMaxResults</a></li>
--   </ul>
accountsReportsSavedGenerate :: Text -> Text -> AccountsReportsSavedGenerate

-- | Generate an Ad Exchange report based on the saved report ID sent in
--   the query parameters.
--   
--   <i>See:</i> <a>accountsReportsSavedGenerate</a> smart constructor.
data AccountsReportsSavedGenerate

-- | Optional locale to use for translating report output to a local
--   language. Defaults to "en_US" if not specified.
arsgLocale :: Lens' AccountsReportsSavedGenerate (Maybe Text)

-- | The saved report to retrieve.
arsgSavedReportId :: Lens' AccountsReportsSavedGenerate Text

-- | Account owning the saved report.
arsgAccountId :: Lens' AccountsReportsSavedGenerate Text

-- | Index of the first row of report data to return.
arsgStartIndex :: Lens' AccountsReportsSavedGenerate (Maybe Int32)

-- | The maximum number of rows of report data to return.
arsgMaxResults :: Lens' AccountsReportsSavedGenerate (Maybe Int32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate.AccountsReportsSavedGenerate
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate.AccountsReportsSavedGenerate
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate.AccountsReportsSavedGenerate
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate.AccountsReportsSavedGenerate
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.Generate.AccountsReportsSavedGenerate


-- | List all saved reports in this Ad Exchange account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.reports.saved.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.reports.saved.list</tt> method which the
--   <a>AccountsReportsSavedList</a> request conforms to.
type AccountsReportsSavedListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("reports" :> ("saved" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Int32) :> (QueryParam "alt" AltJSON :> Get '[JSON] SavedReports))))))))

-- | Creates a value of <a>AccountsReportsSavedList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>arslAccountId</a></li>
--   <li><a>arslPageToken</a></li>
--   <li><a>arslMaxResults</a></li>
--   </ul>
accountsReportsSavedList :: Text -> AccountsReportsSavedList

-- | List all saved reports in this Ad Exchange account.
--   
--   <i>See:</i> <a>accountsReportsSavedList</a> smart constructor.
data AccountsReportsSavedList

-- | Account owning the saved reports.
arslAccountId :: Lens' AccountsReportsSavedList Text

-- | A continuation token, used to page through saved reports. To retrieve
--   the next page, set this parameter to the value of "nextPageToken" from
--   the previous response.
arslPageToken :: Lens' AccountsReportsSavedList (Maybe Text)

-- | The maximum number of saved reports to include in the response, used
--   for paging.
arslMaxResults :: Lens' AccountsReportsSavedList (Maybe Int32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List.AccountsReportsSavedList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List.AccountsReportsSavedList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List.AccountsReportsSavedList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List.AccountsReportsSavedList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.Reports.Saved.List.AccountsReportsSavedList


-- | List all URL channels in the specified ad client for this Ad Exchange
--   account.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a> for
--   <tt>adexchangeseller.accounts.urlchannels.list</tt>.
module Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List

-- | A resource alias for
--   <tt>adexchangeseller.accounts.urlchannels.list</tt> method which the
--   <a>AccountsURLChannelsList</a> request conforms to.
type AccountsURLChannelsListResource = "adexchangeseller" :> ("v2.0" :> ("accounts" :> (Capture "accountId" Text :> ("adclients" :> (Capture "adClientId" Text :> ("urlchannels" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] URLChannels)))))))))

-- | Creates a value of <a>AccountsURLChannelsList</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>auclAdClientId</a></li>
--   <li><a>auclAccountId</a></li>
--   <li><a>auclPageToken</a></li>
--   <li><a>auclMaxResults</a></li>
--   </ul>
accountsURLChannelsList :: Text -> Text -> AccountsURLChannelsList

-- | List all URL channels in the specified ad client for this Ad Exchange
--   account.
--   
--   <i>See:</i> <a>accountsURLChannelsList</a> smart constructor.
data AccountsURLChannelsList

-- | Ad client for which to list URL channels.
auclAdClientId :: Lens' AccountsURLChannelsList Text

-- | Account to which the ad client belongs.
auclAccountId :: Lens' AccountsURLChannelsList Text

-- | 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.
auclPageToken :: Lens' AccountsURLChannelsList (Maybe Text)

-- | The maximum number of URL channels to include in the response, used
--   for paging.
auclMaxResults :: Lens' AccountsURLChannelsList (Maybe Word32)
instance GHC.Generics.Generic Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List.AccountsURLChannelsList
instance Data.Data.Data Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List.AccountsURLChannelsList
instance GHC.Show.Show Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List.AccountsURLChannelsList
instance GHC.Classes.Eq Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List.AccountsURLChannelsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.AdExchangeSeller.Accounts.URLChannels.List.AccountsURLChannelsList


-- | Accesses the inventory of Ad Exchange seller users and generates
--   reports.
--   
--   <i>See:</i> <a>Ad Exchange Seller API Reference</a>
module Network.Google.AdExchangeSeller

-- | Default request referring to version 'v2.0' of the Ad Exchange Seller
--   API. This contains the host and root path used as a starting point for
--   constructing service requests.
adExchangeSellerService :: ServiceConfig

-- | View your Ad Exchange data
adExchangeSellerReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/adexchange.seller.readonly"]

-- | View and manage your Ad Exchange data
adExchangeSellerScope :: Proxy '["https://www.googleapis.com/auth/adexchange.seller"]

-- | Represents the entirety of the methods and resources available for the
--   Ad Exchange Seller API service.
type AdExchangeSellerAPI = AccountsAdClientsListResource :<|> (AccountsReportsSavedListResource :<|> (AccountsReportsSavedGenerateResource :<|> (AccountsReportsGenerateResource :<|> (AccountsAlertsListResource :<|> (AccountsURLChannelsListResource :<|> (AccountsCustomChannelsListResource :<|> (AccountsCustomChannelsGetResource :<|> (AccountsPreferredDealsListResource :<|> (AccountsPreferredDealsGetResource :<|> (AccountsMetadataMetricsListResource :<|> (AccountsMetadataDimensionsListResource :<|> (AccountsListResource :<|> AccountsGetResource))))))))))))
data AdClients

-- | Creates a value of <a>AdClients</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>acEtag</a></li>
--   <li><a>acNextPageToken</a></li>
--   <li><a>acKind</a></li>
--   <li><a>acItems</a></li>
--   </ul>
adClients :: AdClients

-- | ETag of this response for caching purposes.
acEtag :: Lens' AdClients (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#adClients.
acKind :: Lens' AdClients Text

-- | The ad clients returned in this list response.
acItems :: Lens' AdClients [AdClient]
data ReportingMetadataEntry

-- | Creates a value of <a>ReportingMetadataEntry</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rmeKind</a></li>
--   <li><a>rmeRequiredMetrics</a></li>
--   <li><a>rmeCompatibleMetrics</a></li>
--   <li><a>rmeRequiredDimensions</a></li>
--   <li><a>rmeId</a></li>
--   <li><a>rmeCompatibleDimensions</a></li>
--   <li><a>rmeSupportedProducts</a></li>
--   </ul>
reportingMetadataEntry :: ReportingMetadataEntry

-- | Kind of resource this is, in this case
--   adexchangeseller#reportingMetadataEntry.
rmeKind :: Lens' ReportingMetadataEntry Text

-- | The names of the metrics which the dimension or metric this reporting
--   metadata entry describes requires to also be present in order for the
--   report to be valid. Omitting these will not cause an error or warning,
--   but may result in data which cannot be correctly interpreted.
rmeRequiredMetrics :: Lens' ReportingMetadataEntry [Text]

-- | The names of the metrics the dimension or metric this reporting
--   metadata entry describes is compatible with.
rmeCompatibleMetrics :: Lens' ReportingMetadataEntry [Text]

-- | The names of the dimensions which the dimension or metric this
--   reporting metadata entry describes requires to also be present in
--   order for the report to be valid. Omitting these will not cause an
--   error or warning, but may result in data which cannot be correctly
--   interpreted.
rmeRequiredDimensions :: Lens' ReportingMetadataEntry [Text]

-- | Unique identifier of this reporting metadata entry, corresponding to
--   the name of the appropriate dimension or metric.
rmeId :: Lens' ReportingMetadataEntry (Maybe Text)

-- | For metrics this is a list of dimension IDs which the metric is
--   compatible with, for dimensions it is a list of compatibility groups
--   the dimension belongs to.
rmeCompatibleDimensions :: Lens' ReportingMetadataEntry [Text]

-- | The codes of the projects supported by the dimension or metric this
--   reporting metadata entry describes.
rmeSupportedProducts :: Lens' ReportingMetadataEntry [Text]
data Accounts

-- | Creates a value of <a>Accounts</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aEtag</a></li>
--   <li><a>aNextPageToken</a></li>
--   <li><a>aKind</a></li>
--   <li><a>aItems</a></li>
--   </ul>
accounts :: Accounts

-- | ETag of this response for caching purposes.
aEtag :: Lens' Accounts (Maybe Text)

-- | Continuation token used to page through accounts. To retrieve the next
--   page of results, set the next request's "pageToken" value to this.
aNextPageToken :: Lens' Accounts (Maybe Text)

-- | Kind of list this is, in this case adexchangeseller#accounts.
aKind :: Lens' Accounts Text

-- | The accounts returned in this list response.
aItems :: Lens' Accounts [Account]
data Alerts

-- | Creates a value of <a>Alerts</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aleKind</a></li>
--   <li><a>aleItems</a></li>
--   </ul>
alerts :: Alerts

-- | Kind of list this is, in this case adexchangeseller#alerts.
aleKind :: Lens' Alerts Text

-- | The alerts returned in this list response.
aleItems :: Lens' Alerts [Alert]
data SavedReports

-- | Creates a value of <a>SavedReports</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>srEtag</a></li>
--   <li><a>srNextPageToken</a></li>
--   <li><a>srKind</a></li>
--   <li><a>srItems</a></li>
--   </ul>
savedReports :: SavedReports

-- | ETag of this response for caching purposes.
srEtag :: Lens' SavedReports (Maybe Text)

-- | Continuation token used to page through saved reports. To retrieve the
--   next page of results, set the next request's "pageToken" value to
--   this.
srNextPageToken :: Lens' SavedReports (Maybe Text)

-- | Kind of list this is, in this case adexchangeseller#savedReports.
srKind :: Lens' SavedReports Text

-- | The saved reports returned in this list response.
srItems :: Lens' SavedReports [SavedReport]
data SavedReport

-- | Creates a value of <a>SavedReport</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sKind</a></li>
--   <li><a>sName</a></li>
--   <li><a>sId</a></li>
--   </ul>
savedReport :: SavedReport

-- | Kind of resource this is, in this case adexchangeseller#savedReport.
sKind :: Lens' SavedReport Text

-- | This saved report's name.
sName :: Lens' SavedReport (Maybe Text)

-- | Unique identifier of this saved report.
sId :: Lens' SavedReport (Maybe Text)
data URLChannels

-- | Creates a value of <a>URLChannels</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ucEtag</a></li>
--   <li><a>ucNextPageToken</a></li>
--   <li><a>ucKind</a></li>
--   <li><a>ucItems</a></li>
--   </ul>
urlChannels :: URLChannels

-- | ETag of this response for caching purposes.
ucEtag :: Lens' URLChannels (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#urlChannels.
ucKind :: Lens' URLChannels Text

-- | The URL channels returned in this list response.
ucItems :: Lens' URLChannels [URLChannel]
data CustomChannels

-- | Creates a value of <a>CustomChannels</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ccEtag</a></li>
--   <li><a>ccNextPageToken</a></li>
--   <li><a>ccKind</a></li>
--   <li><a>ccItems</a></li>
--   </ul>
customChannels :: CustomChannels

-- | ETag of this response for caching purposes.
ccEtag :: Lens' CustomChannels (Maybe Text)

-- | 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)

-- | Kind of list this is, in this case adexchangeseller#customChannels.
ccKind :: Lens' CustomChannels Text

-- | The custom channels returned in this list response.
ccItems :: Lens' CustomChannels [CustomChannel]
data Report

-- | Creates a value of <a>Report</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rKind</a></li>
--   <li><a>rAverages</a></li>
--   <li><a>rWarnings</a></li>
--   <li><a>rRows</a></li>
--   <li><a>rTotals</a></li>
--   <li><a>rHeaders</a></li>
--   <li><a>rTotalMatchedRows</a></li>
--   </ul>
report :: Report

-- | Kind this is, in this case adexchangeseller#report.
rKind :: Lens' Report Text

-- | 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]

-- | Any warnings associated with generation of the report.
rWarnings :: Lens' Report [Text]

-- | 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]]

-- | 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]

-- | 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]

-- | 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)
data Alert

-- | Creates a value of <a>Alert</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aaKind</a></li>
--   <li><a>aaSeverity</a></li>
--   <li><a>aaId</a></li>
--   <li><a>aaType</a></li>
--   <li><a>aaMessage</a></li>
--   </ul>
alert :: Alert

-- | Kind of resource this is, in this case adexchangeseller#alert.
aaKind :: Lens' Alert Text

-- | Severity of this alert. Possible values: INFO, WARNING, SEVERE.
aaSeverity :: Lens' Alert (Maybe Text)

-- | Unique identifier of this alert. This should be considered an opaque
--   identifier; it is not safe to rely on it being in any particular
--   format.
aaId :: Lens' Alert (Maybe Text)

-- | Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3,
--   ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY,
--   GRAYLISTED_PUBLISHER, API_HOLD.
aaType :: Lens' Alert (Maybe Text)

-- | The localized alert message.
aaMessage :: Lens' Alert (Maybe Text)
data Account

-- | Creates a value of <a>Account</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>accKind</a></li>
--   <li><a>accName</a></li>
--   <li><a>accId</a></li>
--   </ul>
account :: Account

-- | Kind of resource this is, in this case adexchangeseller#account.
accKind :: Lens' Account Text

-- | Name of this account.
accName :: Lens' Account (Maybe Text)

-- | Unique identifier of this account.
accId :: Lens' Account (Maybe Text)
data AdClient

-- | Creates a value of <a>AdClient</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>adKind</a></li>
--   <li><a>adArcOptIn</a></li>
--   <li><a>adSupportsReporting</a></li>
--   <li><a>adId</a></li>
--   <li><a>adProductCode</a></li>
--   </ul>
adClient :: AdClient

-- | Kind of resource this is, in this case adexchangeseller#adClient.
adKind :: Lens' AdClient Text

-- | Whether this ad client is opted in to ARC.
adArcOptIn :: Lens' AdClient (Maybe Bool)

-- | Whether this ad client supports being reported on.
adSupportsReporting :: Lens' AdClient (Maybe Bool)

-- | Unique identifier of this ad client.
adId :: Lens' AdClient (Maybe Text)

-- | This ad client's product code, which corresponds to the PRODUCT_CODE
--   report dimension.
adProductCode :: Lens' AdClient (Maybe Text)
data ReportHeadersItem

-- | Creates a value of <a>ReportHeadersItem</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rhiName</a></li>
--   <li><a>rhiCurrency</a></li>
--   <li><a>rhiType</a></li>
--   </ul>
reportHeadersItem :: ReportHeadersItem

-- | The name of the header.
rhiName :: Lens' ReportHeadersItem (Maybe Text)

-- | The currency of this column. Only present if the header type is
--   METRIC_CURRENCY.
rhiCurrency :: Lens' ReportHeadersItem (Maybe Text)

-- | The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO,
--   or METRIC_CURRENCY.
rhiType :: Lens' ReportHeadersItem (Maybe Text)

-- | The targeting information of this custom channel, if activated.
--   
--   <i>See:</i> <a>customChannelTargetingInfo</a> smart constructor.
data CustomChannelTargetingInfo

-- | Creates a value of <a>CustomChannelTargetingInfo</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cctiLocation</a></li>
--   <li><a>cctiSiteLanguage</a></li>
--   <li><a>cctiAdsAppearOn</a></li>
--   <li><a>cctiDescription</a></li>
--   </ul>
customChannelTargetingInfo :: CustomChannelTargetingInfo

-- | The locations in which ads appear. (Only valid for content and mobile
--   content ads). Acceptable values for content ads are: TOP_LEFT,
--   TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT,
--   BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS.
--   Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM,
--   MULTIPLE_LOCATIONS.
cctiLocation :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The language of the sites ads will be displayed on.
cctiSiteLanguage :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The name used to describe this channel externally.
cctiAdsAppearOn :: Lens' CustomChannelTargetingInfo (Maybe Text)

-- | The external description of the channel.
cctiDescription :: Lens' CustomChannelTargetingInfo (Maybe Text)
data PreferredDeals

-- | Creates a value of <a>PreferredDeals</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pdKind</a></li>
--   <li><a>pdItems</a></li>
--   </ul>
preferredDeals :: PreferredDeals

-- | Kind of list this is, in this case adexchangeseller#preferredDeals.
pdKind :: Lens' PreferredDeals Text

-- | The preferred deals returned in this list response.
pdItems :: Lens' PreferredDeals [PreferredDeal]
data Metadata

-- | Creates a value of <a>Metadata</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mKind</a></li>
--   <li><a>mItems</a></li>
--   </ul>
metadata :: Metadata

-- | Kind of list this is, in this case adexchangeseller#metadata.
mKind :: Lens' Metadata Text
mItems :: Lens' Metadata [ReportingMetadataEntry]
data CustomChannel

-- | Creates a value of <a>CustomChannel</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cTargetingInfo</a></li>
--   <li><a>cKind</a></li>
--   <li><a>cName</a></li>
--   <li><a>cCode</a></li>
--   <li><a>cId</a></li>
--   </ul>
customChannel :: CustomChannel

-- | The targeting information of this custom channel, if activated.
cTargetingInfo :: Lens' CustomChannel (Maybe CustomChannelTargetingInfo)

-- | Kind of resource this is, in this case adexchangeseller#customChannel.
cKind :: Lens' CustomChannel Text

-- | Name of this custom channel.
cName :: Lens' CustomChannel (Maybe Text)

-- | Code of this custom channel, not necessarily unique across ad clients.
cCode :: Lens' CustomChannel (Maybe Text)

-- | 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)
data URLChannel

-- | Creates a value of <a>URLChannel</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>urlcKind</a></li>
--   <li><a>urlcId</a></li>
--   <li><a>urlcURLPattern</a></li>
--   </ul>
urlChannel :: URLChannel

-- | Kind of resource this is, in this case adexchangeseller#urlChannel.
urlcKind :: Lens' URLChannel Text

-- | 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)

-- | URL Pattern of this URL channel. Does not include "http://" or
--   "https://". Example: www.example.com/home
urlcURLPattern :: Lens' URLChannel (Maybe Text)
data PreferredDeal

-- | Creates a value of <a>PreferredDeal</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pAdvertiserName</a></li>
--   <li><a>pCurrencyCode</a></li>
--   <li><a>pStartTime</a></li>
--   <li><a>pKind</a></li>
--   <li><a>pBuyerNetworkName</a></li>
--   <li><a>pEndTime</a></li>
--   <li><a>pId</a></li>
--   <li><a>pFixedCpm</a></li>
--   </ul>
preferredDeal :: PreferredDeal

-- | The name of the advertiser this deal is for.
pAdvertiserName :: Lens' PreferredDeal (Maybe Text)

-- | The currency code that applies to the fixed_cpm value. If not set then
--   assumed to be USD.
pCurrencyCode :: Lens' PreferredDeal (Maybe Text)

-- | Time when this deal becomes active in seconds since the epoch (GMT).
--   If not set then this deal is active immediately upon creation.
pStartTime :: Lens' PreferredDeal (Maybe Word64)

-- | Kind of resource this is, in this case adexchangeseller#preferredDeal.
pKind :: Lens' PreferredDeal Text

-- | The name of the buyer network this deal is for.
pBuyerNetworkName :: Lens' PreferredDeal (Maybe Text)

-- | Time when this deal stops being active in seconds since the epoch
--   (GMT). If not set then this deal is valid until manually disabled by
--   the publisher.
pEndTime :: Lens' PreferredDeal (Maybe Word64)

-- | Unique identifier of this preferred deal.
pId :: Lens' PreferredDeal (Maybe Int64)

-- | The fixed price for this preferred deal. In cpm micros of currency
--   according to currencyCode. If set, then this preferred deal is
--   eligible for the fixed price tier of buying (highest priority, pay
--   exactly the configured fixed price).
pFixedCpm :: Lens' PreferredDeal (Maybe Int64)
