{-# 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.YouTubeReporting.ReportTypes.List
(
ReportTypesListResource
, reportTypesList
, ReportTypesList
, rtlXgafv
, rtlUploadProtocol
, rtlAccessToken
, rtlUploadType
, rtlIncludeSystemManaged
, rtlOnBehalfOfContentOwner
, rtlPageToken
, rtlPageSize
, rtlCallback
) where
import Network.Google.Prelude
import Network.Google.YouTubeReporting.Types
type ReportTypesListResource =
"v1" :>
"reportTypes" :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "includeSystemManaged" Bool :>
QueryParam "onBehalfOfContentOwner" Text :>
QueryParam "pageToken" Text :>
QueryParam "pageSize" (Textual Int32) :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
Get '[JSON] ListReportTypesResponse
data ReportTypesList = ReportTypesList'
{ _rtlXgafv :: !(Maybe Xgafv)
, _rtlUploadProtocol :: !(Maybe Text)
, _rtlAccessToken :: !(Maybe Text)
, _rtlUploadType :: !(Maybe Text)
, _rtlIncludeSystemManaged :: !(Maybe Bool)
, _rtlOnBehalfOfContentOwner :: !(Maybe Text)
, _rtlPageToken :: !(Maybe Text)
, _rtlPageSize :: !(Maybe (Textual Int32))
, _rtlCallback :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
reportTypesList
:: ReportTypesList
reportTypesList =
ReportTypesList'
{ _rtlXgafv = Nothing
, _rtlUploadProtocol = Nothing
, _rtlAccessToken = Nothing
, _rtlUploadType = Nothing
, _rtlIncludeSystemManaged = Nothing
, _rtlOnBehalfOfContentOwner = Nothing
, _rtlPageToken = Nothing
, _rtlPageSize = Nothing
, _rtlCallback = Nothing
}
rtlXgafv :: Lens' ReportTypesList (Maybe Xgafv)
rtlXgafv = lens _rtlXgafv (\ s a -> s{_rtlXgafv = a})
rtlUploadProtocol :: Lens' ReportTypesList (Maybe Text)
rtlUploadProtocol
= lens _rtlUploadProtocol
(\ s a -> s{_rtlUploadProtocol = a})
rtlAccessToken :: Lens' ReportTypesList (Maybe Text)
rtlAccessToken
= lens _rtlAccessToken
(\ s a -> s{_rtlAccessToken = a})
rtlUploadType :: Lens' ReportTypesList (Maybe Text)
rtlUploadType
= lens _rtlUploadType
(\ s a -> s{_rtlUploadType = a})
rtlIncludeSystemManaged :: Lens' ReportTypesList (Maybe Bool)
rtlIncludeSystemManaged
= lens _rtlIncludeSystemManaged
(\ s a -> s{_rtlIncludeSystemManaged = a})
rtlOnBehalfOfContentOwner :: Lens' ReportTypesList (Maybe Text)
rtlOnBehalfOfContentOwner
= lens _rtlOnBehalfOfContentOwner
(\ s a -> s{_rtlOnBehalfOfContentOwner = a})
rtlPageToken :: Lens' ReportTypesList (Maybe Text)
rtlPageToken
= lens _rtlPageToken (\ s a -> s{_rtlPageToken = a})
rtlPageSize :: Lens' ReportTypesList (Maybe Int32)
rtlPageSize
= lens _rtlPageSize (\ s a -> s{_rtlPageSize = a}) .
mapping _Coerce
rtlCallback :: Lens' ReportTypesList (Maybe Text)
rtlCallback
= lens _rtlCallback (\ s a -> s{_rtlCallback = a})
instance GoogleRequest ReportTypesList where
type Rs ReportTypesList = ListReportTypesResponse
type Scopes ReportTypesList =
'["https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
"https://www.googleapis.com/auth/yt-analytics.readonly"]
requestClient ReportTypesList'{..}
= go _rtlXgafv _rtlUploadProtocol _rtlAccessToken
_rtlUploadType
_rtlIncludeSystemManaged
_rtlOnBehalfOfContentOwner
_rtlPageToken
_rtlPageSize
_rtlCallback
(Just AltJSON)
youTubeReportingService
where go
= buildClient
(Proxy :: Proxy ReportTypesListResource)
mempty