{-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# OPTIONS_GHC -fno-warn-duplicate-exports #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- | -- Module : Network.Google.Resource.DFAReporting.DirectorySites.List -- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Retrieves a list of directory sites, possibly filtered. This method -- supports paging. -- -- /See:/ for @dfareporting.directorySites.list@. module Network.Google.Resource.DFAReporting.DirectorySites.List ( -- * REST Resource DirectorySitesListResource -- * Creating a Request , directorySitesList , DirectorySitesList -- * Request Lenses , dslSearchString , dslAcceptsInterstitialPlacements , dslAcceptsPublisherPaidPlacements , dslIds , dslProFileId , dslSortOrder , dslActive , dslPageToken , dslSortField , dslAcceptsInStreamVideoPlacements , dslMaxResults , dslDfpNetworkCode ) where import Network.Google.DFAReporting.Types import Network.Google.Prelude -- | A resource alias for @dfareporting.directorySites.list@ method which the -- 'DirectorySitesList' request conforms to. type DirectorySitesListResource = "dfareporting" :> "v3.3" :> "userprofiles" :> Capture "profileId" (Textual Int64) :> "directorySites" :> QueryParam "searchString" Text :> QueryParam "acceptsInterstitialPlacements" Bool :> QueryParam "acceptsPublisherPaidPlacements" Bool :> QueryParams "ids" (Textual Int64) :> QueryParam "sortOrder" DirectorySitesListSortOrder :> QueryParam "active" Bool :> QueryParam "pageToken" Text :> QueryParam "sortField" DirectorySitesListSortField :> QueryParam "acceptsInStreamVideoPlacements" Bool :> QueryParam "maxResults" (Textual Int32) :> QueryParam "dfpNetworkCode" Text :> QueryParam "alt" AltJSON :> Get '[JSON] DirectorySitesListResponse -- | Retrieves a list of directory sites, possibly filtered. This method -- supports paging. -- -- /See:/ 'directorySitesList' smart constructor. data DirectorySitesList = DirectorySitesList' { _dslSearchString :: !(Maybe Text) , _dslAcceptsInterstitialPlacements :: !(Maybe Bool) , _dslAcceptsPublisherPaidPlacements :: !(Maybe Bool) , _dslIds :: !(Maybe [Textual Int64]) , _dslProFileId :: !(Textual Int64) , _dslSortOrder :: !DirectorySitesListSortOrder , _dslActive :: !(Maybe Bool) , _dslPageToken :: !(Maybe Text) , _dslSortField :: !DirectorySitesListSortField , _dslAcceptsInStreamVideoPlacements :: !(Maybe Bool) , _dslMaxResults :: !(Textual Int32) , _dslDfpNetworkCode :: !(Maybe Text) } deriving (Eq, Show, Data, Typeable, Generic) -- | Creates a value of 'DirectorySitesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'dslSearchString' -- -- * 'dslAcceptsInterstitialPlacements' -- -- * 'dslAcceptsPublisherPaidPlacements' -- -- * 'dslIds' -- -- * 'dslProFileId' -- -- * 'dslSortOrder' -- -- * 'dslActive' -- -- * 'dslPageToken' -- -- * 'dslSortField' -- -- * 'dslAcceptsInStreamVideoPlacements' -- -- * 'dslMaxResults' -- -- * 'dslDfpNetworkCode' directorySitesList :: Int64 -- ^ 'dslProFileId' -> DirectorySitesList directorySitesList pDslProFileId_ = DirectorySitesList' { _dslSearchString = Nothing , _dslAcceptsInterstitialPlacements = Nothing , _dslAcceptsPublisherPaidPlacements = Nothing , _dslIds = Nothing , _dslProFileId = _Coerce # pDslProFileId_ , _dslSortOrder = DSLSOAscending , _dslActive = Nothing , _dslPageToken = Nothing , _dslSortField = DSLSFID , _dslAcceptsInStreamVideoPlacements = Nothing , _dslMaxResults = 1000 , _dslDfpNetworkCode = Nothing } -- | Allows searching for objects by name, ID or URL. Wildcards (*) are -- allowed. For example, \"directory site*2015\" will return objects with -- names like \"directory site June 2015\", \"directory site April 2015\", -- or simply \"directory site 2015\". Most of the searches also add -- wildcards implicitly at the start and the end of the search string. For -- example, a search string of \"directory site\" will match objects with -- name \"my directory site\", \"directory site 2015\" or simply, -- \"directory site\". dslSearchString :: Lens' DirectorySitesList (Maybe Text) dslSearchString = lens _dslSearchString (\ s a -> s{_dslSearchString = a}) -- | This search filter is no longer supported and will have no effect on the -- results returned. dslAcceptsInterstitialPlacements :: Lens' DirectorySitesList (Maybe Bool) dslAcceptsInterstitialPlacements = lens _dslAcceptsInterstitialPlacements (\ s a -> s{_dslAcceptsInterstitialPlacements = a}) -- | Select only directory sites that accept publisher paid placements. This -- field can be left blank. dslAcceptsPublisherPaidPlacements :: Lens' DirectorySitesList (Maybe Bool) dslAcceptsPublisherPaidPlacements = lens _dslAcceptsPublisherPaidPlacements (\ s a -> s{_dslAcceptsPublisherPaidPlacements = a}) -- | Select only directory sites with these IDs. dslIds :: Lens' DirectorySitesList [Int64] dslIds = lens _dslIds (\ s a -> s{_dslIds = a}) . _Default . _Coerce -- | User profile ID associated with this request. dslProFileId :: Lens' DirectorySitesList Int64 dslProFileId = lens _dslProFileId (\ s a -> s{_dslProFileId = a}) . _Coerce -- | Order of sorted results. dslSortOrder :: Lens' DirectorySitesList DirectorySitesListSortOrder dslSortOrder = lens _dslSortOrder (\ s a -> s{_dslSortOrder = a}) -- | Select only active directory sites. Leave blank to retrieve both active -- and inactive directory sites. dslActive :: Lens' DirectorySitesList (Maybe Bool) dslActive = lens _dslActive (\ s a -> s{_dslActive = a}) -- | Value of the nextPageToken from the previous result page. dslPageToken :: Lens' DirectorySitesList (Maybe Text) dslPageToken = lens _dslPageToken (\ s a -> s{_dslPageToken = a}) -- | Field by which to sort the list. dslSortField :: Lens' DirectorySitesList DirectorySitesListSortField dslSortField = lens _dslSortField (\ s a -> s{_dslSortField = a}) -- | This search filter is no longer supported and will have no effect on the -- results returned. dslAcceptsInStreamVideoPlacements :: Lens' DirectorySitesList (Maybe Bool) dslAcceptsInStreamVideoPlacements = lens _dslAcceptsInStreamVideoPlacements (\ s a -> s{_dslAcceptsInStreamVideoPlacements = a}) -- | Maximum number of results to return. dslMaxResults :: Lens' DirectorySitesList Int32 dslMaxResults = lens _dslMaxResults (\ s a -> s{_dslMaxResults = a}) . _Coerce -- | Select only directory sites with this Ad Manager network code. dslDfpNetworkCode :: Lens' DirectorySitesList (Maybe Text) dslDfpNetworkCode = lens _dslDfpNetworkCode (\ s a -> s{_dslDfpNetworkCode = a}) instance GoogleRequest DirectorySitesList where type Rs DirectorySitesList = DirectorySitesListResponse type Scopes DirectorySitesList = '["https://www.googleapis.com/auth/dfatrafficking"] requestClient DirectorySitesList'{..} = go _dslProFileId _dslSearchString _dslAcceptsInterstitialPlacements _dslAcceptsPublisherPaidPlacements (_dslIds ^. _Default) (Just _dslSortOrder) _dslActive _dslPageToken (Just _dslSortField) _dslAcceptsInStreamVideoPlacements (Just _dslMaxResults) _dslDfpNetworkCode (Just AltJSON) dFAReportingService where go = buildClient (Proxy :: Proxy DirectorySitesListResource) mempty